微分方程求解

微分方程求解
微分方程求解

微分方程求解

一、 实验目的与要求

1.掌握用Matlab 求微分方程及其方程组解的方法; 2.学会求微分方程近似解的欧拉折线法;

3.学会建立一些简单问题的微分方程模型,并能运用Matlab 分析研究这些

问题。

二、 问题描述

对于很多实际问题,要直接找出所需的函数关系往往非常困难,但根据实际问题所提供的条件,有时却可以列出含有未知函数导数的关系式,这样的关系式就是所谓的微分方程。怎样利用微分方程求得所需未知函数,往往是我们解决实际问题经常需要面对的问题,即解微分方程。这里我们借用Matlab 对此问题进行简单探讨。 三、 问题分析

在处理关于微分方程的实际问题时,我们一般须先建立微分方程,再利用所学的数学知识解微分方程。事实上真正能找到精确解的微分方程只是很少一部分,大部分只能求近似解,即数值解。 四、 背景知识介绍

1. 求微分方程解析解的命令。 求微分方程解析解的命令为: dsolve (‘方程1’,‘方程2’,…,‘初始条件1’,‘初始条件2’,…,‘自变量’),

对于可用积分方法求解的微分方程和微分方程组,可以用dsolve 命令来求其通解和特解。

例1:要求方程043=-'+''y y y 的通解,可以输入以下语句Matlab 命令: dsolve (‘D2y+3*Dy-4*y=0’,’x ’)

运行结果:ans =C1*exp(-4*x)+C2*exp(x)

即x x e C e C y 241+=-

注:求一阶用D 表示,二阶导数用D2表示,三阶导数用D3表示,以此类推。如果自变量没有选定,默认自变量为’t ’。

例2:解方程054=+'+''y y y

dsolve ('D2y+4*Dy+5*y=0','x')

运行结果:ans =C1*exp(-2*x)*sin(x)+C2*exp(-2*x)*cos(x)

即: ()x C x C e y x c o s s i n 212+=- 例3:解方程(

)

2

212

x xe xy y x =+'+

dsolve ('(1+x^2)*Dy+2*x*y=x*exp(x^2)','x')

运行结果:ans =(1/2*exp(x^2)+C1)/(1+x^2)

即: 2

1

1212

x C e y x ++=

如果要求微分方程的初值问题:10,60240

='

==-'+''==x x y y

y y y ,可

输入以下语句

dsolve ('D2y+4*Dy-2*y=0','y(0)=6','Dy(0)=10','x') 运行结果:ans =

(3+11/6^(1/2))*exp((-2+6^(1/2))*x)+(-11/6^(1/2)+3)*exp(-(2+6^(1/2))*x)

即:()()x

62x 6261136113--+-???? ?

?-+???? ??+=e

e y 2.求微分方程数值解。

求微分方程数值解命令为ode45,ode23,ode15s 。

对于不可以用积分方法求解的微分方程初值问题,可以用ode45,ode23,ode15s 命令求特解。

例4:求微分方程3,0

22=++='=x y

x y x y y 的近似解(40≤≤x )可用下

面的命令:

function f=odefun1(x,y) f=y^2*x+y+x^2; [x,y]=ode45(‘odefun1’,[0,4],3); plot ( x , y , ‘ r - ’ )

输出结果为:

例5:解初值问题()10,1=++-='y t y y dsolve('Dy=-y+t+1','y(0)=1')

输出结果:ans =t+exp(-t)

即:t e t y -+=

现在我们用数值求解命令求解后和解析解比较

function f=odefun2(t,y) f=-y+t+1;

t=0:0.1:1;y=t+exp(-t);plot(t,y,'b-') hold on

[t,y]=ode45('odefun2',[0,1],1); plot(t,y,'r.')

hold off

输出结果:

例6:求初值问题()()1,1,02sin ='==++''ππy y x y y 解:设y y y y '==21,,则原方程可化为

()()???

??==--='='1

,12sin 21

12

21ππy y x y y y y Matlab 语言:

function f=odefun3(x,y) f=[y(2);-y(1)-sin(2*x)];

[x,y]=ode45('odefun3',[pi,2*pi],[1,1]); plot(x,y(:,1),'r-')

输出结果:

利用ode45命令还可以求解耦合微分方程,所谓耦合微分方程,方程组中的未知函数是相互影响的,相互依赖的,其中的一个求解会影响到另一个求解,下面求一对耦合微分方程的数值解:

例7:解方程组

()()

()()()

()

?

?

?

-

-

=

'

=

'

t x

t y

t

y

t y

t

x

sin

01

.0

其中()()1.2

,

0=

=y

x

Matlab语句:function f=odefun4(t,y)

f=[y(2),-0.01*y(2)-sin(y(1))]';

[t,y]=ode15s('odefun4',[0,100],[0,2.1]); 函数()t x

x=的图像:

plot(t,y(:,1),'r-')

输出结果为:

函数()t y

y=的图像:

plot(t,y(:,2),'r-')

输出结果:

用[][]t y t x ,生成参数图形

plot(y(:,1),y(:,2),'r-')

输出结果:

五、 实验过程 1.欧拉折线法

对于初值问题()()00,,y x y y x f y ==',我们考虑函数()x y 的线性近似

()()()()000x x x y x y x L -'+=

由于函数()x y 可微,在包含的一个很小的邻域内()x L 是()x y 得很好的近似。欧拉折线法就是通过一系列的线性近似得到在较大区间内的()x y 的近似解。

第一步:设x x x ?+=01,其中很小,则

()()()()()010********,x x y x f y x x x y y x L y -+=-'+==

是()1x y 得很好的近似,在区间[]10,x x (无妨设0>?x )上()x y 能被()x L 很好的近似。

第二步:利用()11,y x 和斜率()11,y x f 来进行下一步近似,设x x x ?+=12,

()2x y 由

()()121112,x x y x f y y -+= 近似表示。

第三步:利用点()22,y x 和斜率()22,y x f ,对于x x x ?+=23,()3x y 由

()()332223,x x y x f y y -+= 近似表示。

………………

这样我们就得到一列点列()()()() 33221100,,,,,,,y x y x y x y x 。而连接这个点列的折线就是初值问题()()00,,y x y y x f y =='的一个近似解。这就是所谓的欧拉折线法。

其一般的步骤是

()()01000101,,x x y x f y y dx x x -+=+=()()

12111212,,x x y x f y y dx x x -+=+=()()

23222323,,x x y x f y y dx x x -+=+=………………

()()11111,,------+=+=n n n n n n n n x x y x f y y dx x x

例8:利用欧拉折线法球初值问题()10,1=+='y y y 的近似解。 以下是求此初值问题的Matlab 语句function odefun6(n,d) X=[0,1]; for k=1:n/d

X(k+1,1)=X(k,1)+d;

X(k+1,2)=X(k,2)+(1+X(k,2))*d; end

plot(X(:,1),X(:,2))odefun6(1,0.01)

此初值问题的精确解为12-=x e y ,以上语句可以实现对精确解和近似解

的图像进行比较。

hold on

x=0:0.01:1;

y=2*exp(x)-1;

plot(x,y,'r-')

hold off

输出结果:

2.微分方程的斜率场

'2的斜率场。

例9:求一阶微分方y

=

y+

y

x

一阶微分方程求斜率场的Matlab语句如下:function odefun7(inx,axx,iny,axy)

a=(axx-inx)/0.1;

b=(axy-iny)/0.1;

z=[inx,iny];m=1;s=1;

for j=1:b

for k=1:a

m=m+1;z(k+s,1)=z(k,1)+0.1;z(k+s,2)=z(k,2)+(j-1)*0.1; end

s=m;

end

for i=1:length(z)

x=z(i,1);y=z(i,2);

x1=x+0.1;y1=y+(y^2*x+y)*0.1;

plot([x,x1],[y,y1],'b-')

plot(z(:,1),z(:,2),'b.','Markersize',2)

hold on

end

hold offodefun7(-2,2,-2,2)

输出结果为

六、 结论与应用

研究卫星绕地球运行的轨迹。

根据牛顿第二运动定律:22dt r

d m ma F ==和万有引力定理2r mM G F -=。所以

2

r

M G

a -=,其中为地球的质量,()y x ,为卫星所在位置的坐标,2

2y x r +=。因此我们有在轴上加速度分量为x r M

G a x 3-=,在轴上加速度分量为

y r M G a y 3-=,设卫星的运动方程为()()???==t y y t x x ,则有()()???

????

-=''-=''y r M G t y x r M G t x 33。如果我们

假定卫星以初速度()s m v y /40000=在()m x 7102.40?-=处入轨,地球质量为

kg M 241097.5?=。()

2211kg /m N 10672.6G ??=-,这是一个初值问题。设y y x y y y x y '='===4321,,,微分方程可化为:

()()()()????

?

?????

???='='=?-=-='-='='='40000,00,00,102.4021

27

123

413

34231y y y y y r

M G y y r M G y y y y y Matlab 语句:

function f=odefun5(t,y,flag,G ,M) r=sqrt(y(1)^2+y(2)^2);

f=[y(3),y(4),-G*(M/r^3)*y(1),-G*(M/r^3)*y(2)]'; G=6.672e-11;M=5.97e24;

[t,y]=ode45('odefun5',[0,60*60*24*6],[-4.2e7,0,0,4000],[],G ,M); plot(y(:,1),y(:,2),'r-') hold on

[X,Y,Z]=sphere(10); axis('image') R=0.64e7;

X=R*X;Y=R*Y;z=0*Z;

surf(X,Y,Z,'FaceColor','red','EdgeColor','none');camlight right; lighting phong hold off 输出结果:

七、 练习

1.求下列微分方程的通解。 1)()024=''+'''-y y y

2)x e y y y x 2sin 52=+'-'' 3)()x e x y y y 3196+=+'-'' 2.求初值问题1,1,02sin ='

==++''==π

π

x x y y

x y y 的解。

3.求微分方程()

0cos 212=-+'-x xy y x 在初始条件10

==x y

下的精确解和用欧

拉折线法得到的近似解()10≤≤x 并作图。注意观察的选取对解的精确度的影响。

4.求微分方程组???????==+-==-+==4

,081,0300t t y y x dt

dy x y x dt

dx

的特解,并作出用[][]t y t x ,生成参数

图形。

5.请用欧拉折线法在Matlab 下编写求解一阶微分方程初值问题的程序。

6.设河边点的正对岸点为:河宽h OA =,两岸为平行直线,水流速度为米每分有一只鸭子从点游向点,设鸭子在静水中的游动速度为米每分,且鸭子游动方向始终朝着点,求鸭子游过的迹线方程。并用Matlab 作出轨迹图。

二次微分方程的通解

第六节 二阶常系数齐次线性微分方程 教学目的:使学生掌握二阶常系数齐次线性微分方程的解法,了解二阶常系数非齐 次线性微分方程的解法 教学重点:二阶常系数齐次线性微分方程的解法 教学过程: 一、二阶常系数齐次线性微分方程 二阶常系数齐次线性微分方程 方程 y py qy 0 称为二阶常系数齐次线性微分方程 其中p 、q 均为常数 如果y 1、y 2是二阶常系数齐次线性微分方程的两个线性无关解 那么y C 1y 1C 2y 2就是它的通解 我们看看 能否适当选取r 使y e rx 满足二阶常系数齐次线性微分方程 为此将 y e rx 代入方程 y py qy 0 得 (r 2 pr q )e rx 0 由此可见 只要r 满足代数方程r 2 pr q 0 函数y e rx 就是微分方程的解 特征方程 方程r 2 pr q 0叫做微分方程y py qy 0的特征方程 特征方程 的两个根r 1、r 2可用公式 2 422,1q p p r -±+-= 求出 特征方程的根与通解的关系 (1)特征方程有两个不相等的实根r 1、r 2时 函数x r e y 11=、x r e y 22=是方程的两个线性无 关的解

这是因为 函数x r e y 11=、x r e y 22=是方程的解 又x r r x r x r e e e y y )(212121-==不是常数 因此方程的通解为 x r x r e C e C y 2121+= (2)特征方程有两个相等的实根r 1r 2时 函数x r e y 11=、x r xe y 12=是二阶常系数齐次线性微分方程的两个线性无关的解 这是因为 x r e y 11=是方程的解 又 x r x r x r x r x r x r qxe e xr p e xr r xe q xe p xe 111111)1()2()()()(1211++++=+'+'' 0 )()2(121111=++++=q pr r xe p r e x r x r 所以x r xe y 12=也是方程的解 且 x e xe y y x r x r ==1112不是常数 因此方程的通解为 x r x r xe C e C y 1121+= (3)特征方程有一对共轭复根r 1, 2i 时 函数y e ( i )x 、y e (i )x 是微分方程的 两个线性无关的复数形式的解 函数y e x cos x 、y e x sin x 是微分方程的两个线性无关 的实数形式的解 函数y 1e ( i )x 和y 2e (i )x 都是方程的解 而由欧拉公式 得 y 1e ( i )x e x (cos x i sin x ) y 2e ( i )x e x (cos x i sin x ) y 1y 22e x cos x ) (2 1cos 21y y x e x +=βα y 1y 22ie x sin x ) (21sin 2 1y y i x e x -= βα 故e x cos x 、y 2e x sin x 也是方程解 可以验证 y 1e x cos x 、y 2e x sin x 是方程的线性无关解

微分方程公式运用表

微分方程公式运用表 一、 一阶微分方程 判断特征: (,)dy f x y dx = 类型一:()()dy g x h y dx =(可分离变量的方程) 解法(分离变量法): ()()dy g x dx h y =,然后两边同时积分。 类型二:()()dy P x y Q x dx +=(一阶线性方程) 解法(常数变易法):()()(())P x dx P x dx y e C Q x e dx -??=+? 类型三: (,)(,)dy f x y f tx ty dx ==(一阶齐次性方程) 解法(换元法):y u x =?令类型一 类型四:P()y=Q(x)y n dy x dx +(伯努利方程) 解法(同除法):1()()n n dy y P x y Q x dx --+=?类型二 二、 可降阶的高阶微分方程 类型一:()()n y f x = 解法(多次积分法):(1)()()n du u y f x f x dx -=? =?令多次积分求 类型二:''(,')y f x y = 解法:'(,)dp p y f x p dx =?=?令一阶微分方程 类型三:''(,')y f y y = 解法:'(,)dp dp dy dp p y p f y p dx dy dx dy =?==??令类型二 三、线性微分方程 类型一:''()'()0y P x y Q x y ++=(二阶线性齐次微分方程) 解法:找出方程的两个任意线性不相关特解:12(),()y x y x

则:1122()()()y x c y x c y x =+ 类型二:''()'()()y P x y Q x y f x ++=(二阶线性非齐次微分方程) 解法:先找出对应的齐次微分方程的通解:31122()()()y x c y x c y x =+ 再找出非齐次方程的任意特解()p y x ,则:1122()()()()p y x y x c y x c y x =++ 类型三:'''0y py q ++=(二阶线性常系数齐次微分方程) 解法(特征方程法):2 1,20p q λλλ++=?= (一)122121240x x p q y c e c e λλλλ?=->?≠?=+ (二)12120()x y c c x e λλλλ?=?==?=+ (三)12120,(cos sin )x i i y e c x c x αλαβλαβββ?

二次微分方程的通解

教学目的:使学生掌握二阶常系数齐次线性微分方程的解法,了解二阶常系数非齐 次线性微分方程的解法 教学重点:二阶常系数齐次线性微分方程的解法 教学过程: 一、二阶常系数齐次线性微分方程 二阶常系数齐次线性微分方程 方程 y py qy 0 称为二阶常系数齐次线性微分方程 其中p 、q 均为常数 如果y 1、y 2是二阶常系数齐次线性微分方程的两个线性无关解 那么y C 1y 1C 2y 2就是它的通解 我们看看 能否适当选取r 使y e rx 满足二阶常系数齐次线性微分方程 为此将 y e rx 代入方程 y py qy 0 得 (r 2 pr q )e rx 0 由此可见 只要r 满足代数方程r 2 pr q 0 函数y e rx 就是微分方程的解 特征方程 方程r 2 pr q 0叫做微分方程y py qy 0的特征方程 特征方程 的两个根r 1、r 2可用公式 2 422,1q p p r -±+-= 求出 特征方程的根与通解的关系 (1)特征方程有两个不相等的实根r 1、r 2时 函数x r e y 11=、x r e y 22=是方程的两个线性无 关的解 这是因为

函数x r e y 11=、x r e y 22=是方程的解 又x r r x r x r e e e y y )(212121-==不是常数 因此方程的通解为 x r x r e C e C y 2121+= (2)特征方程有两个相等的实根r 1r 2时 函数x r e y 11=、x r xe y 12=是二阶常系数齐次线性微分方程的两个线性无关的解 这是因为 x r e y 11=是方程的解 又 x r x r x r x r x r x r qxe e xr p e xr r xe q xe p xe 111111)1()2()()()(1211++++=+'+'' 0 )()2(121111=++++=q pr r xe p r e x r x r 所以x r xe y 12=也是方程的解 且x e xe y y x r x r ==1112不是常数 因此方程的通解为 x r x r xe C e C y 1121+= (3)特征方程有一对共轭复根r 1, 2i 时 函数y e ( i )x 、y e (i )x 是微分方程的 两个线性无关的复数形式的解 函数y e x cos x 、y e x sin x 是微分方程的两个线性无关 的实数形式的解 函数y 1e ( i )x 和y 2e (i )x 都是方程的解 而由欧拉公式 得 y 1e ( i )x e x (cos x i sin x ) y 2e ( i )x e x (cos x i sin x ) y 1y 22e x cos x ) (2 1cos 21y y x e x +=βα y 1y 22ie x sin x ) (21sin 21y y i x e x -=βα 故e x cos x 、y 2e x sin x 也是方程解 可以验证 y 1e x cos x 、y 2e x sin x 是方程的线性无关解 因此方程的通解为

(完整版)偏微分方程的MATLAB解法

引言 偏微分方程定解问题有着广泛的应用背景。人们用偏微分方程来描述、解释或者预见各种自然现象,并用于科学和工程技术的各个领域fll。然而,对于广大应用工作者来说,从偏微分方程模型出发,使用有限元法或有限差分法求解都要耗费很大的工作量,才能得到数值解。现在,MATLAB PDEToolbox已实现对于空间二维问题高速、准确的求解过程。 偏微分方程 如果一个微分方程中出现的未知函数只含一个自变量,这个方程叫做常微分方程,也简称微分方程;如果一个微分方程中出现多元函数的偏导数,或者说如果未知函数和几个变量有关,而且方程中出现未知函数对几个变量的导数,那么这种微分方程就是偏微分方程。 常用的方法有变分法和有限差分法。变分法是把定解问题转化成变分问题,再求变分问题的近似解;有限差分法是把定解问题转化成代数方程,然后用计算机进行计算;还有一种更有意义的模拟法,它用另一个物理的问题实验研究来代替所研究某个物理问题的定解。虽然物理现象本质不同,但是抽象地表示在数学上是同一个定解问题,如研究某个不规则形状的物体里的稳定温度分布问题,由于求解比较困难,可作相应的静电场或稳恒电流场实验研究,测定场中各处的电势,从而也解决了所研究的稳定温度场中的温度分布问题。 随着物理科学所研究的现象在广度和深度两方面的扩展,偏微分方程的应用范围更广泛。从数学自身的角度看,偏微分方程的求解促使数学在函数论、变分法、级数展开、常微分方程、代数、微分几何等各方面进行发展。从这个角度说,偏微分方程变成了数学的中心。

一、MATLAB方法简介及应用 1.1 MATLAB简介 MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。 1.2 Matlab主要功能 数值分析 数值和符号计算 工程与科学绘图 控制系统的设计与仿真 数字图像处理 数字信号处理 通讯系统设计与仿真 财务与金融工程 1.3 优势特点 1) 高效的数值计算及符号计算功能,能使用户从繁杂的数学运算分析中解脱出来; 2) 具有完备的图形处理功能,实现计算结果和编程的可视化; 3) 友好的用户界面及接近数学表达式的自然化语言,使学者易于学习和掌握; 4) 功能丰富的应用工具箱(如信号处理工具箱、通信工具箱等) ,

微分方程几种求解方法

第五章 控制系统仿真 §5.2 微分方程求解方法 以一个自由振动系统实例为例进行讨论。 如下图1所示弹簧-阻尼系统,参数如下: M=5 kg, b=1 N.s/m, k=2 N/m, F=1N F 图1 弹簧-阻尼系统 假设初始条件为:00=t 时,将m 拉向右方,忽略小车的摩擦阻力,m x 0)0(= s m x /0)0(=? 求系统的响应。 )用常微分方程的数值求解函数求解包括ode45、 ode23、ode113、ode15s 、ode23s 等。 wffc1.m myfun1.m 一、常微分方程的数值求解函数ode45求解 解:系统方程为 F kx x b x m =++??? 这是一个单变量二阶常微分方程。

将上式写成一个一阶方程组的形式,这是函数ode45调用规定的格式。 令: x x =)1( (位移) )1()2(? ?==x x x (速度) 上式可表示成: ??????--=??????=??? ???????)1(*4.0)2(*2.02.0)2()2()2()1(x x x x x x x && 下面就可以进行程序的编制。 %写出函数文件myfun1.m function xdot=myfun1(t,x) xdot=[x(2);0.2-0.2*x(2)-0.4*x(1)]; % 主程序wffc1.m t=[0 30]; x0=[0;0]; [tt,yy]=ode45(@myfun1,t,x0); plot(tt,yy(:,1),':b',tt,yy(:,2),'-r') hold on plot(tt,0.2-0.2*yy(:,2)-0.4*yy(:,1),'-k') legend('位移','速度',’加速度’)

偏微分方程数值解法

一、 问题 用有限元方法求下面方程的数值解 2 u u u f t ?-?+=? in (]0,T Ω? 0u = on []0,T ?Ω? ()00,u x u = in Ω 二、 问题分析 第一步 利用Green 公式,求出方程的变分形式 变分形式为:求()()21 00,;u L T H ∈Ω,使得 ()())(2 ,,,,u v u v u v f v t ???+??+= ???? ()10v H ?∈Ω (*) 以及 ()00,u x u =. 第二步 对空间进行离散,得出半离散格式 对区域Ω进行剖分,构造节点基函数,得出有限元子空间:()12,,,h NG V span ???=???,则(*)的Galerkin 逼近为: []0,t T ?∈,求()()1 0,h h u t x V H ∈?Ω,使得 ()()()()() () )(2 ,,,,h h h h h h h d u t v u t v u t v f v dt +??+= h h v V ?∈ (**) 以及()0,0h h u u =,0,h u 为初始条件0u 在h V 中的逼近,设0,h u 为0u 在h V 中的插值. 则0t ?≥,有()()1 N G h i i i u t t ξ? == ∑,0,h u =01 N G i i i ξ?=∑,代人(**)即可得到一常微分方程组. 第三步 进一步对时间进行离散,得到全离散的逼近格式 对 du dt 用差分格式.为此把[]0,T 等分为n 个小区间[]1,i i t t -,其长度1i i T t t t n -?=-= ,n t T =. 这样把求i t 时刻的近似记为i h u ,0 h u 是0u 的近似.这里对(**)采用向后的欧拉格式,即 ()()() () )(2 11 11 1 ,,,,i i i i h h h h h h h i h u u v u v u v f v t ++++-+??+ = ? h h v V ?∈ (***) i=0,1,2…,n-1. 0 h u =0,h u 由于向后欧拉格式为隐式格式且含有非线性项,故相邻两时间步之间采用牛顿迭代,即:

各种类型的微分方程及其相应解法

各种类型的微分方程及其相应解法 专业班级:交土01班 姓名:高云 学号:1201110102 微分方程的类型有很多种,解题时先判断微分方程是哪种类型,可以帮助我们更快解题,所以我们有必要归纳整理一下各类型(主要是一阶和二阶)的微分方程及其相应解法。 一、一阶微分方程的解法 1.可分离变量的方程 dx x f dy y g )()(=,或)()(y g x f dx dy = 其特点是可以把变量x 和y 只分别在等式的两边,解法关键是把变量分离后两边积分。 例1.求微分方程ydy dx y xydy dx +=+2的通解. 解 先合并dx 及dy 的各项,得dx y dy x y )1()1(2-=- 设,01,012≠-≠-x y 分离变量得 dx x dy y y 1112-=- 两端积分??-=-dx x dy y y 1112得 ||ln |1|ln |1|ln 2 112C x y +-=- 于是 2212)1(1-±=-x C y 记,21C C ±=则得到题设方程的通解 .)1(122-=-x C y 2.齐次方程 (1))(x y f dx dy = (2) )(c by ax f dx dy ++=(a ,b 均不等于0) 例2求解微分方程.2222xy y dy y xy x dx -=+- 解 原方程变形为=+--=2222y xy x xy y dx dy ,1222?? ? ??+--??? ??x y x y x y x y 令,x y u =则,dx du x u dx dy +=方程化为,1222u u u u dx du x u +--=+ 分离变量得?? ????-+--??? ??--112212121u u u u ,x dx du = 两边积分得 ,ln ln ln 2 1)2ln(23)1ln(C x u u u +=----

二阶常系数齐次线性微分方程的通解证明教学提纲

二阶常系数齐次线性微分方程的通解证明

二阶常系数齐次线性微分方程的通解证明 来源:文都教育 在考研数学中,微分方程是一个重要的章节,每年必考,其中的二阶常系数齐次线性微分方程是一个基本的组成部分,它也是求解二阶常系数非齐次线性微分方程的基础,但很多同学对其求解公式不是十分理解,做题时也感到有些困惑,为了帮助大家对其通解公式有更深的理解和更牢固的掌握,文都网校的蔡老师下面对它们进行一些分析和简捷的证明,供考研的朋友们学习参考。 一、二阶常系数齐次线性微分方程的通解分析 通解公式:设0y py qy '''++=,,p q 为常数,特征方程02=++q p λλ的特征根为 12,λλ,则 1)当12λλ≠且为实数时,通解为1212x x y C e C e λλ=+; 2)当12λλ=且为实数时,通解为1112x x y C e C xe λλ=+; 3)当12,i λλαβ=±时,通解为12(cos sin )x y e C x C x αββ=+; 证:若02=++q p λλ的特征根为12,λλ,则1212(),p q λλλλ=-+ =,将其代入方程0y py qy '''++=中得1212()y py qy y y y λλλλ''''''++=-++= 212212()()()0y y y y y y y y λλλλλλ'''''''=---=---=, 令2z y y λ'=-,则11110x dz z z z z c e dx λλλ'-=? =?=,于是121x y y c e λλ'-=,由一阶微分方程的通解公式得 221212()()()1212[][]dx dx x x x y e c e e dx C e c e dx C λλλλλλ----??=+=+?? (1)

Matlab求解微分方程(组)及偏微分方程(组)

第四讲 Matlab 求解微分方程(组) 理论介绍:Matlab 求解微分方程(组)命令 求解实例:Matlab 求解微分方程(组)实例 实际应用问题通过数学建模所归纳得到的方程,绝大多数都是微分方程,真正能得到代数方程的机会很少.另一方面,能够求解的微分方程也是十分有限的,特别是高阶方程和偏微分方程(组).这就要求我们必须研究微分方程(组)的解法:解析解法和数值解法. 一.相关函数、命令及简介 1.在Matlab 中,用大写字母D 表示导数,Dy 表示y 关于自变量的一阶导数,D2y 表示y 关于自变量的二阶导数,依此类推.函数dsolve 用来解决常微分方程(组)的求解问题,调用格式为: X=dsolve(‘eqn1’,’eqn2’,…) 函数dsolve 用来解符号常微分方程、方程组,如果没有初始条件,则求出通解,如果有初始条件,则求出特解. 注意,系统缺省的自变量为t 2.函数dsolve 求解的是常微分方程的精确解法,也称为常微分方程的符号解.但是,有大量的常微分方程虽然从理论上讲,其解是存在的,但我们却无法求出其解析解,此时,我们需要寻求方程的数值解,在求常微分方程数值解方面,MATLAB 具有丰富的函数,我们将其统称为solver ,其一般格式为: [T,Y]=solver(odefun,tspan,y0) 说明:(1)solver 为命令ode45、ode23、ode113、ode15s 、ode23s 、ode23t 、ode23tb 、ode15i 之一. (2)odefun 是显示微分方程'(,)y f t y =在积分区间tspan 0[,]f t t =上从0t 到f t 用初始条件0y 求解. (3)如果要获得微分方程问题在其他指定时间点012,,, ,f t t t t 上的解,则令 tspan 012[,,,]f t t t t =(要求是单调的). (4)因为没有一种算法可以有效的解决所有的ODE 问题,为此,Matlab 提供

常微分方程数值解

第四章常微分方程数值解 [课时安排]6学时 [教学课型]理论课 [教学目的和要求] 了解常微分方程初值问题数值解法的一些基本概念,如单步法和多步法,显式和隐式,方法的阶数,整体截断误差和局部截断误差的区别和关系等;掌握一阶常微分方程初值问题的一些常用的数值计算方法,例如欧拉(Euler)方法、改进的欧拉方法、龙贝-库塔(Runge-Kutta)方法、阿达姆斯(Adams)方法等,要注意各方法的特点及有关的理论分析;掌握构造常微分方程数值解的数值积分的构造方法和泰勒展开的构造方法的基本思想,并能具体应用它们导出一些常用的数值计算公式及评估截断误差;熟练掌握龙格-库塔(R-K)方法的基本思想,公式的推导,R-K公式中系数的确定,特别是能应用“标准四阶R-K公式”解题;掌握数值方法的收敛性和稳定性的概念,并能确定给定方法的绝对稳定性区域。[教学重点与难点] 重点:欧拉方法,改进的欧拉方法,龙贝-库塔方法。 难点:R—K方法,预估-校正公式。 [教学内容与过程] 4.1 引言 本章讨论常微分方程初值问题 (4.1.1) 的数值解法,这也是科学与工程计算经常遇到的问题,由于只有很特殊的方程能用解析方法求解,而用计算机求解常微分方程的初值问题都要采用数值方法.通常我们假定(4.1.1)中 f(x,y)对y满足Lipschitz条件,即存在常数L>0,使对,有 (4.1.2) 则初值问题(4.1.1)的解存在唯一. 假定(4.1.1)的精确解为,求它的数值解就是要在区间上的一组离散点 上求的近似.通常取 ,h称为步长,求(4.1.1)的数值解是按节点的顺序逐步 推进求得.首先,要对方程做离散逼近,求出数值解的公式,再研究公式的局部截

常微分方程解题方法总结.doc

常微分方程解题方法总结 来源:文都教育 复习过半, 课本上的知识点相信大部分考生已经学习过一遍 . 接下来, 如何将零散的知 识点有机地结合起来, 而不容易遗忘是大多数考生面临的问题 . 为了加强记忆, 使知识自成 体系,建议将知识点进行分类系统总结 . 著名数学家华罗庚的读书方法值得借鉴, 他强调读 书要“由薄到厚、由厚到薄”,对同学们的复习尤为重要 . 以常微分方程为例, 本部分内容涉及可分离变量、 一阶齐次、 一阶非齐次、 全微分方程、 高阶线性微分方程等内容, 在看完这部分内容会发现要掌握的解题方法太多, 遇到具体的题 目不知该如何下手, 这种情况往往是因为没有很好地总结和归纳解题方法 . 下面以表格的形 式将常微分方程中的解题方法加以总结,一目了然,便于记忆和查询 . 常微分方程 通解公式或解法 ( 名称、形式 ) 当 g( y) 0 时,得到 dy f (x)dx , g( y) 可分离变量的方程 dy f ( x) g( y) 两边积分即可得到结果; dx 当 g( 0 ) 0 时,则 y( x) 0 也是方程的 解 . 解法:令 u y xdu udx ,代入 ,则 dy 齐次微分方程 dy g( y ) x dx x u g (u) 化为可分离变量方程 得到 x du dx 一 阶 线 性 微 分 方 程 P ( x)dx P ( x) dx dy Q(x) y ( e Q( x)dx C )e P( x) y dx

伯努利方程 解法:令 u y1 n,有 du (1 n) y n dy , dy P( x) y Q( x) y n(n≠0,1)代入得到du (1 n) P(x)u (1 n)Q(x) dx dx 求解特征方程:2 pq 三种情况: 二阶常系数齐次线性微分方程 y p x y q x y0 二阶常系数非齐次线性微分方程 y p x y q x y f ( x) (1)两个不等实根:1, 2 通解: y c1 e 1x c2 e 2x (2) 两个相等实根:1 2 通解: y c1 c2 x e x (3) 一对共轭复根:i , 通解: y e x c1 cos x c2 sin x 通解为 y p x y q x y 0 的通解与 y p x y q x y f ( x) 的特解之和. 常见的 f (x) 有两种情况: x ( 1)f ( x)e P m ( x) 若不是特征方程的根,令特解 y Q m ( x)e x;若是特征方程的单根,令特 解 y xQ m ( x)e x;若是特征方程的重根, 令特解 y*x2Q m (x)e x; (2)f (x) e x[ P m ( x) cos x p n ( x)sin x]

偏微分方程求解方法及其比较

偏微分方程求解方法及其比较 发表时间:2008-12-11T09:32:01.530Z 来源:《科海故事博览科教创新》2008年第10期供稿作者:曹海洋吕淑娟王淑芬 [导读] 近些年来,无限维动力系统得到了很大的发展.随着对它研究的深入和计算能力的迅速提高,使得与之相关的数值研究越来越被人们关注.谱方法作为一种数值求解偏微分方程的方法,它具有无穷阶收敛性.因此,谱方法也就引起人们更多的关注. 摘要:近些年来,无限维动力系统得到了很大的发展.随着对它研究的深入和计算能力的迅速提高,使得与之相关的数值研究越来越被人们关注.谱方法作为一种数值求解偏微分方程的方法,它具有无穷阶收敛性.因此,谱方法也就引起人们更多的关注. 关键词:谱方法;偏微分;收敛;逼近; 1偏微分方程及其谱方法的介绍 偏微分方程主要借助于未知函数及其导数来刻画客观世界的物理量的一般变化规律。理论上,对偏微分方程解法的研究已经有很长的历史了。最初的研究工作主要集中在物理,力学,几何学等方面的具体问题,其经典代表是波动方程,热传导方程和位势方程(调和方程)。通过对这些问题的研究,形成了至今仍然使用的有效方法,例如,分离变量法,fourier变换法等。早期的偏微分方程研究主要集中在理论上,而在实际操作中其研究方法和研究结果都难以得到广泛的应用。求解的主要方法为:有限差分法,有限元法,谱方法。 谱方法起源于Ritz-Galerkin方法,它是以正交多项式(三角多项式,切比雪夫多项式,勒让得多项式等)作为基函数的Galerkin方法、Tau 方法或配置法,它们分别称为谱方法、Tau方法或拟谱方法(配点法),通称为谱方法。谱方法是以正交函数或固有函数为近似函数的计算方法。从函数近似角度看.谱方法可分为Fourier方法.Chebyshev或Legendre方法。前者适用于周期性问题,后两者适用于非周期性问题。而这些方法的基础就是建立空间基函数。 下面介绍几种正交多项式各种节点的取值方法及权重。 1) Chebyshev-Gauss: 2) Chebyshev-Gauss-Radau: x0 =1, 3) Chebyshev-Gauss-Lobatto: x0 =1, xN =1, 4)Legendre-Gauss: xj 是的零点且 5) Legendre-Gauss-Radau: xj 是的N+1个零点且 6) Legendre-Gauss-Lobatto: x0=-1,xN=1其它N-1个点是的零点且 下面介绍谱方法中最重要的Jacobi正交多项式其迭代公式为: 其中: Jacobi正交多项式满足正交性: 而Chebyshev多项式是令时Jacobi多项式的特殊形式,另外Legendre多项式是令时Jacobi多项式的特殊形式。 2 几种典型的谱方法 谱方法是以正交函数或固有函数为近似函数的计算方法。谱近似可以分为函数近似和方程近似两种近似方式。从函数近似角度看.谱方法可分为Fourier方法.Chebyshev或Legendre方法。前者适用于周期性问题,后两者适用于非周期性问题。从方程近似角度看,谱方法可分为在物理空间离散求解的Collocation法、在谱空间进行离散求解的Galerkin法,以及先在物理空间离散求积,再变换到谱空间求解的Pseudo-spectral法。Collocation法适用于非线性问题.Galerkin法适用于线性问题,而Pseudo-spectral法适用于展开方程时的非线性项的处理。谱方法的特点是对光滑函数指数性逼近的谱精度;以较少的网格点得到较高的精度;无相位误差;适合多尺度的波动性问题;计算精度高于其他方法。快速傅立叶变化的提出大大促进了谱方法的发展,迄今已有各种的谱方法计算格式被提出.并被应用于天文学、电磁学、地理学等各种问题的计算。 下面介绍一下应用于各个区域的几种谱方法: 1)以Fourier谱方法为例介绍谱方法解方程的主要过程 以一阶波动方程为例: 其中u(x,t)为方程的解,L是包含u和u关于空间变量的导数的算子,除了方程以有初始条件和适当的边界条件。 故可设其中为试探空间的基函数,ak(t)为展开系数,对于傅立叶谱方法中的共轭有: 其中从而利用其正交性和周期性可以减少工作量,另外再结合边界条件就可以求出来。 2) Galerkin方法是谱方法中十分经典的解偏微分方程的方法,但还有其局限性,而利用Hermite谱方法中依赖时间的权函数对经典的Galerkin方法进行拓展后的新的方法能适用范围扩大了很多。它能很好的应用在微分方程最优控制问题有限元方法的分析中,并且如果能够灵活运用利用Chebyshev方法、Galerkin方法和配置方法,则会形成更强的计算方法。如将Tau方法的思想成功地应用于奇数阶微分方程Petrov-Galerkin谱方法。 3)在无界区域上谱方法和拟谱方法发展了以Hermite函数和Laguerre函数为基函数的正交逼近和插值理论,在这些结果的基础上发展了全空间和半空间上数理方程的谱方法和拟谱方法,从而形成一种新的能更好解决误解区域问题的方法,此种方法被很好的应用于统计物理、量子力学和流体力学中。 4) 我们利用非一致带权Sobolev空间中的Jacobi多项式正交逼近和Jacobi-Gauss型插值理论,提出以Jacobi多项式为基函数的Jacobi谱方法和拟谱方法用来解决一些奇异问题和计算某些特定的无界区域问题。 5)有限谱方法是基于有限点、有限项的局域谱方法。这种方法要求近似函数应具有等同隔网格和非周期性的性质。有限谱方法分为基于非

Matlab求解微分方程(组)及偏微分方程(组)

第四讲 Matlab 求解微分方程(组) 理论介绍:Matlab 求解微分方程(组)命令 求解实例:Matlab 求解微分方程(组)实例 实际应用问题通过数学建模所归纳得到的方程,绝大多数都是微分方程,真正能得到代数方程的机会很少.另一方面,能够求解的微分方程也是十分有限的,特别是高阶方程和偏微分方程(组).这就要求我们必须研究微分方程(组)的解法:解析解法和数值解法. 一.相关函数、命令及简介 1.在Matlab 中,用大写字母D 表示导数,Dy 表示y 关于自变量的一阶导数,D2y 表示y 关于自变量的二阶导数,依此类推.函数dsolve 用来解决常微分方程(组)的求解问题,调用格式为: X=dsolve(‘eqn1’,’eqn2’,…) 函数dsolve 用来解符号常微分方程、方程组,如果没有初始条件,则求出通解,如果有初始条件,则求出特解. 注意,系统缺省的自变量为t 2.函数dsolve 求解的是常微分方程的精确解法,也称为常微分方程的符号解.但是,有大量的常微分方程虽然从理论上讲,其解是存在的,但我们却无法求出其解析解,此时,我们需要寻求方程的数值解,在求常微分方程数值解方面,MATLAB 具有丰富的函数,我们将其统称为solver ,其一般格式为: [T,Y]=solver(odefun,tspan,y0) 说明:(1)solver 为命令ode45、ode23、ode113、ode15s 、ode23s 、ode23t 、ode23tb 、ode15i 之一. (2)odefun 是显示微分方程'(,)y f t y =在积分区间tspan 0[,]f t t =上从0t 到f t 用初始条件0y 求解. (3)如果要获得微分方程问题在其他指定时间点012,,,,f t t t t 上的解,则令 tspan 012[,,, ]f t t t t =(要单调的). (4)因为没有一种算法可以有效的解决所有的ODE 问题,为此,Matlab 提供了多种求解器solver ,对于不同的ODE 问题,采用不同的solver.

偏微分方程数值解法答案

1. 课本2p 有证明 2. 课本812,p p 有说明 3. 课本1520,p p 有说明 4. Rit2法,设n u 是u 的n 维子空间,12,...n ???是n u 的一组基底,n u 中的任一元素n u 可 表为1n n i i i u c ?==∑ ,则,11 11()(,)(,)(,)(,)22j n n n n n n i j i j j i j j J u a u u f u a c c c f ???=== -=-∑∑是12,...n c c c 的二次函数,(,)(,)i j j i a a ????=,令 () 0n j J u c ?=?,从而得到12,...n c c c 满足1 (,)(,),1,2...n i j i j i a c f j n ???===∑,通过解线性方程组,求的i c ,代入1 n n i i i u c ?==∑, 从而得到近似解n u 的过程称为Rit2法 简而言之,Rit2法:为得到偏微分方程的有穷维解,构造了一个近似解,1 n n i i i u c ?== ∑, 利用,11 11()(,)(,)(,)(,)22j n n n n n n i j i j j i j j J u a u u f u a c c c f ???===-=-∑∑确定i c ,求得近似解n u 的过程 Galerkin 法:为求得1 n n i i i u c ? == ∑形式的近似解,在系数i c 使n u 关于n V u ∈,满足(,)(,) n a u V f V =,对任 意 n V u ∈或(取 ,1j V j n ?=≤≤) 1 (,)(,),1,2...n i j i j i a c f j n ???===∑的情况下确定i c ,从而得到近似解1 n n i i i u c ?==∑的过程称 Galerkin 法为 Rit2-Galerkin 法方程: 1 (,)(,)n i j i j i a c f ???==∑ 5. 有限元法:将偏微分方程转化为变分形式,选定单元的形状,对求解域作剖分,进而构 造基函数或单元形状函数,形成有限元空间,将偏微分方程转化成了有限元方程,利用 有效的有限元方程的解法,给出偏微分方程近似解的过程称为有限元法。 6. 解:对求解区间进行网格剖分,节点01......i n a x x x x b =<<<<=得到相邻节点1,i i x x -

高阶线性微分方程常用解法简介

高阶线性微分方程常用解法简介 摘要:本文主要介绍高阶线性微分方程求解方法,主要的内容有高阶线性微分方程求解的常 用方法如。 关键词:高阶线性微分方程 求解方法 在微分方程的理论中,线性微分方程是非常值得重视的一部分内容,这不仅 因为线性微分方程的一般理论已被研究的十分清楚,而且线性微分方程是研究非线性微分方程的基础,它在物理、力学和工程技术、自然科学中也有着广泛应用。下面对高阶线性微分方程解法做一些简单介绍. 讨论如下n 阶线性微分方程:1111()()()()n n n n n n d x d x dx a t a t a t x f t dt dt dt ---++++= (1),其中()i a t (i=1,2,3, ,n )及f(t)都是区间a t b ≤≤上的连续函数,如果 ()0f t ≡,则方程(1)变为 1111()()()0n n n n n n d x d x dx a t a t a t x dt dt dt ---++++= (2),称为n 阶齐次线性微分方程,而称一般方程(1)为n 阶非齐次线性微分方程,简称非齐次线性微分方程,并且把方程(2)叫做对应于方程(1)的齐次线性微分方程. 1.欧拉待定指数函数法 此方法又叫特征根法,用于求常系数齐次线性微分方程的基本解组。形如 111121[]0,(3),n n n n n n n d x d x dx L x a a a x dt dt dt ---≡++++= 其中a a a 为常数,称为n 阶常系数齐次线性微分方程。 111111111111[]()()()n t n t t t t n n n n n n n t t n n n n n n n d e d e de L e a a a e dt dt dt a a a e F e F a a a n λλλλλλλλλλλλλλλλ---------≡++++=++++≡≡++++ 其中=0(4)是的次多项式. ()F λ为特征方程,它的根为特征根. 1.1特征根是单根的情形 设12,,,n λλλ 是特征方程111()0n n n n F a a a λλλλ--≡++++= 的n 个彼此不相等的根,则应相应地方程(3)有如下n 个解:12,,,.n t t t e e e λλλ (5)我们指出这n 个解在区间a t b ≤≤上线性无关,从而组成方程的基本解组. 如果(1,2,,)i i n λ= 均为实数,则(5)是方程(3)的n 个线性无关的实值解,而方程(3)的通解可表示为1212,n t t t n x c e c e c e λλλ=+++ 其中12,,,n c c c 为任意常数. 如果特征方程有复根,则因方程的系数是实常数,复根将称对共轭的出现.

解微分方程方法

MATLAB解微分方程(2011-07-15 17:35:25) 转载▼ 分类:matlab学习标签: 教育

先说明一下最常用的ode45调用方式,和相应的函数文件定义格式。 [t,x]=ode45(odefun,tspan,x0); 其中,Fun就是导函数,tspan为求解的时间区间(或时间序列,如果采用时间序列,则必须单调),x0为初值。 这时,函数文件可以采用如下方式定义 function dx=odefun(t,x) 对于上面的小例子,可以用如下的程序求解。

2.终值问题 tspan可以是递增序列,也可以为递减序列,若为递减则可求解终值问题。 [t,x]=ode45(@zhongzhiode,[3,0],[1;0;2]);plot(t,x) function dx=zhongzhiode(t,x) dx=[2*x(2)^2-2; -x(1)+2*x(2)*x(3)-1; -2*x(2)+2*x(3)^2-4]; 结果如下 3.odeset options = odeset('name1',value1,'name2',value2,...) [t,x]=solver(@fun,tspan,x0,options) 通过odeset设置options 第一,通过求解选项的设置可以改善求解精度,使得原本可能不收敛的问题收敛。options=odeset('RelTol',1e-10);

第二,求解形如M(t,x)x'=f(t,x)的方程。 例如,方程 x'=-0.2x+yz+0.3xy y'=2xy-5yz-2y^2 x+y+z-2=0 可以变形为 [1 0 0][x'] [-0.2x+yz+0.3xy] [0 1 0][y']=[2xy-5yz-2y^2 ] [0 0 1][z'] [x+y+z-2 ] 这样就可以用如下的代码求解该方程 function mydae M=[1 0 0;0 1 0;0 0 0]; options=odeset('Mass',M); x0=[1.6,0.3,0.1]; [t,x]=ode15s(@daedot,[0,1.5],x0,options);plot(t,x) function dx=daedot(t,x) dx=[ -0.2*x(1)+x(2)*x(3)+0.3*x(1)*x(2); 2*x(1)*x(2)-5*x(2)*x(3)-2*x(2)*x(2); x(1)+x(2)+x(3)-2]; 4.带附加参数的ode45

几类三阶常微分方程的通解公式【开题报告】

毕业论文开题报告 数学与应用数学 几类三阶常微分方程的通解公式 一、选题的背景、意义 常微分方程是指包含一个自变量和它的未知函数以及未知函数的微分的等式。微分方程差不多是和微积分同时产生的,它的形成和发展是和力学、天文学、物理学,以及其他科学技术的发展密切相关。20世纪30年代中期法国数学家勒雷和绍尔建立了LeraySchauder度理论[1]。他们的方法用于研究线性微分、积分、泛函数方程时,取得了巨大成功。 常微分方程在很多学科领域内有着重要的作用,自动控制、各种电子学装置的设计、弹道的计算、飞机和导弹飞行的稳定性的研究、化学反应过程稳定性的研究等等,这些问题都可以归结为高阶微分方程的模型[1,2],或者化为研究解的性质的问题。很多物理与技术问题都可以化归为微分方程的求解问题。牛顿研究天体力学和机械力学的时候,利用了微分方程这个工具,从理论上得到了行星运动规律。后来,法国天文学家勒维烈和英国天文学家亚当斯使用微分方程各自计算出那时尚未发现的海王星的位置。这些都使数学家更加深信微分方程在认识自然、改造自然方面的巨大力量。 微分方程的理论逐步完善的时候,利用它就可以精确地表述事物变化所遵循的基本规律,只要列出相应的微分方程,就会有解方程的方法[3-5]。微分方程也就成了最有生命力的数学分支。常微分方程是数学分析或基础数学的一个组成部分,在整个数学大厦中占据着重要位置。 有关三阶常微分方程的求解研究已经取得了较为丰富的结果,下面对研究三阶常微分方程的通解详见文献[6-10]。 二、研究的基本内容与拟解决的主要问题 本文主要是对三阶常微分方程通解的研究,具体研究的基本内容与拟解决的主要问题如下: 问题1 如果已知三阶线性微分方程 ()()()() +++= y P x y Q x y R x y f x ''''''

相关文档
最新文档