LU Decomposition Calculator
Welcome to Omni's LU decomposition calculator! Here you can determine the LU decompositions, learn what the LU decomposition is, and what its applications are. Moreover, we discuss when the LU decomposition exists (LU decomposition problems), and teach you how to find the LU decomposition by hand.
What is the LU decomposition?
To decompose (or factorize) a matrix means to write the matrix as a product of two or more matrices. This can significantly simplify some matrix operations because the matrices into which we decompose the original matrix have special properties, and so we can easily perform various operations on them rather than on the original matrix. Examples of popular matrix decompositions include the LU decomposition, which we deal with here, as well as the QR decomposition, the Cholesky decomposition, and the singular value decomposition (SVD).
The LU decomposition factors a square matrix
A into the product of two matrices:
A = LU
Lis a lower triangular matrix (all elements above the diagonal are zero); and
Uis an upper triangular matrix (all the elements below the diagonal are zero).
|Do you know that... |
...it was the Polish mathematician Tadeusz Banachiewicz who introduced the LU decomposition in 1938.
Does the LU decomposition always exist? LU decomposition problems
Do you think it would be all too perfect if we could take any square matrix and write it as the product of a lower and upper triangular matrices? You're right, it may happen that a matrix does not admit an LU decomposition. For instance, let's take a look at the following 2x2 matrix:
and try to write it as a product of a lower-triangular and upper-triangular matrices:
We see that the following equality needs to hold:
l₁₁ * u₁₁ = 0
which implies that
l₁₁ = 0 or
u₁₁ = 0. Next, however, we have the following equalities:
l₁₁ * u₁₂ = 1
l₂₁ * u₁₁ = 2
which imply that neither
l₁₁ = 0 nor
u₁₁ = 0 can hold. Hence, there is a contradiction with the assumption that our matrix can be written as a product of a lower and upper triangular matrix. However, once we permute it rows, we arrive at
which is an upper-triangular matrix! Hence, the LU decomposition is trivial:
It turns out that even if the LU decomposition is not possible for a square matrix, there always exists a permutation of rows of the matrix such that the LU factorization is achievable for this permuted matrix. This is called LU factorization with partial pivoting and can be written as
PA = LU
Pis a permutation matrix (it reorders the rows of
Lis a lower triangular matrix; and
Uis an upper triangular matrix.
How to find the LU decomposition?
For a general
n × n matrix A, we assume that the factorization follows the below LU decomposition formula
A = LU
which exists and we can write it down explicitly. For instance, for a
3x3 matrix we have:
As you can see, there are more unknowns on the left-hand side of the equation than on the right-hand side, so some of them can be set to any non-zero value. It's common to set all the entries of the main diagonal of the lower triangular matrix to ones (such a matrix is called a unit triangular matrix):
Now, we write down the system of linear equations implied by the standard matrix multiplication procedure and solve for the remaining unknown entries of
In our LU decomposition example we have:
1: a11 = 1 * u11
2: a12 = 1 * u12
3: a13 = 1 * u13
4: a21 = l21 * u11
5: a22 = l21 * u12 + 1 * u22
6: a23 = l21 * u13 + 1 * u23
7: a31 = l31 * u11
8: a32 = l31 * u12 + l32 * u₂₂
9: a33 = l31 * u13 + l32 * u23 + 1 * u33
Clearly, from the first three equations we immediately get the values of
u13, which we then plug into the remaining equations. The 4th and 7th equations allow us to find
l31, then 5th and 6th give the values of
u₂₃. Finally, the last two equations will produce the solutions for
As you can see, for small matrices it's not hard to write down the system and solve it. For larger matrices, however, it's more convenient to have a bunch of ready formulas for the coefficients of
U. Here they are for an
n x n matrix:
Find the first row of
Uand the first column of
L. For each
j = 1, ... , nwe have
Next, for each
i = 1, ... , n-1we have
Finally, we can determine the last entry of
How to use this LU decomposition calculator?
As we have seen in the previous section, finding LU decompositions can be difficult, or at least time-consuming, especially for larger matrices. Thankfully, Omni's LU decomposition calculator is here to help you save some time, which you may then spend reading to your heart's content! 😀
To quickly determine the LU decomposition with the help of our LU decomposition calculator, follow these steps:
- Choose the size of the matrix you want to find the LU decomposition of.
- Enter the coefficients of your matrix into the respective fields of the LU decomposition calculator.
- If your matrix admits an LU decomposition, the calculator will display it. Otherwise, a warning message will appear. Permute the rows of your matrix and try again.
- You can adjust the precision with which this LU decomposition calculator operates. Go to the
advanced modeand change the
precisionfield according to your need. By default, 3 significant figures are displayed.
Applications of the LU decomposition
As we can see, the LU decomposition factors a matrix into two triangular matrices which can be quickly done with our LU decomposition solver. Triangular matrices are very friendly to work with, e.g., when it comes to:
Let's discuss in more detail how the LU decomposition helps to find determinants. Recall that:
- The determinant of a triangular matrix is the product of the diagonal entries; and
- The determinant of a product of matrices is the product of determinants of these matrices (we say that the determinant is multiplicative)
Therefore, if we need to find
det(A) and we know the LU decomposition
A = LU, then
det(A) = det(L) * det(U)
det(A) = l11 * ... * lnn * u11 * ... * unn
l11, ... , lnnare the diagonal entries of
u11, ... , unnare the diagonal entries of