用Matlab解微分方程.pdf
文本预览下载声明
用 Matlab 解微分方程
一、微分方程的解析解
求微分方程(组)的解析解用函数dsolve 。
dsolve(‘方程1’, ‘方程2’,…‘方程n’, ‘初始条件’, ‘ 自变量’)
1 du 2
.
例 求 1 u 的通解
dt
解 输入命令:dsolve(Du=1+u^2,t)
结果:u =tan(t+C1)
2
例 求微分方程的特解.
d y 2 dy y
4 29 0
dx 2 dx
y y
(0) 0, (0) 15
解
输入命令: y=dsolve(D2y+4*Dy+29*y=0,y(0)=0,Dy(0)=15,x)
结果 : y =3*exp(-2*x)*sin(5*x)
例 3 求微分方程组的通解.
dx
2x 3y 3z
dt
dy
4x 5y 3z
dt
dz
4 4 2
x y z
dt
解 输入命令 :
[x,y,z]=dsolve(Dx=2*x-3*y+3*z,Dy=4*x-5*y+3*z,Dz=4*x-4*y+2*z, t) ;
结果为:
x =exp(2*t)*C1+C2*exp(-t)-C2*exp(2*t)+exp(2*t)*C3-3*exp(-t)
y =-C1*exp(-2*t)+exp(2*t)*C1+C2*exp(-2*t)+C2*exp(-t)-
C2*exp(2*t)+exp(2*t)*C3-C3*exp(-t)
z =-C1*exp(-2*t)+exp(2*t)*C1-C2*exp(2*t)+C2*exp(-
2*t)+exp(2*t)*C3
二、微分方程的数值解
(一)常微分方程数值解的定义
在生产和科研中所处理的微分方程往往很复杂且大多
得不出一般解。而在实际上对初值问题,一般是要求得
到解在若干个点上满足规定精确度的近似值,或者得到
一个满足精确度要求的便于计算的表达式。
因此,研究常微分方程的数值解法是十分必要的。
y f(x, y)
对常微分方程: ,其数值解是指由初始点 开始
x 0
y(x ) y
0 0
的若干离散的x xx值处,即对x x ,求出准确值
0 1 2 n y(x ), 1
y x y x 的相应近似值y y 。
( ), , ( ) 2 n y , , 1 , 2 n
(二)建立数值解法的一些途径
设 可用以下离散化方法求解微分方程:
, x
显示全部