LU Decomposition

Post on 07-Feb-2016

51 views 0 download

description

LU Decomposition. Major: All Engineering Majors Authors: Autar Kaw http://numericalmethods.eng.usf.edu Transforming Numerical Methods Education for STEM Undergraduates. LU Decomposition http://numericalmethods.eng.usf.edu. LU Decomposition. - PowerPoint PPT Presentation

transcript

04/22/23http://

numericalmethods.eng.usf.edu 1

LU Decomposition

Major: All Engineering Majors

Authors: Autar Kaw

http://numericalmethods.eng.usf.eduTransforming Numerical Methods Education for STEM

Undergraduates

LU Decomposition

http://numericalmethods.eng.usf.edu

http://numericalmethods.eng.usf.edu

LU DecompositionLU Decomposition is another method to solve a set of

simultaneous linear equations

Which is better, Gauss Elimination or LU Decomposition?

To answer this, a closer look at LU decomposition is needed.

MethodFor most non-singular matrix [A] that one could conduct Naïve Gauss Elimination forward elimination steps, one can always write it as

[A] = [L][U]where

[L] = lower triangular matrix

[U] = upper triangular matrix

http://numericalmethods.eng.usf.edu

LU Decomposition

http://numericalmethods.eng.usf.edu

How does LU Decomposition work?

http://numericalmethods.eng.usf.edu

LU DecompositionHow can this be used?

Given [A][X] = [C]

1. Decompose [A] into [L] and [U]

2. Solve [L][Z] = [C] for [Z]

3. Solve [U][X] = [Z] for [X]

http://numericalmethods.eng.usf.edu

Is LU Decomposition better than Gaussian Elimination?

Solve [A][X] = [B]

3204

38| 2

3 nnnTCT DE

nnTCT FS 44| 2 nnTCT BS 124| 2

3328

38| 2

3 nnnTCT FE

Forward Elimination Decomposition to LU

Back Substitution

Forward Substitution

nnTCT BS 124| 2

Back Substitution

T = clock cycle time and nxn = size of the matrix

http://numericalmethods.eng.usf.edu

Is LU Decomposition better than Gaussian Elimination?

To solve [A][X] = [B]Time taken by methods

T = clock cycle time and nxn = size of the matrix

So both methods are equally efficient.

Gaussian Elimination LU Decomposition

3412

38 2

3 nnnT

3412

38 2

3 nnnT

http://numericalmethods.eng.usf.edu

To find inverse of [A]Time taken by Gaussian Elimination Time taken by LU

Decomposition

3412

38

||2

34 nnnT

CTCTn BSFE

32012

332

|||

23 nnnT

CTnCTnCT BSFSDE

http://numericalmethods.eng.usf.edu

To find inverse of [A]Time taken by Gaussian Elimination Time taken by LU

Decomposition

32012

332 2

3 nnnT

n 10 100 1000 10000CT|inverse GE / CT|inverse LU 3.288 25.84 250.8 2501

Table 1 Comparing computational times of finding inverse of a matrix using LU decomposition and Gaussian elimination.

3412

38 2

34 nnnT

For large n, CT|inverse GE / CT|inverse LU ≈ n/4

http://numericalmethods.eng.usf.edu

Method: [A] Decomposes to [L] and [U]

33

2322

131211

3231

21

000

101001

uuuuuu

ULA

[U] is the same as the coefficient matrix at the end of the forward elimination step.

[L] is obtained using the multipliers that were used in the forward elimination process

http://numericalmethods.eng.usf.edu

Finding the [U] matrixUsing the Forward Elimination Procedure of Gauss Elimination

11214418641525

11214456.18.40

152556.212;56.2

2564

RowRow

76.48.16056.18.40

152576.513;76.5

25144

RowRow

Step 1:

http://numericalmethods.eng.usf.edu

Finding the [U] Matrix

Step 2:

76.48.16056.18.40

1525

7.00056.18.40

15255.323;5.3

8.48.16

RowRow

7.00056.18.40

1525U

Matrix after Step 1:

http://numericalmethods.eng.usf.edu

Finding the [L] matrix

Using the multipliers used during the Forward Elimination Procedure

101001

3231

21

56.22564

11

2121

aa

76.525

144

11

3131

aa

From the first step of forward elimination

11214418641525

http://numericalmethods.eng.usf.edu

Finding the [L] Matrix

15.376.50156.2001

L

From the second step of forward elimination

76.48.16056.18.40

15255.3

8.48.16

22

3232

aa

http://numericalmethods.eng.usf.edu

Does [L][U] = [A]?

7.00056.18.40

1525

15.376.50156.2001

UL ?

http://numericalmethods.eng.usf.edu

Using LU Decomposition to solve SLEs

Solve the following set of linear equations using LU Decomposition

227921778106

11214418641525

3

2

1

.

.

.

xxx

Using the procedure for finding the [L] and [U] matrices

7.00056.18.40

1525

15.376.50156.2001

ULA

http://numericalmethods.eng.usf.edu

ExampleSet [L][Z] = [C]

Solve for [Z]

2.2792.1778.106

15.376.50156.2001

3

2

1

zzz

2.2795.376.52.17756.2

10

321

21

1

zzzzz

z

http://numericalmethods.eng.usf.edu

ExampleComplete the forward substitution to solve for [Z]

735.0

21.965.38.10676.52.2795.376.52.279

2.968.10656.22.177

56.22.1778.106

213

12

1

zzz

zzz

735.021.968.106

3

2

1

zzz

Z

http://numericalmethods.eng.usf.edu

ExampleSet [U][X] = [Z]

Solve for [X] The 3 equations become

735021968106

7.00056.18.40

1525

3

2

1

...

xxx

735.07.021.9656.18.48.106525

3

32

321

aaaaaa

http://numericalmethods.eng.usf.edu

ExampleFrom the 3rd equation

050170

7350735070

3

3

3

.a.

.a

.a.

Substituting in a3 and using the second equation

219656184 32 .a.a.

701984

0501561219684

5612196

2

2

32

.a.

...a

.a..a

http://numericalmethods.eng.usf.edu

ExampleSubstituting in a3 and a2 using the first equation

8106525 321 .aaa

Hence the Solution Vector is:

050.170.19

2900.0

3

2

1

aaa

2900025

05017019581062558106 32

1

.

...

aa.a

http://numericalmethods.eng.usf.edu

Finding the inverse of a square matrix

The inverse [B] of a square matrix [A] is defined as

[A][B] = [I] = [B][A]

http://numericalmethods.eng.usf.edu

Finding the inverse of a square matrixHow can LU Decomposition be used to find the inverse?Assume the first column of [B] to be [b11 b12 … bn1]T

Using this and the definition of matrix multiplication

First column of [B] Second column of [B]

0

01

1

21

11

nb

bb

A

0

10

2

22

12

nb

bb

A

The remaining columns in [B] can be found in the same manner

http://numericalmethods.eng.usf.edu

Example: Inverse of a MatrixFind the inverse of a square matrix [A]

11214418641525

A

7000561840

1525

15376501562001

.

.. ..

.ULA

Using the decomposition procedure, the [L] and [U] matrices are found to be

http://numericalmethods.eng.usf.edu

Example: Inverse of a MatrixSolving for the each column of [B] requires two steps

1)Solve [L] [Z] = [C] for [Z]

2)Solve [U] [X] = [Z] for [X]

Step 1:

001

15.376.50156.2001

3

2

1

zzz

CZL

This generates the equations:

05.376.5056.21

321

21

1

zzzzzz

http://numericalmethods.eng.usf.edu

Example: Inverse of a MatrixSolving for [Z]

23

5625317650537650

56215620

56201

213

12

1

....

z.z.z.

.z. z

z

23562

1

3

2

1

..

zzz

Z

http://numericalmethods.eng.usf.edu

Example: Inverse of a Matrix

Solving [U][X] = [Z] for [X]

3.22.561

7.00056.18.40

1525

31

21

11

bbb

2.37.056.256.18.4

1525

31

3121

312111

bbbbbb

http://numericalmethods.eng.usf.edu

Example: Inverse of a MatrixUsing Backward Substitution

04762.025

571.49524.05125

51

9524.08.4

571.4560.156.28.4560.156.2

571.47.02.3

312111

3121

31

bbb

bb

b So the first column of the inverse of [A] is:

571.49524.0

04762.0

31

21

11

bbb

http://numericalmethods.eng.usf.edu

Example: Inverse of a MatrixRepeating for the second and third columns of the inverse

Second Column Third Column

010

11214418641525

32

22

12

bbb

000.5417.108333.0

32

22

12

bbb

100

11214418641525

33

23

13

bbb

429.14643.0

03571.0

33

23

13

bbb

http://numericalmethods.eng.usf.edu

Example: Inverse of a MatrixThe inverse of [A] is

429.1000.5571.44643.0417.19524.0

03571.008333.004762.01A

To check your work do the following operation

[A][A]-1 = [I] = [A]-1[A]

Additional ResourcesFor all resources on this topic such as digital audiovisual lectures, primers, textbook chapters, multiple-choice tests, worksheets in MATLAB, MATHEMATICA, MathCad and MAPLE, blogs, related physical problems, please visit http://numericalmethods.eng.usf.edu/topics/lu_decomposition.html

THE END

http://numericalmethods.eng.usf.edu