微分方程求解

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

微分方程的求解

----基于Maple工具一、Maple工具简介

Maple是加拿大滑铁卢大学(Waterloo University)研制的一种计算机代数系统。经过近20年的不断发展,数学软件Maple已成为当今世界上最优秀的几个数学软件之一,它以良好的使用环境、强有力的符号计算能力、高精度的数字计算、灵活的图形显示和高效的可编程功能,为越来越多的教师、学生和科研人员所喜爱,并成为他们进行数学处理的工具。可以容易的运用Maple软件解决微积分、解析几何、线性代数、微分方程、计算方法、概率统计等数学分支中的常见的计算问题。1980 年9月,加拿大Waterloo大学的符号计算研究小组成立,开始了符号计算在计算机上实现的研究项目。数学软件Maple是这个项目的产品。目前,这仍是一个正在研究的项目。Maple的第一个商业版本Maple3.3是1985年出版的。随着几经更新,Maple被广泛的使用,得到越来越多的用户。

Maple 软件主要由三部分组成:用户界面(Iris),代数运算器(kernel),外部函数库(External library)。用户界面和代数运算器是用C语言写的,只占整个软件的一小部分,当系统启动时,即被装入。Iris负责输入命令和算式的初步处理、显示结果、函数图像的显示等。Kernel负责输入的编译、基本的代数运算,如有理数运算、初等代数运算,还负责内存管理。Maple的大部分数学函数

和过程是用Maple自身的语言写成的,存于外部函数库中。当一个函数调用时,在多数情况下,Maple会自动将该函数的过程调入内存,一些不常用的函数才需要用户自己将它们调入。另外有一些特别的函数包也需要用户自己调入,如线性代数包、统计包,这使得Maple 在资源的利用上具有很大的优势,只有最有用的东西才留住内存,这是Maple可以在较小内存的计算机上正常运行的原因。

Maple不仅仅提供编程工具,更重要的是提供数学知识。用户在直观的文档计算环境中完成各种数学问题,无限精度的计算消除了计算误差。Maple是教授、研究员、科学家、工程师、学生们必备的科学计算工具,从简单的数字计算到高度复杂的非线性问题,Maple 都可以帮助您快速、高效地解决问题。用户可在单一的环境中完成多领域建模和模拟,符号计算、数值计算、程序设计、技术文件、报告演示、算法开发、与外部程序连接等功能,满足各个层次用户的需要,从高中学生到高级研究人员。

Maple 有三大关键特征:数学引擎、操作简单、外部连接性。

数学引擎:Mathematics=Maplesoft !解决数学问题时,世界上没有任何其他软件比Maple更完整、更好。

操作简单:Maple人性化的界面让用户只需要按几个键就可以解决大量复杂的计算问题,Maple的文件模式界面可以创建多样化的、专业级的技术文件,并可以自由转换为其他格式的文件,如Latex/html/word等。

外部连接性:Maple 的程序可以自动转换为其他语言代码,如

C/Fortran/Java/VB/MATLAB,融合多种开发工具。Maple能够与MATLAB/Simulink, NAG,EXCEl,数据库等工具无缝连接。另外Maple可与CAD系统连接,可通过参数传输完成对CAD模型的数学分析,如统计分析、优化、经验公式计算、公差和单位计算,并自动在CAD系统中完成更新。通过专业工具箱,Maple可与数值计算软件Matlab共享命令、变量等。

二、使用工具的命令,函数

Maple内置5000多个计算命令,深度涵盖广泛的数学和编程主题。

(一)调用函数的命令

调用Maple函数的常用方法一般有两种。分别是maple(statement)和maple('function',arg1,arg2,…)。函数maple用于调用Maple中的符号计算“引擎”和它庞大的函数库,其中的输入参数既可以是符号变量,也可以是数值变量,其输出结构和输入参数的类型相同。

1.maple(statement)

该命令的功能是把对变量、表达式以及函数等的描述(statement)传递到MATLAB的符号运算引擎——Maple V中去,由这个引擎来完成计算任务,返回字符型结果。此函数功能非常强,它可以调用出图像处理函数外的所有函数。例如:

dsolve函数是Maple中解微分方程的函数,可以是单个微分方程,也可以是微分方程组。

【实例1】

>> maple(dsolve('(Dy)^2+y^2=1','y(0)=0.5'))

ans =

[ sin(t+1/6*pi)]

[ cos(t+1/3*pi)]

2. maple('function',arg1,arg2,…)

该命令是MATLAB调用Maple函数库的标准形式。输入参数function 是函数的名,arg1,ar g2,…是function函数的参数,参数个数根据function函数具体确定。

【实例2】

>>maple('mtaylor(exp(x),[x=0],5)')

ans =

mtaylor(exp(x),[x = 0],5)

注意:Maple有些函数在MATLAB启动时,并没有自动调入内存当中。上面的例子中并没有进行分解,所以在调用这些函数时候必须先读取Maple函数库。

【实例3】

>> maple('readlib(mtaylor)')

ans =

proc () local f, k, v, m, n, s, t, w; option `Copyright (c) 1991 by………………

然后我们就重新调用maple('mtaylor(exp(x),[x=0],5)')如下:

>> maple('mtaylor(exp(x),[x=0],5)') ans =

1+x+1/2*x^2+1/6*x^3+1/24*x^4

(二)工具包含的常用函数

三、例题

1.F(x,y); M(x, y) = F(x, y)*(x+y^2); N(x, y) = F(x, y)*xy diff(M(x, y), y) = diff(N(x, y), x)

解:M:=F(x,y)*(x+y^2)

N:=F(x,y)*x*y

eq:=diff(M,y)=diff(N,x)

pdsolve(eq)

F(x,y)=x*G(2x3+3x2y2),G 是任意函数

2. 求dt

dx =y ,dt dy =-x 的解。 解:S=dsolve('Dx = y ,Dy = -x')

disp([blanks(12),'x',blanks(21),'y']),disp([S.x,S.y])

S =

x: [1x1 sym]

y: [1x1 sym]

x y

[ C1*sin(t)+C2*cos(t), C1*cos(t)-C2*sin(t)]

3. 求解两点边值问题:xy ’’- 3y ’ = 2x ,y(1) = 0 ,y(5) = 0。 解:y =dsolve('x*D2y - 3*Dy = x^2','y(1) = 0,y(5) =0','x')

y =

31/468*x^4-1/3*x^3+125/468

4. 求解微分方程的初值问题dy

dy +3y=8,0x y/ =2的解。 解:p=dsolve('Dy+3*y=8','y(0)=2','x')

p =

8/3-2/3*exp(-3*x)

5.求微分方程 w'(t)=-k*f(t) f'(t)=g*f(t)*[m*w(t)-f(t)]。

建立一个文件test.m

function dx=test(t,x)

dx=zeros(2,1);

dx(1)=k*x(2);

dx(2)=g*x(2)(m*x(1)-x(2));

保存,

在matlab 里输入:

[t,x]=ode45('test',[0 15],[25 2]);

maple 的

restart:with(PDEtools):

alias(w=w(t),f=f(t)):

eq1:=diff(w,t)=k*f;

eq2:=diff(f,t)=g*f*(m*w-f);

dsolve({w,f});

但是方程本身不可积,所以无法求出解。

6. 求解van der Pol 方程:

???-='==+'--''1.0)0(,0)0(

)1(2y y y y y y

> ODE:=diff(y(t),t$2)-(1-y(t)^2)*diff(y(t),t)+y(t)=0;

:= ODE = - + ?? ??????2t ()y t () - 1()y t 2?? ?????()y t ()y t 0

> initvals:=y(0)=0,D(y)(0)=-0.1;

:= initvals , = ()y 00 = ()()D y 0-.1

> F:=dsolve({ODE,initvals},y(t),type=numeric); := F proc () ... end proc

rkf45_x F(0);

??????

??,, = t 0. = ()y t 0. = ??t ()y t -.1 > F(1);

??????

??,, = t 1. = ()y t -.144768589749425608 = ??t ()y t -.178104066128215944

7. 求解:042=+''+'y x y y x

> ODE:=x*diff(y(x),x$2)+diff(y(x),x)+4*x^2*y(x)=0;

:= ODE = + + x ?? ??????2x 2()y x ?? ?????()y x 4x 2()y x 0 > dsolve(ODE,y(x));

= ()y x + _C1?? ????BesselJ ,043x ()/32_C2?? ??

??BesselY ,043x ()/32 > initvals:=y(0)=y0,D(y)(0)=0;

:= initvals , = ()y 0y0 = ()()D y 00

> with(powseries): > sol:=powsolve({ODE,initvals});

:= sol proc () ... end proc powparm

> tpsform(sol,x,16);

- + - + - + y049y0x 3481y0x 6166561y0x 9459049y0x 121613286025

y0x 15()O x 16

8.求解一维谐振子的解:0)(2=-+''y x y ε

> alias(y=y(x)):

> ODE:=diff(y,x$2)+(epsilon-x^2)*y=0;

:= ODE = + ?? ??

????2x 2y () - εx 2y 0 > H:=powsolve(ODE);

:= H proc () ... end proc powparm

> tpsform(H,x,8);

C0C1x 1εC0x 21εC1x 3?? ???? + 1ε2C01C0x 4?? ???? + 1ε2C11C1x 5?? ????- - 1ε?? ???? + 1ε2C01C01εC0 + - - + + + x 6?? ????- - 1ε?? ???? + 1ε2C11C11εC1x 7()O x 8 + +

> H(_k); - - ε()a - _k 2()a - _k 4_k ()

- _k 1 9. 求解物理摆的大幅振动方程:

θθsin g l -=, 其中l 是摆长, θ是摆角, g 是重力加速度。

> ODE:=l*diff(theta(t),t$2)=-g*sin(theta(t));

:= ODE = l ?? ??

????2

t 2()θt -g ()sin ()θt > initvals:=theta(0)=0,D(theta)(0)=v[0]/l; := initvals , = ()θ00 = ()()D θ0v 0

> sol:=dsolve({ODE,initvals},theta(t),type=series);

:= sol = ()θt - + + v 0l t 16g v 0l 2t 31120g v 0() + v 02g l l

4t 5()O t 6 > Order:=11:

> sol:=dsolve({ODE,initvals},theta(t),type=series);

:= sol = ()θt - + - + + v 0

t 1g v 0l 2t 31g v 0() + v 02g l l 4t 51g v 0() + + 11g l v 02g 2l 2v 04l 6t 71g v 0() + + + 57g v 04l 102g 2v 02l 2g 3l 3v 06l 8t 9()O t 11

四、小结

通过对Matlab软件中Maple的学习,我知道了Maple的一些基本功能和用法。

二次微分方程的通解

第六节 二阶常系数齐次线性微分方程 教学目的:使学生掌握二阶常系数齐次线性微分方程的解法,了解二阶常系数非齐 次线性微分方程的解法 教学重点:二阶常系数齐次线性微分方程的解法 教学过程: 一、二阶常系数齐次线性微分方程 二阶常系数齐次线性微分方程 方程 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 ''''''

相关文档
最新文档