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

ODE45解方程出错

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
函数文件,% Z7 y! e7 T: q) |# z% x" E8 P
function dy=qipao(t,y,c,Pv,PA,sigma,rho,n,mu,w,P0)
! R9 n3 I+ M) J: \# }dy(1,1)=y(2);. @& u8 f) |) b& S" i) _
dy(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))...$ a! }4 W0 g6 S  {, r' u
-4*mu*y(2)/(rho*y(1)^2))...& H0 V3 v& |  N5 ^$ i
+((P0+2*sigma/R0-Pv)*(R0^(3*n))*(-3)*n*(y(2))^((-3)*n-1)-w*PA*cos(w*t))/(rho*c)...
; r$ {! d, W$ M% K' H3 O-3/2*y(2)^2/y(1);
8 K  Y/ E5 Z3 r2 w3 X7 O, J) {5 Xend
: j- l/ H; `5 A- q% \这是运行脚本文件,* F# B1 e  d9 z  h% p- {! O
clear all;
8 N6 R/ e" |1 Zclc;
  x2 N. z  C3 Q0 y( w, vf=0.025*10^6;
- E3 B: S  e0 T6 Q/ wmu=1.31*10^(-3);
4 L1 j* t/ v* q* H  c2 A' jR0=10;
4 x+ P& X# p* q  v6 X$ j) R$ @tspan=[0,6];% w. Y) j0 d# X
x0=[10;0];
! s5 n2 r0 W0 Y# ]( M3 j- [PA=2.41*10^5;
, E9 u2 ~' d5 `. f, [2 jPv=1.23*10^3;
' S6 ?3 T$ @) ?7 T; y" @n=1.33;
& x3 k) d, O* w3 I# V) Lsigma=7.42*10^(-2);) B: |# f5 e1 \5 Q5 r9 A% T
rho=1000;
% Q9 i7 u% Q# PP0=1.013*10^5;+ U+ I0 q9 ?$ Q5 I) D* b
w=2*pi*f;
& \6 v* g5 X: ]& ]; M[t,y]=ode45(@qipao,tspan,x0);
" |" z8 A- [6 ~& ~$ r: f- J, c1 `plot(t,y(:,1),'r-');" r% ~0 D' m) i6 M* w
xlabel('t=Time/T');ylabel('Solution R(t)/RO');legend('R=R(t)/RO'): y2 h2 S6 d9 p
8 b! ]5 Q& z+ X' T8 {* ]6 l$ ^
运行的时候出现错误:
0 m( U2 Y% @& U3 p$ d  i/ B5 z未定义函数或变量 'PO'。
, Y+ P/ R1 i! u8 X( r& D8 _( w
3 u: G/ X2 ?0 U出错 qipao (line 4)5 N3 r7 y& _! P: i, z
dy(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))...
, E& n, B- g; H) V. @5 e2 d; H0 [, l6 m# I8 G
出错 odearguments (line 90); T" S2 w9 m6 f1 x' D" ]
f0 = feval(ode,t0,y0,args{:});   % ODE15I sets args{1} to yp0." t% V2 |& g8 E9 g6 b2 \8 I
8 }# a# M9 U+ H. C" h9 D  a
出错 ode45 (line 115)
9 R. h  a; U" p% L4 s, _) Q    odearguments(FcnHandlesUsed, solver_name, ode, tspan, y0, options, varargin);
  n6 N8 e1 E+ w( r  v' m! @  d( o: c  y) Y5 J# L% H
出错 qipao1 (line 15)
) r) F( _% a  U6 b$ U  c[t,y]=ode45(@qipao,tspan,x0);/ H4 A/ p) n7 L2 |; p; v
7 ]& V. |( j( z0 J
+ B! a" K, y; C1 `4 m
请问前辈们怎么解决,我查阅了实例和书本,初值都赋值了,ODE45调用也是参考书本来的,一模一样,为什么还会出错????
" L. H  ~" h, L

该用户从未签到

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

该用户从未签到

3#
发表于 2020-8-11 13:31 | 只看该作者
不够仔细啊。- G  P$ ?# b% E" ?+ k4 L
自定义函数里面的输入变量是P0,结果你下面就打字把数字零打成了字母欧9 k$ N0 e8 x% \" C( f
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% ~+ f4 J7 I4 V% J( R1 l
不够仔细啊。+ C, O8 e, C" V% F3 }! Y. ^2 v0 c* N
自定义函数里面的输入变量是P0,结果你下面就打字把数字零打成了字母欧
( V7 X/ `+ n. s. edy(2,1)=((PO...
$ U. c9 F" H( W& T& {: Z
错 qipao (line 4)
9 i1 m; W. T& U7 K0 [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))...
/ w( r, R5 T8 ?. n" N0 c* j$ P8 ?& K7 m) C/ g# i+ s$ d
出错 odearguments (line 90)) `& K  @; ]; @) Q
f0 = feval(ode,t0,y0,args{:});   % ODE15I sets args{1} to yp0.) F2 i  I4 u8 K, @" u1 h
( |0 O, Y: f5 D* l( _+ U
出错 ode45 (line 115)
7 ]! B$ ~8 w! C1 }: _7 y! d$ K    odearguments(FcnHandlesUsed, solver_name, ode, tspan, y0, options, varargin);
6 t& W. M- X9 T# @) I( e3 ^
0 G0 z4 Z' J: Z/ O3 g( \0 }2 {出错 qipao1 (line 17)
& l: f8 Y! {9 N9 I2 A" P8 k[t,y]=ode45(@qipao,tspan,x0);5 d1 K3 k0 E3 z: N
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-7-26 20:24 , Processed in 0.125000 second(s), 28 queries , Gzip On.

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

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

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