第十一章 常微分方程边值问题的数值解法汇总 下载本文

内容发布更新时间 : 2024/11/16 8:36:45星期一 下面是文章的全部内容请认真阅读。

第十一章 常微分方程边值问题的数值解法

工程技术与科学实验中提出的大量问题是常微分方程边值问题.本章将研究常微分方程边值问题的数值求解方法.主要介绍三种边界条件下的定解问题和两大类求解边值问题的数值方法,打靶法算法和有限差分方法.

11.1 引言

在很多实际问题中都会遇到求解常微分方程边值问题. 考虑如下形式的二阶常微分方程

y???f(x,y,y?), a?x?b, (11.1.1)

在如下三种边界条件下的定解问题: 第一种边界条件:

y(a)??, y(b)?? (11.1.2)

第二种边界条件:

y?(a)??, y?(b)?? (11.1.2)

第三种边界条件:

?y?(a)??0y(a)?a1, (11.1.13) ??y(b)??y(b)?b01?其中a0?0, b0?0, a0?b0?0.

常微分方程边值问题有很多不同解法, 本书仅介绍打靶方法和有限差分方法.

11.2 打靶法

对于二阶非线性边值问题

y???f?x,y,y??,a?x?b,y?a???,y?b???. (11.2.1)

打靶法近似于使用初值求解的情况. 我们需要利用一个如下形式问题初值解的序列:

w???f?x,w,w??,a?x?b,w?a???,w?(a)?v, (11.2.2)

引进参数v以近似原边界值问题的解.选择参数v?vk,以使:

limw?b,vk??y?b???, (11.2.3)

k?? 1

其中w(x,vk)定义为初值问题(11.2.2)在v?vk时的解,同时y?x?定义为边值问题(11.2.1)的解.

首先定义参数v0,沿着如下初值问题解的曲线,可以求出点(a,?)对应的初始正视图

w???f?x,w,w??,a?x?b,w?a???,w?(a)?v. (11.2.4)

如果w(b,v0)不严格收敛于?,那么我们选择v1等值以修正近似值,直到w(b,v0)严格逼近?.

为了取得合适的参数vk,现在假定边值问题(11.2.1)有唯一解,如果w(x,v)定义为初始问题(11.2.2)的解,那么v可由下式确定:

w(b,v)???0. (11.2.5)

由于这是一个非线性方程,我们可以利用Newton法求解.首先选择初始值v0,然后由下式生成序列

vk?vk?1?(w(b,vk?1)??)dwdw)(b,vk?1)?(b,vk?1), (11.2.6) ,此处(dwdvdv()(b,vk?1)dv同时要求求得(dw)(b,vk?1),因为w(b,v)的表达式未知,所以求解这个有一点难度;dv我们只能得到这么一系列的值w(b,v0),w(b,v1),w(b,v2), ??w(b,vk?1)。假如我们如下改写初值问题(11.2.2),使其强调解对x和v的依赖性

(11.2.7) w???f?x,w(x,v),w?(x,v)?,a?x?b,w?a,v???,w?(a,v)?v,保留初始记号以显式与x的微分相关.既然要求当v?vk时(需要求出表达式(11.2.7)关于v的偏导数.过程如下:

dw)(b,v)的值,那么我们dv?w???f(x,v)?(x,w(x,v),w?(x,v))?v?v

?f?x?f?w?(x,w(x,v),w?(x,v))?(x,w(x,v),w?(x,v))(x,v)?x?v?w?v ?f?w??(x,w(x,v),w?(x,v))(x,v)??w?v

又因为x跟v相互独立,所以当a?x?b上式如下;

2

?w???f?w?f?w?(x,v)?(x,w(x,v),w?(x,v))(x,v)?(x,w(x,v),w?(x,v))(x,v)?v?w?v?w??v(11.2.8)

初始条件为:

?w?w?(a,v)?0,(a,v)?1 ?v?v?w)(x,v),并且假定x和v的微分阶翻转,如果简单地用z(x,v)定义((11.2.8)转化?v为初值问题:

..?f?fz?(x,w,w?)z?(x,w,w?)z,a?x?b,z(a)?0,z(a)?1?w?w?,(11.2.9) ..因此,对于(11.2.2)和(11.2.9)式的每次迭代需要求解两个初值问题.那么从(11.2.6)式可得:

vk?vk?1?w(b,vk?1)??z(b,vk?1), (11.2.10)

事实上,这些初值问题很难精确求解,而将这些解近似为一个初值问题的解.

同样,我们可以按以上步骤考虑对于三阶非线性边值问题的打靶法算法. 对于三阶非线性边值问题

y????f?x,y,y?,y???,a?x?b,y?a???,y??a???,y?(b)??.(11.2.11)

转变形式:

w????f?x,w,w?,w???,a?x?b,w?a???,w?(a)??,w??(a)?v,(11.2.12)

选择参数v?vk,以使:

limw??b,vk??y?b???, (11.2.13)

k??其中w?(x,vk)定义为初值问题(11.2.12)在v?vk时的解,同时y?x?定义为边值问题(11.2.11)的解.

定义参数v0,沿着如下初值问题解的曲线,可以求出点(a,?)对应的初始正视图

w????f?x,w,w?,w???,a?x?b,w?a???,w?(a)??,w??(a)?v.(11.2.14)

如果w?(b,v0)不严格收敛于?,那么我们选择v1等值以修正近似值,直到w?(b,v0)严

3