Path: blob/main/notebooks/published/arnoldi_iteration/arnoldi_iteration.ipynb
51 views
Arnoldi Iteration
Introduction
The Arnoldi iteration is a fundamental algorithm in numerical linear algebra for constructing an orthonormal basis of the Krylov subspace. It serves as the foundation for many iterative methods, including GMRES for solving linear systems and eigenvalue algorithms for large sparse matrices.
Theoretical Background
Krylov Subspace
Given a matrix and an initial vector , the Krylov subspace of order is defined as:
This subspace contains vectors that can be expressed as polynomials in applied to .
The Arnoldi Process
The Arnoldi iteration constructs an orthonormal basis for using a modified Gram-Schmidt process. The algorithm produces:
An orthonormal matrix
An upper Hessenberg matrix
These satisfy the Arnoldi relation:
where is the upper Hessenberg matrix.
Algorithm
The Arnoldi iteration proceeds as follows:
Initialize:
For :
Compute
For :
If :
Properties
The columns of form an orthonormal basis:
The Hessenberg matrix satisfies:
The eigenvalues of (Ritz values) approximate eigenvalues of
For symmetric , the Hessenberg matrix becomes tridiagonal (Lanczos algorithm)
Computational Complexity
For iterations with an matrix:
Matrix-vector products: for dense, for sparse
Orthogonalization:
Storage: for the Krylov basis
Implementation
We implement the Arnoldi iteration with modified Gram-Schmidt orthogonalization for numerical stability.
Demonstration: Eigenvalue Approximation
We demonstrate the Arnoldi iteration by approximating eigenvalues of a random matrix. The eigenvalues of the Hessenberg matrix (called Ritz values) converge to the extreme eigenvalues of .
Visualization
We create a comprehensive visualization showing:
Convergence of Ritz values to exact eigenvalues
Orthogonality preservation of the Krylov basis
Structure of the Hessenberg matrix
Eigenvalue distribution comparison
Verification of Arnoldi Relation
We verify that the computed matrices satisfy the Arnoldi relation:
Conclusions
The Arnoldi iteration successfully:
Constructs an orthonormal Krylov basis - The orthogonality error remains at machine precision level
Approximates extreme eigenvalues - The largest eigenvalues converge rapidly within the first few iterations
Produces an upper Hessenberg matrix - The characteristic structure is clearly visible with zeros below the subdiagonal
Satisfies the Arnoldi relation - The numerical verification confirms to machine precision
Applications
The Arnoldi iteration is fundamental to:
GMRES (Generalized Minimal Residual) for solving
Implicitly Restarted Arnoldi Method for eigenvalue problems
Model order reduction in control theory
Exponential integrators for time-dependent PDEs
Numerical Considerations
Loss of orthogonality: For large , classical Gram-Schmidt loses orthogonality; use modified Gram-Schmidt or reorthogonalization
Memory: Full Arnoldi stores all vectors; restarted variants (IRAM) limit memory usage
Breakdown: If , the Krylov subspace is -invariant (lucky breakdown)