next up previous
Next: 7. Interpolación Up: 6.2 Métodos iterativos Previous: 6.2.3 Método de Jacobi

6.2.4 Método de Gauss-Seidel

La iteración de Gauss-Seidel se define al tomar Q como la parte triangular inferior de A incluyendo los elementos de la diagonal:

\begin{displaymath}Q=
\left(
\begin{array}{ccccc}
a_{11} & 0 & 0 & \cdots & 0 ...
...a_{n1} & a_{n2} & a_{n3} & \cdots & a_{nn}
\end{array}\right)
\end{displaymath}

Si, como en el caso anterior, definimos la matriz R=A-Q

\begin{displaymath}R=
\left(
\begin{array}{ccccc}
0 & a_{12} & a_{13} & \cdots...
...dots & \vdots \\
0 & 0 & 0 & \cdots & 0
\end{array} \right)
\end{displaymath}

y la ecuación (63) se puede escribir en la forma:

Qx(k) = -Rx(k-1) + b

Un elemento cualquiera, i, del vector Qx(k) vendrá dado por la ecuación:

\begin{displaymath}\sum_{j=1}^{n} a_{ij}x_{j}^{(k)} = -\sum_{j=1}^{n} a_{ij}x_{j}^{(k-1)}
+ b_{i}
\end{displaymath}

Si tenemos en cuenta la peculiar forma de las matrices Q y R, resulta que todos los sumandos para los que j > i en la parte izquierda son nulos, mientras que en la parte derecha son nulos todos los sumandos para los que $j \leq i$. Podemos escribir entonces:
$\displaystyle \sum_{j=1}^{i} a_{ij}x_{j}^{(k)}$ = $\displaystyle -\sum_{j=i+1}^{n}
a_{ij}x_{j}^{(k-1)}
+ b_{i}$  
$\displaystyle a_{ii}x_{i}^{(k)} + \sum_{j=1}^{i-1} a_{ij}x_{j}^{(k)}$ = $\displaystyle -\sum_{j=i+1}^{n}
a_{ij}x_{j}^{(k-1)}
+ b_{i}$  

de donde despejando xi(k), obtenemos:

\begin{displaymath}x_{i}^{(k)} = \left( b_{i} - \sum_{j=1}^{i-1} a_{ij}x_{j}^{(k)} -
\sum_{j=i+1}^{n} a_{ij}x_{j}^{(k-1)} \right) / a_{ii}
\end{displaymath}

Obsérvese que en el método de Gauss-Seidel los valores actualizados de xi sustituyen de inmediato a los valores anteriores, mientras que en el método de Jacobi todas las componentes nuevas del vector se calculan antes de llevar a cabo la sustitución. Por contra, en el método de Gauss-Seidel los cálculos deben llevarse a cabo por orden, ya que el nuevo valor xi depende de los valores actualizados de x1, x2, ..., xi-1.

En la figura (15) se incluye un algoritmo para la iteración de Gauss-Seidel.


  
Figure: Algoritmo para la iteración de Gauss-Seidel.
\begin{figure}
\begin{center}
\begin{tabular}{\vert l\vert}
\hline \\
~~~~~...
...($x_{j}$ ) \\
~ \\
\hline
\end{tabular} \end{center}
\protect\end{figure}


next up previous
Next: 7. Interpolación Up: 6.2 Métodos iterativos Previous: 6.2.3 Método de Jacobi
Wladimiro Diaz Villanueva
1998-05-11