Professional Documents
Culture Documents
Contenidos
2.1. Introduccin . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.2. Algunos conceptos bsicos de matrices . . . . . . . . . . . 38
2.3. Normas vectoriales y normas matriciales . . . . . . . . . . 41
2.4. Condicionamiento . . . . . . . . . . . . . . . . . . . . . . . . 43
2.5. Mtodos directos . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.5.1. Mtodo de Gauss . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.5.2. Estrategia de pivoteo . . . . . . . . . . . . . . . . . . . . . . . 51
2.5.3. Mtodos de factorizacin directa . . . . . . . . . . . . . . . . 52
2.6. Mtodos iterativos . . . . . . . . . . . . . . . . . . . . . . . . 60
2.6.1. Convergencia . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
2.6.2. Criterios de parada . . . . . . . . . . . . . . . . . . . . . . . . 62
2.6.3. Mtodos de descomposicin . . . . . . . . . . . . . . . . . . . 63
2.7. Problemas de transmisin de calor: caso estacionario . . . 69
2.7.1. Distribucin de temperatura en una barra: caso estacionario . 70
2.7.2. Distribucin de temperatura en una placa: caso estacionario . 75
2.8. Apndice: Conceptos bsicos de matrices y clculo matricial 81
2.9. Problemas del tema 2 . . . . . . . . . . . . . . . . . . . . . . 83
2.9.1. Problemas de exmenes . . . . . . . . . . . . . . . . . . . . . 93
35
36 Resolucin numrica de sistemas lineales
Los sistemas lineales que aparecen en las aplicaciones tienen dimensin elevada, fcil-
mente n 100, por lo que es necesario resolverlos con la ayuda de un ordenador.
2.1. Introduccin
Los mtodos estudiados en cursos anteriores, como los mtodos de Gauss y Cramer, se
pueden programar para la resolucin de sistemas lineales. Sin embargo, se han desa-
rrollado otros mtodos ms eficientes que sern los que estudiaremos en este captulo.
Como puede observarse, desde el punto de vista del coste computacional y el tiempo de
clculo, la resolucin de sistemas lineales mediante el mtodo de Cramer no es eficiente.
1. Llenas, es decir, casi todos los elementos son no nulos, y pequeas, n 100.
2. Huecas (o sparse), es decir, tienen pocos elementos no nulos, y grandes.
Generalmente los mtodos directos se suelen utilizar para matrices llenas y pequeas,
y los mtodos iterativos para las matrices grandes y huecas.
14
15 13
18 17
11 12
19 16
2 10
20 3 9
1 6
22 4 8
5 7
23 21
26 30
24 25
27 29
28
10
20
30
40
50
60
0 10 20 30 40 50 60
Elementos no nulos = 180 (5.00%)
50 50
100 100
150 150
200 200
250 250
300 300
350 350
400 400
450 450
0 50 100 150 200 250 300 350 400 450 0 50 100 150 200 250 300 350 400 450
Elementos no nulos = 7551 (3.29%) Elementos no nulos = 7551 (3.29%)
Es decir, por filas, la suma de los valores absolutos de los elementos extradiago-
nales es menor o igual que el valor absoluto del elemento diagonal. Se dice que es
estrictamente diagonal dominante si las desigualdades (2.3) se verifican estricta-
mente. Observemos que la diagonal dominancia es muy sencilla de comprobar.
Puede demostrarse que, si una matriz A es estrictamente diagonal dominante,
entonces es invertible.
Ejemplo 2.2.1. Matrices diagonal dominantes, tridiagonales, . . .
j
1 = 2 2 cos > 0, j = 1, . . . , n .
n+1
Junto con las matrices definidas elemento a elemento, en Anlisis Numrico es usual
trabajar con matrices a bloques. Una matriz a bloques es una matriz de la forma
A11 A1`
. .. . ,
A = ..
. ..
Ak1 Ak`
donde cada Aij es una matriz de dimensin ki `j . Muchos de los conceptos definidos
anteriormente pueden definirse para las matrices a bloques. Por ejemplo, una matriz
diagonal a bloques es una matriz de la forma
D11 0 0
.. ..
0 D22 . .
,
.. ... ...
. 0
0 0 Dkk
La norma k k recoge la idea de error pequeo, pero las otras dos normas propor-
cionan un resultado demasiado grande ya que tanto en k k2 y en k k1 sumamos
las componentes del vector. Por ello, en la prctica, al trabajar con errores, para las
normas k k2 y k k1 se suele considerar
1 q 2 1
x1 + + x2n , (|x1 | + |xn |) .
n n
Para el ejemplo anterior, tendramos
1 1
kxk2 = 0.01 , kxk1 = 0.01 .
100 100
Definicin 2.3.4. Algunas normas matriciales
Dada una matriz A de dimensin n n, se definen las siguientes normas matriciales.
n
X
kAk1 = max |aij | , (suma de columnas)
1jn
i=1
n
X
kAk = max |aij | . (suma de filas)
1in
j=1
1. Para la matriz
1 2 1
0 3 1
5 1 1
se tiene que kAk = max{4, 4, 7} = 7, kAk1 = max{6, 6, 3} = 6.
2. Para la matriz
1 1 0
1 2 1
0 1 1
los valores propios de At A son 0, 1, 9. As, kAk2 = 9 3.
2.4. Condicionamiento
Como veamos en el tema anterior, al trabajar con un ordenador los errores de aritm-
tica son inevitables. Por ello, dado un sistema lineal Ax = b, debemos plantearnos qu
ocurre si, en vez de tener A y b tenemos perturbaciones A + A y b + b. Por ello,
en vez de resolver el sistema original
Ax = b ,
estamos resolviendo el sistema perturbado
(A + A) y = b + b .
Si denotamos por x la solucin del sistema original y por y la solucin del sistema
perturbado, la situacin deseable es que pequeos errores en los datos A y b,
produzcan pequeas diferencias entre las dos soluciones kx yk.
ste es el concepto de estabilidad que vimos en el tema anterior para los mtodos
numricos. En el contexto de sistemas lineales, el trmino que se utiliza es matriz bien
condicionada o matriz mal condicionada.
2. Si A = 0, entonces
kx x
k kbk
(A) .
kxk kbk
3. Si b = 0, entonces
kx x
k kAk
(A) .
k
xk kAk
por lo que krk = 2 104 , que puede considerarse pequeo. Sin embargo, el error
cometido es bastante grande, pues kx x
k = 2.
En el siguiente resultado damos una cota del error en trminos del error residual.
kx x
k krk
(A) . (2.5)
kxk kbk
Observemos que, si la matriz del sistema lineal est muy mal condicionada, aunque el
error residual sea pequeo, podemos tener un error grande en la aproximacin.
As kAk = 3.0001, kA1 k = 20000 y (A) = 60002. La matriz del sistema lineal
est muy mal condicionada.
1
hij = , i, j = 1, . . . , n .
i+j1
vamos calculando
2 x3 1
x3 = 3 , x2 = = , x1 = 1 x3 2 x2 = 3 .
2 2
El mtodo del ejemplo 2.5.1 se denomina mtodo de sustitucin hacia atrs y requie-
re n(n 1)/2 sumas, n(n 1)/2 productos y n divisiones. En total se requieren n2
operaciones elementales.
van haciendo ceros por debajo de la diagonal principal en la primera columna, segunda
columna, y as sucesivamente hasta llegar a la columna n 1. Una vez obtenido el
sistema lineal con matriz de coeficientes triangular, se utiliza el mtodo de sustitucin
hacia atrs para hallar la solucin.
(k)
Vamos a denotar por Ak = (aij ) la matriz con ceros por debajo de los elementos
diagonales en las k 1 primeras columnas.
(k) (k) (k) (k) (k)
a11 ) a12 a1,k1 a1,k ... a1,n
(k) (k) (k) (k)
0 a22 a2,k1 a2,k ... a2,n
.. ... .. .. ..
. 0 . . .
.. ..
(k) (k) (k)
. . 0 ak1,k1 ak1,k ak1,n
Ak =
.. .. .. (k) (k)
. . . 0 ak,k ak,n
.. .. .. .. (k) (k)
. . . . ak+1,k ak,n
.. .. .. .. .. ..
. . . . . .
(k)
0 0 0 0 an,k a(k)
n,n
(k)
El siguiente paso en el mtodo de Gauss es hacer ceros por debajo de ak,k , el elemento
diagonal de la columna k. Para ello, restamos a la fila j-sima, j k + 1, la fila k-sima
multiplicada por
(k)
ajk
mjk = (k) . (2.6)
akk
En la tabla siguiente se muestran los tiempos requeridos para resolver un sistema lineal
con una mquina que opere a 300 Gflops.
El nmero de operaciones y los tiempos de clculo se pueden comparar con los del
mtodo de Cramer.
104 x1 + x2 = 1
x1 + x2 = 2
Este ejemplo muestra los problemas que pueden aparecer cuando el elemento que se
utiliza para pivotar, a11 = 104 , es pequeo comparado con los otros valores de la
matriz. Para solventar estos problemas, se utilizan estrategias de pivoteo. Veamos una
de ellas, la estrategia de pivote parcial.
Estrategia de pivote parcial. Dada la matriz A(k) con ceros por debajo de los
(k) (k)
elementos a11 , . . . , ak1,k1 , la estrategia de pivote parcial consiste en, antes de hacer
(k)
ceros por debajo del elemento ak,k , determinar el menor p k tal que
(k) (k)
|ap,k | = max |ai,k | .
kin
1 1 2
arit. .
0 1 1
Como veremos ms adelante, en algunos mtodos hay que resolver varios sistemas
lineales con la misma matriz de coeficientes,
A x1 = b1 ,
A x2 = b2 ,
A x3 = b3 ,
A x4 = b4 ,
..
.
Si resolvemos cada sistema lineal mediante el mtodo de Gauss que hemos explicado en
la seccin anterior, el trabajo realizado para resolver un sistema lineal no se utiliza en
la resolucin de los otros sistemas lineales. En esta seccin veremos una formulacin del
mtodo de Gauss que nos permitir resolver de forma eficiente varios sistemas lineales
con la misma matriz de coeficientes.
Vamos a suponer de momento que en el mtodo de Gauss no hay que realizar permu-
taciones de filas, es decir, en el proceso, todos los elementos pivote son distintos de
cero.
En este caso, el proceso de hacer ceros en una columna por debajo de la diagonal
puede expresarse en trminos de unas matrices denominadas matrices elementales. En
el ejemplo 2.5.2, si denotamos
1 0 0 0
2 1 0 0
M (1) =
,
3 0 1 0
1 0 0 1
el producto M (1) A es la matriz cuya primera columna tiene ceros por debajo de la
diagonal,
1 0 0 0 1 1 0 3 1 1 0 3
2 1 0 0 2 1 1 1 0 1 1 5
= .
3 0 1 0 3 1 1 2 0 4 1 7
1 0 0 1 1 2 3 1 0 3 3 2
Obsrvese que M (1) es triangular inferior. De forma similar, denotamos por M (k) la ma-
triz elemental triangular inferior que, al multiplicar a izquierda, hace ceros por debajo
de la diagonal en la columna k-sima. As, el mtodo de Gauss podemos expresarlo
como
(n1)
M
| M (2) M (1)} A = |
{z U
{z } ,
triangular inferior triangular superior
o bien, si M = M (n1) M (2) M (1) ,
MA=U. (2.7)
A = LU .
Como hemos visto en el ejemplo 2.5.3, no siempre puede utilizarse el mtodo de Gauss
sin realizar ningn cambio de filas.
0 0 0 1
0 1 0 0
P = ,
1 0 0 0
0 0 1 0
0 0 0 1
EA es la matriz A con las filas 2 y 3 intercambiadas.
M (n1) M
(2) M
(1) P A = U
| {z } | {z } ,
triangular inferior triangular superior
i son matrices triangulares inferiores, y P = E (n1) E (2) E (1) . De esta forma,
donde M
=M
si M (n1) M
(2) M
(1) , tenemos que
PA = U .
M
PA = LU .
1. Calculamos P , L y U .
A x1 = b1 ,
A x2 = b2 ,
A x3 = b3 ,
..
.
L =
1.0000 0 0
0.3333 1.0000 0
0.1667 0.2857 1.0000
U =
6.0000 2.0000 1.0000
0 2.3333 0.6667
0 0 3.6429
P =
1 0 0
0 1 0
0 0 1
Obsrvese que en este caso la matriz de permutacin P es la identidad.
Consideremos ahora el ejemplo 2.5.2. Recordemos que en este caso no era necesario
realizar permutaciones de filas, por lo que se existe la factorizacin A = L U . Introdu-
ciendo
>> A=[1 -1 0 3; 2 1 -1 1; 3 -1 -1 2; -1 2 3 -1];
>> [L,U,P]=lu(A)
obtenemos
L =
1.0000 0 0 0
-0.3333 1.0000 0 0
0.6667 1.0000 1.0000 0
0.3333 -0.4000 -0.4667 1.0000
U =
3.0000 -1.0000 -1.0000 2.0000
0 1.6667 2.6667 -0.3333
0 0 -3.0000 0.0000
0 0 0 2.2000
P =
0 0 1 0
0 0 0 1
0 1 0 0
1 0 0 0
Observemos que con Matlab la matriz P que se obtiene no es la identidad, es decir, en
el algoritmo se han realizado intercambio de filas. La razn es que Matlab utiliza una
tcnica de pivoteo para aminorar los errores de redondeo.
1 0 0 0
Mtodo de Cholesly
En esta seccin vamos a estudiar algunos mtodos iterativos para la resolucin sistemas
lineales de la forma
Ax = b,
donde A es una matriz n n, y b Rn . Como hemos indicado anteriormente, en
los mtodos iterativos, a partir de un vector inicial x(0) se construye una sucesin
(x(m) )mN tal que x(m) x cuando m . Como no podemos construir infinitos
trminos, utilizando algn criterio de parada detendremos las iteraciones
(k0 1)
x(1) , x(2) , x(3) , x(4) , . . . , (k0 )
, x(k0 +1) , . . . ,
x ,x
PARAR
2.6.1. Convergencia
Este mtodo es consistente ya que, si operamos con la parte derecha de (2.9) obtenemos
x(2k) = 0 , x(2k+1) = b , k = 1, 2, . . .
que no converge a la solucin del sistema lineal. Aunque haya otros vectores, por
ejemplo x(0) = b/2, para los cuales la sucesin (x(k) )kN es convergente a la solucin
del sistema lineal, el mtodo iterativo (2.10) no es convergente. Observemos que en la
definicin de convergencia se exige que la sucesin (x(k) )kN converja a la solucin del
sistema lineal para todo vector inicial x(0) .
De esta forma, si existe una norma k k tal que kBk < 1, usando la propiedad (2.12)
obtenemos la condicin de convergencia (2.11).
Al utilizar esta propiedad debe tenerse en cuenta que en este curso se han definido
nicamente tres normas matriciales, k k1 , k k , k k2 , pero existen muchas otras
normas. Por ello, el que para las normas que conocemos no se cumpla que kBk < 1,
no quiere decir que no exista otra para la que s se cumpla esta condicin.
Ejemplo 2.6.6. Convergencia usando norma
Consideramos un mtodo iterativo consistente con matriz de iteracin
0 1/3 1/3
2/5
B= 0 1/5
.
1/3 1/3 0
En este caso
kBk1 = max{11/15, 2/3, 8/15} = 11/15 < 1 ,
por lo que, usando la nota 2.6.5, podemos concluir que el mtodo es convergente.
En esta seccin vamos a definir dos criterios que usaremos como criterio de parada
para los mtodos iterativos de la forma (2.38).
En primer lugar, el usuario debe determinar la magnitud del error admisible dando un
valor (pequeo) denominado tolerancia y que denotaremos por T OL.
x = M 1 N x + M 1 b .
(I B)A1 b = (I M 1 N )A1 b = M 1 (M N ) A1 b = M 1 b = c ,
| {z }
A
por lo que se verifica la condicin de consistencia (2.9).
Dada una matrix A = (aij ), para obtener mtodos de descomposicin podemos consi-
derar A = D L U donde D = diag (a11 , . . . , ann ) y
0 a12 a1,n1 a1n
0 0 0 0
.. .. ..
a21 0 0 0
0
. . .
.. .. .. .. ..
.. .. .. ..
. . . . .
L= ,U =
0 . . . .
..
.. ..
.
..
. . 0 0 . 0 an1,n
..
.
an1 an2 . an,n1 0 0 0 .. 0 0
3. Mtodo de relajacin:
1 1w
M= D L, N= D+U,
w w
en donde w 6= 0. As (2.16) es
1 1
1 1w 1
x(k+1) = DL D + U x(k) + DL b.
|
w {z
w } |
w {z }
B c
Observemos que, para w = 1, obtenemos el mtodo de Gauss-Seidel.
Nota 2.6.7. Observemos que, como la matriz M tiene que ser invertible, en los mtodos
de Jacobi, Gauss-Seidel y de relajacin se requiere que aii 6= 0. Si la matriz de coefi-
cientes no verifica esta condicin, no es posible utilizar estos mtodos. Como veremos
ms adelante en los ejemplos, una reorganizacin de las ecuaciones puede resolver este
problema.
En los mtodos de Jacobi y de Gauss-Seidel, una vez hallado el vector x(k) , las com-
ponentes del vector x(k+1) se van calculando secuencialmente para i = 1, 2, . . .. Una
(k+1) (k+1) (k+1) (k+1)
vez calculados x1 , x2 , . . . , xi1 , para hallar xi , en el mtodo de Jacobi
consideramos
n i1 n
(k+1) 1 X (k) 1 X (k) X (k)
xi = bi aij xj = bi aij xj aij xj ,
aii j=1 a ii j=1 j=i+1
j6=i
A continuacin damos algunos resultados para algunos tipos de matrices que aparecen
en las aplicaciones:
Matrices tridiagonales.
Observemos que una ordenacin adecuada de las ecuaciones puede dar lugar a matrices
estrictamente diagonal dominantes para las cuales podemos utilizar el teorema 2.6.9.
As, si uno de los mtodos es convergente, el otro tambin lo es, y el mtodo de Gauss-
Seidel es ms rpido. Si uno de los mtodos es divergente, el otro tambin lo es.
Adems, la matriz (2.4) tiene la condicin de signos del teorema 2.6.10, por lo que, al
ser convergente el mtodo de Gauss-Seidel, el mtodo de Jacobi tambin lo es, pero el
mtodo de Jacobi es ms lento.
Observemos que en este caso la matriz no tiene ninguna propiedad (no es estrictamente
diagonal dominante, no es simtrica definida positiva) que nos asegure la convergencia
del mtodo de Gauss-Seidel. Comenzamos las iteraciones:
0 11.38240 10.65641
0
39.65888
40.65268
x(0) = , x(2) = , . . . x(4) =
0
0.79065
0.67649
,...
0
0.78878
0.67008
0 0.75454 0.66568
Se cumple el criterio de parada, por lo que tomamos como aproximacin del sistema
lineal
10.6666
40.6666
x x(9) =
0.66666
.
0.66666
0.66666
d2 T g(x)
1D: 2
(x) = .
dx k
2T 2T g(x, y)
2D: (x, y) + (x, y) = .
x2 y 2 k
2. 2D: (x, y) [0, Lx ][0, Ly ], que representa, por ejemplo, una placa rectangular.
Para que el problema tenga solucin nica, junto con la ecuacin en derivadas parciales
debemos imponer condiciones de contorno en la frontera del recinto. Las condiciones
de contorno pueden ser:
3. frontera aislada,
d2 T g(x)
2
(x) = , 0 < x < L. (2.17)
dx k
En primer lugar discretizamos (2.17) mediante diferencias finitas , y ms adelante
introduciremos las condiciones de contorno.
xi = (i 1) h , i = 1, . . . , M + 1 .
xh = (x1 , x2 , . . . , xM , xM +1 ) RM +1 .
T h = (T1 , T2 , . . . , TM , TM +1 )t RM +1 ,
Como veremos ms adelante, para algunos tipos de condiciones de frontera, las com-
ponentes T1 y TM +1 pueden ser conocidas.
d2 T g(xi )
(x i ) = , i = 2...,M .
dx2 k
Aproximamos las derivadas parciales con la siguiente frmula central
d2 T 1
2
(xi ) 2 (Ti1 2 Ti + Ti+1 ) ,
dx h
Segundo semestre, curso 2016/2017
2.7. Problemas de transmisin de calor: caso estacionario 71
T1 = Tizda ,
TM +1 = Tdcha ,
en donde y son valores dados, se dice que se tiene una condicin de contorno
tipo Neumann.
2. Si se impone
Como se indic en la nota 2.7.1, para introducir otros tipos de condiciones de contorno,
bastar cambiar en (2.19) la primera y la ltima ecuacin.
d2 T g(x1 ) 1 g(x1 )
2
(x1 ) = 2
(T0 2 T1 + T2 ) = . (2.22)
dx k h k
Esta expresin contiene el trmino T0 , que correspondera al nodo x0 = h, que est
fuera de la barra. En la condicin de contorno T 0 (0) + 0 T (0) = , discretizamos
derivada primera mediante una frmula central de tres puntos,
1
T 0 (0) + 0 T (0) = (T2 T0 ) + 0 T1 = . (2.23)
2h
UPNA. Grado en Tecnologas Industriales. Mtodos Numricos.
74 Resolucin numrica de sistemas lineales
h2
2 (1 + 0 h) T1 2 T2 = g(x1 ) + 2 h .
k
d2 T g(xM +1 ) 1 g(xM +1 )
2
(xM +1 ) = 2
(TM 2 TM +1 + TM +2 ) = .
dx k h k
(2.24)
Esta expresin contiene el trmino TM +2 , que correspondera al nodo xM +2 = L+h, que
est fuera de la barra. En la condicin de contorno T 0 (L) + L T (L) = , discretizamos
derivada primera mediante una frmula central de tres puntos,
1
T 0 (L) + L T (L) = (TM +2 TM ) + L TM +1 = . (2.25)
2h
h2
2 TM + 2(1 + L h) TM +1 = g(xM +1 ) + 2 h .
k
h2
2 T1 2 T2 = g(x1 ) + 2 h .
k
h2
2 TM + 2 TM +1 = g(xM +1 ) + 2 h .
k
en donde D = {(x, y) R2 | 0 < x < a , 0 < y < b}. En primer lugar discretizaremos
(2.26) mediante diferencias finitas; ms adelante introduciremos las condiciones de
contorno en la frontera de D.
xi , i = 1, 2 . . . , M + 1 ,
yj , j = 1, 2 . . . , N + 1 ,
en total, (N +1)(M +1) nodos (xi , yj ):
(x1 , yj ) , (xM +1 , yj ) , j = 1, . . . , N + 1 ,
(xi , y1 ) , (xi , yN +1 ) , i = 1, . . . , M + 1 ,
Deseamos hallar Tij , una aproximacin de la solucin exacta en los puntos (xi , yj ), Tij
T (xi , yj ), i = 1, . . . , M +1, j = 1, . . . , N +1. En total, tenemos (N +1)(M +1) valores
Tij . Puede que no todos ellos sean incgnitas. Por ejemplo, si tenemos la temperatura
en la frontera de D, entonces nicamente tenemos que hallar T (x, y) en el interior de
D.
Vamos a mostrar el sistema lineal resultante para la placa del dibujo anterior, en el que
M = 5 y N = 4, suponiendo que la temperatura en la frontera de la placa es conocida.
El vector incgina es
U = (T2,2 , T3,2 , T4,2 , T5,2 , T2,3 , T3,3 , T4,3 , T5,3 , T2,4 , T3,4 , T4,4 , T5,4 )t .
| {z } | {z } | {z }
U2 U3 U4
Escribimos las 4 ecuaciones para la segunda fila (empezando por abajo) de la placa,
que se corresponden con los ndices j = 2, e i = 2, 3, 4, 5, y resaltamos los valores
conocidos.
g(x2 , y2 )
T2,1 T1,2 + T2,2 T3,2 T2,3 = , i = 2,
k
g(x3 , y2 )
T3,1 T2,2 + T3,2 T4,2 T3,3 = , i = 3,
k
g(x4 , y2 )
T4,1 T3,2 + T4,2 T5,2 T4,3 = , i = 4,
k
g(x5 , y2 )
T5,1 T4,2 + T5,2 T6,2 T5,3 = , i = 5.
k
Sustituimos los valores conocidos:
g(x2 , y2 )
S (x2 ) O (y2 ) + T2,2 T3,2 T2,3 = , i = 2,
k
g(x3 , y2 )
S (x3 ) T2,2 + T3,2 T4,2 T3,3 = , i = 3,
k
g(x4 , y2 )
S (x4 ) T3,2 + T4,2 T5,2 T4,3 = , i = 4,
k
g(x5 , y2 )
S (x5 ) T4,2 + T5,2 E (y2 ) T5,3 = , i = 5.
k
As obtenemos el primer bloque de ecuaciones,
A2,2 U2 + A2,3 U3 = B2 ,
donde
0 0 0 0 0
0 0 0 0
A2,2 = A2,3 = I4 = ,
0 0 0 0
0 0 0 0 0
g(x2 , y2 )
+ S (x2 ) + O (y2 )
k
g(x3 , y2 )
+ S (x3 )
B2 =
k
.
g(x4 , y2 )
+ S (x4 )
k
g(x5 , y2 )
+ S (x5 ) + E (y2 )
k
De forma similar, escribimos las siguientes 4 ecuaciones para la tercera fila de la placa,
que se corresponden con los ndices j = 3, e i = 2, 3, 4, 5,
g(x2 , y3 )
T2,2 T1,3 + T2,3 T3,3 T2,4 = , i = 2,
k
g(x3 , y3 )
T3,2 T2,3 + T3,3 T4,3 T3,4 = , i = 3,
k
g(x4 , y3 )
T4,2 T3,3 + T4,3 T5,3 T4,4 = , i = 4,
k
g(x5 , y3 )
T5,2 T4,3 + T5,3 T6,3 T5,4 = , i = 5.
k
g(x2 , y3 )
T2,2 O (y3 ) + T2,3 T3,3 T2,4 = , i = 2,
k
g(x3 , y3 )
T3,2 T2,3 + T3,3 T4,3 T3,4 = , i = 3,
k
g(x4 , y3 )
T4,2 T3,3 + T4,3 T5,3 T4,4 = , i = 4,
k
g(x5 , y3 )
T5,2 T4,3 + T5,3 E (y3 ) T5,4 = , i = 5.
k
A4,3 U3 + A4,4 U4 = B4 ,
0 A4,3 A4,4 U4 B4
Sea A = (aij ) una matriz real mn (m filas y n columnas). En esta seccin recordamos
algunos conceptos bsicos de matrices y clculo matricial.
Dimensin n kerrork2
100 6.5603e-07
200 9.5711e-07
500 1.5405e-06
1000 2.1913e-06
2000 3.1078e-06
4000 4.4014e-06
10000 6.9652e-06
20000 9.8531e-06
30000 1.2069e-05
8 8 8
10 10 10
0 100 200 300 400 500 0 100 200 300 400 500 0 100 200 300 400 500
Responde razonadamente:
(c) Qu podemos modificar para que los resultados obtenidos en la tabla sean
coherentes con los resultados obtenidos en las grficas?
Condicionamiento
x1 + 9 x2 + 12 x3 = 22 ,
9 x1 + 3 x2 + x3 = 13 ,
x1 + x2 + x3 = 3 ,
x1 + 9 x2 + 12 x3 = 21.8 ,
9 x1 + 3 x2 + x3 = 13.2 ,
x1 + x2 + x3 = 2.9 ,
3 4 39
halla el condicionamiento segn k k1 .
(b) Justifica el condicionamiento de la matriz la diferencia entre la solucin del
sistema original y la del sistema perturbado?
(a) Halla una cota del error relativo cometido al aproximar la solucin del sis-
tema lineal por x(10) .
(b) Responde razonadamente: cmo puede modificarse el programa para obte-
ner mejores resultados? (Evaluacin curso 2012-2013)
Mtodos directos
8. Dada la matriz A, 1 3 5
2 2 8
1
A= 1
1 4
,
1 1 11
2 2 8
usamos la orden de Matlab [L,U,P]=lu(A) y obtenemos
1 1 14
1 0 0 0 1 0
1 1
2 1 0 ,
L= 0 2
U = , 1 0 0 .
P =
2
1 1
2 2
1 0 0 1 0 0 1
6 18 26
usamos la orden de Matlab chol(A, lower) y obtenemos
2 0 0
2 3 0 .
L=
3 4 1
Resuelve el sistema lineal
4 4 6 18
4 13 18 x = 39 ,
6 18 26 56
usando la factorizacin de Cholesky.
(b) Para la matriz A del apartado anterior, se puede utilizar el mtodo de
eliminacin gaussiana sin intercambiar filas?
(c) Usamos la orden de Matlab [L,U,P]=lu(A) y obtenemos
1 0 0 6 18 26
2
0 0 1
1 0 , 0 8 34
L= U = 3 , P = 1 0 0 .
3
2 1
8 1 0 0 4 3 0 1 0
3
Mtodos iterativos
cuya solucin es x1 = 1, x2 = 1:
(a) Estudia la convergencia del mtodo de Jacobi y de Gauss-Seidel.
(b) Tomando x(0) = (0, 0)t , realiza 4 iteraciones con el mtodo de Jacobi y de
Gauss-Seidel. Explica los resultados.
11. Se intenta resolver el sistema lineal Ax = b
1 10 0 0 x1 21
0 1 10 0 x2 32
= , (2.28)
0 0 1 10 x3 43
10 0 0 1 x4 14
con R, 6= 0.
(a) Halla condiciones sobre x(0) y para que el mtodo (2.29) sea convergente.
! ! !
1 1 x1 2
= . (2.30)
2 4 x2 2
(a) Halla condiciones para que el mtodo iterativo (2.31) sea convergente.
(b) Resolvemos el sistema lineal
! ! !
1 1 x1 2
= ,
2 4 x2 2
con el mtodo (2.31) a partir del vector x0 = (2, 1)t , obteniendo
! ! ! !
(1) 1 (2) 1 (3) 7 (4) 13
x = , x = , x = , x = .
3 5 15 28
Explica qu ocurre y por qu se obtienen estos resultados. Responde razo-
nadamente: qu pasara si cambiramos el vector inicial x(0) ?
(Evaluacin curso 2012-2013)
0 1 2 3
Se ha intentado resolver este sistema utilizando el mtodo de Jacobi con una
tolerancia de 106 y un nmero mximo de iteraciones igual a 100, obtenindose
la siguiente respuesta:
La sucesin diverge.
El mtodo de Jacobi no debe utilizarse para resolver este sistema.
Nmero de iteraciones: 48
Responde razonadamente a las siguientes preguntas:
(d) Sin hacer las iteraciones, responde razonadamente: qu se puede decir del
mtodo de Gauss-Seidel? (Evaluacin curso 2014-2015)
1 z b3
donde y R.
d2 u(x)
a(x) u(x) = f (x) , x (0, L) ,
dx2
u(0) = u(L) = 1 ,
(a) Discretiza el problema utilizando una frmula central de 3 puntos para apro-
d2 u(x)
ximar . (Nota: Divide [0, L] en 4 trozos)
dx2
Segundo semestre, curso 2016/2017
2.9. Problemas del tema 2 93
(b) Indica el tipo de problema que se obtiene, especificando las incgnitas del
mismo. Seala las propiedades del problema obtenido. Escribe el problema
resultante para cualquier N .
(c) Indica razonadamente el mtodo (o mtodos) ms adecuados para resolver
el problema obtenido tras la discretizacin. (Evaluacin curso 2012-2013)
d2 u du
2
(x) + a(x) (x) u(x) = f (x) , x (0, L) , (2.33)
dx dx
u(0) = u(L) = 1 , (2.34)
0 0.23810 1 0 0 0.071429 0 0 1
ii) Para = 2, = 1/2,
1 0 0 2 2 0 1 0 0
L = 1 1 0 ,U = 0 3 1 ,P = 0 1 0 .
0 0.33333 1 0 0 0.16667 0 0 1
iii) Para = 17/20, = 4,
1 0 0 2 5 1 0 1 0
L=
0 1 0 ,U = 0 1
4 ,P = 0 0 1 .
0 0 1
b.2) (, ) = ( 12 , 52 ):
1.0000 0 0 2.5000 0.5000 4.0000
L = 0.4000
1.0000 0 , U =
0 2.8000 0.6000
0.8000 0.0357 1.0000 0 0 3.1786
0 0 1
P = 0 1 0
1 0 0
b.3) (, ) = ( 5
2 2
, 1 ):
1.0000 0 0 2.0000 2.5000 4.0000
L = 0.5000 1.0000 0
, U = 0 4.2500 1.6000
0.2500 0.4412 1.0000 0 0 4.4412
1 0 0
P = 0 1 0
0 0 1
(c) Suponiendo que = 0, halla los valores de > 0 para los cuales el mtodo
de Jacobi es convergente. Qu puede decirse en este caso del mtodo de
Gauss-Seidel? (Evaluacin curso 2015-2016)
23. Para aproximar la solucin de un sistema lineal Ax = b, con A = (aij )ni,j=1 una
matriz n n, se propone el mtodo iterativo
x(0) , dado ,
1 1
(2.38)
x(k+1) = (In D A) x (k)
+D b, k 0 ,
con , R, donde D es una matriz diagonal formada por los elementos dia-
gonales de A, D = diag(a11 , . . . , , ann ), e In es la matriz identidad de dimensin
n.
(a) Halla condiciones sobre y para que el mtodo (2.38) sea convergente.
(b) Consideremos el sistema lineal
10 1 0 x1 9
1 10 1 x2 = 10 . (2.39)
0 1 3 x3 4
iHL
1.4
1.2
1.0
0.8
0.6
0.4
0.2
= 1.5 y =2
(k) (k) (k)
k x1 x2 x3
0 1.0000 0.0000 2.0000
1 1.3000 1.8500 1.6667
2 1.4275 1.0200 0.9083 =2 y =2
(k) (k) (k)
3 1.2392 1.5679 1.7025 k x1 x2 x3
=1 y =1
4 1.4156 1.1466 1.0315 0 1.0000 0.0000 2.0000 (k) (k) (k)
k x1 x2 x3
5 1.2642 1.4843 1.5776 1 0.8000 1.8000 0.6667
0 1.0000 0.0000 2.0000
6 1.3905 1.2108 1.1357 2 1.3600 0.2267 0.8000
1 0.9000 0.9000 1.3333
7 1.2864 1.4328 1.4934 3 0.4853 1.8853 1.7156
2 0.9900 0.9567 1.0333
8 1.3717 1.2525 1.2036 4 1.6917 -0.1314 -0.3058
3 0.9957 0.9957 1.0144
9 1.3020 1.3990 1.4386 5 0.082 2.5309 3.0600
4 0.9996 0.9981 1.0014
10 1.3588 1.2800 1.2479 6 2.2242 -1.1265 -2.0806
5 0.9998 0.9998 1.0006
11 1.3126 1.3766 1.4027 7 -0.6495 3.9874 5.4983
.. .. .. .. 6 1.0000 0.9999 1.0001
. . . . 8 3.2470 -3.217 -5.4899
7 1.0000 1.0000 1.0000
30 1.3337 1.3325 1.332 9 -2.0904 6.9644 10.3012
8 1.0000 1.0000 1.0000
31 1.3330 1.3340 1.3344 10 5.2832 -7.4427 -12.2775
32 1.3336 1.3328 1.3325 11 -4.9718 12.9548 19.9060
33 1.3331 1.3338 1.334
34 1.3335 1.3330 1.3328
35 1.3332 1.3336 1.3338
36 1.3334 1.3331 1.3330
a a 1 z b3
donde a R.
(a) Da una condicin suficiente que garantice que el mtodo de Jacobi converge.
Utilizando esta condicin suficiente, qu se puede decir para
1 1 1
a = 1 , a= , a= , a= ?
2 3 6
(b) Determina los valores a que hacen que el mtodo de Jacobi sea convergente.
Estudia la convergencia del mtodo de Jacobi para los siguientes valores de
a:
1 1 1
a = 1 , a= , a= , a= .
2 3 6
Qu valores de a proporcionan la convergencia ms rpida?
(c) Dado el sistema lineal
y z
x+ + = 1,
8 8
x z
+y+ = 2,
8 8
x y
+ + z = 3.
8 8
Da una iteracin con el mtodo de Jacobi a partir del vector x(0) = (1, 1, 8)t .
Responde razonadamente Qu puede decirse del mtodo de relajacin?
(Evaluacin curso 2014-2015)
Responde razonadamente:
kx x(k) k kAx(k) bk
i) Qu representa ? Qu representa ?
kxk kbk
kAx(k) bk kx x(k) k
iii) Los errores y , son de la misma magnitud?
kbk kxk
Cmo explicaras este comportamiento? (Evaluacin curso 2015-2016)
con , R \ {0}.
d2 u du
2
(x) + (x) u(x) = f (x) , x (0, L) , (2.40)
dx dx
du
u(0) = 2 , (L) = 0 , (2.41)
dx
donde , R, y f : [0, L] R es una funcin conocida.
d2 u du
2
(x) + (x) u(x) = f (x) , x (0, L) , (2.42)
dx dx
u0 (0) = 0 , u(L) = 1 , (2.43)