请问如何实现matlab解一阶微分方程组(用其自身命令如ode45等怎么写能运行出结果)我不太会用matlab方程如下:dx1/dt=a*(x2-x1)+x4; dx2/dt=d*x1-x1*x3+c*x2; dx3/dt=x1*x2-b*x3; dx4/dt=x2*x3+r*x4; 其中a,b,c,d,r均已知.
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/12 13:14:00
![请问如何实现matlab解一阶微分方程组(用其自身命令如ode45等怎么写能运行出结果)我不太会用matlab方程如下:dx1/dt=a*(x2-x1)+x4; dx2/dt=d*x1-x1*x3+c*x2; dx3/dt=x1*x2-b*x3; dx4/dt=x2*x3+r*x4; 其中a,b,c,d,r均已知.](/uploads/image/z/3688013-29-3.jpg?t=%E8%AF%B7%E9%97%AE%E5%A6%82%E4%BD%95%E5%AE%9E%E7%8E%B0matlab%E8%A7%A3%E4%B8%80%E9%98%B6%E5%BE%AE%E5%88%86%E6%96%B9%E7%A8%8B%E7%BB%84%28%E7%94%A8%E5%85%B6%E8%87%AA%E8%BA%AB%E5%91%BD%E4%BB%A4%E5%A6%82ode45%E7%AD%89%E6%80%8E%E4%B9%88%E5%86%99%E8%83%BD%E8%BF%90%E8%A1%8C%E5%87%BA%E7%BB%93%E6%9E%9C%29%E6%88%91%E4%B8%8D%E5%A4%AA%E4%BC%9A%E7%94%A8matlab%E6%96%B9%E7%A8%8B%E5%A6%82%E4%B8%8B%3Adx1%2Fdt%3Da%2A%28x2-x1%29%2Bx4%3B+dx2%2Fdt%3Dd%2Ax1-x1%2Ax3%2Bc%2Ax2%3B+dx3%2Fdt%3Dx1%2Ax2-b%2Ax3%3B+dx4%2Fdt%3Dx2%2Ax3%2Br%2Ax4%3B+%E5%85%B6%E4%B8%ADa%2Cb%2Cc%2Cd%2Cr%E5%9D%87%E5%B7%B2%E7%9F%A5.)
请问如何实现matlab解一阶微分方程组(用其自身命令如ode45等怎么写能运行出结果)我不太会用matlab方程如下:dx1/dt=a*(x2-x1)+x4; dx2/dt=d*x1-x1*x3+c*x2; dx3/dt=x1*x2-b*x3; dx4/dt=x2*x3+r*x4; 其中a,b,c,d,r均已知.
请问如何实现matlab解一阶微分方程组(用其自身命令如ode45等怎么写能运行出结果)
我不太会用matlab
方程如下:
dx1/dt=a*(x2-x1)+x4;
dx2/dt=d*x1-x1*x3+c*x2;
dx3/dt=x1*x2-b*x3;
dx4/dt=x2*x3+r*x4;
其中a,b,c,d,r均已知.
请问如何实现matlab解一阶微分方程组(用其自身命令如ode45等怎么写能运行出结果)我不太会用matlab方程如下:dx1/dt=a*(x2-x1)+x4; dx2/dt=d*x1-x1*x3+c*x2; dx3/dt=x1*x2-b*x3; dx4/dt=x2*x3+r*x4; 其中a,b,c,d,r均已知.
在Matlab下输入:edit,然后将下面两行百分号之间的内容,复制进去,保存
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function dxdt=zhidao_rk4_5(t,x)
global a b c d r
x1=x(1);
x2=x(2);
x3=x(3);
x4=x(4);
dxdt=[
a*(x2-x1)+x4;
d*x1-x1*x3+c*x2;
x1*x2-b*x3;
x2*x3+r*x4;
];
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
在Matlab下面输入:
global a b c d r
a=1;
b=2;
c=3;
d=4;
r=5;
t_end=10; %时间计算的终点,即算到这个时间为止
x0=[1;1;1;1]; %x的初始值
[t,x]=ode45('zhidao_rk4_5',[0,t_end],x0);