数值分析(计算方法)总结

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章 绪论
误差来源:模型误差、观测误差、截断误差(方法误差)、舍入误差
ε(x )=|x −x ∗|是x ∗的绝对误差,e =x ∗−x 是x ∗的误差,ε(x )=|x −x ∗|≤ε,ε为x ∗的绝对误差限(或误差限) e r =e
x =
x ∗−x x
为x ∗ 的相对误差,当|e r |较小时,令 e r =e
x ∗=
x ∗−x x ∗
相对误差绝对值得上限称为相对误差限记为:εr 即:|e r |=
|x ∗−x||x ∗|
≤ε
|x ∗|=εr
绝对误差有量纲,而相对误差无量纲
若近似值x ∗的绝对误差限为某一位上的半个单位,且该位直到x ∗的第一位非零数字共有n 位,则称近似值 x ∗有n 位有效数字,或说 x ∗精确到该位。

例:设x=π=3.1415926…那么x ∗=3,ε1(x )=0.1415926…≤0.5×100,则x ∗有效数字为1位,即个位上的3,或说 x ∗精确到个位。

科学计数法:记x ∗=±0.a 1a 2⋯a n ×10m (其中a 1≠0),若|x −x ∗|≤0.5×10m−n ,则x ∗有n 位有效数字,精确到10m−n 。

由有效数字求相对误差限:设近似值x ∗=±0.a 1a 2⋯a n ×10m (a 1≠0)有n 位有效数字,则其相对误差限为
12a 1
×101−n
由相对误差限求有效数字:设近似值x ∗=±0.a 1a 2⋯a n ×10m (a 1≠0)的相对误差限为为
12(a 1+1)
×101−n 则它有n 位有效数字
令x ∗、y ∗是x 、y 的近似值,且|x ∗−x|≤η(x )、|y ∗−y|≤η(y)
1. x+y 近似值为x ∗+y ∗,且η(x +y )=η(x )+η(y )和的误差(限)等于误差(限)的和
2. x-y 近似值为x ∗−y ∗,且η(x +y )=η(x )+η(y )
3. xy 近似值为x ∗y ∗,η(xy )≈|x ∗|∗η(y )+|y ∗|∗η(x)
4. η(x
y )≈
|x ∗|∗η(y )+|y ∗|∗η(x)
|y ∗|2
1.避免两相近数相减
2.避免用绝对值很小的数作除数 3.避免大数吃小数 4.尽量减少计算工作量 第二章 非线性方程求根
1.逐步搜索法
设f (a ) <0, f (b )> 0,有根区间为 (a , b ),从x 0=a 出发, 按某个预定步长(例如h =(b -a )/N )一步一步向右跨,每跨一步进行一次根的搜索,即判别f (x k )=f (a +kh )的符号,若f (x k )>0(而f (x k -1)<0),则有根区间缩小为[x k -1,x k ] (若f (x k )=0,x k 即为所求根), 然后从
x k -1出发,把搜索步长再缩小,重复上面步骤,直到满足精度:|x k -x k -1|< 为止,此时取x *≈(x k +x k -1)/2作为近似根。

2.二分法
设f (x )的有根区间为[a ,b ]= [a 0,b 0], f (a )<0, f (b )>0.将[a 0,b 0]对分,中点x 0= ((a 0+b 0)/2),计算f (x 0)。

对于给定精度ε,即
b−a 2k
<ε,可得所需步数k ,k >
[ln (b−a )−ln (ε)
ln2
3.比例法
一般地,设 [a k ,b k ]为有根区间,过(a k , f (a k ))、 (b k , f (b k ))作直线,与x 轴交于一点x k ,则:x =a −
f(a)
f (b )−f(a)

(b −a)
1.试位法每次迭代比二分法多算一次乘法,而且不保证收敛。

2.比例法不是通过使求根区间缩小到0来求根,而是在一定条件下直接构造出一个点列(递推公式),使该点列收敛到方程的根。

——这正是迭代法的基本思想。

事先估计:|x ∗−x k |≤L
1−L |x 1−x 0| 事后估计|x ∗−x k |≤11−L |x k+1−x k |
局部收敛性判定定理:设x ∗为方程x =φ(x )的根,φ(x)′在x ∗的某一邻域内连续, 且|φ(x ∗)′|<1,则该迭代局部收敛
局部收敛性定理对迭代函数的要求较弱,但对初始点要求较高,即初始点必须选在精确解的附近
Steffensen 迭代格式:
x ̃k+1=φ(x k ) x ⃗ k+1=φ(x ̃k+1)
x k+1
=x k −(x ̃k+1−x k )2x ⃗ k+1−2x ̃k+1+x k
Newton 法:x k+1=x k −
f(x k )f′(x k )
Newton 下山法:x k+1=x k −λf(x k )f′(x k )
,λ是下山因子
弦割法:x k+1=x k −
f (x k )∗(x k −x k−1)f (x k )−f(x k−1)
抛物线法:令t =x −x k ,h 0=x k−2−x k ,h 1=x k−1−x k ,可化为y (t )=at 2+bt +c
其中:
a =(f (x k−2)−c )∗h 1−(f (x k−1)−c )∗h 0h 1∗h 02−h 0∗h 12
b =(f (x k−1)−
c )∗h 02−(f (x k−2)−c )∗h 12h 1∗h 02−h 0∗h 12
c =f(x k )
则:
x k+1=
{ x k b +
√b 2
−4ac
b >0
x k +2c b +√b 2−4ac
b ≤0
设迭代 x k +1 = g (x k ) 收敛到g (x ) 的不动点(根) x * 设 e k = x k x *若lim k→∞|e k+1||e k |p
=C ,
则称该迭代为p (不小于1)阶收敛,其中 C (不为0)称为渐进误差常数 第三章 解线性方程组直接法
列主元LU 分解法:计算主元S i =a ik −∑l ir u rk ,i =k,k +1…n k−1r=1选主元|S ik |=
max k≤i≤n
{|S i |}
{u 1j =a 1j ,(j =1,2…n)
l i1=a i1u 11
,(i =2,3…n)
{
u kj =a kj −∑l km u mj ,(j =k,k +1,…n ),即为上式主元k−1
m=1
l ik =1
u kk
(a ik −∑l im u mk k−1
m=1),(i =k +1,k +2,…n )
对于Ax=b ,三角分解A=LU ,Doolittle 分解:L 为单位下三角矩阵,U 为上三角矩阵;
Crout 分解:L 为下三角矩阵,U 为单位上矩阵。

可分解为: {
Ly =b ,下三角方程组
Ux =y ,上三角方程组
若利用紧凑格式可化为:Ux =y
{
y 1=b 1
y k =b k −∑l km y m ,(k =2,3…n )
k−1
m=1
Cholesky 平方根法:系数矩阵A 必须对称正定AX =b ⇔{Ly =b
L T x =y
(其中A =L L T )
{
l 11=√a 11,l i1=a i1
l 11
(i =2,3…n)l kk =√a kk −∑l km 2k−1
m=1,l ik =1
l kk (a ik
−∑l im l km )(i =k +1,k +2…n ,k =2,3…n)k−1m=1
改进Cholesky 分解法:A =LDL T
L =[ 1l 211l 31
l 321………⋱
l n1l n2…
l n(n−1)
1]
,D =[ d
1d 2


d n ]。

由A =L(DL T ) A =[ 1l 211l 31
l 321………⋱
l n1
l n2

l n(n−1)
1]
,D =[
d 1d 1l 21d 1l 31…d 1l n1
d 2
d 2l 32…d 2l n2

…d 3l n3⋱
⋮d n ]
,逐行相乘 {
l ij =1d j (a ij −∑l ik d k l jk ),(j =1,2…i −1)j−1k=1d i =a ii −∑l ik 2j−1
k=1
d k ,(i =1,2…n)
为减少计算量,令c ij =l ij d j ,可改为:
{
c ij =a ij −∑c ik l jk j−1
k=1l ij =c ij d j d j =a ii −∑c ik l ik i−1k=1
(i =2,3…n ,j =1,2…i −1),等价于{Ly =b
L T x =D −1y 其中:D
−1
=[
1
d 1
1d 2

1d n ] 追赶法:Ax=d(A=LU),可化为Ly=d,Ux=y A =[
a 1c 1
b 1a 2
c 2⋱


a n−1
b n−1
c n−1a n
b n ] =[
1l 21⋱

l n−1
1l n
1] [
u 1
c 1u 2
c 2⋱

u n−1
c n−1u n ]
{u 1=b 1
l i =a i
u i−1
u i =b i −l i c i−1
,(i =2,3…n)
向量范数::{
‖A ‖1=∑|x i |n i=1,1−范数‖A ‖2=√∑x i 2
n i=1,2−范数或欧氏范数‖A ‖∞=lim p→+∞‖x ‖p =max 1≤i≤n
{|x i |},∞−范数
矩阵范数:{
‖A ‖1=max 1≤j≤n ∑|a ij |n i=1,列范数‖A ‖2=√λmax (A T A ),谱范数‖A ‖∞=max 1≤i≤n
∑|a ij |n
j=1,行范数
谱半径:ρ(A )=max 1≤i≤n
{|λi |}λ为特征值,且ρ(A )≤‖A ‖,若A 为对称阵则:ρ(A )=‖A ‖2
收敛条件:谱半径小于1
条件数:Cond =‖A −1‖∗‖A ‖,Cond 2(A )=|λmax ||λmin |
第四章 解线性方程组的迭代法
Jacobi 迭代:x i (k+1)=1a ii
(b i −∑a ij x j (k )−∑a ij x j (k )
)n
j=i+1i−1j=1,(i =1,2…n;k =0,1,2…)
基于Jacobi 迭代的Gauss-Seidel 迭代:
x i (k+1)
=1a ii
(b i −∑a ij x j (k+1)−∑a ij x j (k )
)n
j=i+1
i−1
j=1
,(i =1,2…n;k =0,1,2…) 迭代收敛:谱半径小于1,范数小于1能推出收敛但不能反推
逐次超松弛迭代(SOR ):
x i (k+1)=
x i
(k)−ϖa ii
(b i −∑a ij x j (k+1)−∑a ij x j (k )
)n
j=i+1
i−1j=1
,(i =1,2…n;k =0,1,2…) 或:x i
(k+1)
=(1−ϖ)x i (k )+ϖa ii
(b i −∑a ij x j (k+1)−∑a ij x j (k )
)n
j=i+1
i−1
j=1
,(i =1,2…n;k =0,1,2…)
当ϖ=1时,就是基于Jacobi 迭代的Gauss-Seidel 迭代(加权平均)。

第五章 插值法
Lagrange 插值法:
l j (x i )={
0,i ≠j 1,i =j
,则l j (x )=∏
x −x i
x j −x i
n
i=0
构造插值函数:L n (x i )=f (x i )=y i ,(i =0,1…n ),令L (x )=l 0(x )y 0+l 1(x )y 1+⋯+l n (x)y n
则:y =L n (x )=∑l j (x )y j =∑[∏(x−x i )
(x j
−x i
)n i=0i≠j
]n
j=0n j=0y j
若记:w (x )=(x −x 0)(x −x 1)…(x −x n )=∏(x −x i )n i=0
则可改为:l j (x )=w n+1(x)
(x−x j
)w ′
n+1(x j )
,则L n (x )=∑∏(x−x i )(x j −x i )
n
i=0
i≠j
n j=0y j =∑w(x)
(x−x j
)w ′
(x j )n j=0y j
则插值余项:R n (x )=f (x )−L n (x )=
f n+1(ξ)
(n+1)!
w n+1(x) 逐次线性插值法Aitken (埃特金法):
L 0,1…k,l (x )=L 0,1…k (x )+L 0,1…k−1(x )−L 0,1…k (x )x l −x k (x −x k )=1x l −x k |f(x l )x −x l
f(x k )x −x k |
Newton 插值法:
N(x)=a0+a1(x-x0)+a2(x-x0)(x-x1)+…+an(x-x0)(x-x1)…(x-xn)并满足N(x)=f(x) 差商的函数值表示:f [x 0,x 1…x k ]=∑f(x i )
w k+1(x i )
k i=0
差商与导数的关系:f [x 0,x 1…x k ]=
f (n )(ξ)n!
则:f (x )=f (x 0)+f [x 0,x 1]w 1(x )+⋯+f [x 0,x 1…x n ]w n (x )+f [x,x 0,x 1…x n+1]w n+1(x ) 等距节点Newton 插值公式:
Newton 向前插值:N n (a +th )=f (x )+∑∆k
n k=1y 0(t k ),其中(t k )=t (t−1)…(t−k+1)
k!
余项:R n (x )=f n+1(ξ)h n+1(t n+1),t =
x−x 0h
Newton 向后插值:N n (x n +th )=f (x n )+∑∇k n k=1y n (t+k−1k ) 余项:R n (x )=f n+1(ξ)h n+1(t+n n+1)
Hermite 插值:H (x )=∑αj (x )y j +∑βj (x )y′j n
j=0n j=0 αj (x )=(Ax +B )l j 2(x ),βj (x )=(Cx +D )l j 2(x)
可得:{αi (x )=[1−2(x −x i )∑1
x i −x k n k=0k≠i ]l i 2(x)βi (x )=(x −x i )l i 2
(x)
插值余项:R 2n+1(x )=f (x )−H 2n+1(x )=
f (2n+2)(ξ)(2n+2)!
w n+12
(x) 待定系数:H (x )=L 0,1…n (Aitken)+(x −x 1∗)(x −x 2∗)…(x −x n ∗)(Ax +B)
三次样条插值:(三弯矩构造法)
记s ′′(x i )=M i 对s 积分两次并满足插值条件,h i =x i −x i−1,λi =h
i h i
+h
i+1
,μi =h
i+1
h i
+h i+1
对于附加弯矩约束条件:
[
2
μ1λ22μ2λ3
2⋱

⋱μn−2λn−1
2] [ M 1M 2M 3⋮M n−1] =[ 6f [x 0,x 1,x 2]−λ1M 0
6f[x 1,x 2,x 3]6f[x 2,x 3,x 4]⋮6f [x n−2
,x n−1
,x n
]−μn−1
M
n ]
λi M i−1+2M i +μi M i+1=6f[x i−1,x i ,x i+1]
对于附加转角边界条件:
[
21λ12μ1λ2
2μ2⋱
⋱⋱λn−1
2μn−11
2] [ M
0M 1M 2⋮M n−1M n ] =6[ f [x 0,x 1]−m 0h 1f[x 0,x 1,x 2]f[x 1,x 2,x 3]⋮
f [x n−2,x n−1,x n ]m n −f [x n−2,x n−1,x n ]h n
]
对于附加周期性边界条件:
[ 2λ0μ0
λ12μ1λ2
2μ2⋱
⋱⋱λn−2
2μn−2μn−1
λn−2
2] [ M 0M 1M 2⋮
M n−2M n−1
]
=6[
{f [x 0,x 1]−f [x n−1,x n ]}
h 1+h n
f[x 0,x 1,x 2]
f[x 1,x 2,x 3]⋮f [x n−3,x n−2,x n−1]f [x n−2,x n−1,x n ]]
s (x )=M i−1(x i −x)36h i +M i (x −x i−1)36h i +[f (x i−1)−M i−1h i 26]x i −x h i +[f (x i )−M i h i 26]x −x i−1
h i
上式保证了s(x)在相邻两点的连续性
第六章 函数逼近与曲线拟合 主要求法方程
第七章 数值积分与数值微分
求积公式具有m 次代数精度的充要条件:
∫x k dx =∑A i x i k ,k =0,1…n ,∫x m+1dx ≠∑A i x i m+1
n
i=0
b
a
n
i=0
b
a
插值型求积公式∫f (x )=dx ≈∑A i f(x i )n i=0b
a 求积系数公式:A i =∫l i (x )dx ,i =0,1…n b
a Newton-Cotes (等分)
梯形求积公式(n=1),具有1次代数收敛精度∫f (x )dx ≈
b−a 2
[f (a )+f (b )]b
a
误差公式:E1(f)=−(b−a)3
12
f′′(η)
抛物型求积公式(Simpson求积公式,n=2),具有3次代数收敛精度
∫f(x)dx≈b−a
6
[f(a)+4f(
a+b
2
)+f(b)]
b
a
误差公式E2(f)=−(b−a)5
2880
f(4)(η)
Newton求积公式(Simpon3/8法则)具有3次代数收敛精度
N[f]≈b−a
8
[(f(a)+3f(a+h)+3f(a+2h)+f(b)],h=
b−a
n
Cotes求积公式(n=4),具有5次收敛精度
∫f(x)dx b
a ≈
b−a
90
[7(f(a)+32f(a+h)+12f(a+2h)+32f(a+3h)+7f(b)],h=
b−a
n
误差公式E4(f)=−2(b−a)
945(b−a
4
)6f(6)(η)
节点数为奇数时,代数精度为n;为偶数时,代数精度为n+1。

代数精度都是奇数。

复化梯形求积公式:T n(f)=h
2[f(a)+2∑f(x i)+f(b)]
n−1
i=1
截断误差:E r
n (f)=−b−a
12
h2f′′(η)
复化Simpson公式:S n(f)=h
6[f(a)+2∑f(x i)+4∑f(x
i+1
2
)+f(b)]
n−1
i=0
n−1
i=1
截断误差:E s
n (f)=−b−a
2880
h4f(4)(η)
复化Cotes求积:
C n(f)=h
90
[7f(a)+14∑f(x i)+32∑f(x
i+
h
4
)
n−1
i=1
n−1
i=1
+12∑f(x
i+
h
2
)+32∑f(x
i+
3h
4
)+7f(b)]
n−1
i=1
n−1
i=1
截断误差:E c
n (f)=−2(b−a)
945
(h
4
)
6
f(6)(η)
若一个复化积分公式的误差满足lim
h→0R[f]
h p
=C<∞且C 0,则称该公式是p阶收敛的。

复化求积公式(需要2n+1个求积节点) Romberg求积算法:
S n=4
3
T2n−
1
3
T n
C n=16
15
S2n−
1
15
S n
R n=64
63
C2n−
1
63
C n
复化梯形求积公式:T2n(f)+1
3
[T2n(f)−T n(f)]=S n(f)
复化Cotes求积公式:C2n(f)+1
63
[C2n(f)−C n(f)]=R n(f)
Gauss 型求积公式:
内积公式:(p,ωn+1)=∫p (x )ωn+1(x )ρ(x )dx b
a 截断误差:E n (f )=
f (2n+1)(η)(2n+2)!∫[ωn+1(x )]2ρ(x )dx ,η∈(a,b )b
a
高斯求积公式代数精度为2n+1
Gauss-Legendre 求积公式(注意区间(-1,1),变换可得):形如:∫f (x )dx ≈∑A i f(x i )n i=01
−1 求积系数可通过代数精度或插值型求积公式求积系数公式求出,亦可由下式求得:A i =
2
(1−x i 2)[p n+1′(x )]
2,i =0,1…n
截断误差:E n (f )=22n+3[(n+1)!]4(
2n+3)[(2n+2)!]3
f
(2n+2)
(η),η∈(−1,1) Gauss-Chebyshev 求积公式:形如:∫√1−x 2
≈∑A i f(x i )n i=0−1
1
求积系数:A i =
πn+1
(i =0,1…n)(必为正)
截断误差:E n (f )=
π
22n+1(2n+2)!
f (2n+2)(η),η∈(−1,1)
Gauss-Laguerre 求积公式:形如:∫f(x)e −x dx ≈∑A i f(x i )n i=0∞
0 求积系数:A i =
[(n+1)!]2
x i [L n+1′(x i )]
2,i =0,1…n
截断误差:E n (f )=
[(n+1)!]2(2n+1)!
f (2n+2)
(η),η∈(0,+∞)
Gauss-Hermite 求积公式:形如:∫f(x)e −x 2
dx ≈∑A i f(x i )n i=0+∞
−∞ 求积系数:A i =
2n+2(n+1)!√π
[H n+1′(x i )]
2,i =0,1…n
截断误差:E n (f )=
(n+1)!√π
2n+1(2n+2)!
f (2n+2)(η),η
∈(−∞,+∞)
三点数值微分公式:f ′(x )=f (x 2)−f (x 0)
2h

h 26
f ′′′
(ξ2),ξ2∈(x 0,x 2)
泰勒级数展开:f ′(x 0)≈4T h 2
(f;x 0)−T h (f;x 0)
3
第八章 常微分方程求解
Euler 法:y n+1=y n +hf(x n ,y n )为一阶法(f(x,y)为y 的导数) 梯形方法(改进Euler 法):y n+1=y n +h
2[f(x n ,y n )+f(x n+1,y n+1)] 四级四阶经典Runge-Kutta 公式
y n+1=y n+h
6
(K1+2K2+2K3+K4)
K1=f(x n,y n)
K2=f(x n+1
2
h,y n+
h
2
K1)
K3=f(x n+1
2
h,y n+
h
2
K2)
K4=f(x n+h,y n+hK3)
{。

相关文档
最新文档