如何用matlab求解一个二阶常系数微分方程组

来自:    更新日期:早些时候
matlab中dsolve函数能解决二元二阶常系数微分方程组吗 ?~

一般是能解决的,但要看实际情况,也就是式子复杂程序。最好能把式子写出来看看。

一、理论解,用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 ode45可以查看帮助)
示例:

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));
图像为:

第一种方法:利用dsolve函数求微分方程的符号解(通解):对于一些不是很难,要求出通解的微分方程,用dsolve函数求解。

1、 打开Matlab软件-->点击新建脚本菜单,新建一个脚本文件用于编写微分方程求解程序。

2、  输入微分方程求解程序-->点击保存-->点击运行。

3、在matlab的命令窗口即可看到求解结果,是一个关于参数a,b的表达式

第二种方法:利用Matlab中的solver函数(包括ode45、ode23、ode15s等)来求解微分方程的数值解,这种方法是最常用的方法,对于dsolve函数难以求解的方程就可以利用这种方法求解方程的数值解。

1、  打开Matlab-->新建一个脚本文件用于编写求解程序。

2、 在脚本文件中输入求解程序-->点击保存-->点击运行。

3、 这里需要先编写一个函数文件用于表示方程-->点击保存-->编写求解程序-->点击保存-->点击运行。

4、在figure页面就可以看到所求解的微分方程的图形。



一、理论解,用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 ode45可以查看帮助)

示例:

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));

图像为:



用命令: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、y=dsolve('Dy=1+y^2','y(0)=1','x')
结果y =tan(x+1/4*pi)
3、x=dsolve('D2x+2*D1x+2*x=exp(t)','x(0)=1','Dx(0)=0')
结果x =1/5*exp(t)+3/5*exp(-t)*sin(t)+4/5*exp(-t)*cos(t)
4、S=dsolve('Df=3*f+4*g','Dg=-4*f+3*g') %解微分方程组
S =
f: [1x1 sym]
g: [1x1 sym]
计算结果返回在一个结构 S 中为了看到其中 f,g 的值有如下指令
f=S.f
g=S.g
f =exp(3*t)*(cos(4*t)*C1+sin(4*t)*C2)
g =-exp(3*t)*(sin(4*t)*C1-cos(4*t)*C2)


如何用matlab求解一个二阶常系数微分方程组视频

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

  • 15235955290如何用matlab求解一个二阶常系数微分方程组
    邹治应二、数值解,用ode45,或ode23, ode15s其他函数。(在command window 中输入doc ode45可以查看帮助)示例: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));图...

  • 15235955290matlab想用ode45求解一个二阶常微分方程
    邹治应第一步:自定义微分方程函数odefun,其内容为:```matlab function dydx = bvpfcn(x,y)dydx = [y(2) - y(1)];end ```第二步:自定义边界条件函数bcfun,其内容为:```matlab function res = bcfcn(ya, yb)res = [ya(1), yb(1) - 2];end ```第三步:创建初始估计值函数guess...

  • 15235955290如何用matlab求解一个二阶常系数微分方程组
    邹治应2、y=dsolve('Dy=1+y^2','y(0)=1','x')结果y =tan(x+1\/4*pi)3、x=dsolve('D2x+2*D1x+2*x=exp(t)','x(0)=1','Dx(0)=0')结果x =1\/5*exp(t)+3\/5*exp(-t)*sin(t)+4\/5*exp(-t)*cos(t)4、S=dsolve('Df=3*f+4*g','Dg=-4*f+3*g') %解微分方程组...

  • 15235955290怎么用matlab解决一元二次方程问题?
    邹治应(1)创建符号函数f=ax^2+bx+c,使用赋值变量来定义其一元二次方程。syms a b c x %声明变量 func=a*x^2+b*x+c %将表达式赋值给变量func (2)求f=2的解,使用solve函数求其x的值。x=solve(func==2,[x])%求f=2时的x值 (3)执行上述代码,即可得到x的两个解。

  • 15235955290如何使用matlab求解一个二元二次方程组的问题?
    邹治应1、你给solve函数输入公式时是不用加单引号的 直接输入就行,加了单引号就变成字符串了,所以MATLAB说你是无效表达 2、在使用solve函数时u、w是两个符号变两,应该先定义:syms u w 程序应改为:syms u w aF=0.8;af=-0.02;aB=-0.6;v0=12.26;T=104;S=1347.1;a1=aF+af;a2=af;a3...

  • 15235955290怎样用Matlab解一个二元二次方程组
    邹治应方法:syms a b c d x y;solve('(x-0.5)^2\/a^2-y^2\/b^2=1 ', '(y-0.5)^2\/c^2-x^2\/d^2=1')把上面的命令复制粘贴到matlab的command windows里就行了。你这是两条双曲线求交点,因此应该有四个解。如果用matlab符号解得话,一般的计算机根本受不了,太慢了。所以没给你结果...

  • 15235955290matlab怎么求解一元二次方程的方程组啊!
    邹治应1、首先看一下matlab求解方程的方法,指明所解方程的变量,然后指明方程,未知数和限制条件,最后求解方程。2、来求解sin(x)=1方程,在matlab命令行窗口中输入symsx [x,params,conds]=solve (sin(x)==1,'ReturnConditions', true) ,按回车键可以得到方程解,如下图所示。3、转换一下,可以看到sin...

  • 15235955290怎么用matlab解一元二次方程
    邹治应1、首先打开matlab2017版软件,新建一个空白的文件:2、然后在软件中输入代码,首先定义一元二次方程的3个参数,然后定义方程的判别式,接着计算方程的两个根,最后用disp函数输出即可:3、最后运行程序,输入方程的3个系数,即可得到根的结果:

  • 15235955290matlab想用ode45求解一个二阶常微分方程
    邹治应1、首先我们应该理清ode函数应用条件,由于二阶常微分方程的解有两个变量(y和y'),一般来说,给出的初始条件为 y(0)=某值和y'(0)=某值,这类问题是适合用ode函数求解。2、对于题主提出另一种初始条件(同一变量的),即y(0)=某值,y(10)=某值,则不能用ode函数,而...

  • 相关主题精彩

    版权声明:本网站为非赢利性站点,内容来自于网络投稿和网络,若有相关事宜,请联系管理员

    Copyright © 喜物网