lzth.net
当前位置:首页 >> mAtlAB中求微分方程组通解 >>

mAtlAB中求微分方程组通解

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

一、理论解,用dsolve函数(在command window 中输入doc dsolve可以查看帮助) 示例: 代码: [x,y]=dsolve('D2x+2*Dx=x+2*y-exp(-t)','Dy=4*x+3*y+4*exp(-t)') 二、数值解,用ode45,或ode23, ode15s其他函数。(在command window 中输入doc od...

在Matlab下输入:edit zhidao_feiying.m,然后将下面两行百分号之间的内容,复制进去,保存 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% function y=zhidao_feiying(t,x) a=1; b=2; c=3; d=4; %%比方说 %f=a*x+y-z; %g=b*sin(x*y)-c*cos...

可这样: >> syms Vx Vy Vz b m y1(t) y2(t) y3(t) y4(t) y5(t) y6(t) y1=dsolve(diff(y1)==Vx) y2=dsolve(diff(y2)==-b/m*(Vx^2+Vy^2+Vz^2)*Vx) y3=dsolve(diff(y3)==Vy) y4=dsolve(diff(y4)==-b/m*(Vx^2+Vy^2+Vz^2)*Vy) y5=dsolve(diff(y5)==V...

这个方程要解出来还要初始条件吧 不妨设(x(0),y(0))=(A,B); 还有用ode45只能得到数值解,不能给出解析式表达 那么先建立一个函数文件 test_fun.m function dx=tsst_fun(x,t) dx(1)= c-b*x(1)-w*x(1)*x(2); dx(2)=w*x(1)*x(2)-(b+m)*x(2); 那么调...

没解析解你肯定得用数值解。以下是步骤。 第一步,在Matlab里写m-file,命名微分方程对应的函数: function f=myfun(t,x) f = [-x(1)+x(2)^2; -2*x(2)+x(1)^2]; 这里的x(1)就是你这儿的x, x(2)就是你这儿的y。写完后自动保存,不要对保存目录做...

1、对于解析值,你可以用dsolve()函数求解。如求微分方程x*y''+x﹡(y')^2-y'=0的解析解 >> syms y(x) >>Dy = diff(y);D2y = diff(y, 2); >>dsolve(x*D2y+x*(Dy)^2-Dy==0,'x') 运行结果 2、对于数值解,你可以查看二阶常微分方程这个例子,http...

上面两题用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'}) %计算...

这说明此微分方程没有显示解,应用数值方法求解,例如ode45等函数 就一个例子(选自matlab帮助文档) 解入下微分方程组 1,建立方程组函数 function dy = rigid(t,y)dy = zeros(3,1); % a column vectordy(1) = y(2) * y(3);dy(2) = -y(1) * y(3);d...

可以借助于嵌套函数或匿名函数实现附加参数的传递,例如 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...

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