登录论坛

查看完整版本 : [原创]【SOS】用ode45求解y````=y```+1


kornberg
2008-08-26, 09:37
【SOS】用ode45求解y````=y```+1



建立函数
function u_prime=eqns2(x,u)
u_prime(1)=u(2);
u_prime(2)=u(3);
u_prime(3)=u(4);
u_prime(4)=u(4)+1;


命令窗口输入
y0=[1 0 0 0];
[x,num_y]=ode45('eqns2',0,20,y0);
plot(x,num_y(:,1))




出错提示:

Warning: Obsolete syntax. Use ode45(fun,tspan,y0,...) instead.
> In funfun\private\odearguments at 41
In ode45 at 173
??? Error using ==> funfun\private\odearguments
EQNS2 must return a column vector.

Error in ==> ode45 at 173
[neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, odeArgs, odeFcn, ...




我用的是matlab7.1,上面的程序是照着一个范例做的,

各位大侠这是怎么回事啊?

应该怎么改正?

Thanks in advance.

未注册
2008-11-26, 10:39
把初值写成列向量试试!