Matlab无法求出解析解的微分方程,怎样作出函数图像?

来源:百度知道 编辑:UC知道 时间:2024/06/24 07:37:38
比如这个微分方程:dequ='D2x+Dx-x+x^3=cos(t)'
求不出解析解,报告出错。但我仍然想作出x关于t的函数图像,我想这时可以通过数值计算,而不是求出具体解析式再作图。这种小问题Matlab应该是能解决的,但我不知如何做到。请用过Matlab的告诉我。

编一个M文件,有欧拉算法什么的。自己找本书看看。

%令:
%x'=y1
%x=y2
function dx=myfunc(t,x)
dx(1)=cos(t)-x(1)+x(2)-x(2).^3;%x''
dx(2)=x(1);
end
%%%%%%%%%%保存为myfunc.m%%%%%%%%%%%%%%%%

%在命令窗口输入:
clear
t=0:0.1:10; %t范围
x0=[1,0];%零点:x'(0)=1,x(0)=0,自定义
[t,x]=ode45('myfunc',t,y0);
plot(t,x(:,2),'r',t,x(:,1),'b')%t,x; t,x'关系图