clzm.net
当前位置:首页 >> MATLAB解常微分方程组并画图的语句 >>

MATLAB解常微分方程组并画图的语句

说明 求解常微分方程一般使用ode系列函数(其中最常用的是ode45),基本做法就是把微分方程用函数表示出来,然后调用ode函数求解即可。对于本题而言,使用匿名函数描述微分方程更为方便一些。 参考代码 k0=8; k1=1; K=1; k2=5; n=2; % 常数定义d...

上面两题用dsolve都解不出,用ode45数值解法如下: 1题中x1=i,x2=s,则: syms x1(t) x2(t) lamda=0.5;u=0.1; V = odeToVectorField(diff(x1) ==lamda*x1*x2-u*x2,diff(x2) ==-lamda*x1*x2+0.1) M = matlabFunction(V,'vars', {'t','Y'}) %计算...

问题 1.(c*x(4)^2+d*(1-x(4))^2).*x(2)+(a_2-x(2)).*x(2)+c_1*x(1); a_2没定义 2 a=-1;b=-1;c=-5;d=-5;c_1=0.2;c_2=1; 并没有传递给ode函数dx 可以这样写 a=-1;b=-1;c=-5;d=-5;c_1=0.2;c_2=1; odefun=@(t,x)[ (a*x(3)^2+b*(1-x(3))^2).*x(1)+(1-...

你的常微分方程组的自定义函数表述有问题。 问题一:像下列三个中,不能在等式的右边出现di(1),di(2),di(3)变量。 di(1)=(u1-R1*i(1)-M12*di(2)-M13*di(3))/L1;di(2)=(0-R2*i(2)-M12*di(1)-M23*di(3))/L2;di(3)=(0-R3*i(3)-M13*di(1)-M23*di(2...

function y=fun(t,y,flag) y=[y(1); (1-y(1)/20)*y(1);]; end y0=[1,0]; [t,y]=ode45(@fun,[0:0.01:8],y0,[ ]); y(1)就是y,y(2)就是y'。

http://www.docin.com/p-341482639.html 参考一下上文吧 里面写了如何使用 matlab 符号工具箱 求解微分方程 挺明了的

具体问题具体分析

这题的符号解很复杂,maple可以求出来 我可以用matlab帮你求数值解,但是你要告诉我求解区间就是y(t),t的变化范围

可以借助于嵌套函数或匿名函数实现附加参数的传递,例如 function main y0 = [1.4; 0.1; 0.1]; A = linspace(eps, 10, 20); Y = A * NaN; for ii = length(A) a = A(ii); y = ode45(@eq2, [0 a], y0); Y(ii) = y(end, 1); end plot(A, Y) functi...

s=dsolve(‘方程1’, ‘方程2’,…,’初始条件1’,’初始条件2’ …,’自变量’) 用字符串方程表示,自变量缺省值为t。导数用D表示,2阶导数用D2表示,以此类推。S返回解析解。在方程组情形,s为一个符号结构。 [tout,yout]=ode45(‘yprime’,[t0,tf],y0) 采...

网站首页 | 网站地图
All rights reserved Powered by www.clzm.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com