matlab 高手请进!!!

用ode45 ode23 和ode113解决下列微分方程(请给出m文件代码 程序代码 流程图)
(1)y'=x-y,y(0)=1,0<x<3(要求输出x=1,2,3点的y值)
(2)x'=2x+3y,y'=2x-y,x(0)=-2.7,y(o)=2.8,0<t<10,作相平面图
(3)y"-0.01(y') ²+2y=sin(t),y(0)=0,y'(0)=1,0<t<5,作y的图

如有问题,可加qq1318305572,详聊,或者百度hi我

可追加分

function ydot = myeq(t,y)
x=2;%在这里改x=1 2 3就行了
ydot = x-y;

end

主程序:
x0=[0];
tspan = [0,30];
[tt,yy]=ode45(@myeq,tspan,x0)

第二个
function dx = myeq(t,x)

dx(1)=2*x(1)+3*x(2);
dx(2)=2*x(1)-x(2);
dx=dx(:);

end

主程序
x0=[2.7;2.8];
tspan = [0,10];
[tt,yy]=ode45(@myeq,tspan,x0)
plot(yy(:,1),yy(:,2)) ;

第三个
function dx = myeq(t,x)

dx(1)=x(2);
dx(2)=sin(t)-2*x(1)+0.01*x(2)^2;
dx=dx(:);

end
主程序
x0=[0;1];
tspan = [0,5];
[tt,yy]=ode45(@myeq,tspan,x0)
plot(yy(:,1),yy(:,2)) ;追问

你这全是ode45,请问ode23,ode113和ode45 一样吗,直接代替就行吗?

追答

把ode45(@myeq,tspan,x0)改一下就行了

温馨提示:答案为网友推荐,仅供参考