求教大神怎样用matlab编写程序解这个二阶微分方程组呢?谢谢!

初始条件V0=1500m/s,m=50kg

    首先z1z2z3的初值应该给出的, 否则无法求解,你少定解条件!!!我自己给了一个初始条件令他们都为0,取100个时间点为区间,然后进行了求解,结果如下: 你这个方程组好像结构动力学中的mck方程,结果类似正弦波,程序你可以私信我,建议你去再...

追问

请问您是用欧拉法离散化的么?

请问您是用欧拉法离散化的么?

请问您是用欧拉法离散化的么?

请问您是用欧拉法离散化的么?

温馨提示:内容为网友见解,仅供参考
无其他回答

如何用matlab求二阶微分方程?
第一步、分析微分方程的特点确定模块 我们将y"+4y'+4y=cos2t方程改写成y"=cos2t-4y'-4y,从右边可知,式子是由cos2t外加载信号,一阶导数项和一次变量组成。所以我们,可以用下列功能模块来搭建其仿真模型 cos2t:使用Fcn模块和Clock模块;y':使用lntegrator模块;y':使用lntegrator模块;-4:...

如何用matlab求解一个二阶常系数微分方程组
第一种方法:利用dsolve函数求微分方程的符号解(通解):对于一些不是很难,要求出通解的微分方程,用dsolve函数求解。1、 打开Matlab软件-->点击新建脚本菜单,新建一个脚本文件用于编写微分方程求解程序。2、 输入微分方程求解程序-->点击保存-->点击运行。3、在matlab的命令窗口即可看到求解结果,是...

如何用matlab求解二阶微分方程,以及程序实例
1、首先看一下matlab求解方程的方法,首先指明所解方程的变量,然后指明方程,未知数和限制条件,最后求解方程。2、在matlab命令行窗口中输入symsx[x,params,conds]=solve(sin(x)==1,'ReturnConditions', true),按回车键可以得到方程解。3、转换一下,可以看到sin(x)=1方程的解是如下图所示 。4、...

如何用matlab求解一个二阶常系数微分方程组
1. 建立M文件 function dy=vdp(t,y)dy=[y(2);1000*(1-y(1)^2)*y(2)-y(1);];2. 调用MATLAB 函数ODE15S [T,Y]=ode15s('vdp',[0 1000],[2 0]);plot(T,Y(:,1));图像为:

二阶微分方程组的MATLAB解法
一个二阶微分方程:y''+y'+y=sin(t)初始条件为y(0)=5,y'(0)=6。过程:先降阶为一阶微分方程组 y'=z z'=-z-y+sin(t)编制如下函数m文件 function dy=weifen(t,x)dy=zeros(2,1);y=x(1)z=x(2)dy(1)=x(2);dy(2)=sin(t)-x(2)-x(1);然后用ode45解方程 [t,y]=...

如何用matlab求解一个二阶常系数微分方程组
用命令:dsolve('S','s1','s2',…,'x')其中S 为方程s1,s1,s3,…为初始条件x 为自变量方程S 中用D 表示求导 数D2,D3,…表示二阶三阶等高阶导数初始条件缺省时给出带任意常数 C1,C2,..的通解自变量缺省值为t 也可求解微分方程组 例 1、dsolve('Dy=1+y^2')结果ans =tan(t+C1)2...

如何用matlab求解二阶微分方程,以及程序实例
如何用matlab求解二阶微分方程,对于一般的微分方程(组)可以用dsolve()函数求得其解析解或数值解,对于较复杂的微分方程(组)可以用ode45()函数求得其数值解。例如:微分方程,用dsolve和ode45计算t=0.1,0.2时y的值。y = dsolve('D2y+0.5*Dy+2*y =0','Dy(0)=0,y(0)=1')t=0....

如何用Matlab编程计算二阶常微分方程组的数值解
用Matlab编程计算二阶常微分方程组的数值解的方法有很多种,最常用有ode45函数。ode45函数的使用格式:【t,y】=ode45(odefun,tspan,y0)例如:>> odefun=@(t,y)[y(1)+2*y(2);3*y(1)+2*y(2)]; %自定义函数 >> tspan=[0 20]; %时间 >> y0=[1 1]; %初值 >> [t,y]= ode45...

请问老师这个题用matlab怎么做?
题主给出的二阶微分方程组,用matlab求解其精确解和数值解,可以使用dsolve()函数得到其解析值,使用ode()函数得到其数值解。一、使用dsolve()函数求解 第一步,对x(t)、y(t)进行声明变量,即 syms x(t) y(t)第二步,使用diff()函数分别对x(t)、y(t)进行导数计算 Dy=diff(y,t,1...

matlab 二阶微分方程 求解
1、建立微分方程的自定义函数,odefun(容x,y)2、当a=10、θ=π\/6时,执行下列代码 theta=pi\/6;[x,y]= ode45(@odefun,[0,0.18],[0.5,theta])plot(x,y),grid on legend('y (x)','y’(x)')xlabel('x'),ylabel('y (x),y’(x)')figure(2)plot(y(:,1),y(:,2))...

相似回答