Académique Documents
Professionnel Documents
Culture Documents
1 0 0
1 0
1
0
0 0
23
13 12
33 32 31
22 21
11
33 32 31
23 22 21
13 12 11
u
u u
l l l
l l
l
a a a
a a a
a a a
PRCTICA
SOLUCIN NUMRICA DE SISTEMAS DE ECUACIONES LINEALES (PARTE II)
Elaborada por: Programacin Avanzada y Mtodos Numricos
Ing. Laura Sandoval Montao
Viridiana del Carmen De Luna Bonilla
Virgilio Green Prez
Si efectuamos la multiplicacin de L y U, igualando los elementos de ese producto con los
de la matriz A correspondientes, se obtiene:
l u l u l
a
l u l a l a
u l u l a l u l a l a
u l a u l a l a
33 23 32 13 31
33
32 12 31 32 31 31
23 22 13 21 23 22 12 21 22 21 21
13 11 13 12 11 12 11 11
+ = = =
+ = + = =
= = =
+
De aqu que los elementos de L y U son, en este caso:
( )
u l u l a l u l a l a l
l u l a u u l a l a l
l a u l a u a l
23 32 13 31 33 33 12 31 32 32 31 31
22 13 21 23 23 12 21 22 22 21 21
11 13 13 11 12 12 11 11
= = =
= = =
= = =
Si el sistema de ecuaciones original se escribe como A x = b, resulta lo mismo escribir
L U x = b. Definiendo a U x = Y, podemos escribir L Y = b
Resolviendo para Y, encontramos:
( )
( )
l
y
l
y
l b
y
l
y
l b
y
l b
y
33
2
32
1
31 3
3
22
1
21 2
2
11 1
1
=
=
=
Una vez conocidas L, U y b, prosigue encontrar primeramente los valores de "Y" por
sustitucin progresiva sobre "L Y = b". Posteriormente se resuelve "U x = Y " por
sustitucin regresiva para encontrar los valores de "x", obteniendo:
x u x u
y
x
x u
y
x
y
x
3 13 2 12
1
1
3 23
2
2
3
3
=
=
=
Por ejemplo, sea el siguiente sistema de ecuaciones, factorizando la matriz en LU:
4
24
9
2 1 3
6 5 4
3 2 1
3
2
1
x
x
x
Las matrices de factores L y U de A son:
=
1 0 0
2 1 0
3 2 1
;
9 5 3
0 3 4
0 0 1
U L
Resolver la ecuacin L Y = b
por sustitucin progresiva para
obtener los elementos del
vector auxiliar Y: [L][Y]=[b]
4
24
9
3 5 3
0 3 4
0 0 1
3
2
1
y
y
y
Donde:
1
4
9
3
2
1
=
=
=
y
y
y
PRCTICA
SOLUCIN NUMRICA DE SISTEMAS DE ECUACIONES LINEALES (PARTE II)
Elaborada por: Programacin Avanzada y Mtodos Numricos
Ing. Laura Sandoval Montao
Viridiana del Carmen De Luna Bonilla
Virgilio Green Prez
Resolver la ecuacin U x = Y
para encontrar los elementos de
x, por sustitucin regresiva:
[U][x]=[Y]
1
4
9
1 0 0
2 1 0
3 2 1
3
2
1
x
x
x
De donde se obtiene:
1
6
0
3
2
1
=
=
=
x
x
x
A continuacin se presenta el algoritmo, en pseudocdigo, de la descomposicin de la
matriz A en L y U, donde el programador puede seleccionar la matriz que contendr la
diagonal principal unitaria (como se mencion anteriormente).
DESDE k = 1 HASTA n
U(k,k)=1
L(k,k) =
=
) , ( * ) , ( ) , (
1
1
k s U s k L k k A
k
s
DESDE i = (k+1) HASTA n
) , ( * ) , ( ) , ( ) , (
1
1
=
= k s U s i L k i A k i L
k
s
FIN
DESDE j = (k+1) HASTA n
) , (
) , ( * ) , ( ) , (
) , (
1
1
k k L
j s U s k L j k A
j k U
k
s
=
=
FIN
FIN
PRCTICA
SOLUCIN NUMRICA DE SISTEMAS DE ECUACIONES LINEALES (PARTE II)
Elaborada por: Programacin Avanzada y Mtodos Numricos
Ing. Laura Sandoval Montao
Viridiana del Carmen De Luna Bonilla
Virgilio Green Prez
Mtodo de Gauss-Seidel
El mtodo de Gauss-Seidel, es un mtodo iterativo y por lo mismo, resulta ser un mtodo
bastante eficiente.
El paso inicial de este mtodo consiste en despejar por cada ecuacin una variable
diferente, as se obtiene un conjunto de ecuaciones. Considerando el siguiente sistema de
ecuaciones lineales, se muestra a su derecha la ecuacin resultante en la que de la ecuacin
1 despejamos x
1
, de la 2 despejamos x
2
y as sucesivamente.
n n nn n n
n n
n n
b x a x a x a
b x a x a x a
b x a x a x a
= + + +
= + + +
= + + +
...
...
...
2 2 1 1
2 2 2 22 1 21
1 1 2 12 1 11
nn
n nn n
n
n n
n n
a
x a x a b
x
a
x a x a b
x
a
x a x a b
x
1 1 1 11
22
2 1 21 2
2
11
1 2 22 1
1
...
...
...
=
=
=
Para comenzar el proceso iterativo, le damos un valor inicial a las variables x
2,
x
3,
, x
n
;
sustituyendo estos valores en la ecuacin de x
1
, obtenemos un primer valor para ste; luego
utilizamos este nuevo valor para sustituirlo en la siguiente ecuacin y obtener un valor para
x
2
; y continuamos consecutivamente hasta llegar a x
n
; con esto completamos la primera
iteracin. Aplicamos nuevamente las ecuaciones para obtener nuevos valores de x
1
, x
2
,
,x
n
completando de esta manera otra iteracin. Este proceso iterativo termina cuando,
sacando la diferencia entre cada uno de los valores de la iteracin actual con la anterior, se
tiene un valor menor de tolerancia.
Por ejemplo, sea el siguiente sistema de ecuaciones lineales:
9 3 2 1
24 6 5 4
4 2 3
3 2 1
3 2 1
3 2 1
= + +
= + +
= + +
x x x
x x x
x x x
Despejamos x
1
, x
2
y x
3
de la ecuacin 1, 2 y 3, respectivamente.
3
2 9
5
6 4 24
3
2 4
2 1
3
3 1
2
3 2
1
x x
x
x x
x
x x
x
=
=
=
PRCTICA
SOLUCIN NUMRICA DE SISTEMAS DE ECUACIONES LINEALES (PARTE II)
Elaborada por: Programacin Avanzada y Mtodos Numricos
Ing. Laura Sandoval Montao
Viridiana del Carmen De Luna Bonilla
Virgilio Green Prez
06667 . 0
3
) 73333 . 3 ( 2 ) 33333 . 1 ( 9
73333 . 3
5
) 0 ( 6 ) 33333 . 1 ( 4 24
33333 . 1
3
) 0 ( 2 0 4
3
2
1
=
=
=
=
=
x
x
x
Damos valores iniciales a x
2
y x
3
de
cero y obtenemos un primer valor de x
1
.
Obtenemos un valor para x
2
,
utilizando x
3
y el nuevo valor de x
1.
Y luego para x
3
, utilizamos los
nuevos valores de x
1
y x
2
.
De la primera iteracin tenemos que:
06667 . 0
73333 . 3
33333 . 1
3
2
1
=
=
=
x
x
x
Iteracin 2
13777 . 0
3
) 68444 . 4 ( 2 ) 04444 . 0 ( 9
68444 . 4
5
) 06667 . 0 ( 6 ) 04444 . 0 ( 4 24
04444 . 0
3
) 06667 . 0 ( 2 ) 73333 . 3 ( 4
3
2
1
=
=
=
=
=
=
x
x
x
Para la segunda iteracin se
usa 06667 . 0 73333 . 3
3 2
= = x y x para
obtener los nuevos valores. Y
procedemos de la misma manera que en
la iteracin anterior.
Calculamos los errores: para una tolerancia de 0.1
Error x
1
:
288 . 1 3333 . 1 04444 . 0 =
Error x
2
:
95111 . 0 7333 . 3 68444 . 4 =
Error x
3
:
20444 . 0 06666 . 0 13777 . 0 =
Como los errores obtenidos, en general, son todava grandes, continuamos con la siguiente
iteracin, realizando el mismo procedimiento.
Iteracin 3
33748 . 0
3
) 07437 . 5 ( 2 ) 13629 . 0 ( 9
07437 . 5
5
) 13777 . 0 ( 6 ) 13629 . 0 ( 4 24
13629 . 0
3
) 13777 . 0 ( 2 ) 68444 . 4 ( 4
3
2
1
=
=
=
=
=
=
x
x
x
Error x
1
:
18074 . 0 ) 0444 . 0 ( 13629 . 0 =
Error x
2
:
38992 . 0 68444 . 4 07437 . 5 =
Error x
3
:
19970 . 0 ) 13777 . 0 ( 33748 . 0 =
errores mayores a la tolerancia de 0.1
PRCTICA
SOLUCIN NUMRICA DE SISTEMAS DE ECUACIONES LINEALES (PARTE II)
Elaborada por: Programacin Avanzada y Mtodos Numricos
Ing. Laura Sandoval Montao
Viridiana del Carmen De Luna Bonilla
Virgilio Green Prez
Iteracin 4
49661 . 0
3
) 31148 . 5 ( 2 ) 13313 . 0 ( 9
31148 . 5
5
) 33748 . 0 ( 6 ) 13313 . 0 ( 4 24
13313 . 0
3
) 33748 . 0 ( 2 07437 . 5 4
3
2
1
=
=
=
=
=
=
x
x
x
Error x
1
:
00316 . 0 ) 13629 . 0 ( 13313 . 0 =
Error x
2
:
23711 . 0 07437 . 5 31148 . 5 =
Error x
3
:
15913 . 0 ) 33748 . 0 ( 49661 . 0 =
errores mayores a la tolerancia de 0.1
Iteracin 5
61850 . 0
3
) 48080 . 5 ( 2 ) 10608 . 0 ( 9
48080 . 5
5
) 49661 . 0 ( 6 ) 10608 . 0 ( 4 24
10608 . 0
3
) 49661 . 0 ( 2 ) 31148 . 5 ( 4
3
2
1
=
=
=
=
=
=
x
x
x
Error x
1
:
27048 . 0 ) 13313 . 0 ( 10608 . 0 =
Error x
2
:
16931 . 0 31148 . 5 48080 . 5 =
Error x
3
:
12189 . 0 ) 49661 . 0 ( 61850 . 0 =
errores mayores a la tolerancia de 0.1
Iteracin 6
71105 . 0
3
) 60721 . 5 ( 2 ) 08126 . 0 ( 9
60721 . 5
5
) 61850 . 0 ( 6 ) 08126 . 0 ( 4 24
08126 . 0
3
) 61850 . 0 ( 2 ) 48080 . 5 ( 4
3
2
1
=
=
=
=
=
=
x
x
x
Error x
1
:
02482 . 0 ) 10608 . 0 ( 08126 . 0 =
Error x
2
:
12641 . 0 48080 . 5 60721 . 5 =
Error x
3
:
09255 . 0 ) 61850 . 0 ( 71105 . 0 =
errores mayores a la tolerancia de 0.1
Iteracin 7
78118 . 0
3
) 70263 . 5 ( 2 ) 06170 . 0 ( 9
70263 . 5
5
) 71105 . 0 ( 6 ) 06170 . 0 ( 4 24
06170 . 0
3
) 71105 . 0 ( 2 ) 60721 . 5 ( 4
3
2
1
=
=
=
=
=
=
x
x
x
Error x
1
:
01956 . 0 ) 08126 . 0 ( 06170 . 0 =
Error x
2
:
09541 . 0 60721 . 5 70263 . 5 =
Error x
3
:
07012 . 0 ) 71105 . 0 ( 78118 . 0 =
errores menores a la tolerancia de 0.1
PRCTICA
SOLUCIN NUMRICA DE SISTEMAS DE ECUACIONES LINEALES (PARTE II)
Elaborada por: Programacin Avanzada y Mtodos Numricos
Ing. Laura Sandoval Montao
Viridiana del Carmen De Luna Bonilla
Virgilio Green Prez
Como la tolerancia se cumple en estos tres casos, aqu termina el proceso de iteraciones.
Entonces tenemos una solucin del sistema de ecuaciones:
78118 . 0
70263 . 5
06170 . 0
3
2
1
=
=
=
x
x
x
La tolerancia fijada en este ejercicio es muy grande por lo que los resultados no estn muy
cercanos al valor exacto:
1
6
0
3
2
1
=
=
=
x
x
x
Se recomienda utilizar una tolerancia mucho menor.
Bibliografa
BURDEN, L. R. , FAIRES, J.D.
Anlisis Numrico
7. Edicin
Mxico
Thomson International, 2003
CHAPRA, Steven C, CANALE, Raymond P.
Mtodos Numricos para Ingenieros
3. Edicin
Mxico
Mc. Graw-Hill, 1999
GERALD, Curtis F.
Anlisis Numrico
6. Edicin
Mxico
Prentice Hall, 2001
PRCTICA
SOLUCIN NUMRICA DE SISTEMAS DE ECUACIONES LINEALES (PARTE II)
Elaborada por: Programacin Avanzada y Mtodos Numricos
Ing. Laura Sandoval Montao
Viridiana del Carmen De Luna Bonilla
Virgilio Green Prez
EJERCICIOS PROPUESTOS
1. Elaborar un programa que implemente el mtodo de LU, para resolver sistemas de 3
incgnitas.
2. Con el programa anterior, resolver el siguiente sistema de ecuaciones.
61 . 17 6 4
32 . 14 6 4
3 . 85 8 3 5
3 2 1
3 2 1
3 2 1
= +
= +
= +
x x x
x x x
x x x
3. Elaborar un programa que implemente el mtodo de Gauss-Seidel, para resolver
sistemas de 3 incgnitas. TIP: Slo es implementar en funciones, las ecuaciones
resultantes del despeje de las ecuaciones del sistema.
4. Utilizando el programa anterior, resolver el sistema de ecuaciones del inciso 2.
Recordar que el sistema de ecuaciones debe estar acomodado.
5. Resolver el siguiente sistema de ecuaciones utilizando el mtodo de LU. TIP:
Implementar el algoritmo visto anteriormente y obtener ciclos adicionales para
calcular Y y X.
81 . 76 11 8 6 2 3
49 . 7 5 4 3 2
81 . 54 2 5 2 7 5
95 . 9 8 3 5
26 . 22 6 2 2 4
5 4 3 2 1
5 4 3 2 1
5 4 3 2 1
5 4 3 2 1
5 4 3 2 1
= + +
= + + + +
= + + + +
= + + +
= + + + +
x x x x x
x x x x x
x x x x x
x x x x x
x x x x x