matlab微分方程1、建立m-文件rigid.m如下: function dy=rigid(t,y) dy=zeros(3,1); dy(1)=y(2)*y(3); dy(2)=-y(1)*y(3); dy(3)=-0.51*y(1)*y(2);2、取t0=0,tf=12,输入命令: [T,Y]=ode45('rigid',[0 12],[0 1 1])
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/02 13:05:23
![matlab微分方程1、建立m-文件rigid.m如下: function dy=rigid(t,y) dy=zeros(3,1); dy(1)=y(2)*y(3); dy(2)=-y(1)*y(3); dy(3)=-0.51*y(1)*y(2);2、取t0=0,tf=12,输入命令: [T,Y]=ode45('rigid',[0 12],[0 1 1])](/uploads/image/z/6564989-29-9.jpg?t=matlab%E5%BE%AE%E5%88%86%E6%96%B9%E7%A8%8B1%E3%80%81%E5%BB%BA%E7%AB%8Bm-%E6%96%87%E4%BB%B6rigid.m%E5%A6%82%E4%B8%8B%EF%BC%9A+++++++function+dy%3Drigid%28t%2Cy%29+++++++dy%3Dzeros%283%2C1%29%3B+++++++dy%281%29%3Dy%282%29%2Ay%283%29%3B+++++++dy%282%29%3D-y%281%29%2Ay%283%29%3B+++++++dy%283%29%3D-0.51%2Ay%281%29%2Ay%282%29%3B2%E3%80%81%E5%8F%96t0%3D0%2Ctf%3D12%2C%E8%BE%93%E5%85%A5%E5%91%BD%E4%BB%A4%EF%BC%9A++++%5BT%2CY%5D%3Dode45%28%27rigid%27%2C%5B0+12%5D%2C%5B0+1+1%5D%29)
matlab微分方程1、建立m-文件rigid.m如下: function dy=rigid(t,y) dy=zeros(3,1); dy(1)=y(2)*y(3); dy(2)=-y(1)*y(3); dy(3)=-0.51*y(1)*y(2);2、取t0=0,tf=12,输入命令: [T,Y]=ode45('rigid',[0 12],[0 1 1])
matlab微分方程
1、建立m-文件rigid.m如下:
function dy=rigid(t,y)
dy=zeros(3,1);
dy(1)=y(2)*y(3);
dy(2)=-y(1)*y(3);
dy(3)=-0.51*y(1)*y(2);
2、取t0=0,tf=12,输入命令:
[T,Y]=ode45('rigid',[0 12],[0 1 1]);
plot(T,Y(:,1),'-',T,Y(:,2),'*',T,Y(:,3),'+')
我 1.想问下在句中解微分方程m文件中的dy=zeros(3,1);是什么意思?
2.另外 在句子 plot(T,Y(:,1),'-',T,Y(:,2),'*',T,Y(:,3),'+')中 Y(:,1),Y(:,2).是为什么这么分?
3.tf是随便找的值么,原题中是没有.
matlab微分方程1、建立m-文件rigid.m如下: function dy=rigid(t,y) dy=zeros(3,1); dy(1)=y(2)*y(3); dy(2)=-y(1)*y(3); dy(3)=-0.51*y(1)*y(2);2、取t0=0,tf=12,输入命令: [T,Y]=ode45('rigid',[0 12],[0 1 1])
dy=zeros(3,1);是占个空位置.
以下程序和你的程序是等效的,比较一下就可以体会出来.
function hh
[T,Y]=ode45(@rigid,[0 12],[0 1 1]);
plot(T,Y(:,1),'-',T,Y(:,2),'*',T,Y(:,3),'+')
figure
plot(T,Y)
function dy=rigid(t,y)
%dy=zeros(3,1);
dy1=y(2)*y(3);
dy2=-y(1)*y(3);
dy3=-0.51*y(1)*y(2);
dy=[dy1;dy2;dy3]