计算方法复习提纲-下

第7章 解线性方程组的直接方法

Guass消去法

  • 消元
    • G ( 1 ) = [ 1 0 0 0 − a 21 a 11 1 0 0 − a 31 a 11 0 1 0 ⋮ ⋱ − a n 1 a 11 0 0 1 ] G^{(1)} = \begin{bmatrix} 1 & 0 & 0 & & 0 \\ -\frac{a_{21}}{a_{11}} & 1 & 0 & & 0 \\ -\frac{a_{31}}{a_{11}} & 0 & 1 & & 0 \\ \vdots & & & \ddots & \\ -\frac{a_{n1}}{a_{11}} & 0 & 0 & & 1 \\ \end{bmatrix} G(1)= 1a11a21a11a31a11an1010000100001
    • A ( 1 ) = A A^{(1)} = A A(1)=A
    • A ( 2 ) = G ( 1 ) A ( 1 ) A^{(2)} = G^{(1)} A^{(1)} A(2)=G(1)A(1)
    • A ( 2 ) = [ a 1 , 1 ( 2 ) a 1 , 2 : n ( 2 ) 0 A 2 : n , 2 : n ( 2 ) ] A^{(2)} = \begin{bmatrix} a^{(2)}_{1,1} & a^{(2)}_{1,2:n} \\ 0 & A^{(2)}_{2:n,2:n} \\ \end{bmatrix} A(2)=[a1,1(2)0a1,2:n(2)A2:n,2:n(2)]
    • A ( n ) = G ( n − 1 ) A ( n − 1 ) A^{(n)} = G^{(n-1)} A^{(n-1)} A(n)=G(n1)A(n1)
  • 回代
    • 进一步把 A A A转化成对角矩阵
  • 实现Gauss消去法时不需要交换行
    • a k k ( k ) ≠ 0    ⟺    det ⁡ ( A 1 : k , 1 : k ) ≠ 0 a^{(k)}_{kk} \neq 0 \iff \det(A_{1:k,1:k}) \neq 0 akk(k)=0det(A1:k,1:k)=0
      • 非奇异线性变换不改变行列式的值
      • 推论
        • a 11 ( 1 ) = det ⁡ ( A 1 : 1 , 1 : 1 ) a^{(1)}_{11} = \det(A_{1:1,1:1}) a11(1)=det(A1:1,1:1)
        • a k k ( k ) = det ⁡ ( A 1 : k , 1 : k ) det ⁡ ( A 1 : k − 1 , 1 : k − 1 ) a^{(k)}_{kk} = \frac{\det(A_{1:k,1:k})}{\det(A_{1:k-1,1:k-1})} akk(k)=det(A1:k1,1:k1)det(A1:k,1:k)
  • LU分解
    • A ( n ) = G ( n ) ⋯ G ( 1 ) A ( 1 ) A^{(n)} = G^{(n)} \cdots G^{(1)} A^{(1)} A(n)=G(n)G(1)A(1)
    • L − 1 = G ( n ) ⋯ G ( 1 ) L^{-1} = G^{(n)} \cdots G^{(1)} L1=G(n)G(1)
    • U = A ( n ) U = A^{(n)} U=A(n)
    • a k k ( k ) ≠ 0 a^{(k)}_{kk} \neq 0 akk(k)=0时是唯一的
      • A A A非奇异时, L 1 U 1 = L 2 U 2 L_1U_1 = L_2U_2 L1U1=L2U2, I = L 1 − 1 L 2 = U 1 U 2 − 1 I = L_1^{-1} L_2 = U_1 U_2^{-1} I=L11L2=U1U21.
  • 计算量
    • 加减 ∑ i = 1 n i 2 = n 3 3 \sum\limits_{i=1}^{n} i^2 = \frac{n^3}{3} i=1ni2=3n3
    • 乘除 ∑ i = 1 n i 2 = n 3 3 \sum\limits_{i=1}^{n} i^2 = \frac{n^3}{3} i=1ni2=3n3

列主元素消去法

  • 数值稳定性
    • a k k ( k ) a^{(k)}_{kk} akk(k) 作为分母不宜太小
  • 完全主元素
    • A k : n , k : n ( k ) A^{(k)}_{k:n,k:n} Ak:n,k:n(k) 中绝对值最大元素交换到 a k k ( k ) a^{(k)}_{kk} akk(k)
  • 算法
    • 乘数 a k i a k k \frac{a_{ki}}{a_{kk}} akkaki 冲掉 a k i a_{ki} aki
    • 消元结果 A k + 1 : n , k : n A_{k+1:n,k:n} Ak+1:n,k:n 冲掉 A A A
    • 计算结果 x x x 冲掉 b b b
    • a i max ⁡ j max ⁡ = 0 a_{i_{\max} j_{\max}} = 0 aimaxjmax=0 终止
    • 行交换
      • 同时交换 A A A b b b
    • 列交换
      • 交换 M a p I n d e x \mathrm{MapIndex} MapIndex
  • 列主元素
    • 寻找完全主元素代价较大
    • 列交换比行交换麻烦
    • 可以额外计算 d e t A \mathtt{detA} detA
      • 行交换时 d e t A ← − d e t A \mathtt{detA} \gets - \mathtt{detA} detAdetA
  • PLU分解
    • ⋯ S x G S y ⋯ = ⋯ ( S x G S x ) S x S y ⋯ \cdots S_x G S_y \cdots = \cdots (S_x G S_x) S_x S_y \cdots SxGSy=(SxGSx)SxSy
    • U = A ( n ) = L ~ − 1 P A ( 1 ) U = A^{(n)} = \tilde{L}^{-1} P A^{(1)} U=A(n)=L~1PA(1)

平方根法

  • 对称正定的矩阵
    • A = L D L T A = L D L^T A=LDLT
    • D i i > 0 D_{ii} > 0 Dii>0
    • A = C C T A = C C^T A=CCT
  • 逐列计算
    • i ⩽ j i \leqslant j ij
    • a i j = ∑ k = 1 j c i k c j k = ∑ k = 1 j − 1 c i k c j k + c j j c i j a_{ij} = \sum\limits_{k=1}^{j} c_{ik} c_{jk} = \sum\limits_{k=1}^{j-1} c_{ik} c_{jk} + c_{jj} c_{ij} aij=k=1jcikcjk=k=1j1cikcjk+cjjcij
    • c j j c_{jj} cjj
    • c i j c_{ij} cij ( i > j i>j i>j)
  • 数值稳定性
    • a j j = ∑ k = 1 j l j k 2 a_{jj} = \sum\limits_{k=1}^{j} l_{jk}^2 ajj=k=1jljk2
    • l j k 2 < a j j l_{jk}^2 < a_{jj} ljk2<ajj
  • 乘除 n 3 6 \frac{n^3}{6} 6n3
  • 避免开方运算
    • A = ( L D ) L T A = (L D) L^T A=(LD)LT
  • 逐行计算
    • i ⩽ j i \leqslant j ij
    • a i j = ∑ k = 1 j l i k d k l j k = ∑ k = 1 j − 1 l i
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值