如何用matlab画一个微分方程组的图,具体要求如下
来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/06/25 06:26:19
如何用matlab画一个微分方程组的图,具体要求如下
![](http://img.wesiedu.com/upload/4/b1/4b1c9a101eb2b6b830e2d7128d1366b8.jpg)
![](http://img.wesiedu.com/upload/4/b1/4b1c9a101eb2b6b830e2d7128d1366b8.jpg)
![如何用matlab画一个微分方程组的图,具体要求如下](/uploads/image/z/15100759-55-9.jpg?t=%E5%A6%82%E4%BD%95%E7%94%A8matlab%E7%94%BB%E4%B8%80%E4%B8%AA%E5%BE%AE%E5%88%86%E6%96%B9%E7%A8%8B%E7%BB%84%E7%9A%84%E5%9B%BE%2C%E5%85%B7%E4%BD%93%E8%A6%81%E6%B1%82%E5%A6%82%E4%B8%8B)
使用ode系列的函数求解微分方程组.
d = @(t,x)[x(2); -x(1).^2-2*x(1)-x(2)/2];
[t x] = ode45(d,[0 5.1],[0; 4]); % 这个tfinal自己调出来的一个近似值
plot(x(:,1),x(:,2))
再问: 那X1(0)=0,X2(0)=8时怎么画呢?X1(0)=-5,X2(0)=2时怎么画呢?
再答: ode45最后一个参数表示初始值,你改成相应的[0; 8]、[-5; 2]即可。tfinal的取值要自己调下,使得x不会太大
d = @(t,x)[x(2); -x(1).^2-2*x(1)-x(2)/2];
[t x] = ode45(d,[0 5.1],[0; 4]); % 这个tfinal自己调出来的一个近似值
plot(x(:,1),x(:,2))
![](http://img.wesiedu.com/upload/d/22/d22a6d3f2dc361ad88ddb6a9cc869a29.jpg)
再问: 那X1(0)=0,X2(0)=8时怎么画呢?X1(0)=-5,X2(0)=2时怎么画呢?
再答: ode45最后一个参数表示初始值,你改成相应的[0; 8]、[-5; 2]即可。tfinal的取值要自己调下,使得x不会太大