In
numerical linear algebra
Numerical linear algebra, sometimes called applied linear algebra, is the study of how matrix operations can be used to create computer algorithms which efficiently and accurately provide approximate answers to questions in continuous mathematics ...
, an incomplete LU factorization (abbreviated as ILU) of a
matrix
Matrix most commonly refers to:
* ''The Matrix'' (franchise), an American media franchise
** '' The Matrix'', a 1999 science-fiction action film
** "The Matrix", a fictional setting, a virtual reality environment, within ''The Matrix'' (franchi ...
is a
sparse
Sparse is a computer software tool designed to find possible coding faults in the Linux kernel. Unlike other such tools, this static analysis tool was initially designed to only flag constructs that were likely to be of interest to kernel de ...
approximation of the
LU factorization often used as a
preconditioner.
Introduction
Consider a sparse linear system
. These are often solved by computing the factorization
, with ''L''
lower unitriangular and ''U''
upper triangular.
One then solves
,
, which can be done efficiently because the matrices are triangular.
For a typical sparse matrix, the LU factors can be much less sparse than the original matrix — a phenomenon called ''fill-in''.
The memory requirements for using a direct solver can then become a bottleneck in solving linear systems. One can combat this problem by using fill-reducing reorderings of the matrix's unknowns, such as the
Minimum degree algorithm
In numerical analysis, the minimum degree algorithm is an algorithm used to permute the rows and columns of a symmetric sparse matrix before applying the Cholesky decomposition, to reduce the number of non-zeros in the Cholesky factor.
This re ...
.
An incomplete factorization instead seeks triangular matrices ''L'', ''U'' such that
rather than
. Solving for
can be done quickly but does not yield the exact solution to
. So, we instead use the matrix
as a preconditioner in another iterative solution algorithm such as the
conjugate gradient method
In mathematics, the conjugate gradient method is an algorithm for the numerical solution of particular systems of linear equations, namely those whose matrix is positive-definite. The conjugate gradient method is often implemented as an iter ...
or
GMRES In mathematics, the generalized minimal residual method (GMRES) is an iterative method for the numerical solution of an indefinite nonsymmetric system of linear equations. The method approximates the solution by the vector in a Krylov subspace wi ...
.
Definition
For a given matrix
one defines the graph
as
:
which is used to define the conditions a ''sparsity patterns''
needs to fulfill
:
A decomposition of the form
where the following hold
*
is a
lower unitriangular matrix
*
is an
upper triangular matrix
*
are zero outside of the sparsity pattern:
*
is zero within the sparsity pattern:
is called an incomplete LU decomposition (with respect to the sparsity pattern
).
The sparsity pattern of ''L'' and ''U'' is often chosen to be the same as the sparsity pattern of the original matrix ''A''. If the underlying matrix structure can be referenced by pointers instead of copied, the only extra memory required is for the entries of ''L'' and ''U''. This preconditioner is called ILU(0).
Stability
Concerning the stability of the ILU the following theorem was proven by Meijerink and van der Vorst.
Let
be an
M-matrix In mathematics, especially linear algebra, an ''M''-matrix is a ''Z''-matrix with eigenvalues whose real parts are nonnegative. The set of non-singular ''M''-matrices are a subset of the class of ''P''-matrices, and also of the class of inverse ...
, the (complete) LU decomposition given by
, and the ILU by
.
Then
:
holds.
Thus, the ILU is at least as stable as the (complete) LU decomposition.
Generalizations
One can obtain a more accurate preconditioner by allowing some level of extra fill in the factorization. A common choice is to use the sparsity pattern of ''A
2'' instead of ''A''; this matrix is appreciably more dense than ''A'', but still sparse over all. This preconditioner is called ILU(1). One can then generalize this procedure; the ILU(k) preconditioner of a matrix ''A'' is the incomplete LU factorization with the sparsity pattern of the matrix ''A
k+1''.
More accurate ILU preconditioners require more memory, to such an extent that eventually the running time of the algorithm increases even though the total number of iterations decreases. Consequently, there is a cost/accuracy trade-off that users must evaluate, typically on a case-by-case basis depending on the family of linear systems to be solved.
The ILU factorization can be performed as a
fixed-point iteration
In numerical analysis, fixed-point iteration is a method of computing fixed points of a function.
More specifically, given a function f defined on the real numbers with real values and given a point x_0 in the domain of f, the fixed-point itera ...
in a highly parallel way.
See also
*
Incomplete Cholesky factorization
References
* . See Section 10.3 and further.
External links
Incomplete LU Factorization on CFD Wiki
{{Numerical linear algebra
Numerical linear algebra