jacobi method- gauuss.seidelll

11
Jacobi Method The Jacobi method is a method of solving a matrix equation on a matrix that has no zeros along its main diagonal (Bronshtein and Semendyayev 1997, p. 892). Each diagonal element is solved for, and an approximate value plugged in. The process is then iterated until it converges. This algorithm is a stripped-down version of the Jacobi transformation method of matrix diagonalization. The Jacobi method is easily derived by examining each of the equations in the linear system of equations in isolation. If, in the th equation (1 ) solve for the value of while assuming the other entries of remain fixed. This gives (2 ) which is the Jacobi method. In this method, the order in which the equations are examined is irrelevant, since the Jacobi method treats them independently. The definition of the Jacobi method can be expressed with matrices as (3 ) where the matrices , , and represent thediagonal, strictly lower triangular, and strictly upper triangular parts of , respectively. SEE ALSO: Gauss-Seidel Method, Nonstationary Iterative Method,

Upload: vimaba

Post on 10-Apr-2015

729 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Jacobi Method- Gauuss.seidelll

Jacobi Method

The Jacobi method is a method of solving a matrix equation on a matrix that has no zeros

along its main diagonal (Bronshtein and Semendyayev 1997, p. 892). Each diagonal element

is solved for, and an approximate value plugged in. The process is then iterated until it

converges. This algorithm is a stripped-down version of the Jacobi transformation method of

matrix diagonalization.

The Jacobi method is easily derived by examining each of the equations in the linear system

of equations in isolation. If, in the th equation

(1

)

solve for the value of while assuming the other entries of remain fixed. This gives

(2

)

which is the Jacobi method.

In this method, the order in which the equations are examined is irrelevant, since the Jacobi

method treats them independently. The definition of the Jacobi method can be expressed with

matrices as

(3

)

where the matrices , , and represent thediagonal, strictly lower triangular, and strictly

upper triangular parts of , respectively.

SEE ALSO: Gauss-Seidel Method, Nonstationary Iterative Method, Stationary Iterative

Method, Successive Overrelaxation Method, Symmetric Successive Overrelaxation Method

Portions of this entry contributed by Noel Black and Shirley Moore, adapted from Barrett et al.

(1994) (author's link)

Page 2: Jacobi Method- Gauuss.seidelll

REFERENCES:

Acton, F. S. Numerical Methods That Work, 2nd printing. Washington, DC: Math. Assoc. Amer., pp. 161-163, 1990.

Barrett, R.; Berry, M.; Chan, T. F.; Demmel, J.; Donato, J.; Dongarra, J.; Eijkhout, V.; Pozo, R.; Romine, C.; and van

der Vorst, H. Templates for the Solution of Linear Systems: Building Blocks for Iterative Methods, 2nd ed.

Philadelphia, PA: SIAM, 1994. http://www.netlib.org/linalg/html_templates/Templates.html.

Bronshtein, I. N. and Semendyayev, K. A. Handbook of Mathematics, 3rd ed. New York: Springer-Verlag, p. 892,

1997.

Hageman, L. and Young, D. Applied Iterative Methods. New York: Academic Press, 1981.

Press, W. H.; Flannery, B. P.; Teukolsky, S. A.; and Vetterling, W. T. Numerical Recipes in FORTRAN: The Art of

Scientific Computing, 2nd ed. Cambridge, England: Cambridge University Press, pp. 864-866, 1992.

Varga, R. Matrix Iterative Analysis. Englewood Cliffs, NJ: Prentice-Hall, 1962.

Young, D. Iterative Solutions of Large Linear Systems. New York: Academic Press, 1971.

Module

for

Jacobi and Gauss-Seidel Iteration

     

Background

    Iterative schemes require time to achieve sufficient accuracy and are reserved for large

systems of equations where there are a majority of zero elements in the matrix. Often times the

algorithms are taylor-made to take advantage of the special structure such as band

matrices.  Practical uses include applications in circuit analysis, boundary value problems and

Page 3: Jacobi Method- Gauuss.seidelll

partial differential equations.

    

    Iteration is a popular technique finding roots of equations.  Generalization of fixed point

iteration can be applied to systems of linear equations to produce accurate results.  The

method Jacobi iteration is attributed to Carl Jacobi (1804-1851) and Gauss-Seidel iteration is

attributed to  Johann Carl Friedrich Gauss (1777-1855) and Philipp Ludwig von Seidel (1821-

1896).

 

    Consider that the n×n square matrix A is split into three parts, the main diagonal D, below

diagonal L and above diagonal U.  We have  A = D - L - U.

=

-

-

  

 

Page 4: Jacobi Method- Gauuss.seidelll

Definition (Diagonally Dominant).  The matrix     is strictly diagonally dominant if

            for    .  

 

Theorem (Jacobi Iteration).  The solution to the linear system     can be obtained

starting with   , and using iteration scheme

    

           

where  

           and   .  

If   is carefully chosen a sequence is generated which converges to the

solution  P,  i.e.   .  

A sufficient condition for the method to be applicable is that A is strictly diagonally dominant or

diagonally dominant and irreducible.  

Proof  Jacobi and Gauss-Seidel Iteration  Jacobi and Gauss-Seidel Iteration  

 

Theorem (Gauss-Seidel Iteration).  The solution to the linear system     can be

obtained starting with   , and using iteration scheme

    

           

where  

           and   .  

If   is carefully chosen a sequence is generated which converges to the

solution  P,  i.e.   .  

A sufficient condition for the method to be applicable is that A is strictly diagonally dominant or

diagonally dominant and irreducible.

Page 5: Jacobi Method- Gauuss.seidelll

Proof  Jacobi and Gauss-Seidel Iteration  Jacobi and Gauss-Seidel Iteration  

 

Computer Programs  Jacobi and Gauss-Seidel Iteration  Jacobi and Gauss-Seidel

Iteration  

Mathematica Subroutine (Jacobi Iteration).

Mathematica Subroutine (Gauss-Seidel Iteration).

Example 1.  Use Jacobi iteration to solve the linear system   .  

Try 10, 20 and 30 iterations.  

Solution 1.

Page 6: Jacobi Method- Gauuss.seidelll

 

Example 2.  Use Jacobi iteration to attempt solving the linear

system   .

Try 10 iterations.  

Observe that something is not working.  In example 5 we will check to see if this matrix is

diagonally dominant.   

Solution 2.

 

Example 3.  Use Gauss-Seidel iteration to solve the linear

system   .  

Try 10, 20 iterations.  Compare the speed of convergence with Jacobi iteration.

Solution 3.

 

Example 4  Use Gauss-Seidel iteration to attempt solving the linear

system   .

Try 10 iterations.  

Observe that something is not working.  In example 5 we will check to see if this matrix is

diagonally dominant.   

Solution 4.

 

 

Warning.  

    Iteration does not always converge.  A sufficient condition for iteration to Jacobi iteration to

Page 7: Jacobi Method- Gauuss.seidelll

converge is that A is strictly diagonally  dominant. The following subroutine will check to see if

a matrix is strictly diagonally dominant.  It should be used before any call to Jacobi iteration or

Gauss-Seidel iteration is made.  There exists a counter-example for which Jacobi iteration

converges and Gauss-Seidel iteration does not converge.  The "true" sufficient condition for

Jacobi iteration to converge is that the "spectral radius" of      is less than 1,

where   is the diagonal of   .  That is, the magnitude of the largest eigenvalue of M must be

less than 1.  This condition seems harsh because numerical computation of eigenvalues is an

advanced topic compared to solution of a linear system.  

Example 5  Test the matrix A of Examples 2 and 4 to see if A is strictly diagonally dominant.

Solution 5.

 

 

More efficient subroutines

    A tolerance can be supplied to either the Jacobi or Gauss-Seidel method which will permit it

to exit the loop if convergence has been achieved.  

 

Computer Programs  Jacobi and Gauss-Seidel Iteration  Jacobi and Gauss-Seidel

Iteration  

Mathematica Subroutine (Jacobi Iteration).

Page 8: Jacobi Method- Gauuss.seidelll

Mathematica Subroutine (Gauss-Seidel Iteration).

Example 6.  Use Jacobi and Gauss-Seidel iteration to solve the linear

system   .  

Use a tolerance of     and a maximum of  50  iterations.

Solution 6.

 

 

Page 9: Jacobi Method- Gauuss.seidelll

Subroutines using matrix commands

    In the Jacobi subroutine we can use fix point iteration as suggested by the theory.  

Mathematica Subroutine (Jacobi Iteration).

Example 7.  Use the fixed point version of Jacobi iteration to solve the linear

system   .  

Solution 7.

 

Research Experience for Undergraduates

Jacobi and Gauss-Seidel Iteration  Jacobi and Gauss-Seidel Iteration  Internet hyperlinks

to web sites and a bibliography of articles.  

 

Download this Mathematica Notebook Jacobi and Gauss-Seidel Iteration

 

Return to Numerical Methods - Numerical Analysis

 

Page 10: Jacobi Method- Gauuss.seidelll

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(c) John H. Mathews 2004