数值分析总复习提纲数值分析课程学习的内容看上去比较庞杂,不同的教程也给出了不同的概括,但总的来说无非是误差分析与算法分析、基本计算与基本算法、数值计算与数值分析三个基本内容。
在实际的分析计算中,所采用的方法也无非是递推与迭代、泰勒展开、待定系数法、基函数法等几个基本方法。
一、误差分析与算法分析误差分析与算法设计包括这样几个方面: (一)误差计算 1、截断误差的计算截断误差根据泰勒余项进行计算。
基本的问题是(1)1()(01)(1)!n n f x x n θεθ++<<<+,已知ε求n 。
例1.1:计算e 的近似值,使其误差不超过10-6。
解:令f(x)=e x ,而f (k)(x)=e x ,f (k)(0)=e 0=1。
由麦克劳林公式,可知211(01)2!!(1)!n x xn x x e e x x n n θθ+=+++++<<+当x=1时,1111(01)2!!(1)!e e n n θθ=+++++<<+故3(1)(1)!(1)!n e R n n θ=<++。
当n =9时,R n (1)<10-6,符合要求。
此时, e≈2.718 285。
2、绝对误差、相对误差及误差限计算绝对误差、相对误差和误差限的计算直接利用公式即可。
基本的计算公式是:①e(x)=x *-x =△x =dx② *()()()ln r e x e x dxe x d x x x x====③(())()()()e f x f x dx f x e x ''== ④(())(ln ())r e f x d f x =⑤121212121122121122((,))(,)(,)(,)()(,)()x x x x e f x x f x x dx f x x dx f x x e x f x x e x ''''=+=+ ⑥121212((,))((,))(,)f x x f x x f x x εδ=⑦ xεδ=注意:求和差积商或函数的相对误差和相对误差限一般不是根据误差的关系而是直接从定义计算,即求出绝对误差或绝对误差限,求出近似值,直接套用定义式()()r e x e x x =或xεδ=, 这样计算简单。
例1.2:测得圆环的外径d 1=10±0.05(cm),内径d 2=5±0.1(cm)。
求其面积的近似值和相应的绝对误差限、相对误差限。
解:圆环的面积公式为: 2212()4S d d π=-所以,圆环面积的近似值为 222(105)58.905()4S cm π=-≈由上述讨论,面积近似值的绝对误差限为112211222()(2()2())(()())42(100.0550.1)21.57()S d d d d d d d d cm ππεεεεεπ≤+=+=⨯+⨯≈相对误差为() 1.57()100% 2.7%58.905S S S εδ==⨯≈相对误差要化成百分数。
3、绝对误差、相对误差、有效数字的关系计算绝对误差、相对误差、有效数字的关系依据如下结论讨论: ①如果一个数*1231110.(0)n n n x a a a a a a a -+=±≠其近似值12310.n n x a a a a a -=±是对x*的第n+1位进行四舍五入后得到的,则x 有n 位有效数字,且其绝对误差不超过1102n -⨯ ,即 1*102n x x --≤⨯ 。
②如果一个数*1231110.10(0)m n n n x a a a a a a a -+=±⨯≠的近似值12310.10m n n x a a a a a -=±⨯是对x*的第n+1位进行四舍五入后得到的,则x 有n 位有效数字,且其绝对误差不超过1102m n -⨯ ,即 1*102m n x x --≤⨯。
③设12310.10m n n x a a a a a -=±⨯是x*的具有n 位有效数字的近似值,则其相对误差限为111102n a δ-=⨯反之,若x 的相对误差限111102(1)n a δ-=⨯+则x 至少具有n 位有效数字。
例1.3的近似值,使其绝对误差不超过31102-⨯。
解:因为12<<所以,化成12310.10m n n x a a a a a -=±⨯的形式,有11,1a m ==。
而31411101022ε--=⨯=⨯,所以,由定理2,n=4,所以近似值应保留4位有效数字。
1.732≈。
例1.4的近似值的相对误差不超过410-,应取几位有效数字?(5%)解:设取n 个有效数字可使相对误差小于410-,则 141110102n a --⨯<,而34≤≤,显然13a =,此时,114111*********n n a ---⨯=⨯<⨯, 即14110106n --⨯<, 也即561010n ⨯> 所以,n=5。
例1.5:已知近似数x 的相对误差限为0.3%,问x 至少有几个有效数字? 解:设x 有n 位有效数字,其第一位有效数字按最不利情况取为9,则11311110.3%10101010002(91)2102210n n n nδ---===⨯=⨯=⨯=+⨯⨯由上可得6101000n ⨯=,n ≈2.2,所以取n=2。
指出:也可以按首位为1,9分别计算,取较小者。
4、计算方法的余项计算各种计算方法的余项的计算根据相应的余项定理进行。
(二)误差分析精度水平的分析主要依据两个结论: 相对误差越小,近似数的精确度越高。
一个近似数的有效数字越多,它的相对误差越小,也就越精确。
反之亦然。
例1.6: 测量一个长度a 为400米,其绝对误差不超过0.5米,测量另一长度b 为20米,其绝对误差不超过0.05米。
问,哪一个测量的更精确些?解:0.50.125%4000.050.25%20a a bb a b εδεδ======显然,δa < δb 所以测值a 更准确一些。
答:测值a 更准确一些。
指出:衡量测量工作的好坏用相对误差。
解决这样的题目就是三个步骤: 第一,求出两个相对误差。
第二,比较两个相对误差的大小。
第三,结论。
(三)算法分析 1、稳定性分析算法的稳定性通过对计算的误差的扩缩情况进行分析。
例1.7:设近似值T 0=S 0=35.70具有四位有效数字,计算中无舍入误差,试分析分别用递推式15142.8i i T T +=-和11142.85i i S S +=-计算T 20和S 20所得结果是否可靠。
解:设计算T i 的绝对误差为e(T i )=T i *-T i ,其中计算T 0的误差为ε,那么计算T 20的误差为e(T 20)=T 20*-T 20=(5T 19*-142.8)-(5T 19-142.8)=5(T 19*-T 19) =5e(T 19)=52e(T 18)=……=520e(T 0) 显然误差被放大,结果不可靠。
同理,202001()()5e S e S ⎛⎫= ⎪⎝⎭,误差缩小,结果可靠。
指出:注意理论分析,因此初始近似值本身是不必要的。
2、收敛性分析算法的收敛性分析主要是迭代法解方程的收敛性分析和迭代法解方程组的收敛性分析,其他计算方法的收敛性分析一般在具体计算过程中体现。
(1)迭代法收敛性判定的基本结论是:定理(迭代法基本定理):对于任意的f ∈R n ,和任意的初始向量x (0)∈R n ,迭代法x (k+1)=Bx (k)+f(k=0,1,2,…)收敛的充分必要条件是迭代矩阵B 的谱半径ρ(B)<1。
推论:若1B <,则迭代格式x (k+1)=Bx (k)+f(k=0,1,2,…)收敛。
(2)判定雅可比迭代法、高斯—赛德尔迭代法收敛的基本依据是: 定理: 设线性方程组Ax=b ,其系数矩阵为111212122212(0)n n ii n n nn a a a a a a A a aa a ⎛⎫ ⎪ ⎪=≠ ⎪ ⎪ ⎪⎝⎭则雅可比迭代法迭代矩阵的特征值满足如下条件:1112121222120n n n n nn a a a a a a a a a λλλ=;高斯-赛德尔迭代法迭代矩阵的特征值满足如下条件:1112121222120n nn n nna a a a a a a a a λλλλλλ=。
(3)系数矩阵为严格对角占优矩阵的方程组的迭代法收敛性:定理:系数矩阵为严格对角占优的线性方程组,它的雅可比迭代和高斯-赛德尔迭代都是收敛的。
指出:迭代法基本定理是一般结论,对任意迭代法的收敛性都能分析。
限定雅可比迭代法和高斯-赛德尔迭代法则不必应用基本定理,以回避求迭代矩阵。
例1.8:已知线性方程组1231231232211221x x x x x x x x x +-=⎧⎪++=⎨⎪++=⎩ 求解这个方程组的雅可比迭代法和高斯—赛德尔迭代法是否收敛?解:122111221A -⎛⎫ ⎪= ⎪ ⎪⎝⎭,令2211022λλλ-=,则312300λλλλ=⇒===, 所以ρ(B J )=0<1所以雅可比迭代法收敛。
而21232210(2)00,222λλλλλλλλλλλ-=⇒-=⇒===, 所以ρ(B G-S )=2>1所以高斯—赛德尔迭代法发散。
二、基本计算与基本算法 (一)秦九韶算法秦九韶算法是一种求多项式的值的计算方法。
对任意给定的x ,计算代数多项式1110()n n n n n P x a x a x a x a --=++++的值,可以利用下面的方法计算:1210()((()))n n n n P x a x a x a x a x a --=+++++这种算法就是著名的秦九韶算法。
是我国宋朝伟大的数学家秦九韶的伟大发现。
秦九韶算法可以写成递推的形式:10(1,2,1,0)()n n k k k ns a s xs a k n p x s+=⎧⎪=+=-⎨⎪=⎩具体计算式,递推格式是采用如下表格形式进行计算:123210112321112321()kn n n n k nn n k k k n n n n n a a a a a a a a xxs xs xs xs xs xs xs s a xs s a s s s s s s ---+--+---=+ 根据递推规则,计算的过程是要把横线上面每一竖列的两个数相加得横线下的数。
其中a k 由多项式给出,而每一个xs k+1则由前一列中的s k+1与已知数x 相乘得出。
所以可以由最前一列逐步递推计算出最后结果。
例2.1:用秦九韶算法计算多项式 76432()23461p x x x x x x x =--+-+- 在x=2处的值p(2)。