Gauss–Seidel method

Gauss–Seidel method

The Gauss–Seidel method is a technique used to solve a linear system of equations. The method is named after the German mathematicians Carl Friedrich Gauss and Philipp Ludwig von Seidel. The method is an improved version of the Jacobi method. It is defined on matrices with non-zero diagonals, but convergence is only guaranteed if the matrix is either diagonally dominant or symmetric and positive definite.

We seek the solution to a set of linear equations, expressed in matrix terms as

: A x = b.,

The Gauss–Seidel iteration is

: x^{(k+1)} = left( {D + L} ight)^{ - 1} left( b - {U x^{(k)} } ight),

where A=D+L+U; the matrices D, L, and U represent the diagonal, strictly lower triangular, and strictly upper triangular parts of the coefficient matrix A; and k is the iteration count. This matrix expression is mainly used to analyze the method. When implementing Gauss–Seidel, an explicit entry-by-entry approach is used:

: x^{(k+1)}_i = frac{1}{a_{ii left(b_i - sum_{ji}a_{ij}x^{(k)}_j ight),, i=1,2,ldots,n.

Note that the computation of x^{(k+1)}_i uses only those elements of x^{(k+1)}, that have already been computed and only those elements of x^{(k)}, that have yet to be advanced to iteration k+1. This means that no additional storage is required, and the computation can be done in place (x^{(k+1)}, replaces x^{(k)},). While this might seem like a rather minor concern, for large systems it is unlikely that every iteration can be stored. Thus, unlike the Jacobi method, we do not have to do any vector copying should we wish to use only one storage vector. The iteration is generally continued until the changes made by an iteration are below some tolerance.

Algorithm

: Choose an initial approximation x^{0}
: for k := 1 step 1 until convergence do
:: for i := 1 step until n do
::: sigma = 0
::: for j := 1 step until i-1 do
:::: sigma = sigma + a_{ij} x_j^{(k)} ::: end (j-loop)
::: for j := i+1 step until n do
:::: sigma = sigma + a_{ij} x_j^{(k-1)} ::: end (j-loop)
::: x_i^{(k)} = left( {b_i - sigma } ight)} over {a_{ii} :: end (i-loop):: check if convergence is reached: end (k-loop): xapprox x^{(k)}

A particular implementation in C:

while(converge(x) = false){ for(int i = 0; i < n; i++){ var = 0; for(int j = 0; j < m; j++){ if(j != i){ var = var + (a [i] [j] *x [j] ); } } temp [i] = x [i] ; x [i] =(b [i] - var)/a [i] [i] ; } }

ee also

*Jacobi method
*Successive over-relaxation

Convergence

The method will always converge if the matrix "A" is strictly or irreducibly diagonally dominant. Strict row diagonal dominance means that for each row, the absolute value of the diagonal term is greater than the sum of absolute values of other terms:

:left | a_{ii} ight | > sum_{i e j} {left | a_{ij} ight .

The Gauss–Seidel method sometimes converges even if this condition is not satisfied. It is necessary, however, that the diagonal terms in the matrix are greater (in magnitude) than the other terms.

External links

*CFDWiki|name=Gauss-Seidel_method
* [http://www.math-linux.com/spip.php?article48 Gauss–Seidel from www.math-linux.com]
* [http://math.fullerton.edu/mathews/n2003/GaussSeidelMod.html Module for Gauss–Seidel Iteration]
* [http://mathworld.wolfram.com/Gauss-SeidelMethod.html Gauss–Seidel From MathWorld]
* [http://numericalmethods.eng.usf.edu/topics/gauss_seidel.html Gauss–Seidel] From Holistic Numerical Methods Institute


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать реферат

Look at other dictionaries:

  • Gauss-Seidel-Algorithmus — In der numerischen Mathematik ist das Gauß Seidel Verfahren oder Einzelschrittverfahren, (nach Carl Friedrich Gauß und Ludwig Seidel) ein Algorithmus zur näherungsweisen Lösung von linearen Gleichungssystemen. Es ist, wie das Jacobi Verfahren und …   Deutsch Wikipedia

  • Seidel — may refer to: * Seidel (crater), after Philipp Ludwig von Seidel * Seidel Band Instrument Company * Hanns Seidel Foundation, after Hanns Seidel * Gauss–Seidel method, after Philipp Ludwig von Seidel * SidellSeidel is the surname of: * Ed Seidel,… …   Wikipedia

  • Jacobi method — The Jacobi method is an algorithm in linear algebra for determining the solutions of a system of linear equations with largest absolute values in each row and column dominated by the diagonal element. Each diagonal element is solved for, and an… …   Wikipedia

  • List of topics named after Carl Friedrich Gauss — Carl Friedrich Gauss (1777 ndash; 1855) is the eponym of all of the topics listed below. Topics including Gauss *Carl Friedrich Gauss Prize, a mathematics award *Degaussing, to demagnetize an object *Gauss (unit), a unit of magnetic field (B)… …   Wikipedia

  • Relaxation method — In numerical mathematics, the relaxation method is a method for obtaining numerical approximations to the solutions of systems of equations, including certain types of elliptic partial differential equations, in particular Laplace s equation and… …   Wikipedia

  • Iterative method — In computational mathematics, an iterative method is a mathematical procedure that generates a sequence of improving approximate solutions for a class of problems. A specific implementation of an iterative method, including the termination… …   Wikipedia

  • Philipp Ludwig von Seidel — ([fɔn ˈzaɪdəl]; 23 October 1821, Zweibrücken, Germany – 13 August 1896, Munich) was a German mathematician. His mother was Julie Reinhold and his father was Justus Christian Felix Seidel.[1] Lakatos credits von Seidel with discovering, in 1847,… …   Wikipedia

  • Gauß-Seidel-Verfahren — In der numerischen Mathematik ist das Gauß Seidel Verfahren oder Einzelschrittverfahren, (nach Carl Friedrich Gauß und Ludwig Seidel) ein Algorithmus zur näherungsweisen Lösung von linearen Gleichungssystemen. Es ist, wie das Jacobi Verfahren und …   Deutsch Wikipedia

  • Multigrid method — Multigrid (MG) methods in numerical analysis are a group of algorithms for solving differential equations using a hierarchy of discretizations. They are an example of a class of techniques called multiresolution methods, very useful in (but not… …   Wikipedia

  • Durand–Kerner method — In numerical analysis, the Durand–Kerner method established 1960–66 and named after E. Durand and Immo Kerner, also called the method of Weierstrass, established 1859–91 and named after Karl Weierstrass, is a root finding algorithm for… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”