Está en la página 1de 71

Capitulo III

ECUACIONES
ALGEBRAICAS LINEALES
Prof.: Ma. Angélica Acosta Pérez
2013 - 1
Una Ecuación Algebraica Lineal es aquella en
donde en cada término de la ecuación aparece
únicamente una variable o incógnita elevada a la
primera potencia. Por ejemplo:




Es una ecuación algebraica lineal en las
variables X
1
, X
2
, X
3
, ... , X
n
. Se admite que los
coeficientes a
11
, a
12
, a
13
, ... , a
1n
y el término
independiente C
1
, son constantes reales.
1 n 1n 3 13 2 12 1 11
C = X a + ... + X a + X a + X a
Un Sistema De Ecuaciones Lineales Algebraicas es un
conjunto de ecuaciones que deben resolverse
simultáneamente. En lo sucesivo se considerarán
únicamente sistemas de ecuaciones algebraicas lineales, o
sea conjuntos de ecuaciones de la forma:




3.2. MATRICES
Una matriz consiste en un arreglo rectangular de
elementos representado por un solo símbolo.




Las matrices cuadradas son en particular
importantes cuando se resuelven conjuntos de
ecuaciones lineales simultáneas.
3.3. OPERACIONES CON
MATRICES
Dos matrices n por m son iguales si, y sólo si, cada
elemento en la primera es igual a cada elemento de la
segunda; esto es [A] = [B] si a
ij
= b
ij
para toda i y j.

La suma de dos matrices por ejemplo [A] y [B], se
lleva a cabo al sumar términos correspondientes en
cada matriz. Los elementos de la matriz resultante [C]
son calculados,
c
ij
= a
ij
+ b
ij


Para i = 1, 2, 3, …,n y j = 1, 2, 3, …m.

Para i = 1, 2, 3, …,n y j = 1, 2, 3, …m. De las
definiciones anteriores se concluye directamente
que la suma y la resta sólo puede ser realizada
entre matrices que tengan las mismas
dimensiones.
Ambas, sumas y resta son conmutativas:

[A] + [B] = [B] + [A]

La suma y resta son también asociativas, es decir

[E] – [F] = - [F] + [E]
La multiplicación de una matriz [A] por un escalar
g se obtiene de multiplicar cada elemento de [A]
por g, como en
El producto de dos matrices se representa como
[C] = [A][B] donde los elementos de [C]



Donde n = a la dimensión columna de [A] y la
dimensión del renglón [B]. Es decir, el elemento c
ij

se obtiene al sumar el producto de elementos
individuales del i–ésimo renglón de la primera
matriz, en este caso [A] por la j-ésima columna de
la segunda matriz.

¿
=
=
n
k
kj ik ij
b a C
1
3.4. REPRESENTACIÓN DE ECUACIONES
ALGEBRAICAS LINEALES EN FORMA
MATRICIAL
Debe quedar claro que las matrices proporcionan una
notación concisa para representar ecuaciones lineales
simultáneas. Estas pueden expresarse como:

Una manera formal para obtener la solución usando
álgebra matricial es multiplicando cada lado de la ecuación
por la inversa de [A] para obtener
Algunas veces encontraremos útil aumentar [A] con {B} por
ejemplo si n = 3, esta resulta en una matriz dimensional de
3 por 4:





Expresar las ecuaciones de esta forma es de utilidad, ya
que algunas de las técnicas para resolver sistemas lineales
se realizan con operaciones idénticas sobre un renglón de
coeficientes y las constantes correspondientes del lado
derecho.
3.5. ELIMINACIÓN DE GAUSS -
SIMPLE
Por este método son analizadas las ecuaciones
algebraicas lineales simultáneas que en general
se pueden representar como
Donde las a son
coeficientes constantes
y las b son constantes.
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}

 Resolución de pequeños conjuntos de
ecuaciones
• Método gráfico: se obtiene de una solución
gráfica de dos ecuaciones al graficarlas en
coordenadas cartesianas con un eje
correspondiente a x
1
y el otro a x
2
.
• Determinantes y la regla de Cramer: esta regla que
funciona bien para un grupo pequeño de ecuaciones.
Esta regla establece que cada incógnita en un sistema
de ecuaciones lineales algebraica puede ser expresadas
como una fracción de los determinantes con
denominador D y con el numerador obtenido a partir de D
al reemplazar la columna de coeficientes de la incógnita
en cuestión por las constantes b
1
, b
2
, …, b
n
, por ejemplo
x
1
se puede calcular como,
• Eliminación de incógnitas: es mediante la
combinación de ecuaciones, esto se puede representar
por un conjunto de dos ecuaciones





La estratégica básica es multiplicar las ecuaciones por
constantes, de tal forma que se elimine una de las
incógnitas cuando se combinan las dos ecuaciones.
La técnica de eliminación de Gauss se puede
extender a grandes sistemas de ecuaciones
desarrollando un esquema sistemático o
algorítmico para eliminar incógnitas y sustituir
hacia atrás. La eliminación de Gauss es lo básico
de estos esquemas.

Eliminación hacia adelante de incógnitas:
• Paso inicial será el de eliminar la primera
incógnita x
1
, desde la segunda hasta la n – ésima
ecuación.
Procedimiento:
Multiplicar la ecuación por a
21
/a
11


Se obtiene



Restando esta ecuación con

1 n 1n 3 13 2 12 1 11
b = X a + ... + X a + X a + X a
2 n 2n 3 23 2 22 1 21
b = X a + ... + X a + X a + X a
Quedando la siguiente ecuación



O



Donde el súper índice indica que los elementos han
cambiado sus valores originales. Este procedimiento se
repite para las ecuaciones restantes.
Por ejemplo si multiplicamos la ecuación



Por a
31
/a
11
y el resultado se le resta a la tercera ecuación.
Se repite el procedimiento para las ecuaciones restantes y
da como resultado el siguiente sistema modificado:

1 n 1n 3 13 2 12 1 11
b = X a + ... + X a + X a + X a
Para la ecuación anterior es llamada la ecuación pivote y
a
11
es llamado el coeficiente pivote o elemento. Algunas
veces la operación de división es referida como
normalización. Se hace esta distinción porque un elemento
pivote cero puede interferir con la normalización al causar
una división entre cero.

El procedimiento se puede continuar usando las
ecuaciones pivotes restantes, el procedimiento final es la
secuencia es el uso de la (n-1) – ésima ecuación para
eliminar el termino X
n-1
de la n-ésima ecuación. En este
punto el sistema se transformará en un sistema triangular
superior
El ciclo externo mueve hacia abajo la matriz del renglón
pivote al siguiente. El ciclo intermedio mueve hacia abajo
el renglón pivote para cada renglón subsecuente, es aquí
donde ocurre la eliminación. Finalmente, el ciclo más
interno avanza por las columnas para eliminar o
transformar los elementos de un renglón particular.
• Sustitución hacia atrás: la ecuación ahora puede
resolverse para x
n





Este resultado se puede sustituir hacia atrás en la (n-1) –
ésima ecuación y resolverse para x
n-1
. El procedimiento, el
cual se repite para evaluar las x restantes, se puede
representar mediante la fórmula:

3.6. DESVENTAJAS DE LOS
MÉTODOS DE ELIMINACIÓN
1. División entre cero
– Durante las fases de eliminación y sustitución es posible que ocurra
división entre cero







• También se pueden presentar problemas cuando el coeficiente es
muy cercano a cero
• Para evitar estos problemas se utiliza una técnica de pivoteo
5 6 2
3 7 6 4
8 3 2
3 2 1
3 2 1
3 2
= + +
÷ = + +
= +
x x x
x x x
x x
La normalización de la primera fila involucra
una división entre cero, a
11
= 0
2. Errores de redondeo
– Debido a que las computadoras manejan sólo un número
limitado de cifras significativas, pueden ocurrir errores de
redondeo y se deben considerar al evaluar los resultados
– Estos errores pueden ser importantes para sistemas con un
gran número de ecuaciones
– Debido a que cada resultado depende del anterior, el error de
los primeros pasos tiende a propagarse
– Una regla general es la de suponer que los errores de redondeo
son importantes cuando n ≥ 100
– Siempre se debe sustituir los resultados en las ecuaciones
originales y verificar si ha ocurrido un error sustancial
3. Sistemas mal condicionados
– Sistemas bien condicionados son aquellos en los que un
pequeño cambio en uno o más coeficientes provoca un
pequeño cambio en la solución
– Sistemas mal condicionados son aquellos en donde pequeños
cambios en los coeficientes generan grandes cambios en la
solución
• Es decir un amplio rango de soluciones puede satisfacer
las ecuaciones en forma aproximada
– Los errores de redondeo pueden inducir pequeños cambios en
los coeficientes, si el sistema está mal condicionado estos
cambios artificiales pueden generar grandes errores en la
solución
3. Sistemas mal condicionados
– Ejemplo



Cambiando a
21
de 1.1 a 1.05

sustituyendo en las ecuaciones originales
0 1 2 3 4 5 6 7 8 9 10
0
1
2
3
4
5
x
26/5-11/20 x
f
(
x
)
x+2*y=10
1.1*x+2*y=10.4
4 . 10 2 1 . 1
10 2
2 1
2 1
= +
= +
x x
x x
3
4
2
1
=
=
x
x
Solución
1
8
2
1
=
=
x
x
Solución
8 . 10 2 8 * 1 . 1
10 2 8
= +
= +
3. Sistemas mal condicionados
– Esta situación se puede caracterizar de forma matemática, escribiendo
las ecuaciones en su forma general


– Arreglando las ecuaciones en un formato de líneas rectas




– Si las pendientes son casi iguales
2 2 22 1 21
1 2 12 1 11
b x a x a
b x a x a
= +
= +
22
2
1
22
21
2
12
1
1
12
11
2
a
b
x
a
a
x
a
b
x
a
a
x
+ ÷ =
+ ÷ =
0
21 12 22 11 21 12 22 11
22
21
12
11
~ ÷ ¬ ~ ¬ ~ a a a a a a a a
a
a
a
a
Un sistema mal condicionado es
aquel en el cual su determinante es
cercano a cero

Si el determinante es exactamente
cero, las pendientes son idénticas, y
el sistema no tiene solución o hay
un número infinito de soluciones
4. Sistemas singulares
– Son aquellos donde dos o más ecuaciones son iguales
– En el caso donde dos ecuaciones son iguales se pierde un
grado de libertad siendo imposible resolver el problema de n-1
ecuaciones con n incógnitas
– Tales casos podrían no ser obvios cuando se trabaja con
grandes conjuntos de ecuaciones
– Se hace necesario tener una forma que de manera automática
detecte la singularidad del sistema
– Esto se logra debido al hecho de que el determinante de un
sistema singular es cero
– Durante el proceso de eliminación se chequea si un elemento
de la diagonal es cero, al descubrir uno se puede terminar
inmediatamente y generar una excepción o mensaje de error


Técnicas para mejorar las soluciones del
método de eliminación de Gauss
1. Uso de más cifras significativas
– La solución más simple para el mal condicionamiento es usar más
cifras significativas en los cálculos
– El uso de la precisión expandida tiene un precio que se eleva en
forma de tiempo de cálculo y cantidad de memoria

2. Pivoteo
– Ocurren problemas de división por cero cuando el coeficiente pivote
es cero
– Cuando el coeficiente pivote es cercano a cero se pueden introducir
errores de redondeo, porque su magnitud puede ser muy pequeña al
compararla con la de los demás coeficientes
– Para evitar esto se utiliza el pivoteo parcial


Pivoteo parcial

• Antes de normalizar cada fila, se determina el mayor
coeficiente pivote disponible en la columna que está por
debajo del elemento pivote

• Las filas se intercambian de manera tal que el
coeficiente más grande sea el pivote

Ventajas del pivoteo parcial

• Evita la división entre cero
• Minimiza el error de redondeo
Pivoteo parcial
• Ejemplo
0000 . 1 0000 . 1 0000 . 1
0001 . 2 0000 . 3 0003 . 0
2 1
2 1
= +
= +
x x
x x
Problema original
a
11
es cercano a cero
( )
6667 0000 . 10
0001 . 2 0000 . 3 0003 . 0
0003 . 0
1
2 1
2 1
= +
= +
x x
x x
Restando a la 2da ecuación
0.3333886 =
|
.
|

\
|
÷
= =
÷ = ÷
0003 . 0
3
2
3 0001 . 2
;
3
2
6666 9999
1 2
2
x x
x
0001 . 2 0000 . 3 0003 . 0
0000 . 1 0000 . 1 0000 . 1
2 1
2 1
= +
= +
x x
x x
Con pivoteo
( )
0003 . 0 0003 . 0 0003 . 0
1
1
0003 . 0
2 1
2 1
= +
= +
x x
x x
Restando a la 2da ecuación
0.3333334
1
3
2
1
;
3
2
9998 . 1 9997 . 2
1 2
2
=
|
.
|

\
|
÷
= =
=
x x
x
Se restan dos
números casi iguales
Seudo código para implementar el
pivoteo parcial
• Se puede usar como una
subrutina que podría ser llamada
directamente después del inicio
del primer ciclo de eliminación
• Aquí se intercambian de forma
física las filas. Para grandes
matrices esto puede consumir
mucho tiempo
• Lo que se hace es no intercambiar
las filas sino que se guarda el
orden de los pivotes en un vector,
y según este orden se llevan a
cabo las operaciones de
eliminación y sustitución
SUB pivot(a, b, n, k)
p = k
big = abs(a
k,k
)
DO ii = k+1, n
dummy = abs(a
ii,k
)
IF (dummy > big)
big = dummy
p = ii
END IF
END DO
IF (p ≠ k)
DO jj = k, n
dummy = a
p,jj

a
p,jj
= a
k,jj
a
k,jj
= dummy
END DO
dummy = b
p
b
p
= b
k
b
k
= dummy
END IF
Escalamiento
• El escalamiento revela si el pivoteo es necesario
• Si es necesario, se pivotea pero se retienen los coeficientes
originales de la ecuación escalada
• El escalamiento se usa para calcular los valores escalados de los
coeficientes que servirán como un criterio de pivoteo
Ejemplo
2
100000 100000 2
2 1
2 1
= +
= +
x x
x x
2
1 1 00002 . 0
2 1
2 1
= +
= +
x x
x x
100000 100000 2
2
2 1
2 1
= +
= +
x x
x x
Problema original
0 ; 1
2 1
= = x x
Escalando y pivoteando
Escalamiento como criterio
de pivoteo
Manteniendo coeficientes
originales
1 ; 1
2 1
= = x x 1 ; 1
2 1
= = x x
3.7. MÉTODO DE GAUSS – JORDAN
Este método es una variación de la eliminación de
Gauss. La principal diferencia consiste en que
cuando una incógnita se elimina en el método de
Gauss – Jordan, esta es eliminada de todas las
otras ecuaciones en lugar de hacerlo sólo en las
subsecuentes. Además todos los renglones se
normalizan al dividirlos entre su elemento pivote.
De esta forma, el paso de eliminación genera una
matriz identidad en vez de una triangular.
Para una fácil utilización puede usarse una estrategia similar de
pivoteo para evitar divisiones entre cero y reducir el error de
redondeo. Aunque la técnica de Gauss – Jordan y la eliminación
de Gauss pueden parecer casi idénticas la primera requiere más
trabajo. La siguiente expresión ayuda a determinar que el
número FLOP de multiplicación/división involucrado en un
método Gauss – Jordan simple es:




Este método requiere de aproximadamente 50% menos
operaciones que el de eliminación gaussiana. Por lo tanto la
eliminación de Gauss es el método mas simple preferido para
obtener soluciones para ecuaciones algebraicas simples.
Ejemplo:

16 3 5
6 2 2 3
5 3 2
= ÷ ÷
= + ÷
= ÷ +
z y x
z y x
z y x
|
|
|
.
|

\
|
16
6
5

1 - 3 - 5
2 2 - 3
3 - 1 2
La matriz aumentada del sistema es:

Para resolver el sistema por el método de Gauss – Jordan, debe llevarse la
matriz a la forma escalonada reducida haciendo operaciones entre filas o
columnas. Al observar la matriz se determina que el mejor paso para
obtener el 1 en la primera fila es Obtenemos la matriz:
1 1
2
1
F F ÷
|
|
|
.
|

\
|
16
6
5

1 - 3 - 5
2 2 - 3
3 - 1 2
1 1
2
1
F F ÷
~
|
|
|
.
|

\
|
16
6
5/2

1 - 3 - 5
2 2 - 3
3/2 - 1/2 1


|
|
|
.
|

\
|
16
6
5/2

1 - 3 - 5
2 2 - 3
3/2 - 1/2 1
1 3 3
1 2 2
5
3
F F F
F F F
÷ ÷
÷ ÷
~
|
|
|
.
|

\
|
7/2
3/2 -
5/2

13/2 11/2 - 0
13/2 7/2 - 0
3/2 - 1/2 1
2 2
) 7 / 2 ( F F ÷ ÷
~
|
|
|
.
|

\
|
7/2
3/7
5/2

13/2 11/2 - 0
13/7 - 1 0
3/2 - 1/2 1
2 3 3
) 2 / 11 ( F F F + ÷
~
|
|
|
.
|

\
|
41/7
3/7
5/2

26/7 - 0 0
13/7 - 1 0
3/2 - 1/2 1


3 3
) 26 / 7 ( F F ÷ ÷
~
|
|
|
.
|

\
|
41/26 -
3/7
5/2

1 0 0
13/7 - 1 0
3/2 - 1/2 1

En este punto de la resolución se ha obtenido los 1
principales de cada fila, que tienen a su izquierda y debajo
ceros. Comenzando con la última fila no nula, avanzar hacia
arriba: para cada fila obtener un 1 e introducir ceros arriba de
éste, aplicando las operaciones necesarias para conseguirlo.
|
|
|
.
|

\
|
41/26 -
3/7
5/2

1 0 0
13/7 - 1 0
3/2 - 1/2 1
3 2 2
) 7 / 13 ( F F F + ÷
~
|
|
|
.
|

\
|
41/26 -
5/2 -
5/2

1 0 0
0 1 0
3/2 - 1/2 1

3 1 1
) 2 / 3 ( F F F + ÷
~
|
|
|
.
|

\
|
41/26 -
5/2 -
7/52

1 0 0
0 1 0
0 1/2 1
2 1 1
) 2 / 1 ( F F F ÷ ÷
~
|
|
|
.
|

\
|
41/26 -
5/2 -
18/13

1 0 0
0 1 0
0 0 1

La solución del sistema es por lo tanto:
13 / 18 = x
2 / 5 ÷ = y
26 / 41 ÷ = z
3.8. DESCOMPOSICIÓN LU E
INVERSIÓN DE MATRICES
• Se tratará una clase de métodos de eliminación llamada técnica de
descomposición de matrices LU.
• Además la descomposición LU proporciona un medio eficiente para
calcular la matriz inversa.
• La matriz inversa ofrece un medio para evaluar la condición de un
sistema.
• Es un método directo para resolver sistemas de ecuaciones de la forma
[A] {X}= {B}
• El principal recurso es que el paso de la eliminación, que toma mucho
tiempo, se puede formular de tal manera que solo involucre operaciones
con la matriz de coeficientes [A].
• Muestra cómo el método de eliminación de Gauss se implementa como
una descomposición LU.
• Una ventaja de este método es que proporciona un medio eficiente para
evaluar diversos vectores del lado derecho.


Pasos en la descomposición LU
PROCEDIMIENTO
1. Paso de descomposición LU: [A] se factoriza o
“descompone” en las matrices triangular inferior [L] y
superior [U].

2. Paso de sustitución: [L] y [U] determinan una solución
{X} para un lado derecho {B}.

• De acuerdo a la Ecuación [L]{D}={B} genera un vector
{D} mediante sustitución hacia delante.

• El resultado se sustituye en la Ec. [U]{X}={D} mediante
sustitución hacia atrás para X.


DESCOMPOSICIÓN CROUT
• Utiliza una matriz [U] con números 1 sobre
la diagonal.

• Genera [U] y [L] barriendo las columnas y
los renglones de la matriz.

FÓRMULAS PARA DESCOMPOSICIÓN CROUT
MATRIZ INVERSA
• Si una matriz [A] es cuadrada, existe otra
matriz [A]
-1
, conocida como la inversa de
[A], en donde:

[A][A]
-1
= [A]
-1
[A] = [I]

• En esta sección se estudiará como
calcular la inversa por medio del algoritmo
de descomposición LU.
PROCEDIMIENTO
Se efectúa sustitución hacia delante para calcular la
primera columna de la matriz inversa, utilizando un vector
unitario (el número 1 en el primer reglón) como el vector
del lado derecho.


De lo anterior se obtiene {D}
T
, este vector se
utilizará como el lado derecho en la siguiente
ecuación:






Donde se obtiene por sustitución hacia atrás {X}
T
,
estos valores serán la primera columna de la
matriz inversa.
• Para calcular la segunda columna se formula la
siguiente ecuación:





• De esta forma se obtiene {D}, y los resultados
se usan para calcular {X}
T
, que es la segunda
columna de la inversa.
• Para el cálculo de la tercera columna se
realiza de igual manera que las anteriores
empleando {B}
T
= [O,O,1], para obtener
{X}
T
.


• Finalmente la validez del resultado se
comprueba al verificar que

[A][A]
-1
= [I]
3.9. MATRICES ESPECIALES Y EL
MÉTODO DE GAUSS – SEIDEL
Matrices especiales
• Matrices banda
• Matrices simétricas

• Una matriz banda es una matriz cuadrada en la que todos sus
elementos son cero, con excepción de una banda centrada sobre la
diagonal principal
Las dimensiones de un sistema de banda se
pueden cuantificar con dos parámetros:

• Ancho de banda, BW
• Ancho de media banda, HBW

Estos se relacionan por BW = 2HBW + 1

En general un sistema de banda es aquel
para el cual a
ij
= 0 si |i – j| > HBW
HBW
HBW+1
BW
• La eliminación de Gauss o la descomposición LU
pueden emplearse para resolver sistemas de banda,
pero si el pivoteo no es necesario resultan ineficientes,
porque se utilizaría tiempo y espacio innecesario en el
almacenamiento y manejo de ceros

• Si se sabe de antemano que el pivoteo es innecesario,
se pueden desarrollar algoritmos muy eficientes que no
involucren los elementos cero fuera de la banda
Sistemas tridiagonales
• Un sistema tridiagonal (ancho de banda = 3) se puede expresar
como





• Se cambia la notación
– a  e, f, g
– b  r
para evitar guardar ceros, ahorrando espacio
¦
¦
¦
)
¦
¦
¦
`
¹
¦
¦
¦
¹
¦
¦
¦
´
¦
=
¦
¦
¦
)
¦
¦
¦
`
¹
¦
¦
¦
¹
¦
¦
¦
´
¦
(
(
(
(
(
(
¸
(

¸

÷ ÷ ÷ ÷ ÷
n
n
n
n
n n
n n n
r
r
r
r
r
x
x
x
x
x
f e
g f e
g f e
g f e
g f
1
3
2
1
1
3
2
1
1 1 1
3 3 3
2 2 2
1 1
Algoritmo de Thomas
(TDMA, tridiagonal matrix algorithm)
• El algoritmo consiste en tres pasos:

1. Descomposición
2. Sustitución hacia delante
3. Sustitución hacia atrás

• Manteniendo todas las ventajas de la descomposición
LU

Seudo código para algoritmo de Thomas
a) Descomposición
DO k = 2, n
e
k
= e
k
/f
k-1
f
k
= f
k
- e
k
*g
k-1
END DO

b) Sustitución hacia adelante
DO k = 2,n
r
k
= r
k
- e
k
*r
k-1
END DO

c) Sustitución hacia atrás
xn = rn/fn
DO k = n-1,1,-1
x
k
= (r
k
- g
k
*x
k+1
)/f
k
END DO
Descomposición de Cholesky
• La descomposición o factorización de Cholesky expresa una matriz
simétrica como el producto de una matriz triangular y su transpuesta

A = L∙L
T
 L: matriz triangular inferior

• No todas las matrices simétricas se pueden factorizar de esta forma

• Las matrices que tienen este tipo de factorización son las matrices
simétricas definidas positivas. Esto implica que todos los elementos
de la diagonal sean positivos y que los elementos fuera de la
diagonal no sean muy grandes

• Los términos de la descomposición se pueden multiplicar entre si.
El resultado se puede expresar en forma simple por relaciones
recurrentes

• Para la fila k
1 - k , 1,2, i para ,
1
1
 =
÷
=
¿
÷
=
ii
i
j
kj ij ki
ki
l
l l a
l
¿
÷
=
÷ =
1
1
2
k
j
kj kk kk
l a l
• Ejemplo,
(
(
(
¸
(

¸

=
979 225 55
225 55 15
55 15 6
A
¦
)
¦
`
¹
¦
¹
¦
´
¦
÷
÷
=
4 . 71
3 . 19
85 . 7
B
Para k = 1 4495 . 2 6
11 11
= = = a l
Para k = 2 1237 . 6
4495 . 2
15
11
21
21
= = =
l
a
l ( ) 1833 . 4 1237 . 6 55
2 2
21 22 22
= ÷ = ÷ = l a l
Para k = 3 454 . 22
11
31
31
= =
l
a
l
1106 . 6
2
32
2
31 33 33
= ÷ ÷ = l l a l
916 . 20
22
31 21 32
32
=
÷
=
l
l l a
l
(
(
(
¸
(

¸

=
1106 . 6 916 . 20 454 . 22
0 1833 . 4 1237 . 6
0 0 4495 . 2
L
Sustitución hacia adelante Sustitución hacia atrás
¦
)
¦
`
¹
¦
¹
¦
´
¦
÷ =
7616 . 31
3049 . 9
2047 . 3
D
¦
)
¦
`
¹
¦
¹
¦
´
¦
÷ =
1982 . 5
2154 . 28
1964 . 24
X
Seudo código para la descomposición de
Cholesky
for k = 1:n
for i = 1:k-1
sum = 0;
for j = 1:i-1
sum = sum + A(i,j)*A(k,j);
end
A(k,i) = (A(k,i) - sum)/A(i,i);
end
sum = 0;
for j = 1:k-1
sum = sum + A(k,j)^2;
end
A(k,k) = sqrt(A(k,k) - sum);
end

Método de Gauss-Seidel
• Este es un método iterativo

• Dado un conjunto de ecuaciones, AX = B

• Si los elementos de la diagonal son diferentes de cero, se
puede resolver la ecuación i para la variable i, donde i = 1…n





• Se puede empezar el proceso de solución al escoger los
valores iniciales de las variables x (x
i
= 0)
ii
i j
i ij i
i
a
x a b
x
|
|
.
|

\
|
÷
=
¿
=
• Los valores iniciales se sustituyen en la primera ecuación para
calcular un nuevo valor para x
1

• Este nuevo valor de x
1
junto con los demás valores iniciales se
sustituyen en la segunda ecuación para calcular un nuevo valor
para x
2

• Este proceso se repite hasta calcular los nuevos valores de las n
variables

• Después se regresa a la primera ecuación y se repite todo el
procedimiento hasta que la solución converja a la solución real

• La convergencia se puede verificar usando el criterio,
s
j
i
j
i
j
i
i a
x
x x
c c <
÷
=
÷
% 100
1
,
Criterio de convergencia del método de
Gauss-Seidel
• Este método es similar en esencia al método de iteración de
punto de fijo que se usa para el cálculo de raíces de una
ecuación
• Presenta las mismas desventajas:
1. En algunos casos no converge
2. En algunos casos la convergencia es lenta
• Las condiciones suficientes para la convergencia de dos
ecuaciones no lineales también aplican para ecuaciones lineales
cuando se usa Gauss – Seidel.
1
1 1
<
c
c
+
c
c
x
v
x
u
1
2 2
<
c
c
+
c
c
x
v
x
u
• En el caso de dos ecuaciones el método de Gauss-Seidel se
expresa como


• Las derivadas parciales de estas ecuaciones con respecto a las
variables son


• Para que se cumplan las condiciones suficientes de convergencia
( )
2
11
12
11
1
2 1 1
, x
a
a
a
b
x x u x ÷ = =
0
1
=
c
c
x
u
( )
1
22
21
22
2
2 1 2
, x
a
a
a
b
x x v x ÷ = =
11
12
2
a
a
x
u ÷
=
c
c
0
2
=
c
c
x
v
22
21
1
a
a
x
v ÷
=
c
c
1
11
12
<
a
a
1
22
21
<
a
a
• El valor absoluto de la pendiente de las ecuaciones rectas debe ser
menor que la unidad para asegurar convergencia
• Reformulando,


• El elemento diagonal debe ser mayor que el elemento fuera de la
diagonal para cada fila (sistemas diagonal dominantes)
• Generalizando para n ecuaciones


• El criterio es suficiente pero no necesario para convergencia
21 22
a a >
12 11
a a >
¿
=
=
>
n
i j
j
ij ii
a a
1
Mejoras a la convergencia por medio de
relajación
• La relajación representa una ligera modificación al método de Gauss – Seidel y
está diseñada para mejorar la convergencia
• Después de calcular cada nuevo valor de x, ese valor se modifica por un
promedio ponderado de los resultados de las iteraciones anterior y actual:



ì: es el coeficiente de relajación que tiene un valor entre 0 y 2

o Si ì = 1  el resultado no se modifica
o Si 0 < ì < 1  el resultado es un promedio ponderado de x
i
nuevo
y x
i
anterior

(subrelajación), se usa para hacer que un sistema no convergente, converja o
converja más rápido al amortiguar sus oscilaciones
o Si 1 < ì < 2  se le da una ponderación extra al valor actual (sobrerelajación),
acelera la convergencia de un sistema que ya es convergente. También es conocida
como sobrerelajación simultánea o sucesiva, SOR
( )
anterior
i
nuevo
i
nuevo
i
x x x ì ì ÷ + = 1
Seudo código para el método de
Gauss-Seidel con relajación
SUBROUTINE Gseid(a,b,n,x,imax,es,lambda)
for i = 1:n
dummy = a(i,i);
for j = 1:n
a(i,j) = a(i,j)/dummy;
end
b(i) = b(i)/dummy;
end
for i = 1:n
sum = b(i);
for j = 1:n
if i ~= j
sum = sum - a(i,j)*x(j);
end
end
x(i) = sum;
end
iter = 1;
while iter < maxIteraciones
sentinel = 1;
for i = 1:n
old = x(i);
sum = b(i);
for j = 1:n
if i ~= j
sum = sum - a(i,j)*x(j);
end
end
x(i) = lambda * sum +(1.0-lambda)*old;
if sentinel == 1 AND x(1) ~= 0.0
ea = abs((x(i)-old)/x(i))*100;
if ea > es
sentinel = 0;
end
end
end
iter = iter + 1;
if sentinel == 1
break
end
end