第12章常微分方程组数值求解方程与方程组的数值解-33页精选文档
- 格式:pptx
- 大小:297.70 KB
- 文档页数:33
许多实际问题的数学模型是微分方程或微分方程的定解问题。
如物体运动、电路振荡、化学反映及生物群体的变化等。
常微分方程可分为线性、非线性、高阶方程与方程组等类;线性方程包含于非线性类中,高阶方程可化为一阶方程组。
若方程组中的所有未知量视作一个向量,则方程组可写成向量形式的单个方程。
因此研究一阶微分方程的初值问题⎪⎩⎪⎨⎧=≤≤=0)(),(y a y bx a y x f dxdy, (9-1) 的数值解法具有典型性。
常微分方程的解能用初等函数、特殊函数或它们的级数与积分表达的很少。
用解析方法只能求出线性常系数等特殊类型的方程的解。
对非线性方程来说,解析方法一般是无能为力的,即使某些解具有解析表达式,这个表达式也可能非常复杂而不便计算。
因此研究微分方程的数值解法是非常必要的。
只有保证问题(9-1)的解存在唯一的前提下,研究其数值解法或者说寻求其数值解才有意义。
由常微分方程的理论知,如果(9-1)中的),(y x f 满足条件(1)),(y x f 在区域} ),({+∞<<∞-≤≤=y b x a y x D ,上连续; (2)),(y x f 在上关于满足Lipschitz 条件,即存在常数,使得y y L y x f y x f -≤-),(),(则初值问题(9-1)在区间],[b a 上存在惟一的连续解)(x y y =。
在下面的讨论中,我们总假定方程满足以上两个条件。
所谓数值解法,就是求问题(9-1)的解)(x y y =在若干点b x x x x a N =<<<<= 210处的近似值),,2,1(N n y n =的方法。
),,2,1(N n y n =称为问题(9-1)的数值解,n n x x h -=+1称为由到1+n x 的步长。
今后如无特别说明,我们总假定步长为常量。
建立数值解法,首先要将微分方程离散化,一般采用以下几种方法: (1) 用差商近似导数在问题(9-1)中,若用向前差商hx y x y n n )()(1-+代替)(n x y ',则得)1,,1,0( ))(,()()(1-=≈-+N n x y x f hx y x y n n n n n)(n x y 用其近似值代替,所得结果作为)(1+n x y 的近似值,记为1+n y ,则有 1(,) (0,1,,1)n n n n y y hf x y n N +=+=-这样,问题(9-1)的近似解可通过求解下述问题100(,) (0,1,,1)()n n n n y y hf x y n N y y x +=+=-⎧⎨=⎩(9-2)得到,按式(9-2)由初值经过步迭代,可逐次算出N y y y ,,21。
微分方程组的数值求解方法微分方程组数值求解方法微分方程组是数学中非常重要的一个分支,它描述了许多自然界和社会生活中的现象,例如电路的运行、天体的运行、生命体的生长等等。
我们需要对微分方程组进行求解,才能够得到它们的解析解,从而更好地理解和应用它们。
然而,大多数微分方程组不可能用解析法求解,因此,我们需要采用数值方法来求解微分方程组。
常见的微分方程组数值求解方法包括欧拉法、龙格库塔法和变步长法等。
下面,我们将逐一介绍它们的基本原理和优缺点。
一、欧拉法欧拉法是微分方程组数值求解方法中最简单的一种。
它的基本思想是将微分方程组中的各个变量离散化,然后根据微分方程组的导数计算每一步的值。
具体来讲,欧拉法的数值求解公式为:\begin{aligned} &x_{n+1}=x_n+hf_n(x_n,y_n,z_n),\\&y_{n+1}=y_n+hf_n(x_n,y_n,z_n),\\&z_{n+1}=z_n+hf_n(x_n,y_n,z_n), \end{aligned}其中,$x(t)$,$y(t)$,$z(t)$是微分方程组的解,$f_n(x_n,y_n,z_n)$是微分方程组导数在点$(x_n,y_n,z_n)$处的值,$h$为时间步长。
欧拉法的优点是简单易懂,方便实现,缺点是误差较大,计算不够精确。
因此,在实际应用中,往往需要采用更加精确的数值方法。
二、龙格库塔法龙格库塔法是微分方程组数值求解方法中比较常用的一种。
它的基本思想是通过多次计算微分方程组中的导数,以获得更加精确的数值解。
具体来讲,龙格库塔法的求解公式为:\begin{aligned}&k_{1x}=hf_n(x_n,y_n,z_n),k_{1y}=hf_n(x_n,y_n,z_n),k_{1z}=hf_n (x_n,y_n,z_n),\\&k_{2x}=hf_n(x_n+\frac{h}{2},y_n+\frac{k_{1y}}{2},z_n+\frac{k_ {1z}}{2}),k_{2y}=hf_n(x_n+\frac{h}{2},y_n+\frac{k_{1y}}{2},z_n+ \frac{k_{1z}}{2}),k_{2z}=hf_n(x_n+\frac{h}{2},y_n+\frac{k_{1y}}{ 2},z_n+\frac{k_{1z}}{2}),\\&k_{3x}=hf_n(x_n+\frac{h}{2},y_n+\frac{k_{2y}}{2},z_n+\frac{k_ {2z}}{2}),k_{3y}=hf_n(x_n+\frac{h}{2},y_n+\frac{k_{2y}}{2},z_n+ \frac{k_{2z}}{2}),k_{3z}=hf_n(x_n+\frac{h}{2},y_n+\frac{k_{2y}}{ 2},z_n+\frac{k_{2z}}{2}),\\&k_{4x}=hf_n(x_n+h,y_n+k_{3y},z_n+k_{3z}),k_{4y}=hf_n(x_n+h,y_n+k_{3y},z_n+k_{3z}),k_{4z}=hf_n(x_n+h,y_n+k_{3y},z_n+k_{3 z}),\\&x_{n+1}=x_n+\frac{k_{1x}}{6}+\frac{k_{2x}}{3}+\frac{k_{3x}}{ 3}+\frac{k_{4x}}{6},\\&y_{n+1}=y_n+\frac{k_{1y}}{6}+\frac{k_{2y}}{3}+\frac{k_{3y}}{ 3}+\frac{k_{4y}}{6},\\&z_{n+1}=z_n+\frac{k_{1z}}{6}+\frac{k_{2z}}{3}+\frac{k_{3z}}{ 3}+\frac{k_{4z}}{6}, \end{aligned}其中,$k_{1x}$,$k_{1y}$,$k_{1z}$,$k_{2x}$,$k_{2y}$,$k_{2z}$,$k_{3x}$,$k_{3y}$,$k_{3z}$,$k_{4x}$,$k_{4y}$,$k_{4z}$是微分方程组中导数的值。
常微分方程数值解法科学技术中的许多问题,在数学中往往归结为微分方程的求解问题。
例如天文学中研究星体运动,空间技术中研究物体飞行等,都需要求解常微分方程初值问题。
最简单的常微分方程初值问题是座=f (x, y), a £ x £ b,dx ' " (*)y(x o) =y°.定理如果f (x, y)在区域D ={( x,y) a《x〈b, y<°°}内连续,且关于y满足Lipschitz条件,那么初值问题 (*)的解存在且惟一。
因为数值解是求微分方程解y(x)的近似值,所以总假定微分方程的解存在惟一,即初值问题(*)中的f(x, y)满足定理的条件。
除特殊情形外,初值问题(*) 一般求不出解析解,即使有的能求出解析解,其函数表示式也比较复杂,计算量比较大,况且实际问题往往只要求在某一时刻解的函数值,因此,有必要研究初值问题(*)的数值解法。
所谓初值问题(*)的数值解法,就是寻求解y(x)在区间[a,b]上的一系列点x〔:::x^:: x3 :::..• :::x n:::■■-上的近似值y i,y2,…,y n,….记h j = x —x口(i =1,2, |||)表示相邻两个节点的间距,称为步长。
求微分方程数值解的主要问题:(1)如何将微分方程也=f (x, y)离散化,并建立求其数值解的递推公式;dx(2)递推公式的局部截断误差、数值数y n与精确解y(x n)的误差估计;(3)递推公式的稳定性与收敛性.、Euler方法Euler法是最早的解决一阶常微分方程初值问题的一种数值方法,虽然它不够精确,很少被采用,但是它在某种程度上反映了数值方法的基本思想和特征。
考虑初值问题% f(x, y), (1.1)dxyMi。
,(1.2) 为了求得它在等距离散点x1 <x2<x n上的数值解,首先将(1.1)离散化。
设h =X i —x — (i =1,2,|||),将式(1.1)离散化的办法有 Taylor 展开法、数值微分法及数值积分法。
常微分方程的基本概念及其求解方法常微分方程是数学中一种基础而又普遍的模型,它描述了自然界中大量的现象,例如物理运动、化学反应、生物生长等。
在科学和工程中,常微分方程的应用十分广泛,因此学习和掌握它是非常重要的。
本文将从常微分方程的基本概念和求解方法两方面,为读者介绍常微分方程。
一、常微分方程的基本概念1.1 定义常微分方程是指一个包含一个或多个未知函数及其导数的等式。
通常情况下,未知函数是一个关于一元变量的的函数。
例如,下面这个方程就是一个一阶常微分方程:y' = f(x, y)其中,y'表示y关于自变量x的导数,f(x, y)是一个已知的函数。
1.2 阶数常微分方程的阶数是指方程中导数的最高阶数。
例如,y'' + 2y' + y = 0 是一个二阶常微分方程。
1.3 初值问题常微分方程有时也被称为初值问题,因为为了求解方程,我们需要先给出初值。
初值问题指的是给定某个时刻的函数值和导数值,以及常微分方程本身,求解函数在其他时刻的值。
例如,y' = f(x, y),y(x0) = y0 就是一个初值问题,其中y(x0) = y0表示在x = x0时函数y的值为y0。
二、常微分方程的求解方法2.1 分离变量法分离变量法是求解一阶常微分方程最基本的方法。
它的基本思路是将未知函数的导数通过分离变量的方法移到等式的一侧,将其他项移到另一侧,从而实现变量的分离。
例如,对于y' =f(x)g(y),我们可以将其改写成dy/g(y) = f(x) dx,然后对两边积分得到:ln |g(y)| = F(x) + C其中F(x)和C是常数,|g(y)|表示g(y)的绝对值。
通过取指数,我们可以得到g(y)的表达式,从而求得未知函数。
2.2 变量代换法当分离变量法难以应用时,可以采用变量代换法。
变量代换的基本思路是将因式分解,然后进行替换。
例如,对于y' + 2y/x =x^2,我们可以将y = ux^m代入方程,其中m是一个待定的整数。