1 1 Ax = b A R m m A b R m x R m A shift-and invert Lanczos -
LU CG
A = LU LU Ly = b Ux = y A LU A A = LL T 1 LU b,, Vol. 11, No. 4, pp. 14 18 (2006).
x * x (0), x (1), x (2), A Ap A #
x (n+1) = Cx (n) + d C d x * C d A = M N M C = M 1 N d = M 1 b 1 C - SOR ADI x (n) x (n+1) x (n)
A R m m A T A m 0 σ 1 (A) σ 2 (A) σ m (A) A A σ m (A) > 0 A R m m κ(a) = σ 1 (A)/σ m (A) A 1 1 2 # r (n) = Ax (n) b x (n) #
A R m m b R m R m K n (A; b) A b n K n (A; b) = span{b, Ab, A 2 b,, A n 1 b} x (0) = 0 x (n) K n (A; b) n 1 {x (n) } # 0 K 1 (A; b) K 2 (A; b) K n (A; b) K n (A; b) x (n)
K n (A; b) K n+1 (A; b) K n (A; b) = K n+1 (A; b) A K n (A; b) = K n+1 (A; b) n Ax = b x * K n (A; b) A n b = c 0 b + c 1 Ab + + c n 1 A n 1 b c 1, c 2,, c n 1 c 0 = 0 A n c 0 0 c 0 A((1/c 0 )A n 1 b (c n 1 /c 0 )A n 2 b (c 1 /c 0 )b) = b x * K n (A; b)
K n (A; b) x (n) =d 0 b + d 1 Ab + + d n 1 A n 1 b r (n) = Ax (n) b r (n) = b + d 0 Ab + d 1 A 2 b + + d n 1 A n b = ϕ n (A)b ϕ n (z) = 1+d 0 z + d 1 z 2 + + d n 1 z n 1 n K n (A; b) x (n) 1 1
x (n) K n (A; b) b q 1 = b / b 2 v 2 = Aq 1 v 2 q 1 q 2 v 3 = Aq 2 v 3 q 1, q 2 q 3 {v n } Arnordi
Arnoldi Arnoldi Arnoldi compact-wy, 2010, pp. 39-40 (2010).
Arnoldi Arnoldi Aq i q 1, q 2,, q i+1 Aq i = h 1i q 1 + h 2i q 2 + + h i+1,i q i+1 m n (n+1) n AQ n = Q n+1 H n A n Arnoldi
Arnoldi Arnoldi AQ n = Q n+1 H n Q nt Q n n n A span{q 1, q 2,, q n } = K n (A; b) # Arnoldi
A Lanczos Q nt AQ n = H n H n 3 T n Anoldi h ji i j+1 0 Aq i q i q i 1 Arnoldi Lanczos
A Lanczos α n = h nn, β n = h n+1,n = h n,n+1 Lanczos q n q n 1 q n+1 3 1 n
x (n) K n (A; b) Ritz-Galerkin Petrov-Galerkin 3
I r (n) = Ax (n) b x (n) K n (A; b) # e (n) = x (n) x * GMRES MINRES
II Ritz-Galerkin r (n) = Ax (n) b K n (A; b) x (n) Ax (n) b K n (A; b) K n (A; b) 0 K 1 (A; b) K 2 (A; b) K n (A; b) r (0) = b, r (1), r (2),, r (n 1) K n (A; b) # r (n 1) K n (A; b) n
II Ritz-Galerkin A φ (x) = (1/2) x T Ax x T b Ax = b φ (x) x (n) K n (A; b) x (n) = Q n y (n) y (n) R n φ (x (n) ) = (1/2) (Q n y (n) ) T AQ n y (n) (Q n y (n) ) T b y (n) Q nt (AQ n y (n) b) = 0 Ax (n) b K n (A; b) Ritz-Galerkin φ (x (n) ) x (n)
II Ritz-Galerkin A e (n) = x (n) x * A Ritz-Galerkin A x (n) Ritz-Galerkin CG FOM # Ritz-Galerkin
III Petrov-Galerkin R m L 1 L 2 L 3 L n n r (n) = Ax (n) b L n x (n) Ax (n) b L n L n 0 L n b * A T b * K n (A T ; b * ) Petrov-Galerkin Bi-CG QMR # Petrov-Galerkin Petrov-Galerkin CGS Bi-CGSTAB GPBi-CG
1 n P n n ϕ n (z) Ritz-Galerkin A x (n) e (n) = x (n) x * Ae (n) = Ax (n) b = r (n) min ϕ n P n ϕ n (A)b 2 e (n)t Ae (n) = r (n)t A 1 r (n) = b T ϕ n (A)A 1 ϕ n (A)b = b T A 1 ϕ n (A)Aϕ n (A)A 1 b = e (0)T ϕ n (A)Aϕ n (A)e (0) = ϕ n (A)e (0) A Ritz-Galerkin min ϕ P ϕ n (A)e (0) n n A
GMRES Generalized Minimum Residual MINRES Minimum Residual Ritz-Galerkin CG Conjugate Gradient FOM Full Orthogonalizaion Method Petrov-Galerkin Bi-CG Bi-Conjugate Gradient QMR Quasi Minimal Residual CGS Conjugate Gradient Squared Bi-CGSTAB Stabilized Bi-CG
GMRES K n (A; b) r (n) = Ax (n) b x (n) x (n) K n (A; b) x (n) = Q n y (n) y (n) R n 2 Arnoldi AQ n = Q n+1 H n 3 q 1 = b / b 2 4 Q n+1 Q n+1 2 2 n+1 y (n) n y (n) 2
GMRES 2 2 min H n y (n) b 2 e 1 2 H n H n = U n R n U n R (n+1) n, R n R n n QR 1 R n y (n) = U nt b 2 e 1 H n (n+1) n O(n 2 ) H n 1 H n O(n) # n
GMRES Arnoldi K n (A; b) H n QR H n QR U n T b 2 e 1 R n y (n) = U n T b 2 e 1 x (n) = Q n y (n)
GMRES GMRES n # 1 n # q n q 1, q 1,, q n 1 # MINRES H n 3 1 n x (n) (κ(a)) 2 * * H. A. van der Vorst Iterative Krylov Methods for Large Linear Systems, Cambridge Univ. Press, 2003.
CG A r (n) = Ax (n) b K n (A; b) x (n) x (n) K n (A; b) x (n) = Q n y (n) y (n) R n Q n T (Ax (n) b) = Q n T (AQ n y (n) b) = T n y (n) Q n T b = T n y (n) e 1 = 0. Lanczos 3 T n Q n = [q 1 q 2 q n ] T n = L n U n LU x (n) y (n) = U n 1 L n 1 e 1, x (n) = Q n y (n) q 1, q 2,, q n # n
CG x (n) x (n) = Q n y (n) = (Q n U n 1 )(L n 1 e 1 ) [p 0 p 1 p n 1 ][v 0, v 1,, v n 1 ] T p n v n v n 1 = φ n 2 v n 2 / δ n 1
CG p n 1 = q n ε n 2 p n 2 2 x (n) x (n) = [p 0 p 1 p n 1 ][v 0, v 1,, v n 1 ] T = x (n 1) + v n 1 p n 1 CG
CG x n φ (x) = (1/2) x T Ax x T b p n 1 n p n 1 α n
CG CG K n (A; b) = span{b, Ab, A 2 b,, A n 1 b} = span{x 1, x 2,, x n } = span{r 0, r 1,, r n 1 } = span{p 0, p 1,, p n 1 } r nt r j = 0 (j < n) A- p nt Ap j = 0 (j < n) # p n CG A e n A = x n x * A n 1 n # 3
CG CG A e n A = κ A e n A P n 1 n Λ(A) A φ (λ)
CG CG A m * CG m * # φ (λ) m * 0 m * n = m * 0 # 1 CG Ax = b 1
Bi-CG CG
Bi-CG Breakdown r n s n 0 1 breakdown T n LU 0 breakdown 2 breakdown Bi-CG n 1 n # GMRES # 3 A A T # GMRES 2
Bi-CG CGS Bi-CG r n = (R n (A)) 2 b, s n = b * # s nt r n Bi-CG 2 # 2Bi-CG A A T Bi-CGSTAB S n (z) = (1 ω 0 z)(1 ω 1 z) (1 ω n 1 z) n S n (z) r n = S n (A)R(A)b, s n = b * # Bi-CG ω n CGS
Bi-CG GPBi-CG Bi-CGSTAB S n (z) Bi-CGSTAB QMR Bi-CG Bi-CG # Bi-CG #
K A K 1 Ax = K 1 b K 1 A A Ap K 1 Ap AK 1 y = b x = K 1 y K 1 1 AK 2 1 y = K 1 1 b x = K 2 1 y K K 1 A K K 1 x
LU A LU A LU K = LU ILU(0) # ILU(1) ILU(1) IC(0) # K 1 x L 1 x U 1 y # LU ILUT U 1 ILUC
SPAI; SParse Approximate Inverse A A 1 M M min M I AM F LU ILU D 1, D 2 A D 1 1 AD 1 2 LU
Ax = b GMRES CG Bi-CG Lis PETSc
L. N. Trefethen and D. Bau III: Numerical Linear Algebra, SIAM, Philadelphia, 1997. H. A. van der Vorst: Iterative Krylov Methods for Large Linear Systems, Cambridge University Press, Cambridge, 2003. Y. Saad: Iterative Methods for Sparse Linear Systems, PWS Publishing Company, Boston, 1996. R. Barrett et al.: Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods, SIAM, Philadelphia, 1994., :,, 1996., :,, 2009.