找回密码
 注册
关于网站域名变更的通知
查看: 458|回复: 4
打印 上一主题 下一主题

ODE45解方程出错

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-8-10 15:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
函数文件,
# o4 P5 K* Q. \) V  O4 v( {function dy=qipao(t,y,c,Pv,PA,sigma,rho,n,mu,w,P0)/ K. }* v; Q% Z; A5 v, n& A0 G2 M
dy(1,1)=y(2);
2 B( l1 S6 ]5 m. r8 A% V3 mdy(2,1)=((PO+2*sigma/RO-Pv)*((RO/y(1))^(3*n)+Pv+PA*sin(w*t)-P0-2*sigma/y(1))/(rho*y(1))...
& j- g0 Y: |2 _7 J1 f0 d$ g  C( }7 y-4*mu*y(2)/(rho*y(1)^2))...) U4 q$ O- l( I: x  s7 e
+((P0+2*sigma/R0-Pv)*(R0^(3*n))*(-3)*n*(y(2))^((-3)*n-1)-w*PA*cos(w*t))/(rho*c)...
/ R+ G/ F& k. h+ P# R, X- ~8 l-3/2*y(2)^2/y(1);; e. _6 G2 l5 f7 W/ h" N) o
end
% `  ~* u3 p3 i' p+ a" W这是运行脚本文件,
! A  \/ e7 u, G) `; k) J  \clear all;
; f6 ~4 j/ u5 H  m1 k# N7 `* y0 |clc;
9 C4 w) `. C/ Z& V  @- {f=0.025*10^6;
+ h( A3 v$ ?" d7 Q6 K  Amu=1.31*10^(-3);; c* k6 Z" S- e' r* J
R0=10;
; s: m. b# P9 R$ h5 G7 t) p# ?tspan=[0,6];$ x. j/ M5 W4 f. r3 ]
x0=[10;0];
8 Y) y9 n& i$ R2 `* zPA=2.41*10^5;, }0 N. J) d( I, T" ~" V+ z4 s
Pv=1.23*10^3;
5 ^" L$ m" C& xn=1.33;. u" J: F' A! ^# x3 }) ^9 [
sigma=7.42*10^(-2);
) C- w; Y8 N7 t/ Nrho=1000;
: P# o4 r& C/ fP0=1.013*10^5;
# T( \2 e; _' Q1 ?) Ew=2*pi*f;
" k) ?- [2 N% i[t,y]=ode45(@qipao,tspan,x0);% I1 ]( Z- M; ]4 J3 I5 m2 D
plot(t,y(:,1),'r-');, u; R6 W. B5 V0 Y
xlabel('t=Time/T');ylabel('Solution R(t)/RO');legend('R=R(t)/RO')
/ O0 d) t  c" Y9 l; S1 m$ p, A4 w5 i+ ^% @. ]# [6 I
运行的时候出现错误:
; Y! v) Q: y# V/ k未定义函数或变量 'PO'。
; \1 s8 i0 y; V! g( y( |& e; Z; U( p: ^$ b( K
出错 qipao (line 4)
8 o* ?( T& u" [5 n9 k. {  Jdy(2,1)=((PO+2*sigma/RO-Pv)*((RO/y(1))^(3*n)+Pv+PA*sin(w*t)-P0-2*sigma/y(1))/(rho*y(1))...
: ~' M2 f! S, v3 g- G+ i1 t( _5 d
出错 odearguments (line 90)
: f- o3 p6 t4 Z% z2 J( W* v: Rf0 = feval(ode,t0,y0,args{:});   % ODE15I sets args{1} to yp0.
/ I4 ~( x, b' a* d) v5 g1 i9 t. X7 ~( F* J
出错 ode45 (line 115)
; ^0 M0 x1 s5 M3 K8 u8 `    odearguments(FcnHandlesUsed, solver_name, ode, tspan, y0, options, varargin);9 Q8 c( [) |) b+ p. {# O9 D

; F9 I5 T7 |; I出错 qipao1 (line 15)
7 `8 L+ H% n' V9 p# w1 D[t,y]=ode45(@qipao,tspan,x0);
- ^9 W& C! s! G3 V; @: Y; S0 {( u9 `$ }6 o- a

( Z" `) x7 A) u& H请问前辈们怎么解决,我查阅了实例和书本,初值都赋值了,ODE45调用也是参考书本来的,一模一样,为什么还会出错????: m! C0 I* D3 w. w) C& Q$ W$ M

该用户从未签到

2#
发表于 2020-8-10 17:47 | 只看该作者
帮你顶一下

该用户从未签到

3#
发表于 2020-8-11 13:31 | 只看该作者
不够仔细啊。3 L8 D$ g9 |* D" L' r4 E- v. X% u+ Q
自定义函数里面的输入变量是P0,结果你下面就打字把数字零打成了字母欧, ?  F+ H5 i! }: u5 Z
dy(2,1)=((PO...

点评

错 qipao (line 4) dy(2,1)=((P0+2*sigma/RO-Pv)*((RO/y(1))^(3*n)+Pv+PA*sin(w*t)-P0-2*sigma/y(1))/(rho*y(1))... 出错 odearguments (line 90) f0 = feval(ode,t0,y0,args{:}); % ODE15I sets args{1} to  详情 回复 发表于 2020-8-12 10:19

该用户从未签到

4#
发表于 2020-8-12 09:51 | 只看该作者
来学习一下

该用户从未签到

5#
 楼主| 发表于 2020-8-12 10:19 | 只看该作者
nkkopd 发表于 2020-8-11 13:31
, ]. r6 ]) I+ t4 A: q0 U0 _2 v不够仔细啊。
  s1 S8 Q% C# x; `# }) \& i* i自定义函数里面的输入变量是P0,结果你下面就打字把数字零打成了字母欧
) ~5 P/ d& ]5 D; O" v4 mdy(2,1)=((PO...

( B" j7 H% K, R) ~# R) _错 qipao (line 4)8 g1 ?' i' v! c% o& y% M5 O: S
dy(2,1)=((P0+2*sigma/RO-Pv)*((RO/y(1))^(3*n)+Pv+PA*sin(w*t)-P0-2*sigma/y(1))/(rho*y(1))...
& h3 A3 n. c$ A1 Y/ W6 m  H4 W" u$ E
出错 odearguments (line 90)
& W9 F  J7 t- ~. [3 _2 N1 }5 `f0 = feval(ode,t0,y0,args{:});   % ODE15I sets args{1} to yp0.
6 O9 p' e9 Q( ~1 _8 Z8 W% X( q* [+ [  W; C
出错 ode45 (line 115)8 E- h( x. L: i2 _2 o3 e
    odearguments(FcnHandlesUsed, solver_name, ode, tspan, y0, options, varargin);6 u! h" U; o6 j/ b+ n

) Z/ q% N% k8 Q4 |) M出错 qipao1 (line 17)
% [3 |& j, G9 a' e8 S/ y1 y[t,y]=ode45(@qipao,tspan,x0);
7 Q* W* G/ w4 `, m, a
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-6 12:14 , Processed in 0.156250 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表