You are on page 1of 38

Apuntes de C alculo Num erico

(M etodos Matem aticos)


ANTONIO RODRIGUEZ
LUIS SAINZ DE LOS TERREROS
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
Contenido
2. C alculo matricial 3
2.1. Sistemas de ecuaciones lineales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.1. M etodos exactos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.2. M etodos aproximados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2. Autovalores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.2.1. M etodo de la potencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
CAP

ITULO 2
C alculo matricial
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
2.1. Sistemas de ecuaciones lineales
Los unicos algoritmos exactos que emplearemos durante este curso ser an algunos de
los que se usan para resolver sistemas de ecuaciones lineales y que estudiaremos en la
secci on 2.1.1. Por ser exactos estar an exentos de error de truncamiento, aunque sujetos al
error de redondeo al ser implementados en un ordenador. Tambi en existen m etodos apro-
ximados de resoluci on de sistemas lineales, que pueden ser m as ecaces que los primeros
en algunos casos, aunque conlleven errores tanto de redondeo como de truncamiento. Los
estudiaremos en la secci on 2.1.2.
En cualquiera de los casos, nos restringiremos al estudio de sistemas de ecuaciones
lineales compatibles determinados, de mayor inter es en las aplicaciones, es decir, sistemas
de la forma
Ax = b (2.1)
con A de tama no n n y det A = 0.
2.1.1. M etodos exactos
Algoritmo de eliminaci on de Gauss El algoritmo de eliminaci on de Gauss es de sobra
conocido del curso de

Algebra Lineal. Aunque los c alculos podran realizarse manual-
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
mente para sistemas de tama no grande se hace imprescindible el uso del ordenador. Como
veremos, el error de redondeo que ello conlleva nos obligar a a introducir modicaciones
en el algoritmo.
En su versi on m as simple, el algoritmo de eliminaci on de Gauss considera la matriz
ampliada (A|b) del sistema (2.1)
_
_
_
_
_
a
(1)
11
a
(1)
12
. . . a
(1)
1n
b
(1)
1
a
(1)
21
a
(1)
22
. . . a
(1)
2n
b
(1)
2
.
.
.
.
.
.
.
.
.
a
(1)
n1
a
(1)
n2
. . . a
(1)
nn
b
(1)
n
_
_
_
_
_
(2.2)
(donde el superndice
(1)
indica que nos encontramos en la primera fase del algoritmo) y,
suponiendo que sea a
(1)
11
= 0, tomamos ese elemento como pivote y hacemos cerospor
debajo de el. Para ello, modicaremos las las de la matriz en la forma
F
i
F
i

a
(1)
i1
a
(1)
11
F
1
, i = 2, . . . , n (2.3)
donde llamaremos multiplicadores a los factores m
i1
a
(1)
i1
/a
(1)
11
En el caso en que a
(1)
11
=
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
0, al no estar denidos los multiplicadores, se busca la primera la para la cual a
(1)
p1
= 0 y
se hace el cambio F
1
F
p
(a este intercambio de las se le conoce como pivoteo), para
despu es realizar las operaciones (2.3). Con todo esto, la matriz del sistema se transforma
en
_
_
_
_
_
a
(1)
11
a
(1)
12
. . . a
(1)
1n
b
(1)
1
0 a
(2)
22
. . . a
(2)
2n
b
(2)
2
.
.
.
.
.
.
.
.
.
0 a
(2)
n2
. . . a
(2)
nn
b
(2)
n
_
_
_
_
_
(2.4)
donde todos los elementos a partir de la segunda la han cambiado (de ah el superndice
(2)
). En la siguiente etapa, se toma a
(2)
22
como pivote en la segunda columna, o se pivota
si a
(2)
22
= 0 (la condici on det A = 0 garantiza que podemos encontrar pivotes en todas
las columnas de la matriz), para despu es realizar las operaciones F
i
F
i
m
i2
F
2
, con
m
i2
= a
(2)
i2
/a
(2)
22
, para i = 3, . . . , n, consiguiendo de esta forma ceros por debajo del
segundo pivote.
El proceso se repite n 1 veces hasta llegar a la matriz triangular superior
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
_
_
_
_
_
a
(1)
11
a
(1)
12
. . . a
(1)
1n
b
(1)
1
0 a
(2)
22
. . . a
(2)
2n
b
(2)
2
.
.
.
.
.
.
.
.
.
0 0 . . . a
(n)
nn
b
(n)
n
_
_
_
_
_
(2.5)
que se corresponde con el sistema de ecuaciones
a
(1)
11
x
1
+a
(1)
12
x
2
+ +a
(1)
1 n1
x
n1
+a
(1)
1n
x
n
= b
(1)
1
a
(2)
22
x
2
+ +a
(2)
2 n1
x
n1
+a
(2)
2n
x
n
= b
(2)
2
.
.
.
a
(n1)
n1 n1
x
n1
+a
(n1)
n1n
x
n
= b
(n1)
n
a
(n)
nn
x
n
= b
(n)
n
_

_
(2.6)
equivalente al sistema inicial (de igual soluci on) y que puede ser resuelto por sustituci on
regresiva (segunda etapa del m etodo de eliminaci on de Gauss despu es de la triangula-
ci on): de la ultima ecuaci on de (2.6) se despeja x
n
= b
(n)
n
/a
(n)
nn
, que se introduce en la
pen ultima ecuaci on para obtener x
n1
y as sucesivamente.
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
Se puede comprobar que el n umero de operaciones aritm eticas elementales que se
realizan siguiendo el m etodo de eliminaci on de Gauss en un sistema n n es O(n
3
).
1

Este m etodo para resolver sistemas de ecuaciones es mucho m as efectivo que otros como
el m etodo de Kramer o el c alculo de la matriz inversa (para hacer x
0
= A
1
b) que
involucran un n umero mucho mayor de operaciones.
Pivoteo parcial Sin embargo, el algoritmo de eliminaci on de Gauss expuesto anterior-
mente no tiene en cuenta los errores de redondeo que se producen al realizar ciertas ope-
raciones como la divisi on entre n umeros peque nos. En particular, al calcular los multipli-
cadores m
ij
= a
(j)
ij
/a
(j)
jj
, se produce un error de redondeo considerable, que se arrastra en
las operaciones siguientes, si el pivote a
(j)
jj
0. Ve amoslo en el siguiente ejemplo.
Ejemplo. Consid erese el siguiente sistema de ecuaciones:
_
0.003x
1
+ 59.14x
2
= 59.17
5.291x
1
6.130x
2
= 46.78
(2.7)
cuya unica soluci on es x
1
= 10, x
2
= 1.

Esta puede obtenerse realizando las operaciones
del m etodo de eliminaci on de Gauss considerando el elemento a
11
= 0.003 como pivote
1
Se dice que una funci on f(n) es del orden de n
p
cuando n y se escribe f(n) = O(n
p
) si existen
C y n
0
tales que |f(n)| Cn
p
n n
0
.
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
y haciendo el cambio F
2
F
2
m
21
F
1
, donde m
21
= 5.291/0.003 = 1763.

6, la matriz
ampliada del sistema resulta
_
0.003 59.14 59.17
104309.37

6 104309.37

6
_
(2.8)
de donde por sustituci on regresiva se obtiene la soluci on exacta x
1
= 10, x
2
= 1. Supon-
gamos ahora que el ordenador trabajara s olo con 4 cifras signicativas. De esta forma, el
multiplicador se aproximara como m
21
1763. Tras multiplicarlo por la la primera y
restar el resultado a la segunda en aritm etica de 4 dgitos la nueva matriz ampliada resulta
_
0.003 59.14 59.17
104300 104400
_
(2.9)
de donde, por sustituci on regresiva y en aritm etica de 4 dgitos se obtiene la soluci on
err onea
x
1
= 10, x
2
= 1.001
completamente alejada de la soluci on exacta.
Para evitar este problema se utiliza el llamado m etodo de pivoteo parcial, cuya nali-
dad es escoger pivotes lo m as grandes posible. Para ello, en la fase k- esima del proceso de
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
eliminaci on de Gauss, en lugar de escoger como pivote el elemento a
(k)
kk
, se compara este
previamente con el resto de los elementos situados por debajo de el en su misma columna
y se escoge el de mayor magnitud, es decir, se halla p k tal que
|a
(k)
pk
| = m ax
kin
|a
(k)
ik
|
y despu es se hace el cambio F
k
F
p
.
Ejemplo. Consideremos de nuevo el sistema del ejemplo 2.1.1 y apliqu emosle el m etodo
de eliminaci on de Gauss con pivoteo parcial. Al escoger el pivote para la primera columna
previamente comparamos
a
11
= 0.003 < 5.291 = a
21
por lo que hacemos el cambio F
1
F
2
obteniendo por tanto la matriz ampliada
_
5.291 6.130 46.78
0.003 59.14 59.17
_
(2.10)
que, utilizando el nuevo multiplicador m
21
= 0.000567, y en aritm etica de 4 dgitos, se
transforma en
_
5.291 6.130 46.78
59.14 59.14
_
(2.11)
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
de donde se obtiene la soluci on exacta x
1
= 10, x
2
= 1.
Adem as de este m etodo existe el llamado pivoteo total en el que no s olo se inter-
cambian las sino tambi en columnas (y por tanto inc ognitas) para encontrar el pivote de
mayor tama no, aunque ello obliga a guardar memoria de los intercambios realizados entre
las inc ognitas para despu es deshacerlos.
Pivoteo parcial escalado Sin embargo, tambi en el pivoteo parcial nos puede llevar a
errores dr asticos, como veremos en el siguiente ejemplo.
Ejemplo. Consideremos nuevamente el sistema (2.7) y multipliquemos su primera ecua-
ci on por 10
4
. El nuevo sistema
_
30.00x
1
+ 591400x
2
= 591700
5.291x
1
6.130x
2
= 46.78
(2.12)
tendr a la misma soluci on que el antiguo. Sin embargo, al aplicar el pivoteo parcial, al ser
a
11
= 30 > 5.291 = a
21
se utilizar a el elemento a
11
como pivote junto con el multi-
plicador m
21
= 5.291/30.00 0.1764, lo que, en aritm etica de 4 dgitos nos conduce
nalmente a la matriz
_
30.00 591400 591700
104300 104400
_
(2.13)
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
que nos lleva nuevamente al resultado err oneo x
1
= 10, x
2
= 1.001.
Para resolver este problema el m etodo de pivoteo parcial escalado escala previamen-
te todas las las de la matriz asociada dividiendo todos sus elementos por el de ma-
yor magnitud antes de realizar la comparaci on que ahora se efect ua entre magnitudes
relativas para escoger el pivote. Es decir, para cada la se dene previamente
s
i
= m ax
j=1,...,n
|a
ij
|
de modo que, para determinar por ejemplo el pivote correspondiente a la primera columna
se tomar a
|a
p1
|
s
p
= m ax
i=1,...,n
|a
i1
|
s
i
y se har a el cambio F
1
F
p
. El escalado se utiliza s olo para comparar. El pivote a utilizar
ser a a
p1
y no a
p1
/s
p
para evitar el error de redondeo producido en la divisi on.
Ejemplo. Si nalmente utilizamos pivoteo parcial escalado para resolver el sistema (2.12),
primero calculamos
|a
11
|
s
1
=
30.00
591400
= 0.5073 10
4
<
|a
21
|
s
2
=
5.291
6.130
= 0.8631
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
lo que nos lleva a realizar el cambio F
1
F
2
y a considerar el sistema
_
5.291x
1
6.130x
2
= 46.78
30.00x
1
+ 591400x
2
= 591700
(2.14)
que, tras resolver en aritm etica de 4 dgitos nos conduce al resultado correcto x
1
= 10,
x
2
= 1.
Sistemas mal condicionados Por ultimo, conviene llamar la atenci on sobre un tipo de
problema que se da con frecuencia en el C alculo Num erico y en particular en la resoluci on
de sistemas de ecuaciones. Se dice que un problema est a mal condicionado cuando una
peque na modicaci on en los datos produce variaciones dr asticas en los resultados. Esto
es as para ciertos sistemas de ecuaciones, como veremos en el siguiente ejemplo.
Ejemplo. Consid erense los sistemas de ecuaciones
S
1

_
x
1
+ 2x
2
= 10
1.1x
1
+ 2x
2
= 10.4
, S
2

_
x
1
+ 2x
2
= 10
1.05x
1
+ 2x
2
= 10.4
(2.15)
cuyas soluciones son x
1
= (4, 3)
t
para S
1
y x
2
= (8, 1)
t
para S
2
. Se observa que, aunque
la matriz del sistema se ha modicado s olo ligeramente, la soluci on ha cambiado mucho.
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
Por otro lado, si introducimos la soluci on de S
2
en S
1
obtenemos
8 + 2 1 = 10
1.1 8 + 2 1 = 10.8 10.4
(2.16)
con lo que valores muy alejados de la soluci on satisfacen de manera aproximada el siste-
ma S
1
. Algo similar ocurre al introducir la soluci on de S
1
en S
2

Podemos, por tanto, interpretar los sistemas mal condicionados como aquellos que
son satisfechos de forma aproximada por un rango amplio de soluciones. Aunque no
entraremos en detalle en este tipo de sistemas, es claro que los sistemas del ejemplo
anterior estaban muy pr oximos a ser compatibles indeterminados (el determinante de la
matriz asociada en ambos sistemas es pr oximo a 0). Ya que al representar gr acamente
cada una de las ecuaciones en el plano se obtienen rectas casi paralelas, es difcil encontrar
su punto de intersecci on (que se corresponde con la soluci on del sistema).
Descomposici on LU La descomposici on LU de una matriz es una estrategia para apro-
vechar las operaciones realizadas sobre la matriz asociada de un sistema Ax = b por
el m etodo de eliminaci on de Gauss y utilizarla para resolver distintos sistemas con igual
matriz asociada y diferentes entradas b.
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
Como se recordar a del curso de

Algebra Lineal las operaciones realizadas en la matriz
Adel sistema durante el m etodo de eliminaci on de Gauss pueden implementarse mediante
el producto matricial por las llamadas matrices elementales.

Estas provienen de realizar
sobre la matriz identidad las mismas operaciones que se desean realizar sobre A. En
particular, para conseguir ceros del debajo del pivote en el paso k- esimo del m etodo de
eliminaci on de Gauss, bastar a con premultiplicar la matriz A
(k)
del sistema en dicho paso
por la matriz
M
(k)
=
_
_
_
_
_
_
_
_
_
_
_
_
_
1 0 0
0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. m
k+1,k
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
0
0 m
n,k
0 0 1
_
_
_
_
_
_
_
_
_
_
_
_
_
(2.17)
que continene en la columna k por debajo del pivote los multiplicadores usados para
hacer ceros por debajo del mismo en las ecuaciones posteriores. Despu es de multiplicar
la matriz A por la sucesi on de matrices M
(1)
, M
(2)
, . . . , M
(n1)
, obtenemos la matriz
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
asociada del sistema en forma triangular (ver (2.5)), a la que llamaremos U:
M
(n1)
M
(2)
M
(1)
A =
_
_
_
_
_
a
(1)
11
a
(1)
12
. . . a
(1)
1n
0 a
(2)
22
. . . a
(2)
2n
.
.
.
.
.
.
0 0 . . . a
(n)
nn
_
_
_
_
_
U (2.18)
Podemos despejar Aen la ecuaci on (2.18) multiplicando por la izquierda a ambos lados de
la ecuaci on por (M
(n1)
M
(2)
M
(1)
)
1
= (M
(1)
)
1
(M
(2)
)
1
(M
(n1)
)
1
. Es f acil
comprobar que (M
(k)
)
1
es como la matriz dada en (2.17) pero cambiando el signo a los
multiplicadores, por lo que nalmente obtenemos
(M
(1)
)
1
(M
(2)
)
1
(M
(n1)
)
1
=
_
_
_
_
_
_
_
1 0 0
m
21
1 0 0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
m
n1
m
n2
m
n1 n
1
_
_
_
_
_
_
_
L (2.19)
de modo que nalmente llegamos a la factorizaci on
A = LU (2.20)
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
donde L es triangular inferior con unos en la diagonal y U es triangular superior y vienen
dadas en (2.19) y (2.18) respectivamente.
De esta forma, podemos reexpresar el sistema de ecuaciones seg un:
Ax = LUx = b (2.21)
de modo que, haciendo el cambio
Ux = y (2.22)
obtenemos el sistema
Ly = b (2.23)
Una vez resuelto el sistema (2.23) para y, introducimos el resultado en el sistema
(2.22), cuya soluci on es x. De esta forma, hemos trasladado la dicultad de la resoluci on
del sistema (2.21) a la resoluci on de los sistemas (2.23) y (2.22), m as sencillos, ya que
sus matrices asociadas son triangulares. El sistema (2.23) se resolvera por sustituci on
hacia delante y el sistema (2.22) por sustituci on hacia atr as(regresiva). El n umero de
operaciones a realizar en cada uno de ellos es O(n
2
), por lo que este m etodo es venta-
joso frente al de eliminaci on de Gauss (O(n
3
)). Ahora bien, previamente hay que haber
obtenido la descomposici on A = LU, la cual es equivalente a la eliminaci on gaussiana.
D onde est a entonces la ventaja?
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
Durante el m etodo de eliminaci on de Gauss el ordenador puede aprovechar las posi-
ciones de memoria guardadas para los elementos de A por debajo de la diagonal que
se van a convertir en ceros durante el proceso de eliminaci on y almacenar en ellas los
respectivos multiplicadores. Una vez calculadas L y U una sola vez, pueden ser utilizadas
para resolver sistemas Ax = b para diferentes entradas b.
Ejemplo. Resolver el siguiente sistema de ecuaciones realizando previamente la factori-
zaci on LU de su matriz asociada.
_

_
x
1
+ x
2
+ 3x
4
= 4
2x
1
+ x
2
x
3
+ x
4
= 1
3x
1
x
2
x
3
+ 2x
4
= 3
x
1
+ 2x
2
+ 3x
3
x
4
= 4
Considerando el elemento a
(1)
11
= 1 de A
(1)
como pivote y haciendo los cambios F
2

F
2
2F
1
, F
3
F
3
3F
1
y F
4
F
4
+F
1
obtenemos A
(2)
:
A
(1)
=
_
_
_
_
1 1 0 3
2 1 1 1
3 1 1 2
1 2 3 1
_
_
_
_
; A
(2)
=
_
_
_
_
1 1 0 3
0 1 1 5
0 4 1 7
0 3 3 2
_
_
_
_
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
Si despu es tomamos a
(2)
22
= 1 como pivote y hacemos los cambios F
3
F
3
4F
2
,
F
4
+ 3F
1
obtenemos A
(3)
. El tercer pivote sera a
(3)
33
= 3, pero no es preciso hacer ceros
con el ya que directamente hemos obtenido a
(3)
43
= 0.
A
(3)
= A
(4)
=
_
_
_
_
1 1 0 3
0 1 1 5
0 0 3 13
0 0 0 13
_
_
_
_
U
Los multiplicadores han sido m
21
= 2, m
31
= 3, m
41
= 1, m
32
= 4, m
42
= 3 y
m
43
= 0, por lo que obtenemos
L =
_
_
_
_
1 0 0 0
2 1 0 0
3 4 1 0
1 3 0 1
_
_
_
_
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
El sistema Ly = b resulta
_

_
y
1
= 8
2y
1
+y
2
= 7
3y
1
+ 4y
2
+y
3
= 14
y
1
3y
2
+y
4
= 7
cuya soluci on es (y
1
, y
2
, y
3
, y
4
) = (8, 9, 26, 26), que introducimos como t ermino in-
dependiente del sistema Ux = y
_

_
x
1
+x
2
+ 3x
4
= 8
x
2
x
3
5x
4
= 9
3x
3
+ 13x
4
= 26
13x
4
= 26
cuya soluci on es (x
1
, x
2
, x
3
, x
4
) = (2, 0, 1, 3).
Ahora bien, no toda matriz A admite una descomposici on LU. En el c alculo de las
matrices L y U expuesto arriba hemos supuesto que las unicas operaciones elementales
realizadas sobre la matriz de coecientes del sistema han sido manipulaciones con las
las del tipo F
i
F
i
m
ik
F
k
. Ahora bien, cuando durante el proceso de eliminaci on
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
de Gauss se anula alg un elemento de la diagonal, a
(k)
kk
= 0, es preciso pivotar, es decir,
intercambiar las, operaci on que no hemos contemplado al obtener la expresi on para L.
S olamente aquellas matrices regulares para las que no es necesario pivotar durante el
m etodo de eliminaci on de Gauss admiten una factorizaci on LU. Tendremos que buscar
condiciones bajo las cuales una matriz admita dicha descomposici on. Para ello veamos
previamente la siguiente denici on.
Denici on.
matriz diagonal dominante. Se dice que una matriz cuadrada A = (a
ij
) de orden n
es estrictamente diagonal dominante si:
|a
ii
| >

j=i
|a
ij
|; i = 1, . . . , n
Es decir, una matriz estrictamente diagonal dominante es aquella en la que en cada
la el valor absoluto del elemento correspondiente a la diagonal supera a la suma de los
valores absolutos del resto de los elementos de la la. Estas matrices poseen propiedades
muy importantes, entre ellas, las que se enuncian en el siguiente teorema.
Teorema 2.1.1. Si una matriz A es estrictamente diagonal dominante, entonces
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
A es no singular.
Se pueden aplicar en A las operaciones del m etodo de eliminaci on de Gauss sin
intercambio de las.
Hemos encontrado, pues, una condici on suciente para que una matriz A admita una
factorizaci on LU. Basta con que sea estrictamente diagonal dominante.
2.1.2. M etodos aproximados
Veremos ahora un par de m etodos iterativos aproximados de resoluci on de sistemas de
ecuaciones lineales que, por tanto, s est an sujetos a errores de truncamiento. Ambos son
ecientes para sistemas grandes con matrices con un elevado n umero de ceros. Dichos
sistemas aparecen con frecuencia en problemas de resoluci on de ecuaciones diferenciales
en derivadas parciales.
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
M etodo iterativo de Jacobi Consid erese el sistema de ecuaciones
_

_
a
11
x
1
+a
12
x
2
+ +a
1n
x
n
= b
1
a
21
x
1
+a
22
x
2
+ +a
2n
x
n
= b
2
.
.
.
a
n1
x
1
+a
n2
x
2
+ +a
nn
x
n
= b
n
(2.24)
donde, supuesto que a
ii
= 0 i podemos despejar de cada ecuaci on la inc ognita corres-
pondiente
_

_
x
1
= (b
1
a
12
x
2
a
1n
x
n
)/a
11
x
2
= (b
2
a
22
x
1
a
2n
x
n
)/a
22
.
.
.
x
n
= (b
n
a
n1
x
1
a
nn
x
n
)/a
nn
(2.25)
De esta forma, al estar las inc ognitas despejadas, el problema parecera estar resuelto,
aunque no es as, ya que las inc ognitas tambi en est an presentes a la derecha del igual en
cada ecuaci on en (2.25). Sin embargo, podramos introducir una primera soluci on apro-
ximada x
(0)
(x
(0)
1
, x
(0)
2
, . . . , x
(0)
n
)
t
a la derecha del igual en (2.25) que producira una
soluci on x
(1)
(x
(1)
1
, x
(1)
2
, . . . , x
(1)
n
)
t
a la izquierda. Posteriormente, podramos introducir
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
x
(1)
como entrada para obtener x
(2)
, y as sucesivamente, produciendo el proceso iterativo
_

_
x
(k+1)
1
= (b
1
a
12
x
(k)
2
a
1n
x
(k)
n
)/a
11
x
(k+1)
2
= (b
2
a
21
x
(k)
1
a
2n
x
(k)
n
)/a
22
.
.
.
x
(k+1)
n
= (b
n
a
n1
x
(k)
1
a
n,n1
x
(k)
n1
)/a
nn
(2.26)
Podemos reexpresar matricialmente el proceso (2.26) reescribiendo la matriz del sistema
como A = T
I
+D +T
S
, donde D = diag(a
11
, a
22
, . . . , a
nn
), y
T
I
=
_
_
_
_
_
0 0
a
21
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
a
n1
a
nn1
0
_
_
_
_
_
, T
S
=
_
_
_
_
_
0 a
12
a
1n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
a
n1 n
0 0
_
_
_
_
_
De esta forma, la ecuaci on (2.26) podra expresarse como x
(k+1)
= D
1
(b (T
I
+
T
S
)x
(k)
) que, haciendo T
J
D
1
(T
I
+T
S
) y c
J
D
1
b resulta
x
(k+1)
= T
J
x
(k)
+c
J
(2.27)
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
El proceso iterativo formalmente denido en (2.27) es el que utilizaremos para obtener
sucesivas soluciones aproximadas del sistema (2.24). Estamos dando por supuesto que la
sucesi on [x
(n)
]

n=0
es convergente y que converge a la soluci on x de (2.24).
2
M as adelante
veremos condiciones sucientes que garantizan cu ando esto es as.
Una vez supuesta la convergencia, hemos de introducir un criterio de paro para el
algoritmo (2.27).

Este puede consistir en jar una toleracia TOL al comienzo del problema
y parar las iteraciones cuando el error relativo est e por debajo de ella, es decir, parar en
un N tal que
||x
(N)
x
(N1)
||
||x
(N)
||
< TOL
Ejemplo. Aplicar el m etodo de Jacobi para resolver el sistema:
_

_
10x
1
x
2
+ 2x
3
= 6
x
1
+ 11x
2
x
3
+ 3x
4
= 25
2x
1
x
2
+ 10x
3
x
4
= 11
3x
2
x
3
+ 8x
4
= 15
(2.28)
2
Por denici on, decimos que lm
n
x
(n)
= x si > 0 N() tal que ||x
(n)
x|| < para todo
n N.
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
cuya soluci on unica es x = (1, 2, 1, 1)
t
, a partir de la aproximaci on inicial x
(0)
=
(0, 0, 0, 0)
t
y con una tolerancia TOL = 5 10
4
.
Las ecuaciones del proceso iterativo son
_

_
x
(k+1)
1
=
1
10
x
(k)
2

1
5
x
(k)
3
+
3
5
x
(k+1)
2
=
1
11
x
(k)
1
+
1
11
x
(k)
3

3
11
x
(k)
4
+
25
11
x
(k+1)
3
=
1
5
x
(k)
1
+
1
10
x
(k)
2
+
1
10
x
(k)
4

11
10
x
(k+1)
4
=
3
8
x
(k)
2
+
1
8
x
(k)
3
+
15
8
y producen el resultado:
k 0 1 2 3 4 5 6 7 8 9 10
x
(k)
1
0 0.6000 1.0473 0.9326 1.0152 0.9890 1.0032 0.9981 1.0006 0.9997 1.0001
x
(k)
2
0 2.2727 1.7159 2.0530 1.9537 2.0114 1.9922 2.0023 1.9987 2.0004 1.9998
x
(k)
3
0 -1.1000 -0.8052 -1.0493 -0.9681 -1.0103 -0.9945 -1.0020 -0.9990 -1.0004 -0.9998
x
(k)
4
0 1.8750 0.8852 1.1309 0.9739 1.0214 0.9944 1.0036 0.9989 1.0006 0.9998
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
donde hemos parado la iteraci on en k = 10 al ser
||x
(10)
x
(9)
||
||x
(10)
||
= 0.327 10
4
< TOL

M etodo iterativo de Gauss-Seidel El m etodo de Gauss-Seidel supone una aparente


mejora del m etodo de Jacobi ya que no espera al nal de cada iteraci on para actualizar
el valor de las variables ya calculadas. En este m etodo, una vez introducidos los valores
(x
(0)
1
, x
(0)
2
, . . . , x
(0)
n
) en la primera de las ecuaciones (2.26), y obtenido el valor de x
(1)
1
,
introduciremos dicho dicho valor junto con x
(0)
2
, . . . , x
(0)
n
en la segunda ecuaci on para ob-
tener x
(1)
2
. A su vez, en la tercera ecuaci on introducimos x
(1)
1
y x
(1)
2
junto con x
(0)
3
, . . . , x
(0)
n
para obtener x
(1)
3
y as sucesivamente. El proceso puede ser reexpresado ahora a partir de
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
(2.26) como
_

_
a
11
x
(k+1)
1
= b
1
a
12
x
(k)
2
a
1n
x
(k)
n
a
21
x
(k+1)
1
+a
22
x
(k+1)
2
= b
2
a
23
x
(k)
3
a
2n
x
(k)
n
.
.
.
a
n1
x
(k+1)
1
+ +a
n,n1
x
(k+1)
n1
+a
nn
x
(k+1)
n
= b
n
(2.29)
o, equivalentemente: (T
I
+D)x
(k+1)
= b T
S
x
(k)
, de donde haciendo T
GS
(T
I
+
D)
1
T
S
y c
GS
(T
I
+D)
1
b resulta
x
(k+1)
= T
GS
x
(k)
+c
GS
(2.30)
Ejemplo. Ahora resolveremos el sistema (2.28) por el m etodo de Gauss-Seidel. En este
caso, las ecuaciones del proceso iterativo son
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
_

_
x
(k+1)
1
=
1
10
x
(k)
2

1
5
x
(k)
3
+
3
5
x
(k+1)
2
=
1
11
x
(k+1)
1
+
1
11
x
(k)
3

3
11
x
(k)
4
+
25
11
x
(k+1)
3
=
1
5
x
(k+1)
1
+
1
10
x
(k+1)
2
+
1
10
x
(k)
4

11
10
x
(k+1)
4
=
3
8
x
(k+1)
2
+
1
8
x
(k+1)
3
+
15
8
y producen el resultado:
k 0 1 2 3 4 5
x
(k)
1
0 0.6000 1.0302 1.0066 1.0009 1.0001
x
(k)
2
0 2.3273 2.0369 2.0036 2.0003 2.000
x
(k)
3
0 -0.9873 -1.0145 -1.0025 -1.0003 -1.000
x
(k)
4
0 0.8789 0.9843 0.9984 0.9998 1.000
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
donde hemos parado la iteraci on en k = 5 al ser
||x
(5)
x
(4)
||
||x
(5)
||
= 2.09 10
4
< TOL

Convergencia de los m etodos iterativos La comparaci on entre los ejemplos de Jaco-


bi (subsecci on:2.1.2) y Gauss-Seidel (subsecci on: 2.1.2), podra hacernos pensar que el
m etodo de iterativo de Gauss-Seidel es mejor que el de Jacobi para resolver sistemas de
ecuaciones, ya que aqu el convergi o mucho m as r apidamente que este. Sin embargo, esto
no es siempre as. Hay casos en que el m etodo de Jacobi converge m as r apidamente, o
tambi en en que uno de los dos m etodos converge y el otro no.
Veamos primeramente una condici on suciente para que los m etodos iterativos con-
verjan.
Teorema 2.1.2. Si A es estrictamente diagonal dominante, entonces con cualquier elec-
ci on de x
(0)
tanto el m etodo de Jacobi como el de Gauss-Seidel generan sucesiones
[x
(k)
]

k=0
que convergen a la soluci on unica del sistema Ax = b.
Obs ervese que la matriz asociada del sistema de los ejemplos 2.1.2 y 2.1.2 es estric-
tamente diagonal dominante, aunque esta condici on es suciente. Puede haber sistemas
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
con matrices que no sean estrictamente diagonal dominantes y que den lugar a esquemas
iterativos convergentes.
Para intentar distinguir entre las propiedades de convergencia de ambos m etodos, in-
troduciremos previamente la siguiente denici on.
Denici on.
Radio espectral. El radio espectral (A) de una matriz A de autovalores
1
, . . . ,
p
se dene como
(A) = m ax
1ip
|
i
|
Pues bien, aunque no entraremos en detalle en este punto, puede comprobarse que una
estimaci on para el error absoluto en el paso k del proceso iterativo x
(k+1)
= Tx
(k)
+ c
viene dada por
||x
(k)
x|| (T)
k
||x
(0)
x|| (2.31)
es decir, la propagaci on del error inicial depende del radio espectral. Si queremos que el
proceso converja, este tendr a que ser (T) < 1. El m etodo Jacobi o Gauss-Seidel
que m as r apidamente converger a en cada caso particular ser a aquel cuya matriz asociada
tenga un menor radio espectral.
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
Renamiento iterativo Independientemente del m etodo exacto o iterativo que uti-
licemos para resolver num ericamente un sistema de ecuaciones Ax = b, la soluci on x
que obtendremos ser a aproximada, de tal forma que no resolver a exactamente el sistema
sino que al introducirla en el mismo, obtendremos A x b = 0. Llamaremos vector re-
sidual a la diferencia r = b A x (este vector tendra que calcularse en precisi on doble
ya que de otro modo obtendramos r = 0). Es claro que la diferencia y = x x entre la
soluci on exacta y la aproximada satisface
A y = r (2.32)
La soluci on del sistema (2.32) que tendra que obtenerse en precisi on doble nos
permite mejorar la soluci on x para sustituirla por x + y. Este es el llamado m etodo de
renamiento iterativo.
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
2.2. Autovalores
El c alculo de autovalores y autovectores de matrices est a presente en m ultiples aplica-
ciones a la ingerniera, desde el estudio de las vibraciones de una viga al de la estabilidad
de un aeroplano. Son muchos los m etodos num ericos exactos y aproximados desa-
rrollados con el n de diagonalizar matrices. Nosotros nos limitaremos al estudio de uno
de ellos, dirigido a obtener un autovalor (y su autovector asociado) de particular impor-
tancia en las aplicaciones, el que tiene mayor magnitud, al que llamaremos valor propio
dominante.
2.2.1. M etodo de la potencia
Consideraremos una matriz Adiagonalizable con n autovalores distintos
1
,
2
, . . . ,
n
tales que |
1
| > |
2
| > . . . > |
n
|. Cada valor propio
i
tiene asociado un vector propio
v
i
tal que Av
i
=
i
v
i
para i = 1, . . . , n. El sistema [v
1
, v
2
, . . . , v
n
] formar a una base de
R
n
de modo que cualquier vector x R
n
podr a escribirse como una combinaci on lineal
de los autovectores
x =
1
v
1
+
2
v
2
+ +
n
v
n
(2.33)
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
Multiplicando por A a ambos lados de la igualdad (2.33) obtenemos
Ax =
1

1
v
1
+
2

2
v
2
+ +
n

n
v
n
(2.34)
y si repetimos la operaci on k veces resulta:
A
k
x =
1

k
1
v
1
+
2

k
2
v
2
+ +
n

k
n
v
n
(2.35)
Podemos reescribir la ecuaci on (2.35) en la forma
A
k
x =
k
1
(
1
v
1
+
2

k
2

k
1
v
2
+ +
n

k
n

k
1
v
n
) (2.36)
donde es claro que, al ser
1
el autovalor dominante, siempre y cuando
1
= 0 el resto de
los t erminos ser an despreciables frente al primero en la ecuaci on (2.36) para valores altos
de k.
Lo anterior nos da la idea para denir la siguiente iteraci on. Escogemos un vector x
(0)
aleatorio con ||x
(0)
|| = 1 y formamos la sucesi on:
y
(k+1)
= Ax
(k)
, x
(k+1)
=
y
(k+1)
||y
(k+1)
||
(2.37)
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
Por lo expuesto arriba es claro que [x
(k)
]

k=0
forma una sucesi on de vectores unitarios tal
que
lm
k
x
(k)
= v
1
Por tanto, consideraremos x
(k)
como la aproximaci on al autovector dominante v
1
en el
paso k. En dicho paso, tomaremos como aproximaci on al autovalor dominante

(k)
= x
(k)
Ax
(k)
ya que x
(k)
Ax
(k)

1
x
(k)
x
(k)
=
1
||x
(k)
||
2
=
1
.
Ejemplo. Utilizar el m etodo de la potencia para calcular el autovalor dominante y el
correspondiente autovector para la matriz
A =
_
_
4 14 0
4 13 0
1 0 2
_
_
utilizando la aproximaci on inicial x
(0)
= (1/

3, 1/

3, 1/

3)
t
y una tolerancia TOL =
10
3
. El resultado exacto es:
1
= 6 y
v
1
=
1

1233
(28, 20, 7) (0.797400, 0.569572, 0.199350)
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar
El resultado del proceso iterativo (2.37) para este caso es:
k
(k)
x
(k)
1
x
(k)
2
x
(k)
3
1 6.933334 0.778499 0.622799 0.077850
2 6.475747 0.796858 0.597644 -0.088540
3 6.230470 0.798244 0.583332 -0.150097
4 6.112702 0.797990 0.576326 -0.176237
5 6.055632 0.797721 0.572909 -0.188194
6 6.027620 0.797564 0.571228 -0.193884
7 6.013756 0.797482 0.570396 -0.196649
8 6.006863 0.797441 0.569983 -0.198009
9 6.003428 0.797420 0.569777 -0.198683
donde hemos parado el proceso en k = 9 ya que
||x
(9)
x
(8)
|| = 7.04 10
4
< TOL

M etodo de la potencia inversa Podemos modicar el m etodo de la potencia expuesto


anteriormente para encontrar el autovalor de A m as cercano a un cierto n umero q. Este
M etodos Matem aticos Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar
m etodo se basa en que si q =
i
para i = 1, . . . , n, los autovalores de la matriz (AqI)
1
son
1

1
q
,
1

2
q
, ,
1

n
q
Si suponemos que
1
es el autovalor m as cercano a q y hacemos actuar (AqI)
1
sobre
la expresi on (2.33) obtenemos
(A qI)
k
x =
1
(
1
q)
k
(
1
v
1
+
2
(
1
q)
k
(
2
q)
k
v
2
+ +
n
(
1
q)
k
(
n
q)
k
v
n
)
donde, nuevamente, los ultimos t erminos son despreciables frente al primero a condici on
de que
1
= 0. En el proceso iterativo ahora habr a que plantear la ecuaci on
y
(k+1)
= (A qI)
1
x
(k)
(2.38)
que nos obligar a en cada paso a resolver el sistema de ecuaciones
x
(k)
= (A qI)y
(k+1)
(2.39)
por alguno de los m etodos discutidos en la secci on 2.1.
C alculo Num erico Contenido Prim Ult Ant Sig Volver Cerrar Abandonar

Indice de guras

INDICE DE FIGURAS Contenido Prim Ultim Ant Sig Volver Cerrar Abandonar

You might also like