0% found this document useful (0 votes)
8 views36 pages

Lecture 20

Uploaded by

pranay rekam
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views36 pages

Lecture 20

Uploaded by

pranay rekam
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 36

MA206L-Numerical Methods

Lecture 20: Numerical Linear Algebra - LU Decomposition

Panchatcharam Mariappan1

1 Associate Professor

Department of Mathematics and Statistics


IIT Tirupati, Tirupati

October 7, 2024
Linear System
• One of the important problem in many science and engineering.
• To solve an algebraic linear system

Ax = b

for the unknown vector x.


• The coefficient matrix A and the right-hand side vector b are known.
• What is the size of A, x and b?
• Assume: A is n × n, x and b are n−dimensional vector.
• The system may or may not have a solution.
• It may have an infinite solutions or unique solution.

1
Linear System
• Gaussian elimination method: one of the standard method for solving
the linear system
• Computer or calculator
• School days.
• However, in pure mathematics, the solution is given by

x = A−1 b

where A−1 denotes the inverse of the matrix A.


• But, in most of the real applications, it is not advised to find A−1
explicitly, indeed, it is recommended to solve for x.

2
Linear System
• But, in most of the real applications, it is not advised to find A−1
explicitly, indeed, it is recommended to solve for x.
• In applied mathematics, the largest and fastest computers can also face
difficulty to solve the system accurately when the number of unknowns
are in millions.

3
Linear System: Important 10 Questions
1. How do we store such a large linear system in the computer?
2. How do we know that the computed answers are correct?
3. How does the computer precision affects the results?
4. Can the algorithm fail?
5. How long will it take to compute the answers?
6. What is the asymptotic operation count of the algorithm?
7. Will the algorithm be stable for perturbation?
8. Can stability be controlled by pivoting?
9. Which strategy of pivoting should be used?
10. How do we know whether the matrix is ill-conditioned?

4
Diagonal Linear System
Definition 1 (Diagonal linear system)
A matrix A of order n is diagonal if all its nonzero entries are on its diagonal. A
diagonal linear system of order n is one whose coefficient matrix is diagonal.
That is (
dii ̸= 0 if i = j
Aij =
0 if i ̸= j

A diagonal linear system can be represented as


    
d11 0 0 ··· 0 x1 b1
 0 d22 0 · · · 0   x2   b2 
    
 0
 0 d33 · · · 0   x3   b3 
  =  
 .. .. .. . . .
.  .   . 
 . . . . .   ..   .. 
0 0 0 · · · dnn xn bn
5
Diagonal Linear System
Finding the solution of the linear system is easy because each equation
determines the value of one unknown, provided that each diagonal entry is
nonzero. The solution is given by

bi
xi = , i = 1, 2, · · · , n
dii

Example 1
Consider the following linear system and find the solution.

9x1 = 3, 25x2 = 5, , 16x3 = 4, 36x4 = 6, 49x5 = 7

6
Diagonal Linear System
It is a diagonal linear system and it can be written as
    
9 0 0 0 0 x1 3
0 25 0 0 0  x2  5
    
0 0 16 0 0  x3  = 4
    
0 0 0 36 0  x4  6
0 0 0 0 49 x5 7

Without constructing this matrix also we can immediately conclude that


  1
x1 3
x2   1 
   51 
x3  =  
   41 
x4   
6
1
x5 7
7
Upper Triangular Linear System
Definition 2 (Upper triangular linear system)
A matrix A of order n is upper triangular if all its nonzero entries are on its
diagonal or strictly on the upper triangular entries. An upper triangular linear
system of order n is one whose coefficient matrix is upper triangular. That is
(
uij if i ≥ j
Aij =
0 if i < j

An upper triangular linear system can be represented as


    
u11 u12 u13 · · · u1n x1 y1
 0 u22 u23 · · · u2n   x2   y2 
    
 0
 0 u33 · · · u3n   x3  =  y3 
   
 .. .. .. .. .
..   .  .
 ..   .. 

 . . . .
0 0 0 · · · unn xn yn 8
Backward Substitution
In order to solve an upper triangular linear system, we need a backward
substitution which is given by the following algorithm

9
Backward Substitution
In order to solve an upper triangular linear system, we need a backward
substitution which is given by the following algorithm
n
X
yi − uij xj
j=i+1
xi = , i = n, n − 1, · · · , 1 (1)
uii

9
Backward Substitution
Example 2
Find the solution of the following linear system.
    
2 2 3 4 x1 20
0 5 6 7  x2  34
0 0 8 9  x3  = 25
    

0 0 0 10 x4 10
Backward Substitution
Example 2
Find the solution of the following linear system.
    
2 2 3 4 x1 20
0 5 6 7  x2  34
0 0 8 9  x3  = 25
    

0 0 0 10 x4 10

It is an upper triangular system. Using backward substitution, we obtain that


10 25 − 9x4 16
x4 = = 1 =⇒ x3 = =⇒ x3 = =2
10 8 8
34 − 6x3 − 7x4 15
=⇒ x2 = =⇒ x2 = =3
5 5
20 − 2x2 − 3x3 − 4x4 4
=⇒ x1 = =⇒ x1 = = 2
2 2
10
Forward Substitution
Definition 3 (Lower triangular linear system)
A matrix A of order n is upper triangular if all its nonzero entries are on its
diagonal or strictly on the lower triangular entries. A lower triangular linear
system of order n is one whose coefficient matrix is lower triangular. That is
(
lij if i ≤ j
Aij =
0 if i > j

A lower triangular linear system can be represented as


    
l11 0 0 ··· 0 y1 b1
 l21 l22 0 · · · 0   y2   b2 
    
 l31 l32 u33 · · · 0   y3   b3 
   =  
 .. .. .. . . ..   ..   .. 
 . . . . .  .   . 
ln1 ln2 ln3 · · · lnn yn bn 11
Forward Substitution
In order to solve a lower triangular linear system, one can apply forward
substitution. In the backward substitution, we obtain the value of xn first and
then using xn , we obtain the value of xn−1 Using xn , xn−1 , xn−2 is calculated.
Finally the value of x1 is calculated. On the other hand, in forward
substitution, we obtain the value of y1 first. Using y1 , we obtain the value of y2
and so on. The value of

12
Forward Substitution
In order to solve a lower triangular linear system, one can apply forward
substitution. In the backward substitution, we obtain the value of xn first and
then using xn , we obtain the value of xn−1 Using xn , xn−1 , xn−2 is calculated.
Finally the value of x1 is calculated. On the other hand, in forward
substitution, we obtain the value of y1 first. Using y1 , we obtain the value of y2
and so on. The value of
i−1
X
bi − lij xj
j=1
yi = , i = 1, 2, · · · , n (2)
lii

12
LU Decomposition

13
LU Decomposition
If we can decompose a square matrix A by in the form of

A = LU

then one can easily obtain the solution of the linear system

Ax = b

Ax = b =⇒ LU x = b =⇒ Ly = b where U x = y
Since Ly = b is a lower triangular system, by the forward substitution, we can
solve for y. Using y in U x = y, which is an upper triangular system, and the
backward substitution, we can obtain x.

14
LU Decomposition
The following steps are used to solve the linear system Ax = b.
1. Find L and U such that A = LU
2. Using forward substitution, Solve for y from Ly = b
3. Use y in U x = y
4. Using backward substitution, Solve for x from U x = y
As per the LU decomposition, we can write A as
    
a11 a12 a13 · · · a1n l11 0 0 ··· 0 u11 u12 u13 · · · u1n
 a21 a22 a23 · · · a2n   l21 l22 0 · · · 0   0 u22 u23 · · · u2n 
    
 a31 a32 a33 · · · a3n   l31 l32 l33 · · · 0  0 0 u33 · · · u3n 
 =  
 .. .. .. .. ..   .. .. .. . . ..   .. .. .. .. .. 
 . . . . .   . . . . .  . . . . . 
an1 an2 an3 · · · ann ln1 ln2 ln3 · · · lnn 0 0 0 · · · unn
15
LU Decomposition

Example 3
Obtain the LU decomposition and then obtain the solution x.
    
6 −2 2 4 x1 16
 12 −8 6 10  x2   26 
   =  
 3 −13 9 3  x3  −19
−6 4 1 −18 x4 −34
    
6 −2 2 4 l11 0 0 0 u11 u12 u13 u14
 12 −8 6 10  l21 l22 0 0   0 u22 u23
  u24 
 = 
 3 −13 9 3  l31 l32 l33 0   0 0 u33 u34 
−6 4 1 −18 l41 l42 l43 l44 0 0 0 u44
As per LU Decomposition
16
LU Decomposition
Comparing the first entry of LU with A, we obtain that l11 u11 = 6. Now, we can
choose any real number l11 such that l11 u11 = 6. For the sake of convenience,
we always choose lii = aii , then we obtain that l11 = 6 and u11 = 1.
l11 u11 = 6, l11 = 6 =⇒ u11 = 1
−1
l11 u12 = −2 =⇒ u12 =
3
1
l11 u13 = 2 =⇒ u13 =
3
2
l11 u14 = 4 =⇒ u14 =
3
Since u11 is known, we can easily compute the first column of L by the
following formula.
ai1
li1 = , i>1
u11 17
LU Decomposition

    
6 −2 2 4 6 0 0 0 1 −1/3 1/3 2/3
 12 −8 6 10   12 l22 0 0  0 u22 u23 u24 
 =  
 3 −13 9 3   3 l32 l33 0  0 0 u33 u34 
−6 4 1 −18 −6 l42 l43 l44 0 0 0 u44

Therefore, the formula to compute u2j is given by

a2j − l21 u1j


u2j = , j>2
l22
Since u22 and u12 are known, we can compute the second column of L by the
following formula
ai2 − li1 u12
li2 = , i>2
u22 18
LU Decomposition
Similarly the formula to compute u2j is given by

a3j − l31 u1j − l32 u2j


u3j = ,j > 3
l33
Since u22 and u12 are known, we can compute the second column of L by the
following formula
ai3 − li1 u13 − li2 u23
li3 = , i>3
u33
    
6 −2 2 4 6 0 0 0 1 −1/3 1/3 2/3
 12 −8 6 10   12 −8 0 0  0 1/2 −1/4 −1/4
 
 =
 3 −13 9 3   3 −24 9 0  0 0 2/9 −5/9
−6 4 1 −18 −6 4 18 −18 0 0 0 1/6

19
LU Decomposition
Now, let us consider the system Ly = b
    
6 0 0 0 y1 16
 12 −8 0 0  y2  =  26 
   

 3 −24 9 0  y3   −19
−6 4 18 −18 y4 −34
Using forward substitution, we obtain that
 
16 8 8 3
y1 = = =⇒ 12 − 8y2 = 26 =⇒ y2 =
6 3 3 4
   
8 3
=⇒ 3 − 24 + 9y3 = −19 =⇒ y3 = −1
3 4
   
8 3 1
=⇒ −6 +4 + 18(1) − 18y4 = −34 =⇒ y4 =
3 4 6
20
LU Decomposition
Now, let us consider the system Ly = b
   
y1 8/3
y2  3/4
 = 
y3   −1 
y4 1/6

Now, consider the system U x = y


    
1 −1/3 1/3 2/3 x1 8/3
0 1/2 −1/4 −1/4 x2  3/4
   =  
0 0 2/9 −5/9 x3   −1 
0 0 0 1/6 x4 1/6

21
LU Decomposition
Using backward substitution, we obtain that

1/6 2 5
x4 = = 1 =⇒ x3 − = −1 =⇒ x3 = −2
1/6 9 9
       
1 −1 −1 3
=⇒ x2 + (−2) + (1) = =⇒ x2 = 1
2 4 4 4
   
1 1 2 8
=⇒ x1 − −2 + = =⇒ x1 = 3
3 3 3 3

22
LU Decomposition
For a general LU decomposition, we have first guess lkk ̸= 0 value or ukk ̸= 0
values and use the following formula for j > k and i > k
k−1
X
akj − lks usj
s=1
ukj = (3)
lkk
k−1
X
aik − lis usk
s=1
lik = (4)
ukk

From the above two equations, it is easy to note that lkk ̸= 0 and ukk ̸= 0 are
necessary.

23
LU Decomposition
Theorem 4
If all n leading principal minors of A are nonsingular, then A has an LU-
decomposition.

Definition 5 (Diagonally Dominant)


A square matrix A = (aij ) is said to be diagonally dominant if it satisfies the
following inequality:
n
X
|aii | > |aij | 1≤i≤n
j=1,j̸=i

Theorem 6
Every diagonally dominant matrix is non-singular and has an LU-
decomposition. 24
Crout, Doolittle, LDLT ,
Cholesky

25
Crout’s Decomposition
In LU-decomposition one of the condition specified is that lkk ̸= 0 and ukk ̸= 0
are necessary. If we choose, ukk = 1, then U is an upper triangular matrix with
its diagonal entries as 1. This decomposition is called Crout’s decomposition.
    
a11 a12 a13 · · · a1n l11 0 0 ··· 0 1 u12 u13 · · · u1n
 a21 a22 a23 · · · a2n   l21 u22 0 · · · 0  0 1 u23 · · · u2n 
    
 a31 a32 a33 · · · a3n   l31 l32 u33 · · · 0  0 0 1 · · · u3n 
 =  
 .. .. .. . . ..   .. .. .. . . ..   .. .. .. . . .. 
 . . . . .   . . . . .  . . . . . 
an1 an2 an3 · · · ann ln1 ln2 ln3 · · · lnn 0 0 0 ··· 1

26
Doolittle’s Decomposition
If we choose, lkk = 1, then L is a lower triangular matrix with its diagonal
entries as 1. This decomposition is called Doolittle’s decomposition.
    
a11 a12 a13 · · · a1n 1 0 0 ··· 0 u11 u12 u13 · · · u1n
 a21 a22 a23 · · · a2n   l21 1 0 · · · 0  0 u22 u23
  · · · u2n 
   
 a31 a32 a33 · · · a3n   l31 l32 1 · · · 0  0 0 u33 · · · u3n 
 =  
 .. .. .. . .. .
..   ..
  . .
.. .
.. . . .
. . ..   ..
  .. .. .. .. 
 . . . . . . . 
an1 an2 an3 · · · ann ln1 ln2 ln3 · · · 1 0 0 0 · · · unn

27
LDLT Decomposition
Observe that when Doolittle’s decomposition is applied, the first row of U and
A are same. Similarly, when Crout’s decomposition is applied, then the first
column of L and A are same. In fact we can prove uniqueness of LU
decomposition in case of Doolittle and Crout assumptions as follows:

Theorem 7
Every nonsingular matrix has a unique LU decomposition.
Suppose
A = L1 U1 = L2 U2 =⇒ L−1 −1
1 L2 = U1 U2

Since left side is lower triangular and right side is upper triangular, it should
be a diagonal matrix. Since diag(L−1 1 L2 ) = I (for Doolittle) or
−1
diag(U1 U2 ) = I (for Crout), it leads to L1 = L2 and U1 = U2 . Using
Gauss-Jordan method it can be obtained easily.
28
LDLT Decomposition
If A is a symmetric matrix and A has an LU decomposition, then it has an
LDLT decomposition. For,
A = LU =⇒ AT = U T LT
A = AT =⇒ LU = U T LT
Since L is unit lower triangular, it is invertible, we can write
U = L−1 U T LT =⇒ U (LT )−1 = L−1 U T
Transpose of an upper triangular matrix is a lower triangular and vice versa.
Since L is lower triangular, L−1 is also a lower triangular and hence L−1 U T is
a lower triangular matrix. On the other side, we have U (LT )−1 is an upper
triangular matrix. Therefore,
U (LT )−1 = L−1 U T = D =⇒ U = DLT =⇒ A = LDLT
29
Cholesky Decomposition
When A is symmetric and positive definite and U = LT , then we obtain that

A = LLT

Theorem 8
If A is real, symmetric and positive definite, then it has a unique factorization

A = LLT

in which L is lower triangular with positive diagonal.


Since A > 0, A = AT by LDLT decomposition, we can obtain

A = LDLT

A > 0 =⇒ D > 0 =⇒ L̃ ≡ LD1/2 =⇒ A = L̃L̃T



where the entries of D1/2 are dii . 30
Thanks
Doubts and Suggestions
[email protected]

31
MA206L-Numerical Methods
Lecture 20: Numerical Linear Algebra - LU Decomposition

Panchatcharam Mariappan1

1 Associate Professor

Department of Mathematics and Statistics


IIT Tirupati, Tirupati

October 7, 2024

31

You might also like