Вы находитесь на странице: 1из 35

Instituto Tecnológico de Costa Rica

CM 3201 Métodos Numéricos

Método de Gauss-Seidel

Ing. Marvin Hernández

II Semestre 2008
ÍNDICE

 Introducción
 Descripción del Criterio de Convergencia
 Errores
 Ejemplo 1
 Ejemplo 2
 Ejemplo 3
 Ejemplo 4
 Bibliografía
Introducción
 Este método se basa en la aproximación iterativa
propuesta por Seidel en 1874 en la Academia de
Ciencias de Munich, para la aplicación al problema
del flujo de potencia.
La ecuación anterior es el corazón del
algoritmo iterativo. La iteración comienza
con una estimación de las magnitudes y
ángulos de todas las barras del sistema, y
se van recalculando las tensiones utilizando
los mejores valores disponibles. Esto es,
para calcular la tensión Vk se utilizan los
V1...k-1 ya actualizados, y los Vk...n del
paso anterior. El método tiene una
convergencia extremadamente lenta pero
segura (excepto para problemas mal
condicionados, o sin convergencia posible).
 El método de Gauss-Seidel pertenece a la
familia de los métodos iterativos utilizados
para obtener la o las raíces de una función
cualquiera, especialmente en forma de
matrices de n ecuaciones [A]{X}={B}
 Si los elementos de la diagonal de la matriz que se está solucionando no son todos
cero la 1era se resuelve para x1, la 2da para x2 y la tercera para x3, y la enésima para
xn para obtener:

X1= ( b1 – a12x2 – a13x3 ) / a11

X2 = ( b2 – a21x1 – a23x3 ) / a22

X3 = ( b3 – a31x1 – a32x2 ) / a33


.
.
.
Xn = ( bn – an1x1 - …- ann-1xn-1 ) / ann
Teorema
 Considerar un sistema de n ecuaciones
con n incógnitas, es decir, se tiene una
matriz de coeficientes A cuadrada. Si el
valor absoluto del elemento de la diagonal
de cada renglón de A es más grande que
la suma de los valores absolutos de los
otros elementos de tal renglón entonces el
sistema tiene una solución única. El
método iterativo de Gauss-Seidel
convergerá a la solución sin importar los
valores iniciales.
 Así es como empieza el proceso iterativo
suponiendo que los valores iniciales de x
son cero. Luego al obtener el primer x1 se
evalúa en (2) junto con el valor previo de
x3 y de igual forma se procede en (3) con
el x2 calculado y el x1 previo, para
finalmente volver a (1) bajo la misma
fórmula, haciendo converger el sistema.

<< ÍNDICE
Criterio de Convergencia
Este criterio no solo se aplica a las ecuaciones lineales que se resuelven
con el método de Gauss-Seidel sino también para el método iterativo del
punto fijo y el método de Jacobi . Por tanto, al aplicar este criterio sobre
las ecuaciones de Gauss-Seidel y evaluando con respecto a cada una de
las incógnitas, obtenemos la expresión siguiente:

a 21 a12
1 1
a 22 a11

El valor absoluto de las pendientes en la ecuación, debe ser menor que la


unidad para asegurar la convergencia.

a22  a21 a11  a12

Es decir, el elemento diagonal debe ser mayor que el elemento fuera de la


diagonal para cada reglón de ecuaciones. La generalización del criterio
anterior para un sistema de n ecuaciones es:
n
aii   ai , j
j 1
j i
Ejemplos de convergencia
Iteraciones utilizando las siguientes ecuaciones sin
ordenar
Divergencia Seidel
X1 X2
u : 11x1  13x2  286
0.00
26.00
0.00
0.00
v : 11x1  9 x2  99
26.00 20.78
1.44 20.78 Divergencia Seidel
1.44 -9.23 70

36.91 -9.23 60

36.91 34.12 50

-14.32 34.12 40

-14.32 -28.50 30

59.68 -28.50 20
X2

59.68 61.95 10

-47.21 61.95 0
-20 -10 0 10 20 30 40 50 60 70
-47.21 -68.70 -10

107.19 -68.70 -20

107.19 120.01 -30

-115.83 120.01 -40


X1
-115.83 -152.57
Ejemplos de convergencia
Iteraciones utilizando previamente el criterio de
diagonal dominante
Convergencia Seidel
X1 X2 v : 11x1  9 x2  99
0.00 0.00
9.00 0.00 u : 11x1  13x2  286
9.00 14.38
20.77 14.38
20.77 4.43 Convergencia Seidel
12.62 4.43 16

12.62 11.32 14
18.26 11.32
12
18.26 6.55
14.36 6.55 10
14.36 9.85
X2

8
17.06 9.85
17.06 7.56 6
15.19 7.56
4
15.19 9.15
16.48 9.15 2

16.48 8.05
0
15.59 8.05 0 5 10 15 20 25
X1
15.59 8.81
En Resumen
El método de Gauss-Seidel está basado en el concepto
de punto fijo, es decir ( xi = gi (x), i = 1.. n), para resolver
sistemas de ecuaciones lineales.

Para garantizar la convergencia se debe de cumplir que


el sistema tenga una diagonal dominante, es decir que se
cumpla la desigualdad dada abajo; si se cambia el orden
de las ecuaciones puede haber divergencia.

n
aii   aij
i1
j i
En Resumen
Además, se destaca que para mejorar la convergencia,
se usan técnicas como:

Utilización de los cálculos previos asumiendo una


mejor aproximación que el vector de condiciones
iniciales. ( Gauss-Seidel ).

Un factor de ponderación para reducir el error


residual ( Relajación )

<< ÍNDICE
Errores de Gauss- Seidel
 Ventajas?
• Espacio: convenientes para matrices cuadradas

• Tiempo: menor número de operaciones

 Desventajas?
• Velocidad: convergencia lenta
• Convergencia: no siempre se obtiene la solución en un
número finito de pasos
Análisis de error

1 1
ek 1  B Cek  B C ek
1 2 1 k 1
ek 1  B C ek 1    B C e0
condición suficiente de convergenc ia :
1
B C 1
EJEMPLO #1
► Resolverel siguiente sistema de ecuación
por el método Gauss-Seidel utilizando un
E= 0.001.

0.1 X1 + 7.0 X2 - 0.3 X3 = -19.30


3.0 X1 - 0.1 X2 - 0.2 X3 = 7.85
0.3 X1 - 0.2 X2 - 10.0 X3 = 71.40

<< ÍNDICE
► SOLUCIÓN:

Primero ordenamos las ecuaciones, de modo


que en la diagonal principal estén los
coeficientes mayores para asegurar la
convergencia.

► 3.0 X1 - 0.1 X2 - 0.2 X3 = 7.85


► 0.1 X1 + 7.0 X2 - 0.3 X3 = -19.30
► 0.3 X1 - 0.2 X2 - 10.0 X3 = 71.40
►Despejamos cada una de las variables
sobre la diagonal:
► Suponemos los valores iniciales X2 = 0 y X3
= 0 y calculamos X1

► Este valor junto con el de X3 se puede


utilizar para obtener X2
► Laprimera iteración se completa
sustituyendo los valores de X1 y X2
calculados obteniendo:

► Enla segunda iteración, se repite el mismo


procedimiento:
►Comparando los valores calculados entre la primera
y la segunda iteración
Como podemos observar, no se cumple la
condición

► Entonces tomamos los valores calculados en


la última iteración y se toman como
supuestos para la siguiente iteración. Se
repite entonces el proceso:
► Comparando de nuevo los valores obtenidos

► Como se observa todavía no se cumple la


condición
► Así que hacemos otra iteración

► Comparando los valores obtenidos


► Dado que se cumple la condición, el
resultado es:

X1 = 3.0
X2 = -2.5
X3 = 7.0
EJEMPLO #2
► Usar el método de Gauss-Seidel para aproximar la solución
del sistema:

(1)

(2)

(3)

► hasta que:
a  1%
► Solución
► Primerodespejamos las incógnitas x1, x2 y x3 de
las ecuaciones 1, 2 y 3. Así tenemos:

► Estasson nuestro juego de fórmulas iterativas.


Comenzamos iteraciones, sustituyendo x1=x2=0 en
la 1ra ecuación, para calcular el 1er valor de x1:
► Ahora,sustituimos x1=2.66667 y x3=0 en la
segunda ecuación, para obtener x2 :

► Ahora sustituimos x1=2.66667 y


x2=-2.82381 en la tercera ecuación, para
obtener x3:

► Así, tenemos nuestra primera aproximación


a la solución del sistema:

x1=2.66667, x2=-2.82381, x3=7.1051


► Puesto que todavía no podemos calcular
ningún error aproximado, repetimos el
proceso pero ahora con los últimos datos
obtenidos para las incógnitas:

► Sustituyendo x2=-2.82381 y x3=7.1051 en


la ecuación 1 obtenemos x1=3.6626.
Sustituyendo x1=3.6626 y x3=7.1051 en la
ecuación 2 obtenemos x2=-3.24404,
finalmente, sustituyendo x1=3.6626 y x2=-
3.24404 en la ecuación 3 obtenemos
x3=7.06106.
► Así, tenemos la 2da lista de valores de
aproximación a la solución del sistema:

► Ahora si podemos calcular los errores


absolutos para las incógnitas. Tenemos:
► Puesto que no se ha logrado el objetivo, se
repite el mismo proceso con los últimos valores
obtenidos de cada una de las incógnitas. Note
que aunque el error aproximado  ya cumple
a ,3

con ser menor al 1%, esto se debe de cumplir


para los tres errores aproximados!
► Por lo tanto repetimos el mismo proceso.
Omitiendo los pasos intermedios, obtenemos:
►Y en este caso tenemos los siguientes errores
aproximados:

► Vemos que ahora sí se ha cumplido el


objetivo para cada uno de los errores
aproximados. Por lo tanto, concluimos que la
solución aproximada es:

X1=3.62724, X2=-3.24102, X3=7.06250


EJEMPLO #4

► Programa en MatLab 6.5

<< ÍNDICE
Bibliografía
 Steven Chapra, Raymond Canale. “Métodos
numéricos para ingenieros”, cuarta edición, 2003.
pp 301-313, 320-321, 344-346.
 The Jacobi Method, marzo 2004. (disponible en
http:/www.netlib2.cs.utk.edu/linalg/html_templat
es/node12.html)
 The Gauss_Seidel Method, marzo 2004.
(disponible en
http:/www.netlib2.cs.utk.edu/linalg/html_templat
es/node14.html)
 The Successive Overrelaxation Method, marzo
2004. (disponible en
http:/www.netlib2.cs.utk.edu/linalg/html_templat
es/node15.html)

Вам также может понравиться