§11.6
函数的幂级数展开式的应用
一、近似计算
利用函数的幂级数展开式,可以进行近似计算。
1、一些近似计算中的术语
误差不超过
设为精值,而为近似值,则表示与之间的绝对误差。
误差不超过( ) 意指:
近似值与精值之差,在小数点后的位是完全一样的,仅在小数点后的第位相差不超过一个单位。
例如:,
有时,也将误差不超过说成:精确到小数点后位。
截断误差(或方法误差)
函数用泰勒多项式
来近似代替,则该数值计算方法的截断误差是
¸舍入误差
用计算机作数值计算,由于计算机的字长有限,原始数据在计算机上表示会产生误差,用这些近似表示的数据作计算,又可能造成新的误差,这种误差称为舍入误差。
例如,用3.14159 近似代替 p,产生的误差
d =p - 3.14159
= 0.0000026L
就是舍入误差。
2、根式计算
【例1】计算的近似值( 精确到小数四位)。
求根式的近似值,要选取一个函数的幂级数展开式,可选牛顿二项展开式
要利用此式,需要将表示成的形式,通常当较小时,计算效果会较好。
这里,可取,。
解:利用二项展开式,有
如果我们截取前四项来作计算, 则
@
由于的系数是单调递减的,其截断误差可如下估计
@
注明:
Ê表达式也可选其它形式,如
;
Ë在数列的极限理论学习中,我们已形究过数列
,它单调下降,下界为,且
利用此迭代算式,编写Matlab程序gs1101.m,运行此程序,更容易获得的高精度近似值。
3、对数的计算
【例2】计算的近似值(精确到小数后第4位)。
解:我们已有展开式
且
利用此数项级数来计算的近似值,理论上来说是可行的。其部分和的截断误差为
欲使精度达到,需要的项数应满足,即
,亦即,应要取到10000项,这实在是太大了。
运行Matlab程序gs1102.m,取级数前一万项(n=10000)来作近似计算,可获得下表。并仔细观察项数与所求近似值对照表与计算速度。
截取项数 |
ln2近似值 |
9900 |
0.6930971330 |
9991 |
0.6931972231 |
9992 |
0.6930971430 |
9993 |
0.6931972131 |
9994 |
0.6930971530 |
9995 |
0.6931972031 |
9996 |
0.6930971631 |
9997 |
0.6931971931 |
9998 |
0.6930971731 |
9999 |
0.6931971831 |
10000 |
0.6930971831 |
由上述程序的运行与结果,有几点感受
Ê部分和的项数取得太大,达到了一万;
Ë其近似值仅有小数点后三位是精确的;
Ì项数增加几十项,并未提供多少有效位数字;
Í计算花费了太多的时间。
这迫使我们去寻找计算ln2更有效的方法。
将展开式
中的换成,得
两式相减,得到不含有偶次幂的展开式
令,解出。以代入得
再对此数项级数编程Matlab下的计算程序gs1103.m,运行该程序可获得项数与所求近似值对照表如下
截取项数 |
ln2近似值 |
4 |
0.69313475733229 |
5 |
0.69314604739083 |
6 |
0.69314707375979 |
7 |
0.69314717025601 |
8 |
0.69314717954824 |
9 |
0.69314718045924 |
10 |
0.69314718054981 |
11 |
0.69314718055892 |
12 |
0.69314718055984 |
13 |
0.69314718055993 |
14 |
0.69314718055994 |
15 |
0.69314718055994 |
16 |
0.69314718055995 |
17 |
0.69314718055995 |
18 |
0.69314718055995 |
由表可发现,计算速度大大提高,近似值的精度有十分显著的改进,这种处理手段通常称作幂级数收敛的加速技术。
4、p 的计算
在小学数学学习中,我们就已接触到了圆周率p,可对它的计算却从未真正做过。现在是我们了却这一夙愿的时候了。
由展开式
两边积分,有
令,则,于是有
利用此式可以进行计算,效果(速度与精度)也不错,只是需要的值。借助三角公式,作适当地变形,可构造出不需要计算表达式。
令 ,有
据上式,编写Matlab程序gs1104.m,运行它可获得如下结果。
截取项数 |
p近似值 |
10 |
3.141592579606 |
11 |
3.141592670451 |
12 |
3.141592649717 |
13 |
3.141592654485 |
14 |
3.141592653382 |
15 |
3.141592653638 |
16 |
3.141592653578 |
17 |
3.141592653592 |
18 |
3.141592653589 |
19 |
3.141592653590 |
20 |
3.141592653590 |
5、定积分的近似计算
【例3】计算定积分
的近似值,精确到0.0001。
解:因,所给积分不是广义积分,只需定义函数在处的值为1,则它在上便连续了。
展开被积函数,有
在区间上逐项积分,得
因为第四项
所以可取前三项的和作为积分的近似值
对上述级数展开式,我们编写了Matlab程序gs1105.m,运行此程序,可给出截取级数任意项时,此定积分含有更多位有效数值的近似值。
截取项数 |
定积分的近似值 |
1 |
1.00000000000000 |
2 |
0.94444444444444 |
3 |
0.94611111111111 |
4 |
0.94608276643991 |
5 |
0.94608307263235 |
6 |
0.94608307035488 |
7 |
0.94608307036723 |
8 |
0.94608307036718 |
9 |
0.94608307036718 |
10 |
0.94608307036718 |
二、欧拉公式
设有复数项级数为
(1)
其中为实常数或实函数。如果实部所成的级数
(2)
收敛于和,并且虚部所成的级数
(3)
收敛于和,就说级数(1)收敛且其和为。
如果级数(1)各项的模所构成的级数
(4)
收敛,由于
则级数(2)、(3)绝对收敛,从而级数(1)收敛,这时就说级数(1)绝对收敛。
考察复数项级数
(5)
它的模所形成的级数
绝对收敛。因此,级数(5)在整个复平面上是绝对收敛的。
在轴上(),它表示指数函数,在整个复平面上我们用它来定义复变量指数函数,记作。于是定义为
(6)
当时,为纯虚数,(6)式成为
把换写为,上式变为
(7)
这就是欧拉公式。
应用公式(7),复数可以表示为指数形式
(8)
其中: 是的模,是的辐角。
在(7)式中把换为,又有
与(7)相加、相减,得
(9)
这两个式子也叫做欧拉公式。
(7)式与(9)式揭示了三角函数与复变量指数函数之间的一种联系。
根据定义(6)
并利用幂级数的乘法,我们不难验证
特殊地,取为实数,为纯虚数,则有
这就是说,复变量指数函数在处的值是模为、辐角为的复数。