作业帮 > 综合 > 作业

用matlab的ode45求解如下微分方程的程序

来源:学生作业帮 编辑:百度作业网作业帮 分类:综合作业 时间:2024/05/15 14:57:50
用matlab的ode45求解如下微分方程的程序
方程很简单:
dx/dt=3x+cos(t)+sin(2t)
x的初值为2,t的范围[0 10],时间步长h=0.2
然后我用的程序如下
function xx=lgkt(t,x);
xx=3*x+cos(t)+sin(2*t);
[t,x]=ode45(@lgkt,[0 10],[2]);
plot(t,x,'-o');
然后提示我说x没有被定义!
我是按照matlab的参考来的,也不知道哪里错了.另外,我不会在里面定义时间步长.多元的微分方程按照例子可以写出,但一元的弄不出来了.恳请大家帮我改正一下,最好详细点,说明一下注意的事项,
用matlab的ode45求解如下微分方程的程序
你把lgkt中的x改成x(1)试试看,我试过应该没问题的
function xx=lgkt(t,x)
xx=3*x(1)+cos(t)+sin(2*t);
[t,x]=ode45(@lgkt,[0 10],[2]);
plot(t,x,'-o');