微分方程的出错求助!看了半天也没看出来,新手
%主程序m=70;k=20;a1=1;a2=1;g=10;
y0=[-30;0];
%t0=0;tf=100;tol=1e-6;
tspan=;
=ode45(@stu1,tspan,y0);
x1=50.-y(:,1);
plot(t,x1);grid
plot(t,y(:,1));grid
%函数
function dy=stu1(t,y)
m=70;k=20;a1=1;a2=1;g=10;y0=[-30;0];
x=y(1)
x_dot=y(2);
if x>0
dy=*y+;
else
dy=*y+
end
怎么老通过不了?新手求助错误!谢谢
%函数 之后的 function 截下来应该另存一个文件.
开始不带 function的文件,后面不能有function
有几个问题,
1. 这个应该建立一个函数,然后再运行,不能在脚本状态下运行;
2. dy=*y+ ;
是有问题的,不对应啊!你应该整错了吧!
functionodeFun( )
m = 70 ;
k = 20 ;
a1 = 1 ;
a2 = 1 ;
g = 10 ;
y0 = [-30 ; 0] ;
tspan = ;
= ode45(@stu1 , tspan , y0) ;
x1 = 50. - y(: , 1) ;
plot(t , x1) ;
grid
plot(t , y(: , 1)) ;
grid
%函数
function dy = stu1(t , y)
m = 70 ;
k = 20 ;
a1 = 1 ;
a2 = 1 ;
g = 10 ;
y0 = [-30 ; 0] ;
x = y(1) ;
x_dot = y(2) ;
if x > 0
dy = * y + ;
else
dy = * y + ;
end
end
end
多谢各位的意见,我漏了个矩阵元素结果不对称!初学者,见笑,见笑! zhengshuhe 发表于 2011-3-10 17:02 static/image/common/back.gif
多谢各位的意见,我漏了个矩阵元素结果不对称!初学者,见笑,见笑!
大家都是从初学这过来的,欢迎经常来论坛交流
页:
[1]