|
In linear algebra, a LU decomposition, or
LUP decomposition or Doolittle decomposition is a matrix decomposition of a matrix into a lower triangular
matrix L, an upper-triangular matrix
U and a permutation matrix P. This
decomposition is used in numerical analysis to solve a system
of linear equations.
Definition
Let A be an invertible matrix. Then A can be decomposed as
- PA = LU
where P is a permutation matrix, L is a lower triangular matrix and U is an upper triangular
matrix.
Algorithm 1
By applying a series of elementary
matrix transformations (i.e. multiplications of A on the left) we construct an upper triangular matrix U
starting from A. This method is called the Gauss method. These elementary matrix transformations are all of the linear combinator transformation type
(the third listed type in the entry "elementary matrix transformations").Suppose T is the product of N transformations
TN ... T2 T1=T, then the upper triangular matrix is:
- TA = TN ... T2 T1A =: U.
The inverse of the matrix T is :
- T -1 = T1-1 T2-1 ... TN-1.
As the gaussian elimination algorithm uses only
the third form of the three types of elementary matrix transformations to make A upper triangular, we can infer that
all the Ti-1 are lower triangular (see elementary matrix transformations). Being a product of the
Ti-1 also:
- T -1 = T1-1 T2-1 ... TN-1
=:L
is lower triangular.
Thus we have the decomposition of the matrix A into the product of L and U:
- LU = T -1TA = A.
Algorithm 2
Here is a direct method for decomposing an matrix into the product of a lower triangular matrix and an upper triangular matrix ,
-
For a matrix, this becomes:
-
This gives three types of equations
-
-
-
This gives N2 equations for N2 +
N unknowns (the decomposition is therefore not unique); the system can be solved using Crout's method.
Applications
Inverse Matrix
The matrices L and U can be used to calculate the matrix inverse. Computer implementations that invert matrices often use this approach.
Solving of matrix equations
Given a matrix equation and the LU decomposition of A
-
first solve for
. This can be done by forward substitution
-
-
for i=2,...,N. Then solve for . This can be done by back substitution
-
-
for i=N-1,...,1
This algorithm for solving matrix equations takes O(n2) operations (excluding the LU decomposition) and is
therefore much faster than using Gauss algorithm.
Related articles
|