matlab|dsolve解决常微分初值与讲解(含实例使用)

本博文源于matlab中dsolve命令,这个命令主要解决常微分方程。涉及求解

dsolve('eqn1','eqn2',...,t)

例子:求解x’(t)+4x(t)=sin2t

>> syms x
>> dsolve('Dx+4*x=sin(2*t)')
 
ans =
 
-1/10*cos(2*t)+1/5*sin(2*t)+exp(-4*t)*C1
 

例子:对于方程降阶x’(t)=t

 
>> dsolve('Dx=t')
 
ans =
 
1/2*t^2+C1
 
 
>> 

例子:求解x’’(t)+2x’(t)-3x(t)=e^t

>> dsolve('D2x+2*Dx-3*x=exp(t)')
 
ans =
 
exp(-3*t)*C2+exp(t)*C1+1/4*t*exp(t)
 
 
>> 

例子:求解常微分方程组:x’(t)=-3y(t) y’(t)=4x(t)

>> syms t;
>> [x,y] =dsolve('Dx=-3*y','Dy=4*x')
 
x =
 
C1*sin(2*3^(1/2)*t)+C2*cos(2*3^(1/2)*t)
 
 
 
y =
 
-2/3*3^(1/2)*(cos(2*3^(1/2)*t)*C1-C2*sin(2*3^(1/2)*t))
 
 
>> 

例子:求解常微分方程初值问题

在这里插入图片描述

>> syms x 
>> dsolve('D2y+3*Dy+2*y=sin(2*x)','y(0)=1','Dy(0)=1')
 
ans =
 
1/2*sin(2*x)-exp(-2*t)*(-1/2*sin(2*x)+2)+exp(-t)*(-sin(2*x)+3)
 
 
>> 

猜你喜欢

转载自blog.csdn.net/m0_37149062/article/details/106852957#comments_22009606
今日推荐