问题标题:
matlab解微分方程dy/dt=k*x+k*y;K=1;x=[010];这个方程用MATLAB怎么解?
问题描述:
matlab解微分方程
dy/dt=k*x+k*y;K=1;x=[010];
这个方程用MATLAB怎么解?
金逸文回答:
symsxky
y=dsolve('Dy=k*x+k*y','x')
C3=0
k=1
x=0:0.1:10;
y=eval(y);
这里我假设了一个初值,你需要给出初值才能计算!
祝你学习愉快!
金炽家回答:
我用plot(x,y),为什么不能作图?另外用ode45(@(t,x)k*x+k*y,[0,10],0);和这个用什么区别
金逸文回答:
可以作图的,我试过了的,ode45函数是数值求解微分方程,dsolve求取的是解析解!
金炽家回答:
我用plot(x,y);试过了不能作图,>>plot(x,y)???Errorusing==>plotConversiontodoublefromsymisnotpossible.
金逸文回答:
你的matlab的版本太低了吧,我这里真是没有问题的!
金炽家回答:
>>y=eval(y);???Undefinedfunctionorvariable'C1'.Errorin==>sym.evalat9s=evalin('caller',map2mat(char(x)));这个有错误我用的是MATLAB7
金逸文回答:
你给方程一个初值吧,然后使用下面的函数段!symsxkyy=dsolve('Dy=k*x+k*y','y(0)=1','x')k=1x=0:0.1:10;y=eval(y);plot(x,y)
点击显示
数学推荐
热门数学推荐