You are on page 1of 36

Introducción

Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

Grado en Físicas
Métodos Numéricos
Tema 5. Sistemas de Ecuaciones Lineales

Alejandro Medina Domínguez

Diciembre 2017

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

Esquema

1 Introducción

2 Métodos directos

3 Métodos iterativos

4 Ejercicios

5 Bibliografía

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

Esquema

1 Introducción

2 Métodos directos

3 Métodos iterativos

4 Ejercicios

5 Bibliografía

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

Introducción
Consideraremos sistemas de ecuaciones lineales de la forma:

a11 x1 + a12 x2 + ··· + a1n xn = b1


a21 x1 + a22 x2 + ··· + a2n xn = b2
.. .. .. ..
. . . .
an1 x1 + an2 x2 + ··· + ann xn = bn ,
que matricialmente se puede escribir como:
    
a11 a12 · · · a1n x1 b1
 a21 a22 · · · a2n   x2   b2 
= ,
    
 .. .. ..   .. ..
 . . .  .   . 
an1 an2 · · · ann xn bn
esto es,
A · ~x = ~b

Alejandro Medina
Introducción
Métodos directos Sistemas simples
Métodos iterativos Eliminación gaussiana
Ejercicios Descomposición LU
Bibliografía

Esquema

1 Introducción

2 Métodos directos
Sistemas simples
Eliminación gaussiana
Descomposición LU
Cálculo de la inversa y el determinante de una matriz

3 Métodos iterativos

4 Ejercicios

5 Bibliografía
Alejandro Medina
Introducción
Métodos directos Sistemas simples
Métodos iterativos Eliminación gaussiana
Ejercicios Descomposición LU
Bibliografía

Sistema triangular. Sustitución hacia atrás


Sistema triangular:

a11 x1 + a12 x2 + ··· + a1,n−1 xn−1 + a1n xn = b1


0 + a22 x2 + ··· + a2,n−1 xn−1 + a2n xn = b2
. . . . .
. . . . .
. . . . .
0 + 0 + ··· + an−1,n−1 xn−1 + an−1,n xn = bn−1
0 + 0 + ··· + 0 + ann xn = bn

Sustitución hacia atrás:


A partir de la ecuación n-ésima se obtiene,
bn
xn = .
ann
A continuación se despeja xn−1 , que sólo depende de xn (que ya conocemos):

bn−1 − an−1,n xn
xn−1 = .
an−1,n−1

El proceso se repite hacia atrás hasta llegar a la primera ecuación, en el caso i-ésimo se tiene:
n
X
bi − aij xj

j=i+1
xi = .
aii

Alejandro Medina
Introducción
Métodos directos Sistemas simples
Métodos iterativos Eliminación gaussiana
Ejercicios Descomposición LU
Bibliografía

Eliminación gaussiana

La solución de un sistema lineal no cambia si:


a) Se multiplica una ecuación por una constante distinta de cero.
b) Se suma o resta a una ecuación una combinación lineal de las
otras.
c) Se intercambian dos ecuaciones.
d) Se efectúa una secuencia cualquiera de las operaciones
anteriores.

Alejandro Medina
Introducción
Métodos directos Sistemas simples
Métodos iterativos Eliminación gaussiana
Ejercicios Descomposición LU
Bibliografía

Descomposición LU

Ejemplo
La matriz A viene dada por:
   
2 1 3 a11 a12 a13
A0 ≡ A =  4 3 10  =  a21 a22 a23  .
2 4 17 a31 a32 a33
Definimos,
     
1 0 0 1 0 0 1 0 0
L1 ≡  −a21 /a11 1 0  ≡  −m21 1 0  =  −4/2 1 0 ,
−a31 /a11 0 1 −m31 0 1 −2/2 0 1
donde mi1 = ai1 /a11 , (i > 1).
 
2 1 3
A1 ≡ L1 · A0 =  0 1 4 .
0 3 14

Alejandro Medina
Introducción
Métodos directos Sistemas simples
Métodos iterativos Eliminación gaussiana
Ejercicios Descomposición LU
Bibliografía

Análogamente se define:
   
1 0 0 1 0 0
L2 ≡  0 1 0 = 0 1 0 ,
0 −m32 1 0 −3/1 1

donde ahora,
elemento a32 de la nueva A1
m32 = .
elemento a22 de la nueva A1
Multiplicando L2 por A1 se obtiene:
 
2 1 3
A2 ≡ L 2 · A1 =  0 1 4  ≡ U,
0 0 2

donde U es una matriz triangular superior. Finalmente se tiene que,

L2 · L1 · A = U

Alejandro Medina
Introducción
Métodos directos Sistemas simples
Métodos iterativos Eliminación gaussiana
Ejercicios Descomposición LU
Bibliografía

En general,
Ln−1 · · · · · L1 · A = U,
donde U es la matriz triangular superior,

u11 u12 ··· u1n


 
0 u22 ··· u2n
U=  . . .. . ,
. . .
. . . .
0 0 ··· unn

Las matrices Lj vienen dadas por:

1 ··· 0 0 0 ··· 0
 
. . . . . .
. . . . . .
 . . . . . . 
0 ··· 1 0 0 ··· 0
 
Lj ≡

 0 ··· 0 1 0 ··· 0

 ← fila j
 0 ··· 0 −mj+1,j 1 ··· 0 
 . . . . .. . 
. . . . .
. . . . . .
0 ··· 0 −mn,j 0 ··· 1

columna j
elemento aij de la matriz Aj−1
mij = (i > j)
elemento ajj de la matriz Aj−1

Aj = Lj · Aj−1 (j ≥ 1); A0 = A; An−1 = U.

Alejandro Medina
Introducción
Métodos directos Sistemas simples
Métodos iterativos Eliminación gaussiana
Ejercicios Descomposición LU
Bibliografía

Es fácil comprobar que,

1 ··· 0 0 0 ··· 0
 
. . . . . .
. . . . . .
 . . . . . . 
0 ··· 1 0 0 ··· 0
 
L−1 j

 0 ··· 0 1 0 ··· 0
 ← fila
j  
 0 ··· 0 mj+1,j 1 ··· 0 
 . . . . . . 
. . . . .. .
. . . . .
0 ··· 0 mn,j 0 ··· 1

columna j
Teniendo en cuenta que,
−1 −1
A = L1 · · · · · Ln−1 ·U = L · U,
| {z }
L
se obtiene, por inducción, que L es la siguiente matriz triangular inferior :

1 0 ··· 0
 
m21 1 ··· 0
−1 −1
L ≡ L1 · · · · · Ln−1 =  . . . . .
. . . .
. . . .
mn1 mn2 ··· 1

Entonces podemos escribir:


A = L · U,

L es una matriz triangular inferior con diagonal unidad y U es una matriz triangular superior.
Alejandro Medina
Introducción
Métodos directos Sistemas simples
Métodos iterativos Eliminación gaussiana
Ejercicios Descomposición LU
Bibliografía

Descomposición LU para resolver sistemas lineales

A · ~x = ~b,
donde A se puede factorizar como:

A = L · U,

Se tiene entonces:
A · ~x = L · (U · ~x ) = ~b,
|{z}
≡ ~y
y, por tanto, podemos reescribir el sistema como:

1) L · ~y = ~b −→ ~y (por sustitución hacia adelante)


2) U · ~x = ~y −→ ~x (por sustitución hacia atrás)

La primera ecuación se puede resolver para ~y por sustitución hacia adelante (L es


triangular inferior) y una vez obtenido ~y , se resuelve la segunda ecuación por
sustitución hacia atrás (U es triangular superior) .

Alejandro Medina
Introducción
Métodos directos Sistemas simples
Métodos iterativos Eliminación gaussiana
Ejercicios Descomposición LU
Bibliografía

Algoritmo Doolittle

Ejemplo
     
1 0 0 u11 u12 u13 a11 a12 a13
 m21 1 0 · 0 u22 u23  =  a21 a22 a23 
m31 m32 1 0 0 u33 a31 a32 a33
a)    
   
 ·   −→ u11 ≡ ac
11

   
   
 ·   −→ u12 ≡ ac
12

   
   
 ·   −→ u13 ≡ ac
13

Alejandro Medina
Introducción
Métodos directos Sistemas simples
Métodos iterativos Eliminación gaussiana
Ejercicios Descomposición LU
Bibliografía

b)    
 a21
   ·  −→ m21 u11 = a21 −→
b b m21 =
 u11

   

   ·  −→ m21 u12 + u22 = a22 −→
cb b u22 = a22 − m21 u12

   

   ·  −→ m21 u13 + u23 = a23 −→
cb b u23 = a23 − m21 u13


c)    
 a31
·  −→ m31 u11 = a31 −→
b b m31 =
    u11

   
 a32 − m31 u12
·  −→ m31 u12 + m32 u22 = a32 −→ m32 =
cb b b
    u22

   

·  −→m31 u13 + m32 u23 + u33 = a23 −→
cb cb b
   

u33 = a33 − m32 u23 − m31 u13

Alejandro Medina
Introducción
Métodos directos Sistemas simples
Métodos iterativos Eliminación gaussiana
Ejercicios Descomposición LU
Bibliografía

Las ecuaciones para el caso general serían las siguientes:

• mii = 1 (i = 1, 2 . . . n)
• u1i = a1i (i = 1, 2 . . . n)
i−1
X
aki − mkj uji
j=1
• mki = (k = 2, 3 . . . n). Para cada k : (i = 1, 2 . . . k − 1)
uii
p−1
X
• ukp = akp − mkj ujp (k = 2, 3 . . . n). Para cada k : (p = k, k + 1 . . . n)
j=1

Alejandro Medina
Introducción
Métodos directos
Método de Jacobi
Métodos iterativos
Método de Gauss-Seidel
Ejercicios
Bibliografía

Esquema

1 Introducción

2 Métodos directos

3 Métodos iterativos
Método de Jacobi
Método de Gauss-Seidel

4 Ejercicios

5 Bibliografía

Alejandro Medina
Introducción
Métodos directos
Método de Jacobi
Métodos iterativos
Método de Gauss-Seidel
Ejercicios
Bibliografía

Métodos iterativos. Método de Jacobi

a11 x1 + a12 x2 + ··· + a1n xn = b1


a21 x1 + a22 x2 + ··· + a2n xn = b2
.. .. .. ..
. . . .
an1 x1 + an2 x2 + ··· + ann xn = bn .
Despejando en cada ecuación:

1
x1 = (b1 − a12 x2 − · · · − a1n xn )
a11
1
x2 = (b2 − a21 x1 − · · · − a2n xn )
a22
..
.
1
xn = (bn − an1 x1 − · · · − an,n−1 xn−1 )
ann

Con lo que el sistema se puede resolver iterativamente.

Alejandro Medina
Introducción
Métodos directos
Método de Jacobi
Métodos iterativos
Método de Gauss-Seidel
Ejercicios
Bibliografía

Término general:
aii 6= 0
n
1
 X 
(k+1) (k)
xi = bi − aij xj
aii
j=1
j6=i

aii = 0: En este caso sumamos y restamos en la fila i la correspondiente


incógnita, xi . De este modo resulta:
n
(k+1)
X (k) (k)
xi = bi − aij xj + xi
j=1
j6=i

Condiciones iniciales: Se pueden escoger aquellas que se consideren más


(0) (1)
convenientes. Otra posibilidad es tomar xj = 0, esto es, xi = bi /aii .
Convergencia: El proceso se itera hasta que se verifique una condición de
convergencia, por ejemplo:

||~x (p+1) − ~x (p) || <  con  > 0,

donde  es el error elegido.


Alejandro Medina
Introducción
Métodos directos
Método de Jacobi
Métodos iterativos
Método de Gauss-Seidel
Ejercicios
Bibliografía

Método de Jacobi

Ejemplo:
Supongamos que queremos resolver el sistema:
3x1 + x2 + x3 = 8
x1 + 4x2 − x3 = 6
x1 − 3x2 + 6x3 = 13
Si no tenemos otros datos, siempre podemos partir de la condición
inicial:
(0) 8 (0) 3 (0) 13
x1 = ; x2 = ; x3 = .
3 2 6
El método de Jacobi, daría una secuencia de este modo:
(k+1) 1 (k) (k)

x1 = 8 − x3 − x2
3
(k+1) 1 (k) (k)

x2 = 6 + x3 − x1
4
(k+1) 1 (k) (k)

x3 = 13 + 3x2 − x1
6
Alejandro Medina
Introducción
Métodos directos
Método de Jacobi
Métodos iterativos
Método de Gauss-Seidel
Ejercicios
Bibliografía

Método de Jacobi

(k) (k) (k)


k x1 x2 x3
0 2,6666670 1,5000000 2,1666670
1 1,4444440 1,3750000 2,4722220
2 1,3842590 1,7569440 2,6134260
3 1,2098770 1,8072920 2,8144290
4 1,1260930 1,9011380 2,8686660
5 1,0767320 1,9356430 2,9295540
6 1,0449340 1,9632050 2,9550330
.. .. .. ..
. . . .
16 1,0002630 1,9997840 2,9997460
17 1,0001570 1,9998710 2,9998480
18 1,0000940 1,9999230 2,9999090
.. .. .. ..
. . . .
Solución exacta: x1 = 1; x2 = 2; x3 = 3
Alejandro Medina
Introducción
Métodos directos
Método de Jacobi
Métodos iterativos
Método de Gauss-Seidel
Ejercicios
Bibliografía

Método de Gauss-Seidel

Ejemplo:
Consideremos el sistema:
(
x1 + x2 =2
x1 − x2 =1

x (k+1) (k)
= 2 − x2
1
x1 = 2 − x2 ; x2 = −(1 − x1 ) −→
x (k+1) = −(1 − x1
(k+1)
)
2

En general,
i−1 n
1
 
(k+1) X (k+1) X (k)
xi = bi − aij xj − aij xj
aii j=1 j=i+1

Alejandro Medina
Introducción
Métodos directos
Método de Jacobi
Métodos iterativos
Método de Gauss-Seidel
Ejercicios
Bibliografía

Método de Gauss-Seidel

Ejemplo:
Para conocer las ventajas del método de Gauss-Seidel,
consideremos el sistema

x1 =1


1 x +x
2 =2


x + x + x =3
1 2 3

Este sistema es fácilmente soluble por sustitución.


Su solución analítica es: x1 = 1, x2 = 1 y x3 = 1.

Alejandro Medina
Introducción
Métodos directos
Método de Jacobi
Métodos iterativos
Método de Gauss-Seidel
Ejercicios
Bibliografía

(0) (0) (0)


Apliquemos el método de Jacobi, tomando como solución inicial: x1 = 1, x2 = 2 y x3 =3

( (k+1)
x1 =1
(k+1) (k)
x2 = 2 − x1
(k+1) (k) (k)
x3 = 3 − x1 − x2

Se necesitan tres iteraciones: k = 0, 1, 2. Con el método de Gauss-Seidel las ecuaciones serían estas:

( (k+1)
x1 =1
(k+1) (k+1)
x2 = 2 − x1
(k+1) (k+1) (k+1)
x3 = 3 − x1 − x2

Ahora el método converge a la primera.

Jacobi G.-S.
k → 0 1 2 0 1

(k)
x1 1,0 1,0 1,0 1,0 1,0
(k)
x2 2,0 1,0 1,0 2,0 1,0
(k)
x3 3,0 0,0 1,0 3,0 1,0

Alejandro Medina
Introducción
Métodos directos
Método de Jacobi
Métodos iterativos
Método de Gauss-Seidel
Ejercicios
Bibliografía

Ejemplo:
Resolveremos el mismo ejemplo con las mismas condiciones iniciales que consideramos con el método de Jacobi. El
método de Gauss-Seidel, daría una secuencia de este modo:

(k+1) 1 (k) (k)



x1 = 8 − x3 − x2
3
(k+1) 1 (k) (k+1)

x2 = 6 + x3 − x1
4
(k+1) 1 (k+1) (k+1)

x3 = 13 + 3x2 − x1
6

(k) (k) (k)


k x1 x2 x3
0 2,6666670 1,5000000 2,1666670
1 1,4444440 1,6805560 2,7662040
2 1,1844140 1,8954470 2,9169880
3 1,0625210 1,9636170 2,9713880
4 1,0216650 1,9874310 2,9901040
5 1,0074880 1,9956540 2,9965790
. . . .
. . . .
. . . .
11 1,0000130 1,9999930 2,9999940
12 1,0000040 1,9999970 2,9998980
13 1,0000010 1,9999990 2,9999990
14 1,0000000 2,0000000 3,0000000

Jacobi: hacia k = 18 se alcanza con precisión (10−4 ) la solución exacta.


Gauss-Seidel: en k = 14 converge a la solución analítica (10−7 ).

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

Esquema

1 Introducción

2 Métodos directos

3 Métodos iterativos

4 Ejercicios

5 Bibliografía

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

Ejercicios

1.- Obténgase, explicando cada uno de los pasos, la


descomposición LU de la matriz:
 
6 10 0
A =  12 26 4  .
 
0 9 12

A partir de la descomposición LU obtenida calcúlense el


determinante, det(A), y la inversa, A−1 , de la matriz A.

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

2.- Obténgase la descomposición LU de la matriz:


 
6 −2 2 4
 12 8 4 10 
A=
 
3 −13 3 3

 
−6 4 2 −18

Explíquense cada uno de los pasos seguidos. A partir de la


descomposición LU obtenida calcúlese el determinante de la matriz
A.

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

3.- En un experimento de tiro parabólico se miden los siguientes


valores de alturas h y desplazamientos x ,
x 0 1 2 3 4
h 0,01 1,769 3,260 4,189 4,749
Sabiendo que los valores medidos son aproximados pero que siguen
un modelo parabólico de tres parámetros del tipo
h = a + bx + cx 2 ,
a) Obténgase el sistema de 3 ecuaciones con tres incógnitas (a, b y
c) al que se llega por medio de un ajuste por mínimos cuadrados.
b) Resuelve el sistema haciendo uso de la técnica de eliminación
gaussiana con pivotación.
c) Calcula el área subtendida por la curva, h = a + bx + cx 2 (el
área comprendida entre esta curva y la recta h=0), haciendo uso
de una regla de cuadratura exacta para este polinomio.
Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

4.- En la tabla adjunta se indican los índices de refracción, n, para


diversas longitudes de onda, λ, (en unidades de 10−7 m) del cristal
de borosilicato. Considérese la ecuación de Cauchy del índice de
refracción:
B C
n = A + 2 + 4,
λ λ
donde A, B y C son constantes a determinar.
a) Plantea un sistema de ecuaciones para determinar esas
constantes a partir de los valores correspondientes a la segunda,
cuarta y séptima posiciones de la serie de la tabla. Utilícese el
criterio de los mínimos cuadrados.
b) Resuelve el sistema mediante una eliminación gaussiana sin
pivotación para obtener A, B y C .
c) Comprueba la bondad de la aproximación obtenida calculando el
error relativo en la predicción del primer, tercer y octavo de la
tabla.
Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

λ (10−7 m) n
6, 563 1, 50883
6, 439 1, 50917
5, 890 1, 51124
5, 338 1, 51386
5, 086 1, 51534
4, 861 1, 51690
4, 340 1, 52136
3, 988 1, 52546

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

5.- Resuelve iterativamente el siguiente sistema lineal:

10x1 − x2 + 2x3 = 6
−x1 + 11x2 − x3 + 3x4 = 25
2x1 − x2 + 10x3 − x4 = −11
3x2 − x3 + 8x4 = 15

a) Utilizando el método de Jacobi hasta la iteración, k = 6.


b) Utilizando el método de Gauss-Seidel hasta la iteración, k = 3.
(0)
Considera en ambos casos la condición inicial, xi = 0, 0;
i = 1, . . . 4 y cuatro cifras decimales en los cálculos.

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

6.- Las leyes de Kirchoff para un circuito de corriente continua de


varias mallas dan lugar al siguiente sistema de ecuaciones para las
intensidades:

2 i1 − i2 = 1
−i1 + 2 i2 − i3 = 0
−i2 + 2 i3 − i4 = 0
−i3 + 2 i4 = 1

a) Hágase la descomposición LU de la matriz de coeficientes.


b) Resuélvase el sistema de ecuaciones.
c) ¿Cuánto vale el determinante de la matriz?

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

7.- Resuélvase el siguiente sistema matricial,

A·X=B

donde,    
1 2 3 1 0 1
A =  2 0 1 ; B= 2 1 0 
   
1 1 2 0 2 2
para obtener la matriz 3 × 3, X, utilizando una descomposición LU
sin pivotación.

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

8.- Resuélvase el sistema de ecuaciones:

5x1 + x2 + 3x3 = 16
x1 + 4x2 + x3 + x4 = 11
−x1 + 2x2 + 6x3 − 2x4 = 23
x1 − x2 + x3 + 4x4 = −2
de forma iterativa mediante los métodos de Jacobi y Gauss-Seidel.
En concreto, constrúyase la tabla de convergencia de la solución
con los dos métodos hasta que se satisfaga el criterio de
convergencia:
||~x (k+1) − ~x (k) || < 0,10
donde || . . . || denota la distancia euclídea entre los puntos
considerados.

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

Esquema

1 Introducción

2 Métodos directos

3 Métodos iterativos

4 Ejercicios

5 Bibliografía

Alejandro Medina
Introducción
Métodos directos
Métodos iterativos
Ejercicios
Bibliografía

Bibliografía
Numerical Recipes: the art of scientific computing (FORTRAN
Version)
Press, W.H. y otros
Cambridge University Press, 2007
Cálculo numérico. Métodos, Aplicaciones.
B. Carnahan, y otros
Ed. Rueda, 1979
Análisis Numérico.
R.L. Burden and J.Douglas Faires
Thomson, 2003
Introducción a los Métodos Numéricos con Pascal
L.V. Atkinson y P.J. Harley
Addison-Wesley, 1987
http://www.wolfram.com/mathematica/ (Mathematica)
Alejandro Medina