direct methods for linear systems

39
Direct Methods for Linear Systems Lecture 3 Alessandra Nardi Thanks to Prof. Jacob White, Suvranu De, Deepak Ramaswamy, Michal Rewienski, and Karen Veroy

Upload: oral

Post on 13-Jan-2016

50 views

Category:

Documents


2 download

DESCRIPTION

Direct Methods for Linear Systems. Lecture 3 Alessandra Nardi. Thanks to Prof. Jacob White, Suvranu De, Deepak Ramaswamy, Michal Rewienski, and Karen Veroy. Last lecture review. Formulation of circuit equations Conservation laws (KCL, KVL) Branch constitutive equations (BCE) - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Direct Methods for Linear Systems

Direct Methods for Linear Systems

Lecture 3

Alessandra Nardi

Thanks to Prof. Jacob White, Suvranu De, Deepak Ramaswamy, Michal Rewienski, and Karen Veroy

Page 2: Direct Methods for Linear Systems

Last lecture review

• Formulation of circuit equations– Conservation laws (KCL, KVL)– Branch constitutive equations (BCE)– KCL, KVL, BCE combined in different ways:

• STA

• MNA

Page 3: Direct Methods for Linear Systems

Outline

• Systems of linear equations– Existence and uniqueness review– Gaussian Elimination basics

• LU factorization

• Pivoting

Page 4: Direct Methods for Linear Systems

Systems of linear equations

• Problem to solve: M x = b

• Given M x = b :– Is there a solution?– Is the solution unique?

Page 5: Direct Methods for Linear Systems

Systems of linear equations

Find a set of weights x so that the weighted sum of the

columns of the matrix M is equal to the right hand side b

1 1

2 21 2 N

N N

x b

x bM M M

x b

1 1 2 2 N Nx M x M x M b

Page 6: Direct Methods for Linear Systems

Systems of linear equations - Existence

A solution exists when b is in the span of the columns of M

A solution exists if:

There exist weights, x1, …., xN, such that:

bMxMxMx NN ...2211

Page 7: Direct Methods for Linear Systems

Systems of linear equations - Uniqueness

A solution is unique only if the columns of M are linearly

independent.

Then: Mx = b Mx + My= b M(x+y) = b

Suppose there exist weights, y1, …., yN, not all zero, such that:

0...2211 NN MyMyMy

Page 8: Direct Methods for Linear Systems

Systems of linear equations Square matrices

• Given Mx = b, where M is square– If a solution exists for any b, then the solution for a specific b is unique.

For a solution to exist for any b, the columns of M must span all N-length vectors. Since there are only N columns of the matrix M to span this space, these vectors must be linearly independent.

A square matrix with linearly independent columns is said to be nonsingular.

Page 9: Direct Methods for Linear Systems

Application Problems

• Matrix is n x n• Often symmetric and diagonally dominant• Nonsingular of real numbers

bxM

SeY

Page 10: Direct Methods for Linear Systems

Methods for solving linear equations

• Direct methods: find the exact solution in a finite number of steps

• Iterative methods: produce a sequence a sequence of approximate solutions hopefully converging to the exact solution

Page 11: Direct Methods for Linear Systems

Gaussian Elimination Basics

Gaussian Elimination Method for Solving M x = b

• A “Direct” Method Finite Termination for exact result (ignoring roundoff)

• Produces accurate results for a broad range of matrices

• Computationally Expensive

Page 12: Direct Methods for Linear Systems

Gaussian Elimination Basics

Reminder by 3x3 example

11 12 13 1 1

21 22 23 2 2

3 331 32 33

M M M x b

M M M x b

x bM M M

11 1 12 2 13 3 1M x M x M x b

21 1 22 2 23 3 2M x M x M x b

31 1 32 2 33 3 3M x M x M x b

Page 13: Direct Methods for Linear Systems

Gaussian Elimination Basics – Key idea

Use Eqn 1 to Eliminate x1 from Eqn 2 and 3

11 1 12 2 13 3 1M x M x M x b

21 21 2122 12 2 23 13 3 2 1

11 11 11

M M MM M x M M x b b

M M M

31 31 3132 12 2 33 13 3 3 1

11 11 11

M M MM M x M M x b b

M M M

Page 14: Direct Methods for Linear Systems

GE Basics – Key idea in the matrix

11

11 12 13

21 21 2122 12 23 12 2 2 1

11 11 11

31 3132 12 33 12

311 113 3

0

0

xb

M M M

M M MM M M M x b b

M M M

M MM M M M

MM M x b

1

111

bM

MULTIPLIERSPivot

Remove x1 from eqn 2 and eqn 3

Page 15: Direct Methods for Linear Systems

GE Basics – Key idea in the matrix

Pivot

Multiplier

11 12 13

21 2122 12 23 12

11 11

3132 12

1131 2133 12 23 12

11 112122 12

11

0

0 0

M M M

M MM M M M

M M

MM M

MM MM M M M

M MMM M

M

11

212 1

11

2

3132 12

1131 213 1 2 1

11 112122 12

113

x b

Mb b

Mx

MM M

MM Mb b b b

M MMM M

Mx

Remove x2 from eqn 3

Page 16: Direct Methods for Linear Systems

11

11 12 13

21 21 2122 12 23 12 2 2 1

11 11 11

31 3132 12 33 12

311 113 3

0

0

xb

M M M

M M MM M M M x b b

M M M

M MM M M M

MM M x b

1

111

bM

22M 23M

32M33M

3b2b

GE Basics – Simplify the notation

Remove x1 from eqn 2 and eqn 3

Page 17: Direct Methods for Linear Systems

Pivot

Multiplier

22 23 2

32 3233 23 3 2

111 12 13

2 2

1

2

3

2 2

0

0 0

x

M M b

M MM M b b

M M

bM

x

M

x

M

GE Basics – Simplify the notation

Remove x2 from eqn 3

Page 18: Direct Methods for Linear Systems

GE Basics – GE yields triangular system

AlteredDuring

GE

11 12 13 1 1

22 23 2 2

33 3 3

0

0 0

U U U x y

U U x y

U x y

11

2

3

22

11 12 1

2

3

2

3 3

3

30

0 0

x

M M b

b

M

M M M

x

x b

~ ~

Page 19: Direct Methods for Linear Systems

33

33

yx

U

2 23 32

22

y U xx

U

1 12 2 13 31

11

y U x U xx

U

11 12 13 1 1

22 23 2 2

33 3 3

0

0 0

U U U x y

U U x y

U x y

GE Basics – Backward substitution

Page 20: Direct Methods for Linear Systems

1

1

212 12

11

3 322

2

13 3 1

11 2

by

Mb by

M

M Mby b

M Mb

32

1 1

212 2

113 3

31

11 22

1 0 0

1 0

1

y bM

y bM

y bMM

M M

GE Basics – RHS updates

3

2

1

3

2

1

3231

21

1

01

001

b

b

b

y

y

y

LL

L

Page 21: Direct Methods for Linear Systems

GE basics: summary

(1) M x = b

U x = y Equivalent systemU: upper trg

(2) Noticed that:Ly = b L: unit lower trg

(3) U x = yLU x = b M x = b

GE

Efficient way of implementing GE: LU factorization

Page 22: Direct Methods for Linear Systems

Solve M x = bStep 1

Step 2 Forward Elimination

Solve L y = bStep 3 Backward Substitution Solve U x = y

=M = L U

Gaussian Elimination Basics

Note: Changing RHS does not imply to recompute LU factorization

Page 23: Direct Methods for Linear Systems

GE Basics – Fitting the pieces together

333231

232221

131211

MMM

MMM

MMM

33

23

~

22

~131211

00

0

M

MM

MMM

U

1

01

001

22

~

32

~

11

31

11

21

M

M

M

M

M

ML

Page 24: Direct Methods for Linear Systems

GE Basics – Fitting the pieces together

33

23

~

22

~131211

00

0

M

MM

MMM

U

1

01

001

22

~

32

~

11

31

11

21

M

M

M

M

M

ML

33

22

~

32

~

11

31

23

~

22

~

11

21

312111

MM

M

M

M

MMM

M

MMM

Page 25: Direct Methods for Linear Systems

11 12 13 14

21 22 23 24

31 32 33 34

41 42 43 44

M M M M

M M M M

M M M M

M M M M

44M43M 43M 44M43

33

M

M 44M

34M33M32M

22M 23M 24M

42M

32

22

M

M

42

22

M

M

33M 34M

21

11

M

M

31

11

M

M

41

11

M

M

LU factorization Basics – Picture

Page 26: Direct Methods for Linear Systems

LU BasicsSource-row oriented approach algorithm

For i = 1 to n-1 { “For each source row”

For j = i+1 to n { “For each target row below the source”

For k = i+1 to n { “For each row element beyond Pivot”

} }}

Pivot

Multiplier

jk jk ji ikM M M M

ii

jiji M

MM

Page 27: Direct Methods for Linear Systems

LU BasicsTarget-row oriented approach algorithm

For i = 2 to n { “For each target row”

For j = 1 to i-1 { “For each source row above the target”

For k = j+1 to n { “For each row element beyond Pivot”

} }}

Pivot

Multiplier

jj

ijij M

MM

jkijikik MMMM

Page 28: Direct Methods for Linear Systems

LU – Source-row and Target-row

Multipliers

Factored Portion

Active Set

k

k

Factored PortionMult

Active Set

k

k

Source-Row oriented approach

Target-Row oriented approach

Page 29: Direct Methods for Linear Systems

For i = 1 to n-1 { “For each Row”

For j = i+1 to n { “For each target Row below the source”

For k = i+1 to n { “For each Row element beyond Pivot”

} }}

Pivotjiji

ii

MM

M

Multiplier

jk jk ji ikM M M M

21

1

( )2

n

i

nn i

multipliers

12 3

1

2( )

3

n

i

n i n

Multiply-adds

LU Basics – Computational Complexity

Page 30: Direct Methods for Linear Systems

LU Basics – Limitations of the naïve approach

• Zero Pivots

• Small Pivots (Round-off error)

both can be solved with partial pivoting

Page 31: Direct Methods for Linear Systems

At Step i

Multipliers

Factored Portion

(L)iiM

jiM

Row i

Row j

What if Cannot form 0 ?iiM ji

ii

M

MSimple Fix (Partial Pivoting) If Find

0iiM 0jiM j i

Swap Row j with i

LU Basics – Partial pivoting for zero pivots

Page 32: Direct Methods for Linear Systems

Two Important Theorems

1) Partial pivoting (swapping rows) always succeeds if M is non singular

2) LU factorization applied to a diagonally dominant matrix will never produce a zero pivot

LU Basics – Partial pivoting for zero pivots

Page 33: Direct Methods for Linear Systems

LU Basics – Partial pivoting for small pivots

75

25.6

5.125.12

25.11025.1

2

14

x

x

GE

52

1

5

4

1025.675

25.6

1025.15.120

25.11025.1

x

x

9999.4

0001.1

52

1

digitsx

x

Page 34: Direct Methods for Linear Systems

LU Basics – Partial pivoting for small pivots

75

25.6

5.125.12

25.11025.1

2

14

x

x

GE

52

1

5

4

1025.675

25.6

1025.15.120

25.11025.1

x

x

5

0

32

1

digitsx

x

52

1

5

4

1025.6

25.6

1025.10

25.11025.1

x

xRounded to 3 digits

9999.4

0001.1

52

1

digitsx

x

Page 35: Direct Methods for Linear Systems

64 bits

52 bits11 bitssign

Double precision number

Basic Problem

Avoid sum and subtraction of large and tiny numbers

Avoid big multipliers

An Aside on Floating Point Arithmetic

LU Basics – Partial pivoting for small pivots

Page 36: Direct Methods for Linear Systems

Partial Pivoting for Roundoff reduction

If | | < max | |

Swap row with arg (max | |)

ii jij i

ijj i

M M

i M

LU Basics – Partial pivoting for small pivots

Small Multipliers

Page 37: Direct Methods for Linear Systems

LU Basics – Partial pivoting for small pivots

GE

5

2

1

5 107525.6

75

105.1225.10

5.125.12

x

x

5

1

32

1

digitsx

x

25.6

75

25.10

5.125.12

2

1

x

xRounded to 3 digits

9999.4

0001.1

52

1

digitsx

x

75

25.6

5.125.12

25.11025.1

2

14

x

x

25.6

75

25.11025.1

5.125.12

2

14 x

x

swap

Page 38: Direct Methods for Linear Systems

Pivoting strategies

• Partial Pivoting:– Only row interchange

• Complete Pivoting– Row and Column interchange

• Threshold Pivoting– Only if prospective pivot is found to be smaller

than a certain threshold

k

k

k

k

Page 39: Direct Methods for Linear Systems

Summary

• Existence and uniqueness review

• Gaussian elimination basics– GE basics– LU factorization– Pivoting