《常微分方程初值问题的数值解法 .ppt》由会员分享,可在线阅读,更多相关《常微分方程初值问题的数值解法 .ppt(62页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、现在学习的是第1页,共62页 实际问题中遇到的微分方程通常很复杂,多数情况实际问题中遇到的微分方程通常很复杂,多数情况下无法求出解的解析表达式,即使求出解,也常常由于下无法求出解的解析表达式,即使求出解,也常常由于计算量太大而不实用。然而实际问题本身又往往只要求计算量太大而不实用。然而实际问题本身又往往只要求给出其解在一系列点上的近似值,这就要依靠数值解法给出其解在一系列点上的近似值,这就要依靠数值解法。其中其中 称为李氏常数。从而保证上面的初值称为李氏常数。从而保证上面的初值问题的解问题的解 存在并且唯一。存在并且唯一。yy xL 所谓数值解法,就是对于解所谓数值解法,就是对于解 存在的区存
2、在的区间上一系列的点间上一系列的点 ,不妨假定,不妨假定 nx y x现在学习的是第2页,共62页012Nxxxx 上面给定的初值问题的数值解法有个基本特点,上面给定的初值问题的数值解法有个基本特点,称作称作“步进式步进式”,即求解的过程是按照节点的排列次,即求解的过程是按照节点的排列次序序 一一 步步 步步 地地 向向 前前 推推 进。描述这类算法进。描述这类算法,只须在,只须在 已知的前提下已知的前提下 给出计算给出计算 的递推公式的递推公式。01,nyyy1ny逐个求出逐个求出 的近似值的近似值 。称。称 为给定的微分方程初为给定的微分方程初值问题的数值解。相邻两个节点的间距值问题的数值
3、解。相邻两个节点的间距 称称为步长。一般我们总假定为步长。一般我们总假定 ,即节点间是等距的。,即节点间是等距的。()ny xnyny1nnnhxxnhh现在学习的是第3页,共62页其中其中 为为 的已知函数,的已知函数,是给定的常数,求是给定的常数,求(1.1)、(1.2)的数值解。的数值解。(,)f x y,x y0y 一、一、方法方法 Euler(一)、(一)、方法方法 Euler给定初值问题给定初值问题 00(,)()yf x yy xy(1.1)(1.2)方法是解初值问题(方法是解初值问题(1.1)、)、(1.2)最简单的最简单的数值解法。由于它的精确度不高,数值解法。由于它的精确度
4、不高,实际计算中已不实际计算中已不被采用,然而它在某种程度上却反映了数值解法的被采用,然而它在某种程度上却反映了数值解法的基本思想。基本思想。Euler现在学习的是第4页,共62页 这种方法是借助于几何直观得到的。由于表示这种方法是借助于几何直观得到的。由于表示解的曲线解的曲线 通过点通过点 ,并且在该点处以,并且在该点处以 为切线斜率,于是设想在为切线斜率,于是设想在 附近,曲线附近,曲线可以用该点处的切线近似代替,切线方程为可以用该点处的切线近似代替,切线方程为00(,)xy00(,)f xy0 xx yy x0000(,)()yyf xyxx现在学习的是第5页,共62页x00,xy11,
5、x y11,x y x0 x1x2xy0图6.1现在学习的是第6页,共62页也就是说,也就是说,时,时,可用可用 近近似代替,记这个值为似代替,记这个值为 ,即,即1xx1()yy x000(,)yf xy h1y1000(,)yyhf xy于是给出了一种当于是给出了一种当 时,获得函数值时,获得函数值 的近似的近似值值 的方法。重复上面的作法,在的方法。重复上面的作法,在 处,就可处,就可以得到以得到 的近似值的近似值1xx1()y x1y2xx2()y x2111(,)yyhf x y现在学习的是第7页,共62页1(,)nnnnyyhf xy依此下去,当依此下去,当 已经得到,则已经得到,
6、则 ny这就是著名的这就是著名的 方法的计算格式。方法的计算格式。EulerEulerEuler 由于由于 方法是用一条折线近似地代替曲方法是用一条折线近似地代替曲线线 ,所以,所以 方法也叫方法也叫 折线法。折线法。Euler y xEuler1nyny 一种计算格式,当在计算一种计算格式,当在计算 时,仅仅用到它时,仅仅用到它前一步的信息前一步的信息 ,称它为单步法。可见,称它为单步法。可见 方法就是单步法。方法就是单步法。现在学习的是第8页,共62页将方程将方程(1.1)在区间在区间 上求积分,便得到上求积分,便得到 01,x x (1.4)式中右端的积分,可以用数值积分法计算它的近式中
7、右端的积分,可以用数值积分法计算它的近似值。例如,使用左矩形公式则有似值。例如,使用左矩形公式则有 1000()(,)y xyhf xy(二)改进的(二)改进的 方法方法 Euler1010()()(,()xxy xy xf x y x dx(1.4)上式右端就是用上式右端就是用 方法得到的方法得到的 ,即,即 1yEuler现在学习的是第9页,共62页1000(,)yyhf xy一般地有一般地有1(,)nnnnyyhf xy这就是这就是 公式公式(1.3)。Euler 由此可见,由此可见,方法也可以看成用矩形公式近似方法也可以看成用矩形公式近似计算某个相应的定积分而得到的。因此可以说,计算某
8、个相应的定积分而得到的。因此可以说,方法之所以精确度不高,正是由于它在计算定积分时方法之所以精确度不高,正是由于它在计算定积分时,采用矩形公式的缘故。,采用矩形公式的缘故。EulerEuler 倘若使用较为精确的梯形公式来计算倘若使用较为精确的梯形公式来计算(1.4)式中右端的积式中右端的积分,即分,即现在学习的是第10页,共62页将它代入将它代入(1.4)式的右端,便得到式的右端,便得到 的近似值的近似值 ,1()y x1y100011(,)()2hyyf xyf xy用同样的方法可以得到用同样的方法可以得到 。一般地有,。一般地有,23,yy 100011(,()(,)(,()2xxhf
9、x y x dxf xyf x y x0011(,)(,)2hf xyf x y111(,)(,)2nnnnnnhyyf xyf xy(1.5)现在学习的是第11页,共62页1ny1ny1ny1ny 这就是改进的这就是改进的 Euler 方法的计算格式。值得注方法的计算格式。值得注意的是,意的是,Euler 方法与改进的方法与改进的 Euler方法在计算上有方法在计算上有一个明显的区别,一个明显的区别,Euler方法中方法中 是由已知的或是由已知的或已经算出的量来表达的,得到它不需要解方程,这已经算出的量来表达的,得到它不需要解方程,这类方法通常称为显示方法;而在改进的类方法通常称为显示方法;
10、而在改进的 Euler方法中,未知数方法中,未知数 也隐含在方程右端之中,对也隐含在方程右端之中,对于每一个于每一个 的值都需要通过解方程才能得到,这的值都需要通过解方程才能得到,这类方法通常称为隐式格式。在多数情况下,要从隐类方法通常称为隐式格式。在多数情况下,要从隐式格式式格式(1.5)中解出中解出 是很困难的。因此,通常采是很困难的。因此,通常采用如下的迭代方法来求解。即先用用如下的迭代方法来求解。即先用 Euler 方法算出方法算出一个结果,作为一个结果,作为(1.5)式的初值,进行迭代,其计算式的初值,进行迭代,其计算格式为格式为 现在学习的是第12页,共62页(0)1(1)()11
11、1(,)(,)(,)2(0,1,2)nnnnkknnnnnnyyhf xyhyyf xyf xyk(1.6)(1)()()(1)111111(,)(,)2kkkknnnnnnhyyf xyf xy由由()(1)112kknnhL yy 可知,当可知,当 时,迭代格式收敛。也就是说,时,迭代格式收敛。也就是说,只要只要 取得充分小,就可能保证迭代序列取得充分小,就可能保证迭代序列 12hL h现在学习的是第13页,共62页(0)(1)()111,knnnyyy收敛,而且收敛,而且 越小,收敛得越快。越小,收敛得越快。h 容易看出,改进的容易看出,改进的 方法虽然提高了精度方法虽然提高了精度,然而
12、每一步的计算量却增加很大,每迭代一次,然而每一步的计算量却增加很大,每迭代一次,都要重新计算函数值,而且迭代需要反复进行,都要重新计算函数值,而且迭代需要反复进行若干次。为了简化算法,通常只迭代一次。具体若干次。为了简化算法,通常只迭代一次。具体地讲,先用地讲,先用 方法求得一个初步的近似值方法求得一个初步的近似值 ,称为预估值,再将它代入称为预估值,再将它代入(1.5)式中作一次校正式中作一次校正,这样处理后,计算格式为,这样处理后,计算格式为1nyEulerEuler1111(,)(,)(,)2nnnnnnnnnnyyhf x yhyyf x yf xy(1.7)现在学习的是第14页,共6
13、2页 称它为预估校正格式。可用其中的第一式算出称它为预估校正格式。可用其中的第一式算出一个预估值,再代入第二式做校正。一个预估值,再代入第二式做校正。2,01(0)1dyxyxdxyy 例例1 用用 方法和预估校正法求解初值问题方法和预估校正法求解初值问题 Euler取步长取步长 。0.1h 解解 分别使用分别使用 格式与预估校正格式计算,格式与预估校正格式计算,格式的具体形式为格式的具体形式为Euler现在学习的是第15页,共62页计算结果见下表。计算结果见下表。预估校正格式预估校正格式 12()nnnnnxyyh yy111122()()2nnnnnnnnxxhyyyyyy12()nnnn
14、nxyyh yyEuler格式现在学习的是第16页,共62页1.73211.73791.78481.01.41421.41641.43510.51.67331.67821.71780.91.34161.34341.35820.41.61251.61531.64980.81.26491.26621.27740.31.54921.55251.58030.71.18321.18411.19180.21.48321.48601.50900.61.09541.09591.10000.1准确解准确解预校方法预校方法 方方法法准确解准确解预校方法预校方法 方方法法nxnynynynynx()ny x()ny
15、 xEulerEuler 上面给出的初值问题有解析解上面给出的初值问题有解析解 ,按该,按该式算出的准确值式算出的准确值 与近似值一起列在上表中,通与近似值一起列在上表中,通过比较可以看出过比较可以看出 方法的精度是较低的。方法的精度是较低的。12yx()ny xEuler现在学习的是第17页,共62页二、二、展开法与截断误差展开法与截断误差 Taylor 利用利用 展开法可以得到初值问题展开法可以得到初值问题 的的任意高精度的计算格式。任意高精度的计算格式。Taylor(1.1),(1.2)1()()nny xy xh 设初值问题设初值问题 有解有解 ,且,且 ,足够光滑,则足够光滑,则(1
16、.1),(1.2)()y x()y x(,)f x y 在点在点 处的处的nxTaylor展开式为展开式为 展开法展开法 Taylor(一)现在学习的是第18页,共62页2()()()()2!nnnnhy xhy xhy xyx()1()()!mmmnhyxO hm(2.1)其中其中 11(1)1()(),(1)!mmmnnhO hyxxm值问题值问题 中的函中的函由于由于 足够光滑,则当足够光滑,则当 时,时,1()0mo h()y x0h 式中式中 的各阶导数可由初的各阶导数可由初(2.1)()y x(1.1)数数 来表达,即来表达,即(,)f x y现在学习的是第19页,共62页yf f
17、fffyyfxyxy2222fffffyffxx yyxy 我们在我们在 式右端截取式右端截取 项,即舍去余项项,即舍去余项 ,则算得,则算得 的近似值的近似值 ,即,即1()mo h()ny xh1ny(2.1)1m2()12!mmnnnnnhhyyhyyym(2.2)此式称为此式称为 阶的阶的 公式。公式。mTaylor现在学习的是第20页,共62页(二)局部截断误差及其(二)局部截断误差及其“阶阶”0h 1()mo h 这个截断误差被称为是这个截断误差被称为是 阶的,即当阶的,即当 时,时,是关于是关于 的的 阶无穷小量。阶无穷小量。1m1mh 在考察计算公式的精度时,我们常常假定第在考
18、察计算公式的精度时,我们常常假定第 步的步的结果是精确的,即结果是精确的,即 ,在这一前提下,来估计第,在这一前提下,来估计第 步计算结果的误差,即步计算结果的误差,即 ,这一误差称为局部截,这一误差称为局部截断误差。例如,断误差。例如,阶的阶的 公式公式 的第的第 步的局步的局部截断误差为部截断误差为()nnyy x11()nny xy1n1n2.2mTaylorn111()()mnny xyo h(2.3)现在学习的是第21页,共62页1(,)nnnnnnyyhyyhf xy定义定义1 如果一种方法的局部截断误差是如果一种方法的局部截断误差是 阶的,则称该方法是阶的,则称该方法是 阶的。阶
19、的。1m m 由定义由定义1,阶阶 公式公式 是是 阶方法阶方法,当,当 时,时,式变为式变为 1m mm2.2Taylor2.2 这正是这正是 格式,故知格式,故知 格式是一阶方格式是一阶方法,其局部截断误差为法,其局部截断误差为 ,即为二阶的。,即为二阶的。2()o hEulerEuler现在学习的是第22页,共62页111(,)(,)2nnnnnnhyyf xyf xy例例2 证明改进的证明改进的 格式格式 Euler是是2阶方法。阶方法。n 对于方法的对于方法的“阶阶”和局部截断误差的和局部截断误差的“阶阶”,我们可以这样来理解:如果我们可以这样来理解:如果 式的局部截断误式的局部截断
20、误差是差是 阶的,这说明公式的前阶的,这说明公式的前 步的计算结果步的计算结果都是精都是精 确的,即确的,即 式右端关于式右端关于 次的次的 多多项式与左端的项式与左端的 在在 处的处的 级数的次数级数的次数不超过不超过 的项,完全重合,而两端超过的项,完全重合,而两端超过 次的项次的项不重合。因此,我们称此方法为不重合。因此,我们称此方法为 阶的。阶的。Taylor2.21m2.2mTaylor()ny xhnxmmm现在学习的是第23页,共62页()()()()2.42nnnnnhy xhy xy xy xhR23()()()()()26nnnnnhhy xhy xhy xyxyx 将左端
21、的将左端的 与右端的与右端的 在在 处处作作 展开,有展开,有()ny xh()ny xhnxTaylor y x1.11.2()(,)nnny xf xy 证明证明 设设 是初值问题是初值问题 、的精的精确解,即有确解,即有 ,由改进,由改进 的的 格式有格式有Euler2()()()()2nnnnhy xhy xhyxyx现在学习的是第24页,共62页23()()()()26nnnnhhy xhy xyxyx 将它们代入将它们代入 式,并将右端稍加整理,有式,并将右端稍加整理,有 2.4 可见,该式两端的前三项,即可见,该式两端的前三项,即 的次数不超的次数不超过过 的项完全重合,而从的项
22、完全重合,而从 的的 次方的项开始就不次方的项开始就不重合了。于是,由定义重合了。于是,由定义 可知,改进的可知,改进的 格式格式是是 阶方法,而其局部截断误差阶方法,而其局部截断误差 3()nRo h是是阶的。阶的。2m 33h21Eulerh23()()()()24nnnnhhy xhy xyxyx 现在学习的是第25页,共62页解解 直接求导数,有直接求导数,有 2xyyy 例例 用用 展开法求解例展开法求解例 中的初值问中的初值问题。题。Taylor3122()yyyxyy22324(2)xyyyxyyyy3(4)23421212(3)()yxyyyxyyxyyyyy现在学习的是第26
23、页,共62页1.26941.26490.31.18321.18320.21.09541.09540.1nxny()ny x 用用 阶阶 公式,取步长公式,取步长 ,部分计算,部分计算结果列于表结果列于表 中。中。Taylor40.1h 6.2 表中表中 表示准确值,与表示准确值,与 比较,可见比较,可见用用 阶阶 公式得到的数值解是令人非常满意公式得到的数值解是令人非常满意的。的。Taylor4ny xny现在学习的是第27页,共62页 三、三、方法方法 RungeKutta 方法(简称方法(简称 方法)是一种方法)是一种构造高精度计算公式的方法。前面我们看到,用构造高精度计算公式的方法。前面
24、我们看到,用 展开法确实可以得到高精度的计算公式。然而,展开法确实可以得到高精度的计算公式。然而,方法每提高一阶,都要增加很大的计算导数的工方法每提高一阶,都要增加很大的计算导数的工作量,而作量,而 方法,避开了导数的计算,采用了方法,避开了导数的计算,采用了另外一种构造格式的途径。另外一种构造格式的途径。RungeKuttaRKTaylorRK现在学习的是第28页,共62页1()()()(,()nny xy xyfyh首先,从微分中值定理及方程首先,从微分中值定理及方程 得得 1.1 。这里。这里 称为方程称为方程 的积分的积分曲线曲线 在区间在区间 上的平均斜率。由此可见上的平均斜率。由此
25、可见,只要对此平均斜率提供一种算法,就可以得到一,只要对此平均斜率提供一种算法,就可以得到一个相应的计算公式。下面,我们来观察个相应的计算公式。下面,我们来观察 格式和格式和改进改进 的格式,将它们分别写成的格式,将它们分别写成1nnxx(,()fy1,nnxx y xEulerEuler1.1RK 方法的基本思想方法的基本思想(一)现在学习的是第29页,共62页1(,)nnnnyyf xyhEulernx(,)nnf xy1,nnx x 前一式是用前一式是用 点处的斜率点处的斜率 的平均值来代替平的平均值来代替平均斜率的,后一式是用均斜率的,后一式是用 两点上的斜率的平均值来代替两点上的斜率
26、的平均值来代替平均斜率的。我们已经知道平均斜率的。我们已经知道 格式是格式是 1 阶方法,而改进的阶方法,而改进的 格式是格式是2 阶方法。阶方法。由此看来,如果在区间由此看来,如果在区间 内多预报几个点的斜率内多预报几个点的斜率值,然后将它们加权平均,以代替上述的平均斜率,值,然后将它们加权平均,以代替上述的平均斜率,就可以构造出更高阶的计算公式来。因此,就可以构造出更高阶的计算公式来。因此,方法的关键就在于选择哪些点上的斜率值,以及如方法的关键就在于选择哪些点上的斜率值,以及如何构造它们的线性组合。何构造它们的线性组合。1,nnx xEulerRK1111(,)(,)2nnnnnnyyf
27、xyf xyh现在学习的是第30页,共62页11212111122(,)(,)nnnnnnyyKKKhf xyKhf xy1(,)nnnnyyKKhf xy与与 格式与改进的格式与改进的 格式可以改写成下格式可以改写成下面的形式面的形式 EulerEuler 级级 公式公式 RKN(二)现在学习的是第31页,共62页舍去误差项,便得到舍去误差项,便得到 显然,若在区间显然,若在区间 内取内取 个不同的个不同的点,记积分曲线点,记积分曲线 在这在这 个点上的斜率分别个点上的斜率分别为为 ,于是我们可以设,于是我们可以设1,nnxx12,nK KKN y xN11111(,)(,)2,3,Nnni
28、iinniininijjjyyC KKhf x yKhf xah yb KiN3.211()()()Nmnniiiy xhy xC KO h3.1现在学习的是第32页,共62页 这就是所谓的这就是所谓的 级级 阶的阶的 公式。其公式。其中中 都是待定系数,并且有都是待定系数,并且有,iijia b cNmRK11,2,3,iiijjabiN3.3 待定系数待定系数 可用比较系数的方法求得可用比较系数的方法求得。即将。即将 中的中的 和各和各 都在都在 处展成处展成 级数,然后令两端关于别级数,然后令两端关于别 的不超过的不超过 次的同次次的同次项的系数相等,便可求得这些待定系数。项的系数相等,
29、便可求得这些待定系数。,iijia b c()ny xiKnxTaylorhm3.1 下面以下面以 为例,说明待定系数的求法。当为例,说明待定系数的求法。当 时,由时,由 式有式有 3.12N 2N 现在学习的是第33页,共62页23()()()()()2nnnnhy xhy xhy xyxo h1(,)()nnnKhf xyhy x2221,()(,()nnnnKhf xa h y xb hf xy x232()()xyhfh afffo h232()()()nnhy xh a yxo h2(,()(,()nnxnnh fxy xha fxy x221(,()(,()()nnynnhbfxy
30、 xfxy xo h21122()()()mnny xhy xC KC KO h3.4 将将 式中的式中的 与与 、分别在分别在 处作处作 展开,有展开,有()ny xh1K2KnxTaylor3.4现在学习的是第34页,共62页122 2112CCCa1(,)(,(,)2nnnnnnnnhyyf x yf xh yhf x y称为修正的梯形公式。称为修正的梯形公式。注意,这里用到了二元注意,这里用到了二元 展开式。将上面的展开式。将上面的三个展开式代入三个展开式代入 中,并令两端中,并令两端 的次数不超过的次数不超过 的项的系数相等,于是得到的项的系数相等,于是得到Taylor2m h3.4
31、若取若取 ,则可算得,则可算得 ,这时,这时,由由 式得式得 212C 12211,12Cab3.2现在学习的是第35页,共62页1,(,)22nnnnnnhhyyhfxyf xy称为修正的矩形公式。称为修正的矩形公式。以上两个公式,都是在以上两个公式,都是在 及及 的前提的前提之下构造出来的。因此,它们都是之下构造出来的。因此,它们都是 级级 阶的阶的 公式。公式。2N 2m 22RK若取若取 ,则可算得,则可算得 ,由,由 式得式得 21C 122110,2Cab3.2现在学习的是第36页,共62页,(1,2,3,4)1,(5,6,7)2,(8)NNmNNNN 注意,在上面求待定系数的方程
32、组中,有注意,在上面求待定系数的方程组中,有一个自由参数,故一个自由参数,故 级级 阶的公式有无穷多个。阶的公式有无穷多个。但是,在这些但是,在这些 级级 公式中,不可能存在高公式中,不可能存在高于于 阶的方法。下面,我们给出阶的方法。下面,我们给出 级级 公式可公式可以达到的最高阶数:以达到的最高阶数:2222RKRKN现在学习的是第37页,共62页1123412132431(22)6(,)11(,)2211(,)22(,)nnnnnnnnnnyyKKKKKhf x yKhf xh yKKhf xh yKKhf xh yK标准标准 级级 阶阶 公式公式 44RK 依照依照 级级 阶阶 公式的
33、构造过程,我们可以得公式的构造过程,我们可以得到更高级高阶的到更高级高阶的 公式,其中最常用的就是标准公式,其中最常用的就是标准的的 级级 阶阶 公式,其形式为:公式,其形式为:RKRKRK4422 例例 用标准用标准 级级 阶阶 公式求解例公式求解例 中给中给出的初值问题,取出的初值问题,取 。RK4440.2h 1(三)现在学习的是第38页,共62页解解 计算公式如下:计算公式如下:1123411212324331(22)620.2()2(0.1)0.2222(0.1)0.2222(.2)0.20,1,5nnnnnnnnnnnnnnyyKKkKxKyyxKKyKyxKKyKyxoKyKny
34、K 现在学习的是第39页,共62页1.7320511.7321401.7378691.051.6124521.6125131.6164740.841.4832401.4832811.4859650.631.341641.3416671.3433600.421.1832161.1832921.1840960.2111100(精确值精确值)(4阶阶R-K方法方法)(2阶阶R-K方法方法)nnxnyny()ny x将计算结果列于表将计算结果列于表 。6.3现在学习的是第40页,共62页 将表将表 与表与表 的结果相比较,尽管这的结果相比较,尽管这里步长放大了,但计算的精度却很高,从而里步长放大了,但
35、计算的精度却很高,从而出可以看出选择方法的重要意义。出可以看出选择方法的重要意义。6.36.1现在学习的是第41页,共62页四、四、线性多步法线性多步法 前面介绍的几种方法都是单步法,即在计算时,前面介绍的几种方法都是单步法,即在计算时,仅用到它前面一步得到信息仅用到它前面一步得到信息 。设想,当通过单步。设想,当通过单步法已经算出法已经算出 ,如何充分地利用这些信息,如何充分地利用这些信息,在计算,在计算 时获得较高精度,这就是多步法的基时获得较高精度,这就是多步法的基本思想。本思想。ny1,nnn kyyy1ny00,yf x yy xy 假定仍讨论本章开始给出的一阶微分方程的初假定仍讨论
36、本章开始给出的一阶微分方程的初值问题值问题 1.11.2现在学习的是第42页,共62页与其等价的积分方程是与其等价的积分方程是 11,nnxnnxy xy xf x y xdx4.1 前面我们曾使用梯公式,计算前面我们曾使用梯公式,计算 式右端的积分式右端的积分,而得到了改进的,而得到了改进的 方法。其实,这也可以理方法。其实,这也可以理解为是用插值点解为是用插值点 和和 的线性插值函数代替函数的线性插值函数代替函数 而得到的。由于通常插多项式的次数越高越精确,而得到的。由于通常插多项式的次数越高越精确,所以使我们试图用高次插值多项式代替所以使我们试图用高次插值多项式代替 ,来得到,来得到高精
37、度的计算方法。高精度的计算方法。Eulernx1nxff4.1现在学习的是第43页,共62页 今取今取 和和 为插值节点,这时的插为插值节点,这时的插值多项式为值多项式为 21,nnnxxx1nx 1231111112,nnnnnnnnnnnxxxxxxPxfxy xxxxxxx121111112,nnnnnnnnnnnxxxxxxf xy xxxxxxx112,221221nnnnnnnnnnnxxxxxxfxy xxxxxxx112112,nnnnnnnnnnnxxxxxxf xy xxxxxxx现在学习的是第44页,共62页 用用 代替代替 ,便得到,便得到 的近的近似值似值 ,即,即
38、3P x,f x y x1ny x1ny 113nnxnnxyy xP x dx令令 ,并注意到,并注意到nxxuh1112nnnnnnxxxxxxh则得则得 现在学习的是第45页,共62页111101,126nnnnyy xhfxy xu uudu101,1122nnhf xy xuuudu 11101,122nnhfxy xuu u 12201,116nnhf xy xuu udu1119,19,24nnnnny xhf xy xf xy x11225,nnnnf xy xf xy x现在学习的是第46页,共62页上式中右端的上式中右端的 用用 代替,就有代替,就有iy xiy11119,
39、19,24nnnnnnyy xhf xyf xy11225,nnnnfxyfxy4.2 显然,这是一个隐式方法,称显然,这是一个隐式方法,称 式为式为 内内插公式。插公式。Adams4.2现在学习的是第47页,共62页 上面之所以得到的是隐式方法上面之所以得到的是隐式方法,其原因在于选其原因在于选用了用了 作为插值节点。例如我们取作为插值节点。例如我们取 和和 作为插值节点。这时的插值多项式成为作为插值节点。这时的插值多项式成为 1nx321,nnnxxxnx 1233123,nnnnnnnnnnnxxxxxxP xf xy xxxxxxx231111213,nnnnnnnnnnnxxxxxx
40、f xy xxxxxxx132222123,nnnnnnnnnnnxxxxxxf xy xxxxxxx123333132,nnnnnnnnnnnxxxxxxfxy xxxxxxx现在学习的是第48页,共62页111155,59,24nnnnnnyyhfxyfxy 用上式代替用上式代替 式右端积分中的式右端积分中的 ,也将得到,也将得到 的近似值的近似值 ,与推导隐式,与推导隐式方法方法 的过程类似,可得到如下的显式公式:的过程类似,可得到如下的显式公式:,f x y x1ny x1ny4.14.2 我们称我们称 式为式为 外插公式。在讨论它们外插公式。在讨论它们的截断误差的截断误差 时,不仅要
41、假定时,不仅要假定 ,还,还要假定要假定 和和 ,容,容易证明它们的截断误差均为易证明它们的截断误差均为 。nnyy x1122,nnnnyy xyy x33nnyy xAdams11nny xy5h4.3223337,9,nnnnf xyf xy4.3现在学习的是第49页,共62页 可以单独使用外插公式,用它每计可以单独使用外插公式,用它每计 算算 一一 个个 的值,只需要计算一次的值,只需要计算一次 的值,计算量小于的值,计算量小于 方法,而它们的截断误差为同阶。但该方法的明显不方法,而它们的截断误差为同阶。但该方法的明显不足是开始的几个值足是开始的几个值 和和 不能用它算,必须采用不能用
42、它算,必须采用其它方法。其它方法。1ny,f x yRK1,2y y3y 通常把上面给出的两个公式联合使用,即用外插通常把上面给出的两个公式联合使用,即用外插公式提供内插公式的迭代初值,用内插公式作迭代。公式提供内插公式的迭代初值,用内插公式作迭代。如果也像改进的如果也像改进的 方法那样规定只迭代一次或两方法那样规定只迭代一次或两次,也就形成了一个预估校正系统。次,也就形成了一个预估校正系统。Euler现在学习的是第50页,共62页解解 为了使用线性多步法求解,今先使用为了使用线性多步法求解,今先使用 方方法算出法算出 和和 然后分别使用外插公式以用外然后分别使用外插公式以用外插插、内插联合使
43、用的预估校正法计算后面的数值、内插联合使用的预估校正法计算后面的数值解。解。RK12,yy3y例例5 取步长取步长 ,使用线性多步法求解例,使用线性多步法求解例1给给出的初值问题。出的初值问题。0.1h 现在学习的是第51页,共62页计算公式计算公式(1)预估公式(外插公式)预估公式(外插公式)0111155,59,24nnnnnnyyhfxyfxy223337,9,nnnnf xyf xy现在学习的是第52页,共62页 表表6.4 nxny00.10.20.30.40.50.60.70.80.91.011.0954461.1832171.2649121.3415511.4140451.483
44、0171.5489171.6121141.6729141.7315691.3416411.4142131.4832931.5491921.6124501.6733131.732048RK方法外插法预校方法现在学习的是第53页,共62页 011119,19,24nnnnnnyyhfxyfxy11225,nnnnf xyf xy计算结果见表计算结果见表 。6.4校正公式(内插公式)校正公式(内插公式)2现在学习的是第54页,共62页五、五、一阶微分方程组和解法一阶微分方程组和解法 前面介绍了一阶常微分方程初值问题的各种数值解前面介绍了一阶常微分方程初值问题的各种数值解法,这些解法对微分分方程组的初
45、问题同样适用。法,这些解法对微分分方程组的初问题同样适用。考察一阶方程组考察一阶方程组其初始条件为其初始条件为 12,iiNyfx y yy1,2,iN5.1001,2,iiyxyiN5.2现在学习的是第55页,共62页11234221,2,6ininiiiihyyKKKKiN其中其中 112,iinnnNnKfxyyy21112211,2222iinnnNnNhhhhKfxyKyKyK求解求解 ,的四阶的四阶 格式为格式为 RK5.25.1现在学习的是第56页,共62页31122222,2222iinnnNnNhhhhKfxyKyKyK41132223,iinnnNnNKfxh yhKyhK
46、yhK此处此处 是是 在点在点 处的近似值。处的近似值。iny iyxnx 今以二个未知函数方程组为例来说明上面公式今以二个未知函数方程组为例来说明上面公式 的计算过程的计算过程。现在学习的是第57页,共62页考察方程组考察方程组 0000,dyf x y zy xydxdzg x y zz xzdx此时此时 的格式的具体形式为的格式的具体形式为 RK11234,226nnhyyKKKK11234226nnhzzLLLL现在学习的是第58页,共62页其中其中 1,nnnKf xyz211,222nnnhhhKfxyK zL322,222nnnhhhKfxyKzL433,nnnKf xh yhK
47、zhL现在学习的是第59页,共62页1,nnnLg xyz212,222nnnhhhLg xyK zL322,222nnnhhhLg xyKzL433,nnnLg xh yhKzhL现在学习的是第60页,共62页 对于高微分方程的初值问题,原则上可以将它化为对于高微分方程的初值问题,原则上可以将它化为一阶方程组的初值问题来求解。例如考察下述二阶方程一阶方程组的初值问题来求解。例如考察下述二阶方程的初值问题的初值问题 只要引入新的变量只要引入新的变量 dyzdx 2200,0,0d ydyf x ydxdxyy yy5.35.4现在学习的是第61页,共62页,dzf x y zdxdyzdx 000,0yyzy容易建立求解它的容易建立求解它的 格式。格式。RK初始条件初始条件 相应地可化为相应地可化为 5.4则则 式可化为如下的一阶方程组式可化为如下的一阶方程组 5.3现在学习的是第62页,共62页