Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A...

109
ULPGCLogo Métodos Numéricos. Grado en Ingeniería en Informática Tema 4. Análisis Numérico Matricial I Luis Alvarez León Univ. de Las Palmas de G.C. Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 1 / 23

Transcript of Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A...

Page 1: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Métodos Numéricos.Grado en Ingeniería en Informática

Tema 4. Análisis Numérico Matricial I

Luis Alvarez León

Univ. de Las Palmas de G.C.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 1 / 23

Page 2: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Contenido

1 Introducción a los sistemas de ecuaciones

2 Resolución de un sistema triangular de ecuaciones

3 El método de Gauss para resolver sistemas de ecuaciones

4 El método de Cholesky para resolver sistemas de ecuaciones

5 Factorización LU de una matriz

6 Estimación del error numérico al resolver un sistema

7 Método de Crout para sistemas tridiagonales

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 2 / 23

Page 3: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Contenido

1 Introducción a los sistemas de ecuaciones

2 Resolución de un sistema triangular de ecuaciones

3 El método de Gauss para resolver sistemas de ecuaciones

4 El método de Cholesky para resolver sistemas de ecuaciones

5 Factorización LU de una matriz

6 Estimación del error numérico al resolver un sistema

7 Método de Crout para sistemas tridiagonales

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 3 / 23

Page 4: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IIntroducción

Un sistema lineal de ecuaciones viene dado por la igualdad

Au = b

donde A = (aij) es una matriz de NxN, b = (bi) es un vector de tamaño N quedetermina los términos independientes, y u = (ui) es el vector soluciónbuscado.

Ejemplo −2 −2 06 18 123 11 7

u1u2u3

=

0248

6 18 12

0 4 40 0 −1

u1u2u3

=

248−8

Para que el sistema tenga una única solución debe cumplirse : | A |6= 0 ( | A |es el determinante.)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 4 / 23

Page 5: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IIntroducción

Un sistema lineal de ecuaciones viene dado por la igualdad

Au = b

donde A = (aij) es una matriz de NxN, b = (bi) es un vector de tamaño N quedetermina los términos independientes, y u = (ui) es el vector soluciónbuscado.

Ejemplo −2 −2 06 18 123 11 7

u1u2u3

=

0248

6 18 12

0 4 40 0 −1

u1u2u3

=

248−8

Para que el sistema tenga una única solución debe cumplirse : | A |6= 0 ( | A |es el determinante.)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 4 / 23

Page 6: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IIntroducción

Un sistema lineal de ecuaciones viene dado por la igualdad

Au = b

donde A = (aij) es una matriz de NxN, b = (bi) es un vector de tamaño N quedetermina los términos independientes, y u = (ui) es el vector soluciónbuscado.

Ejemplo −2 −2 06 18 123 11 7

u1u2u3

=

0248

6 18 12

0 4 40 0 −1

u1u2u3

=

248−8

Para que el sistema tenga una única solución debe cumplirse : ?

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 4 / 23

Page 7: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IIntroducción

Un sistema lineal de ecuaciones viene dado por la igualdad

Au = b

donde A = (aij) es una matriz de NxN, b = (bi) es un vector de tamaño N quedetermina los términos independientes, y u = (ui) es el vector soluciónbuscado.

Ejemplo −2 −2 06 18 123 11 7

u1u2u3

=

0248

6 18 12

0 4 40 0 −1

u1u2u3

=

248−8

Para que el sistema tenga una única solución debe cumplirse : | A |6= 0 ( | A |es el determinante.)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 4 / 23

Page 8: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 9: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 10: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 11: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 12: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:

determinante(A,N)SI N > 1

construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·

determinante(AN ,N − 1)ELSE

determinante=A(1,1)END

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 13: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:

determinante(A,N)SI N > 1

construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·

determinante(AN ,N − 1)ELSE

determinante=A(1,1)END

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 14: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:

determinante(A,N)SI N > 1

construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·

determinante(AN ,N − 1)ELSE

determinante=A(1,1)END

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 15: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:

determinante(A,N)SI N > 1

construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·

determinante(AN ,N − 1)ELSE

determinante=A(1,1)END

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 16: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:

determinante(A,N)SI N > 1

construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·

determinante(AN ,N − 1)ELSE

determinante=A(1,1)END

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 17: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:

determinante(A,N)SI N > 1

construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·

determinante(AN ,N − 1)ELSE

determinante=A(1,1)END

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 18: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:

determinante(A,N)SI N > 1

construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·

determinante(AN ,N − 1)ELSE

determinante=A(1,1)END

No de operaciones del algoritmo recursivo determinante(A,N) = N multiplicaciones, ?sumas y ? llamadas a determinantes de dimensión N − 1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 19: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:

determinante(A,N)SI N > 1

construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·

determinante(AN ,N − 1)ELSE

determinante=A(1,1)END

No de operaciones del algoritmo recursivo determinante(A,N) = N multiplicaciones, ?sumas y ? llamadas a determinantes de dimensión N − 1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 20: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:

determinante(A,N)SI N > 1

construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·

determinante(AN ,N − 1)ELSE

determinante=A(1,1)END

No de operaciones del algoritmo recursivo determinante(A,N) = N multiplicaciones,N − 1 sumas y ? llamadas a determinantes de dimensión N − 1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 21: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:

determinante(A,N)SI N > 1

construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·

determinante(AN ,N − 1)ELSE

determinante=A(1,1)END

No de operaciones del algoritmo recursivo determinante(A,N) = N multiplicaciones,N − 1 sumas y N llamadas a determinantes de dimensión N − 1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 22: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:

determinante(A,N)SI N > 1

construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·

determinante(AN ,N − 1)ELSE

determinante=A(1,1)END

No de operaciones del algoritmo recursivo determinante(A,N) = N multiplicaciones,N − 1 sumas y N llamadas a determinantes de dimensión N − 1

Complejidad total del algoritmo recursivo determinante(A,N) = N! operaciones

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 23: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

|A| =1 2 34 5 67 8 9

= 15 68 9

− 24 67 9

+ 34 57 8

Algoritmo recursivo para calcular el determinante de una matriz A de dimensión N:

determinante(A,N)SI N > 1

construimos N matrices A1,A2, .......AN de dimensión N − 1|A| = a1,1· determinante(A1,N − 1) - a1,2· determinante(A2,N − 1) + ..... a1,N ·

determinante(AN ,N − 1)ELSE

determinante=A(1,1)END

No de operaciones del algoritmo recursivo determinante(A,N) = N multiplicaciones,N − 1 sumas y N llamadas a determinantes de dimensión N − 1

Complejidad total del algoritmo recursivo determinante(A,N) = N! operaciones

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 5 / 23

Page 24: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

10! = 3 · 106 50! = 3 · 1064 100! = 9 · 10157

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 6 / 23

Page 25: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

10! = 3 · 106 50! = 3 · 1064 100! = 9 · 10157

Uno de los super-ordenadores más rápidos que existen en laactualidad es el BlueGene/L System desarrollado por IBM. Es capazde realizar del orden de 1021operaciones en coma flotante porsegundo. Este ordenador, para calcular un determinante de una matrizde dimensión 100 tardaría del orden de 10129 años.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 6 / 23

Page 26: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial ICálculo del determinante de A

10! = 3 · 106 50! = 3 · 1064 100! = 9 · 10157

Uno de los super-ordenadores más rápidos que existen en laactualidad es el BlueGene/L System desarrollado por IBM. Es capazde realizar del orden de 1021operaciones en coma flotante porsegundo. Este ordenador, para calcular un determinante de una matrizde dimensión 100 tardaría del orden de 10129 años.

Por tanto un algoritmo de complejidad factorial con N=100 no es unproblema que pueda resolverse por mucho que avance la tecnologíapues el número de operaciones necesarias es gigantesco einalcanzable.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 6 / 23

Page 27: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Contenido

1 Introducción a los sistemas de ecuaciones

2 Resolución de un sistema triangular de ecuaciones

3 El método de Gauss para resolver sistemas de ecuaciones

4 El método de Cholesky para resolver sistemas de ecuaciones

5 Factorización LU de una matriz

6 Estimación del error numérico al resolver un sistema

7 Método de Crout para sistemas tridiagonales

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 7 / 23

Page 28: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .. . . aN−2,N−2 aN−2,N−10 0 0 . aN−1,N−1

u0u1.

uN−2uN−1

=

b0b1.

bN−2bN−1

Solución Número de Operacionesu =

bN−1aN−1,N−1

1 división

uN−2 =bN−2−aN−2,N−1uN−1

aN−2,N−21 división + 1 suma + 1 multiplicación

uk =bk−

∑N−1l=k+1 ak,l ulak,k

k = N − 2, ..,1 1 división + (N-k) sumas + (N-k) multiplicacionesNúmero total de operaciones N divis. + (1+2+..+N-1) sumas y multiplic.

1 + 2 + .....+ N − 1 =N2(N − 1) = O(N2)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 23

Page 29: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .. . . aN−2,N−2 aN−2,N−10 0 0 . aN−1,N−1

u0u1.

uN−2uN−1

=

b0b1.

bN−2bN−1

Solución Número de Operacionesu =

bN−1aN−1,N−1

1 división

uN−2 =bN−2−aN−2,N−1uN−1

aN−2,N−21 división + 1 suma + 1 multiplicación

uk =bk−

∑N−1l=k+1 ak,l ulak,k

k = N − 2, ..,1 1 división + (N-k) sumas + (N-k) multiplicacionesNúmero total de operaciones N divis. + (1+2+..+N-1) sumas y multiplic.

1 + 2 + .....+ N − 1 =N2(N − 1) = O(N2)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 23

Page 30: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .. . . aN−2,N−2 aN−2,N−10 0 0 . aN−1,N−1

u0u1.

uN−2uN−1

=

b0b1.

bN−2bN−1

Solución Número de OperacionesuN−1 =

bN−1aN−1,N−1

1 división

uN−2 =

bN−2−aN−2,N−1uN−1aN−2,N−2

1 división + 1 suma + 1 multiplicación

uk =bk−

∑N−1l=k+1 ak,l ulak,k

k = N − 2, ..,1 1 división + (N-k) sumas + (N-k) multiplicacionesNúmero total de operaciones N divis. + (1+2+..+N-1) sumas y multiplic.

1 + 2 + .....+ N − 1 =N2(N − 1) = O(N2)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 23

Page 31: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .. . . aN−2,N−2 aN−2,N−10 0 0 . aN−1,N−1

u0u1.

uN−2uN−1

=

b0b1.

bN−2bN−1

Solución Número de OperacionesuN−1 =

bN−1aN−1,N−1

1 división

uN−2 =bN−2−aN−2,N−1uN−1

aN−2,N−2

1 división + 1 suma + 1 multiplicación

uk =bk−

∑N−1l=k+1 ak,l ulak,k

k = N − 2, ..,1 1 división + (N-k) sumas + (N-k) multiplicacionesNúmero total de operaciones N divis. + (1+2+..+N-1) sumas y multiplic.

1 + 2 + .....+ N − 1 =N2(N − 1) = O(N2)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 23

Page 32: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .. . . aN−2,N−2 aN−2,N−10 0 0 . aN−1,N−1

u0u1.

uN−2uN−1

=

b0b1.

bN−2bN−1

Solución Número de OperacionesuN−1 =

bN−1aN−1,N−1

1 división

uN−2 =bN−2−aN−2,N−1uN−1

aN−2,N−21 división + 1 suma + 1 multiplicación

uk =

bk−∑N−1

l=k+1 ak,l ulak,k

k = N − 2, ..,1 1 división + (N-k) sumas + (N-k) multiplicacionesNúmero total de operaciones N divis. + (1+2+..+N-1) sumas y multiplic.

1 + 2 + .....+ N − 1 =N2(N − 1) = O(N2)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 23

Page 33: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .. . . aN−2,N−2 aN−2,N−10 0 0 . aN−1,N−1

u0u1.

uN−2uN−1

=

b0b1.

bN−2bN−1

Solución Número de OperacionesuN−1 =

bN−1aN−1,N−1

1 división

uN−2 =bN−2−aN−2,N−1uN−1

aN−2,N−21 división + 1 suma + 1 multiplicación

uk =bk−

∑N−1l=k+1 ak,l ulak,k

k = N − 2, ..,1

1 división + (N-k) sumas + (N-k) multiplicacionesNúmero total de operaciones N divis. + (1+2+..+N-1) sumas y multiplic.

1 + 2 + .....+ N − 1 =N2(N − 1) = O(N2)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 23

Page 34: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .. . . aN−2,N−2 aN−2,N−10 0 0 . aN−1,N−1

u0u1.

uN−2uN−1

=

b0b1.

bN−2bN−1

Solución Número de OperacionesuN−1 =

bN−1aN−1,N−1

1 división

uN−2 =bN−2−aN−2,N−1uN−1

aN−2,N−21 división + 1 suma + 1 multiplicación

uk =bk−

∑N−1l=k+1 ak,l ulak,k

k = N − 2, ..,1 1 división + (N-k) sumas + (N-k) multiplicacionesNúmero total de operaciones N divis. + (1+2+..+N-1) sumas y multiplic.

1 + 2 + .....+ N − 1 =N2(N − 1) = O(N2)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 23

Page 35: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .. . . aN−2,N−2 aN−2,N−10 0 0 . aN−1,N−1

u0u1.

uN−2uN−1

=

b0b1.

bN−2bN−1

Solución Número de OperacionesuN−1 =

bN−1aN−1,N−1

1 división

uN−2 =bN−2−aN−2,N−1uN−1

aN−2,N−21 división + 1 suma + 1 multiplicación

uk =bk−

∑N−1l=k+1 ak,l ulak,k

k = N − 2, ..,1 1 división + (N-k) sumas + (N-k) multiplicacionesNúmero total de operaciones N divis. + (1+2+..+N-1) sumas y multiplic.

1 + 2 + .....+ N − 1 =

N2(N − 1) = O(N2)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 23

Page 36: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .. . . aN−2,N−2 aN−2,N−10 0 0 . aN−1,N−1

u0u1.

uN−2uN−1

=

b0b1.

bN−2bN−1

Solución Número de OperacionesuN−1 =

bN−1aN−1,N−1

1 división

uN−2 =bN−2−aN−2,N−1uN−1

aN−2,N−21 división + 1 suma + 1 multiplicación

uk =bk−

∑N−1l=k+1 ak,l ulak,k

k = N − 2, ..,1 1 división + (N-k) sumas + (N-k) multiplicacionesNúmero total de operaciones N divis. + (1+2+..+N-1) sumas y multiplic.

1 + 2 + .....+ N − 1 =N2(N − 1) = O(N2)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 8 / 23

Page 37: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 0 0 . 0a1,0 a1,1 0 . 0. . . . .

aN−2,0 . . aN−2,N−2 0aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Solución:

u = b0a0,0

u1 =b1−a1,0u0

a1,1

uk =bk−

∑k−1l=1 ak,l ul

ak,kk = 1, ..,N − 1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 9 / 23

Page 38: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 0 0 . 0a1,0 a1,1 0 . 0. . . . .

aN−2,0 . . aN−2,N−2 0aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Solución:

u =

b0a0,0

u1 =b1−a1,0u0

a1,1

uk =bk−

∑k−1l=1 ak,l ul

ak,kk = 1, ..,N − 1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 9 / 23

Page 39: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 0 0 . 0a1,0 a1,1 0 . 0. . . . .

aN−2,0 . . aN−2,N−2 0aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Solución:

u0 = b0a0,0

u1 =

b1−a1,0u0a1,1

uk =bk−

∑k−1l=1 ak,l ul

ak,kk = 1, ..,N − 1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 9 / 23

Page 40: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 0 0 . 0a1,0 a1,1 0 . 0. . . . .

aN−2,0 . . aN−2,N−2 0aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Solución:

u0 = b0a0,0

u1 =b1−a1,0u0

a1,1

uk =

bk−∑k−1

l=1 ak,l ulak,k

k = 1, ..,N − 1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 9 / 23

Page 41: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IResolución de un sistema triangular de ecuaciones

a0,0 0 0 . 0a1,0 a1,1 0 . 0. . . . .

aN−2,0 . . aN−2,N−2 0aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Solución:

u0 = b0a0,0

u1 =b1−a1,0u0

a1,1

uk =bk−

∑k−1l=1 ak,l ul

ak,kk = 1, ..,N − 1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 9 / 23

Page 42: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Contenido

1 Introducción a los sistemas de ecuaciones

2 Resolución de un sistema triangular de ecuaciones

3 El método de Gauss para resolver sistemas de ecuaciones

4 El método de Cholesky para resolver sistemas de ecuaciones

5 Factorización LU de una matriz

6 Estimación del error numérico al resolver un sistema

7 Método de Crout para sistemas tridiagonales

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 10 / 23

Page 43: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 06 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 12 u1

u2u3

=

24

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 44: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 12 u1

u2u3

=

24

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 45: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 12 u1

u2u3

=

24

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 46: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 12 u1

u2u3

=

24

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 47: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 120

u1u2u3

=

24

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 48: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 120 4

u1u2u3

=

24

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 49: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 120 4 4

u1u2u3

=

24

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 50: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 120 4 4

u1u2u3

=

248

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 51: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 120 4 40

u1u2u3

=

248

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 52: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 120 4 40 2

u1u2u3

=

248

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 53: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 120 4 40 2 1

u1u2u3

=

248

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 54: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 120 4 40 2 1

u1u2u3

=

248− 4

6 18 12

0 4 40 2 1

u1u2u3

=

248−4

−−−−−−−−−→ceros 2a col .

6 18 120 4 40

u1u2u3

=

248

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 55: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 120 4 40 2 1

u1u2u3

=

248− 4

6 18 12

0 4 40 2 1

u1u2u3

=

248−4

−−−−−−−−−→ceros 2a col .

6 18 120 4 40 0

u1u2u3

=

248

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 56: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 120 4 40 2 1

u1u2u3

=

248− 4

6 18 12

0 4 40 2 1

u1u2u3

=

248−4

−−−−−−−−−→ceros 2a col .

6 18 120 4 40 0 − 1

u1u2u3

=

248

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 57: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss.Objetivo: Convertir el sistema en un sistema triangular

−2 −2 06 18 123 11 7

u1u2u3

=

0248

La descomposición de la matriz A se divide en las siguientes fases: −2 −2 0

6 18 123 11 7

u1u2u3

=

0248

−−−−−→pivoteo

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

6 18 12−2 −2 03 11 7

u1u2u3

=

2408

−−−−−−−−−→ceros 1a col .

6 18 120 4 40 2 1

u1u2u3

=

248− 4

6 18 12

0 4 40 2 1

u1u2u3

=

248−4

−−−−−−−−−→ceros 2a col .

6 18 120 4 40 0 − 1

u1u2u3

=

248− 8

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 11 / 23

Page 58: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss. Recuento de operaciones

a0,0 a0,1 a0,2 . a0,N−1a1,0 a1,1 a0,2 . a1,N−1. . . . .. . . aN−2,N−2 aN−2,N−1

aN−1,0 aN−1,1 . aN−1,N−2 aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Recuento de Operaciones

Convertir en 0 el elemento a1,0 1 división + N multiplicaciones y sumasConvertir en cero a1,0,a2,0, ...aN−1,0 N-1 divisiones + N(N-1) multiplicaciones y sumasConvertir en cero a2,1,a3,1, ...aN−1,1 N-2 divisiones + (N-1)(N-2) multiplicaciones y sumasConvertir en cero aN−1,N−2 1 divisiones + 2 multiplicaciones y sumasTotal Operaciones : (1+2+..+N-1) divisiones

+ (2+6+...+N(N-1)) multiplicaciones y sumas

2 + 6 + ...+ N(N − 1) =N3 − N

3= O(N3)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 23

Page 59: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss. Recuento de operaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−1. . . . .. . . aN−2,N−2 aN−2,N−1

aN−1,0 aN−1,1 . aN−1,N−2 aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Recuento de Operaciones

Convertir en 0 el elemento a1,0

1 división + N multiplicaciones y sumasConvertir en cero a1,0,a2,0, ...aN−1,0 N-1 divisiones + N(N-1) multiplicaciones y sumasConvertir en cero a2,1,a3,1, ...aN−1,1 N-2 divisiones + (N-1)(N-2) multiplicaciones y sumasConvertir en cero aN−1,N−2 1 divisiones + 2 multiplicaciones y sumasTotal Operaciones : (1+2+..+N-1) divisiones

+ (2+6+...+N(N-1)) multiplicaciones y sumas

2 + 6 + ...+ N(N − 1) =N3 − N

3= O(N3)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 23

Page 60: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss. Recuento de operaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 . . . .0 . . aN−2,N−2 aN−2,N−10 aN−1,1 . aN−1,N−2 aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Recuento de Operaciones

Convertir en 0 el elemento a1,0 1 división + N multiplicaciones y sumasConvertir en cero a1,0,a2,0, ...aN−1,0

N-1 divisiones + N(N-1) multiplicaciones y sumasConvertir en cero a2,1,a3,1, ...aN−1,1 N-2 divisiones + (N-1)(N-2) multiplicaciones y sumasConvertir en cero aN−1,N−2 1 divisiones + 2 multiplicaciones y sumasTotal Operaciones : (1+2+..+N-1) divisiones

+ (2+6+...+N(N-1)) multiplicaciones y sumas

2 + 6 + ...+ N(N − 1) =N3 − N

3= O(N3)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 23

Page 61: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss. Recuento de operaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .0 . . aN−2,N−2 aN−2,N−10 0 . aN−1,N−2 aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Recuento de Operaciones

Convertir en 0 el elemento a1,0 1 división + N multiplicaciones y sumasConvertir en cero a1,0,a2,0, ...aN−1,0 N-1 divisiones + N(N-1) multiplicaciones y sumasConvertir en cero a2,1,a3,1, ...aN−1,1

N-2 divisiones + (N-1)(N-2) multiplicaciones y sumasConvertir en cero aN−1,N−2 1 divisiones + 2 multiplicaciones y sumasTotal Operaciones : (1+2+..+N-1) divisiones

+ (2+6+...+N(N-1)) multiplicaciones y sumas

2 + 6 + ...+ N(N − 1) =N3 − N

3= O(N3)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 23

Page 62: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss. Recuento de operaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .0 . . aN−2,N−2 aN−2,N−10 0 . 0 aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Recuento de Operaciones

Convertir en 0 el elemento a1,0 1 división + N multiplicaciones y sumasConvertir en cero a1,0,a2,0, ...aN−1,0 N-1 divisiones + N(N-1) multiplicaciones y sumasConvertir en cero a2,1,a3,1, ...aN−1,1 N-2 divisiones + (N-1)(N-2) multiplicaciones y sumasConvertir en cero aN−1,N−2

1 divisiones + 2 multiplicaciones y sumasTotal Operaciones : (1+2+..+N-1) divisiones

+ (2+6+...+N(N-1)) multiplicaciones y sumas

2 + 6 + ...+ N(N − 1) =N3 − N

3= O(N3)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 23

Page 63: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss. Recuento de operaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .0 . . aN−2,N−2 aN−2,N−10 0 . 0 aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Recuento de Operaciones

Convertir en 0 el elemento a1,0 1 división + N multiplicaciones y sumasConvertir en cero a1,0,a2,0, ...aN−1,0 N-1 divisiones + N(N-1) multiplicaciones y sumasConvertir en cero a2,1,a3,1, ...aN−1,1 N-2 divisiones + (N-1)(N-2) multiplicaciones y sumasConvertir en cero aN−1,N−2 1 divisiones + 2 multiplicaciones y sumas

Total Operaciones : (1+2+..+N-1) divisiones+ (2+6+...+N(N-1)) multiplicaciones y sumas

2 + 6 + ...+ N(N − 1) =N3 − N

3= O(N3)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 23

Page 64: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss. Recuento de operaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .0 . . aN−2,N−2 aN−2,N−10 0 . 0 aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Recuento de Operaciones

Convertir en 0 el elemento a1,0 1 división + N multiplicaciones y sumasConvertir en cero a1,0,a2,0, ...aN−1,0 N-1 divisiones + N(N-1) multiplicaciones y sumasConvertir en cero a2,1,a3,1, ...aN−1,1 N-2 divisiones + (N-1)(N-2) multiplicaciones y sumasConvertir en cero aN−1,N−2 1 divisiones + 2 multiplicaciones y sumasTotal Operaciones : (1+2+..+N-1) divisiones

+ (2+6+...+N(N-1)) multiplicaciones y sumas

2 + 6 + ...+ N(N − 1) =N3 − N

3= O(N3)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 23

Page 65: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Gauss. Recuento de operaciones

a0,0 a0,1 a0,2 . a0,N−10 a1,1 a0,2 . a1,N−10 0 . . .0 . . aN−2,N−2 aN−2,N−10 0 . 0 aN−1,N−1

u0u1u2.

uN−1

=

b0b1b2.

bN−1

Recuento de Operaciones

Convertir en 0 el elemento a1,0 1 división + N multiplicaciones y sumasConvertir en cero a1,0,a2,0, ...aN−1,0 N-1 divisiones + N(N-1) multiplicaciones y sumasConvertir en cero a2,1,a3,1, ...aN−1,1 N-2 divisiones + (N-1)(N-2) multiplicaciones y sumasConvertir en cero aN−1,N−2 1 divisiones + 2 multiplicaciones y sumasTotal Operaciones : (1+2+..+N-1) divisiones

+ (2+6+...+N(N-1)) multiplicaciones y sumas

2 + 6 + ...+ N(N − 1) =N3 − N

3= O(N3)

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 12 / 23

Page 66: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Contenido

1 Introducción a los sistemas de ecuaciones

2 Resolución de un sistema triangular de ecuaciones

3 El método de Gauss para resolver sistemas de ecuaciones

4 El método de Cholesky para resolver sistemas de ecuaciones

5 Factorización LU de una matriz

6 Estimación del error numérico al resolver un sistema

7 Método de Crout para sistemas tridiagonales

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 13 / 23

Page 67: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesky. Ejemplo descomposición de matriz

A =

1 1 41 5 64 6 26

=

b0,0 0 0b1,0 b1,1 0b2,0 b2,1 b2,2

b0,0 b0,1 b0,20 b1,1 b1,20 0 b2,2

1 1 41 5 64 6 26

=

b20,0 b0,1b1,0 b0,2b2,0

b0,0b1,0 b21,0 + b2

1,1 b1,0b2,0 + b1,1b2,1

b0,0b2,0 b1,0b2,0 + b1,1b2,1 b22,1 + b2

2,1 + b22,2

b20,0 = 1 −→ b0,0 = 1 b0,0b1,0 = 1 −→ b1,0 = 1

b0,0= 1

b0,0b2,0 = 4 −→ b2,0 = 4b0,0

= 4

b21,0 + b2

1,1 = 5 −→ b1,1 = ±√(

5− b21,0

)=√

(4) = 2

b1,0b2,0 + b1,1b2,1=6 −→ b2,1 =6−b1,0b2,0

b1,1= 6−4

2 = 1

b22,0 + b2

2,1 + b22,2 = 26 −→ b2,2 =

√(26− b2

2,0 − b22,1

)=√(

26− 16− 12)= 3

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 23

Page 68: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesky. Ejemplo descomposición de matriz

A =

1 1 41 5 64 6 26

=

b0,0 0 0b1,0 b1,1 0b2,0 b2,1 b2,2

b0,0 b0,1 b0,20 b1,1 b1,20 0 b2,2

1 1 4

1 5 64 6 26

=

b20,0 b0,1b1,0 b0,2b2,0

b0,0b1,0 b21,0 + b2

1,1 b1,0b2,0 + b1,1b2,1

b0,0b2,0 b1,0b2,0 + b1,1b2,1 b22,1 + b2

2,1 + b22,2

b20,0 = 1 −→ b0,0 = 1 b0,0b1,0 = 1 −→ b1,0 = 1

b0,0= 1

b0,0b2,0 = 4 −→ b2,0 = 4b0,0

= 4

b21,0 + b2

1,1 = 5 −→ b1,1 = ±√(

5− b21,0

)=√

(4) = 2

b1,0b2,0 + b1,1b2,1=6 −→ b2,1 =6−b1,0b2,0

b1,1= 6−4

2 = 1

b22,0 + b2

2,1 + b22,2 = 26 −→ b2,2 =

√(26− b2

2,0 − b22,1

)=√(

26− 16− 12)= 3

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 23

Page 69: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesky. Ejemplo descomposición de matriz

A =

1 1 41 5 64 6 26

=

b0,0 0 0b1,0 b1,1 0b2,0 b2,1 b2,2

b0,0 b0,1 b0,20 b1,1 b1,20 0 b2,2

1 1 4

1 5 64 6 26

=

b20,0 b0,1b1,0 b0,2b2,0

b0,0b1,0 b21,0 + b2

1,1 b1,0b2,0 + b1,1b2,1

b0,0b2,0 b1,0b2,0 + b1,1b2,1 b22,1 + b2

2,1 + b22,2

b20,0 = 1 −→ b0,0 = 1

b0,0b1,0 = 1 −→ b1,0 = 1b0,0

= 1

b0,0b2,0 = 4 −→ b2,0 = 4b0,0

= 4

b21,0 + b2

1,1 = 5 −→ b1,1 = ±√(

5− b21,0

)=√

(4) = 2

b1,0b2,0 + b1,1b2,1=6 −→ b2,1 =6−b1,0b2,0

b1,1= 6−4

2 = 1

b22,0 + b2

2,1 + b22,2 = 26 −→ b2,2 =

√(26− b2

2,0 − b22,1

)=√(

26− 16− 12)= 3

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 23

Page 70: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesky. Ejemplo descomposición de matriz

A =

1 1 41 5 64 6 26

=

b0,0 0 0b1,0 b1,1 0b2,0 b2,1 b2,2

b0,0 b0,1 b0,20 b1,1 b1,20 0 b2,2

1 1 4

1 5 64 6 26

=

b20,0 b0,1b1,0 b0,2b2,0

b0,0b1,0 b21,0 + b2

1,1 b1,0b2,0 + b1,1b2,1

b0,0b2,0 b1,0b2,0 + b1,1b2,1 b22,1 + b2

2,1 + b22,2

b20,0 = 1 −→ b0,0 = 1 b0,0b1,0 = 1 −→ b1,0 = 1

b0,0= 1

b0,0b2,0 = 4 −→ b2,0 = 4b0,0

= 4

b21,0 + b2

1,1 = 5 −→ b1,1 = ±√(

5− b21,0

)=√

(4) = 2

b1,0b2,0 + b1,1b2,1=6 −→ b2,1 =6−b1,0b2,0

b1,1= 6−4

2 = 1

b22,0 + b2

2,1 + b22,2 = 26 −→ b2,2 =

√(26− b2

2,0 − b22,1

)=√(

26− 16− 12)= 3

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 23

Page 71: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesky. Ejemplo descomposición de matriz

A =

1 1 41 5 64 6 26

=

b0,0 0 0b1,0 b1,1 0b2,0 b2,1 b2,2

b0,0 b0,1 b0,20 b1,1 b1,20 0 b2,2

1 1 4

1 5 64 6 26

=

b20,0 b0,1b1,0 b0,2b2,0

b0,0b1,0 b21,0 + b2

1,1 b1,0b2,0 + b1,1b2,1

b0,0b2,0 b1,0b2,0 + b1,1b2,1 b22,1 + b2

2,1 + b22,2

b20,0 = 1 −→ b0,0 = 1 b0,0b1,0 = 1 −→ b1,0 = 1

b0,0= 1

b0,0b2,0 = 4 −→ b2,0 = 4b0,0

= 4

b21,0 + b2

1,1 = 5 −→ b1,1 = ±√(

5− b21,0

)=√

(4) = 2

b1,0b2,0 + b1,1b2,1=6 −→ b2,1 =6−b1,0b2,0

b1,1= 6−4

2 = 1

b22,0 + b2

2,1 + b22,2 = 26 −→ b2,2 =

√(26− b2

2,0 − b22,1

)=√(

26− 16− 12)= 3

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 23

Page 72: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesky. Ejemplo descomposición de matriz

A =

1 1 41 5 64 6 26

=

b0,0 0 0b1,0 b1,1 0b2,0 b2,1 b2,2

b0,0 b0,1 b0,20 b1,1 b1,20 0 b2,2

1 1 4

1 5 64 6 26

=

b20,0 b0,1b1,0 b0,2b2,0

b0,0b1,0 b21,0 + b2

1,1 b1,0b2,0 + b1,1b2,1

b0,0b2,0 b1,0b2,0 + b1,1b2,1 b22,1 + b2

2,1 + b22,2

b20,0 = 1 −→ b0,0 = 1 b0,0b1,0 = 1 −→ b1,0 = 1

b0,0= 1

b0,0b2,0 = 4 −→ b2,0 = 4b0,0

= 4

b21,0 + b2

1,1 = 5 −→ b1,1 = ±√(

5− b21,0

)=√

(4) = 2

b1,0b2,0 + b1,1b2,1=6 −→ b2,1 =6−b1,0b2,0

b1,1= 6−4

2 = 1

b22,0 + b2

2,1 + b22,2 = 26 −→ b2,2 =

√(26− b2

2,0 − b22,1

)=√(

26− 16− 12)= 3

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 23

Page 73: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesky. Ejemplo descomposición de matriz

A =

1 1 41 5 64 6 26

=

b0,0 0 0b1,0 b1,1 0b2,0 b2,1 b2,2

b0,0 b0,1 b0,20 b1,1 b1,20 0 b2,2

1 1 4

1 5 64 6 26

=

b20,0 b0,1b1,0 b0,2b2,0

b0,0b1,0 b21,0 + b2

1,1 b1,0b2,0 + b1,1b2,1

b0,0b2,0 b1,0b2,0 + b1,1b2,1 b22,1 + b2

2,1 + b22,2

b20,0 = 1 −→ b0,0 = 1 b0,0b1,0 = 1 −→ b1,0 = 1

b0,0= 1

b0,0b2,0 = 4 −→ b2,0 = 4b0,0

= 4

b21,0 + b2

1,1 = 5 −→ b1,1 = ±√(

5− b21,0

)=√

(4) = 2

b1,0b2,0 + b1,1b2,1=6 −→ b2,1 =6−b1,0b2,0

b1,1= 6−4

2 = 1

b22,0 + b2

2,1 + b22,2 = 26 −→ b2,2 =

√(26− b2

2,0 − b22,1

)=√(

26− 16− 12)= 3

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 23

Page 74: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesky. Ejemplo descomposición de matriz

A =

1 1 41 5 64 6 26

=

b0,0 0 0b1,0 b1,1 0b2,0 b2,1 b2,2

b0,0 b0,1 b0,20 b1,1 b1,20 0 b2,2

1 1 4

1 5 64 6 26

=

b20,0 b0,1b1,0 b0,2b2,0

b0,0b1,0 b21,0 + b2

1,1 b1,0b2,0 + b1,1b2,1

b0,0b2,0 b1,0b2,0 + b1,1b2,1 b22,1 + b2

2,1 + b22,2

b20,0 = 1 −→ b0,0 = 1 b0,0b1,0 = 1 −→ b1,0 = 1

b0,0= 1

b0,0b2,0 = 4 −→ b2,0 = 4b0,0

= 4

b21,0 + b2

1,1 = 5 −→ b1,1 = ±√(

5− b21,0

)=√

(4) = 2

b1,0b2,0 + b1,1b2,1=6 −→ b2,1 =6−b1,0b2,0

b1,1= 6−4

2 = 1

b22,0 + b2

2,1 + b22,2 = 26 −→ b2,2 =

√(26− b2

2,0 − b22,1

)=√(

26− 16− 12)= 3

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 14 / 23

Page 75: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesky. Algoritmo general

El algoritmo para descomponer A = B · Bt es el siguiente

Para i = 0, ...,N − 1

bi,i =

√(ai,i −

∑i−1k=0 b2

i,k

)Para j = i + 1, ...,N − 1

bj,i =1

bi,i

(aj,i −

∑i−1k=0 bj,kbi,k

)Fin Para j

Fin Para i

Una vez calculada B, resolvemos el sistema Au = B · Btu = b descomponiéndoloen los siguientes sistemas triangulares :

Bz = b

Btu = z

Ambos sistemas se resuelvan rápidamente haciendo un remonte y un descenso.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 15 / 23

Page 76: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesky. Algoritmo general

El algoritmo para descomponer A = B · Bt es el siguiente

Para i = 0, ...,N − 1

bi,i =

√(ai,i −

∑i−1k=0 b2

i,k

)Para j = i + 1, ...,N − 1

bj,i =1

bi,i

(aj,i −

∑i−1k=0 bj,kbi,k

)Fin Para j

Fin Para i

Una vez calculada B, resolvemos el sistema Au = B · Btu = b descomponiéndoloen los siguientes sistemas triangulares :

Bz = b

Btu = z

Ambos sistemas se resuelvan rápidamente haciendo un remonte y un descenso.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 15 / 23

Page 77: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesky. Algoritmo general

El algoritmo para descomponer A = B · Bt es el siguiente

Para i = 0, ...,N − 1

bi,i =

√(ai,i −

∑i−1k=0 b2

i,k

)Para j = i + 1, ...,N − 1

bj,i =1

bi,i

(aj,i −

∑i−1k=0 bj,kbi,k

)Fin Para j

Fin Para i

Una vez calculada B, resolvemos el sistema Au = B · Btu = b descomponiéndoloen los siguientes sistemas triangulares :

Bz = b

Btu = z

Ambos sistemas se resuelvan rápidamente haciendo un remonte y un descenso.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 15 / 23

Page 78: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesky. Algoritmo general

El algoritmo para descomponer A = B · Bt es el siguiente

Para i = 0, ...,N − 1

bi,i =

√(ai,i −

∑i−1k=0 b2

i,k

)Para j = i + 1, ...,N − 1

bj,i =1

bi,i

(aj,i −

∑i−1k=0 bj,kbi,k

)Fin Para j

Fin Para i

Una vez calculada B, resolvemos el sistema Au = B · Btu = b descomponiéndoloen los siguientes sistemas triangulares :

Bz = b

Btu = z

Ambos sistemas se resuelvan rápidamente haciendo un remonte y un descenso.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 15 / 23

Page 79: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesly. Condiciones necesarias para poder aplicar el método

Las condiciones para poder aplicar el método de Cholesky son las siguientes :

La matriz A debe ser simétrica ai,j = aj,i

La matriz A debe ser definida positiva

x tAx > 0 para todo vector x 6= 0todos los autovalores de A son positivosLos menores principales de la matriz son positivos

a0,0 a0,1 a0,2 . a0,N−1a1,0 a1,1 a1,2 . a1,N−1a2,0 a2,1 a2,2 . a2,N−1. . . . .

aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 23

Page 80: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesly. Condiciones necesarias para poder aplicar el método

Las condiciones para poder aplicar el método de Cholesky son las siguientes :

La matriz A debe ser simétrica ai,j = aj,iLa matriz A debe ser definida positiva

x tAx > 0 para todo vector x 6= 0todos los autovalores de A son positivosLos menores principales de la matriz son positivos

a0,0 a0,1 a0,2 . a0,N−1a1,0 a1,1 a1,2 . a1,N−1a2,0 a2,1 a2,2 . a2,N−1. . . . .

aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 23

Page 81: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesly. Condiciones necesarias para poder aplicar el método

Las condiciones para poder aplicar el método de Cholesky son las siguientes :

La matriz A debe ser simétrica ai,j = aj,iLa matriz A debe ser definida positiva

x tAx > 0 para todo vector x 6= 0

todos los autovalores de A son positivosLos menores principales de la matriz son positivos

a0,0 a0,1 a0,2 . a0,N−1a1,0 a1,1 a1,2 . a1,N−1a2,0 a2,1 a2,2 . a2,N−1. . . . .

aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 23

Page 82: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesly. Condiciones necesarias para poder aplicar el método

Las condiciones para poder aplicar el método de Cholesky son las siguientes :

La matriz A debe ser simétrica ai,j = aj,iLa matriz A debe ser definida positiva

x tAx > 0 para todo vector x 6= 0todos los autovalores de A son positivos

Los menores principales de la matriz son positivos

a0,0 a0,1 a0,2 . a0,N−1a1,0 a1,1 a1,2 . a1,N−1a2,0 a2,1 a2,2 . a2,N−1. . . . .

aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 23

Page 83: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesly. Condiciones necesarias para poder aplicar el método

Las condiciones para poder aplicar el método de Cholesky son las siguientes :

La matriz A debe ser simétrica ai,j = aj,iLa matriz A debe ser definida positiva

x tAx > 0 para todo vector x 6= 0todos los autovalores de A son positivosLos menores principales de la matriz son positivos

a0,0 a0,1 a0,2 . a0,N−1a1,0 a1,1 a1,2 . a1,N−1a2,0 a2,1 a2,2 . a2,N−1. . . . .

aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 23

Page 84: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesly. Condiciones necesarias para poder aplicar el método

Las condiciones para poder aplicar el método de Cholesky son las siguientes :

La matriz A debe ser simétrica ai,j = aj,iLa matriz A debe ser definida positiva

x tAx > 0 para todo vector x 6= 0todos los autovalores de A son positivosLos menores principales de la matriz son positivos

a0,0 a0,1 a0,2 . a0,N−1a1,0 a1,1 a1,2 . a1,N−1a2,0 a2,1 a2,2 . a2,N−1. . . . .

aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 23

Page 85: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesly. Condiciones necesarias para poder aplicar el método

Las condiciones para poder aplicar el método de Cholesky son las siguientes :

La matriz A debe ser simétrica ai,j = aj,iLa matriz A debe ser definida positiva

x tAx > 0 para todo vector x 6= 0todos los autovalores de A son positivosLos menores principales de la matriz son positivos

a0,0 a0,1 a0,2 . a0,N−1a1,0 a1,1 a1,2 . a1,N−1a2,0 a2,1 a2,2 . a2,N−1. . . . .

aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 23

Page 86: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesly. Condiciones necesarias para poder aplicar el método

Las condiciones para poder aplicar el método de Cholesky son las siguientes :

La matriz A debe ser simétrica ai,j = aj,iLa matriz A debe ser definida positiva

x tAx > 0 para todo vector x 6= 0todos los autovalores de A son positivosLos menores principales de la matriz son positivos

a0,0 a0,1 a0,2 . a0,N−1a1,0 a1,1 a1,2 . a1,N−1a2,0 a2,1 a2,2 . a2,N−1. . . . .

aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 23

Page 87: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Cholesly. Condiciones necesarias para poder aplicar el método

Las condiciones para poder aplicar el método de Cholesky son las siguientes :

La matriz A debe ser simétrica ai,j = aj,iLa matriz A debe ser definida positiva

x tAx > 0 para todo vector x 6= 0todos los autovalores de A son positivosLos menores principales de la matriz son positivos

a0,0 a0,1 a0,2 . a0,N−1a1,0 a1,1 a1,2 . a1,N−1a2,0 a2,1 a2,2 . a2,N−1. . . . .

aN−1,0 aN−1,1 aN−1,2 . aN−1,N−1

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 16 / 23

Page 88: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Contenido

1 Introducción a los sistemas de ecuaciones

2 Resolución de un sistema triangular de ecuaciones

3 El método de Gauss para resolver sistemas de ecuaciones

4 El método de Cholesky para resolver sistemas de ecuaciones

5 Factorización LU de una matriz

6 Estimación del error numérico al resolver un sistema

7 Método de Crout para sistemas tridiagonales

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 17 / 23

Page 89: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IFactorización LU de una matriz.

La factorización LU es un método parecido al de Cholesky que sirvepara matrices no-simétricas. Busca una descompocisión de la forma :

A =

1 1 42 5 61 1 26

=

1 0 0l1,0 1 0l2,0 l2,2 1

u0,0 u0,1 u0,20 u1,1 u1,20 0 u2,2

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 18 / 23

Page 90: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IFactorización LU. Algoritmo general

El algoritmo para descomponer A = L · U es el siguiente

Inicializar a 0 todos los elementos de L y U.Para i = 0, ...,N − 1

li,i = 1ui,i = ai,i −

∑i−1k=0 li,kuk ,i

Para j = i + 1, ...,N − 1ui,j = ai,j −

∑i−1k=0 li,kuk ,j

lj,i = 1ui,i

(aj,i −

∑i−1k=0 lj,kuk ,i

)Fin Para j

Fin Para i

Una vez calculadas L,U, resolvemos el sistema Au = L · U · u = bdescomponiéndolo en los siguientes sistemas triangulares :

Lz = b

Uu = z

Ambos sistemas se resuelvan rápidamente haciendo un remonte y un descenso.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 19 / 23

Page 91: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IFactorización LU. Algoritmo general

El algoritmo para descomponer A = L · U es el siguiente

Inicializar a 0 todos los elementos de L y U.Para i = 0, ...,N − 1

li,i = 1ui,i = ai,i −

∑i−1k=0 li,kuk ,i

Para j = i + 1, ...,N − 1ui,j = ai,j −

∑i−1k=0 li,kuk ,j

lj,i = 1ui,i

(aj,i −

∑i−1k=0 lj,kuk ,i

)Fin Para j

Fin Para i

Una vez calculadas L,U, resolvemos el sistema Au = L · U · u = bdescomponiéndolo en los siguientes sistemas triangulares :

Lz = b

Uu = z

Ambos sistemas se resuelvan rápidamente haciendo un remonte y un descenso.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 19 / 23

Page 92: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IFactorización LU. Algoritmo general

El algoritmo para descomponer A = L · U es el siguiente

Inicializar a 0 todos los elementos de L y U.Para i = 0, ...,N − 1

li,i = 1ui,i = ai,i −

∑i−1k=0 li,kuk ,i

Para j = i + 1, ...,N − 1ui,j = ai,j −

∑i−1k=0 li,kuk ,j

lj,i = 1ui,i

(aj,i −

∑i−1k=0 lj,kuk ,i

)Fin Para j

Fin Para i

Una vez calculadas L,U, resolvemos el sistema Au = L · U · u = bdescomponiéndolo en los siguientes sistemas triangulares :

Lz = b

Uu = z

Ambos sistemas se resuelvan rápidamente haciendo un remonte y un descenso.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 19 / 23

Page 93: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IFactorización LU. Algoritmo general

El algoritmo para descomponer A = L · U es el siguiente

Inicializar a 0 todos los elementos de L y U.Para i = 0, ...,N − 1

li,i = 1ui,i = ai,i −

∑i−1k=0 li,kuk ,i

Para j = i + 1, ...,N − 1ui,j = ai,j −

∑i−1k=0 li,kuk ,j

lj,i = 1ui,i

(aj,i −

∑i−1k=0 lj,kuk ,i

)Fin Para j

Fin Para i

Una vez calculadas L,U, resolvemos el sistema Au = L · U · u = bdescomponiéndolo en los siguientes sistemas triangulares :

Lz = b

Uu = z

Ambos sistemas se resuelvan rápidamente haciendo un remonte y un descenso.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 19 / 23

Page 94: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Contenido

1 Introducción a los sistemas de ecuaciones

2 Resolución de un sistema triangular de ecuaciones

3 El método de Gauss para resolver sistemas de ecuaciones

4 El método de Cholesky para resolver sistemas de ecuaciones

5 Factorización LU de una matriz

6 Estimación del error numérico al resolver un sistema

7 Método de Crout para sistemas tridiagonales

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 20 / 23

Page 95: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IEstimación del error de un método para resolver sistemas.

Para estimar la fiabilidad de la solución numérica de un sistema deecuaciones, haremos lo siguiente: dada una matriz A, un vector de términosindependientes b y un vector solución u, calculado utilizando alguna técnicanumérica, si la solución es perfecta entonces Au − b = 0. Ahora bien, esto nosuele suceder, porque los errores de redondeo y de cálculo producen que estaestimación no sea exacta. Para estimar el error cometido al resolver el sistemautilizaremos la expresión siguiente, donde e es el vector e = Au − b :

ErrorSistema =1N

∑ |ei ||bi |+ ε

donde N es la dimensión del sistema y ErrorSistema representa el errorrelativo medio al resolver el sistema. En el denominador se añade ε > 0 paraevitar las posibles divisiones por 0. Cuanto más pequeño sea ErrorSistema,mejor aproximada estará la solución del sistema.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 21 / 23

Page 96: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IEstimación del error de un método para resolver sistemas.

Para estimar la fiabilidad de la solución numérica de un sistema deecuaciones, haremos lo siguiente: dada una matriz A, un vector de términosindependientes b y un vector solución u, calculado utilizando alguna técnicanumérica, si la solución es perfecta entonces Au − b = 0. Ahora bien, esto nosuele suceder, porque los errores de redondeo y de cálculo producen que estaestimación no sea exacta. Para estimar el error cometido al resolver el sistemautilizaremos la expresión siguiente, donde e es el vector e = Au − b :

ErrorSistema =1N

∑ |ei ||bi |+ ε

donde N es la dimensión del sistema y ErrorSistema representa el errorrelativo medio al resolver el sistema. En el denominador se añade ε > 0 paraevitar las posibles divisiones por 0. Cuanto más pequeño sea ErrorSistema,mejor aproximada estará la solución del sistema.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 21 / 23

Page 97: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IEstimación del error de un método para resolver sistemas.

Para estimar la fiabilidad de la solución numérica de un sistema deecuaciones, haremos lo siguiente: dada una matriz A, un vector de términosindependientes b y un vector solución u, calculado utilizando alguna técnicanumérica, si la solución es perfecta entonces Au − b = 0. Ahora bien, esto nosuele suceder, porque los errores de redondeo y de cálculo producen que estaestimación no sea exacta. Para estimar el error cometido al resolver el sistemautilizaremos la expresión siguiente, donde e es el vector e = Au − b :

ErrorSistema =1N

∑ |ei ||bi |+ ε

donde N es la dimensión del sistema y ErrorSistema representa el errorrelativo medio al resolver el sistema. En el denominador se añade ε > 0 paraevitar las posibles divisiones por 0. Cuanto más pequeño sea ErrorSistema,mejor aproximada estará la solución del sistema.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 21 / 23

Page 98: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IEstimación del error de un método para resolver sistemas.

Para estimar la fiabilidad de la solución numérica de un sistema deecuaciones, haremos lo siguiente: dada una matriz A, un vector de términosindependientes b y un vector solución u, calculado utilizando alguna técnicanumérica, si la solución es perfecta entonces Au − b = 0. Ahora bien, esto nosuele suceder, porque los errores de redondeo y de cálculo producen que estaestimación no sea exacta. Para estimar el error cometido al resolver el sistemautilizaremos la expresión siguiente, donde e es el vector e = Au − b :

ErrorSistema =1N

∑ |ei ||bi |+ ε

donde N es la dimensión del sistema y ErrorSistema representa el errorrelativo medio al resolver el sistema. En el denominador se añade ε > 0 paraevitar las posibles divisiones por 0. Cuanto más pequeño sea ErrorSistema,mejor aproximada estará la solución del sistema.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 21 / 23

Page 99: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IEstimación del error de un método para resolver sistemas.

Para estimar la fiabilidad de la solución numérica de un sistema deecuaciones, haremos lo siguiente: dada una matriz A, un vector de términosindependientes b y un vector solución u, calculado utilizando alguna técnicanumérica, si la solución es perfecta entonces Au − b = 0. Ahora bien, esto nosuele suceder, porque los errores de redondeo y de cálculo producen que estaestimación no sea exacta. Para estimar el error cometido al resolver el sistemautilizaremos la expresión siguiente, donde e es el vector e = Au − b :

ErrorSistema =1N

∑ |ei ||bi |+ ε

donde N es la dimensión del sistema y ErrorSistema representa el errorrelativo medio al resolver el sistema. En el denominador se añade ε > 0 paraevitar las posibles divisiones por 0. Cuanto más pequeño sea ErrorSistema,mejor aproximada estará la solución del sistema.

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 21 / 23

Page 100: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Contenido

1 Introducción a los sistemas de ecuaciones

2 Resolución de un sistema triangular de ecuaciones

3 El método de Gauss para resolver sistemas de ecuaciones

4 El método de Cholesky para resolver sistemas de ecuaciones

5 Factorización LU de una matriz

6 Estimación del error numérico al resolver un sistema

7 Método de Crout para sistemas tridiagonales

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 22 / 23

Page 101: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Crout para matrices tridiagonales

Si A es una matriz tridiagonal se puede descomponer de la forma siguiente:a0 b0 . 0c0 a1 . 00 . . bN−20 . cN−2 aN−1

=

l0 0 . 0

m0 l1 . 00 . . 00 . mN−2 lN−1

1 u0 . 00 1 . 00 . . uN−20 . 0 1

Los vectores mi , li, y ui se calculan utilizando el esquema:l0 = a0u0 = b0/l0Para i = 1, ..,N − 2

mi−1 = ci−1li = ai −mi−1ui−1ui = bi/li

Fin ParamN−2 = cN−2lN−1 = aN−1 −mN−2uN−2

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 23

Page 102: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Crout para matrices tridiagonales

Si A es una matriz tridiagonal se puede descomponer de la forma siguiente:a0 b0 . 0c0 a1 . 00 . . bN−20 . cN−2 aN−1

=

l0 0 . 0

m0 l1 . 00 . . 00 . mN−2 lN−1

1 u0 . 00 1 . 00 . . uN−20 . 0 1

Los vectores mi , li, y ui se calculan utilizando el esquema:

l0 = a0u0 = b0/l0Para i = 1, ..,N − 2

mi−1 = ci−1li = ai −mi−1ui−1ui = bi/li

Fin ParamN−2 = cN−2lN−1 = aN−1 −mN−2uN−2

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 23

Page 103: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Crout para matrices tridiagonales

Si A es una matriz tridiagonal se puede descomponer de la forma siguiente:a0 b0 . 0c0 a1 . 00 . . bN−20 . cN−2 aN−1

=

l0 0 . 0

m0 l1 . 00 . . 00 . mN−2 lN−1

1 u0 . 00 1 . 00 . . uN−20 . 0 1

Los vectores mi , li, y ui se calculan utilizando el esquema:

l0 = a0u0 = b0/l0Para i = 1, ..,N − 2

mi−1 = ci−1li = ai −mi−1ui−1ui = bi/li

Fin ParamN−2 = cN−2lN−1 = aN−1 −mN−2uN−2

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 23

Page 104: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Crout para matrices tridiagonales

Si A es una matriz tridiagonal se puede descomponer de la forma siguiente:a0 b0 . 0c0 a1 . 00 . . bN−20 . cN−2 aN−1

=

l0 0 . 0

m0 l1 . 00 . . 00 . mN−2 lN−1

1 u0 . 00 1 . 00 . . uN−20 . 0 1

Los vectores mi , li, y ui se calculan utilizando el esquema:

l0 = a0u0 = b0/l0Para i = 1, ..,N − 2

mi−1 = ci−1li = ai −mi−1ui−1ui = bi/li

Fin ParamN−2 = cN−2lN−1 = aN−1 −mN−2uN−2

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 23

Page 105: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Crout para matrices tridiagonales

Si A es una matriz tridiagonal se puede descomponer de la forma siguiente:a0 b0 . 0c0 a1 . 00 . . bN−20 . cN−2 aN−1

=

l0 0 . 0

m0 l1 . 00 . . 00 . mN−2 lN−1

1 u0 . 00 1 . 00 . . uN−20 . 0 1

Los vectores mi , li, y ui se calculan utilizando el esquema:

l0 = a0u0 = b0/l0Para i = 1, ..,N − 2

mi−1 = ci−1li = ai −mi−1ui−1ui = bi/li

Fin ParamN−2 = cN−2lN−1 = aN−1 −mN−2uN−2

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 23

Page 106: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Crout para matrices tridiagonales

Si A es una matriz tridiagonal se puede descomponer de la forma siguiente:a0 b0 . 0c0 a1 . 00 . . bN−20 . cN−2 aN−1

=

l0 0 . 0

m0 l1 . 00 . . 00 . mN−2 lN−1

1 u0 . 00 1 . 00 . . uN−20 . 0 1

Los vectores mi , li, y ui se calculan utilizando el esquema:

l0 = a0u0 = b0/l0Para i = 1, ..,N − 2

mi−1 = ci−1li = ai −mi−1ui−1ui = bi/li

Fin ParamN−2 = cN−2lN−1 = aN−1 −mN−2uN−2

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 23

Page 107: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Crout para matrices tridiagonales

Si A es una matriz tridiagonal se puede descomponer de la forma siguiente:a0 b0 . 0c0 a1 . 00 . . bN−20 . cN−2 aN−1

=

l0 0 . 0

m0 l1 . 00 . . 00 . mN−2 lN−1

1 u0 . 00 1 . 00 . . uN−20 . 0 1

Los vectores mi , li, y ui se calculan utilizando el esquema:

l0 = a0u0 = b0/l0Para i = 1, ..,N − 2

mi−1 = ci−1li = ai −mi−1ui−1ui = bi/li

Fin ParamN−2 = cN−2lN−1 = aN−1 −mN−2uN−2

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 23

Page 108: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Crout para matrices tridiagonales

Si A es una matriz tridiagonal se puede descomponer de la forma siguiente:a0 b0 . 0c0 a1 . 00 . . bN−20 . cN−2 aN−1

=

l0 0 . 0

m0 l1 . 00 . . 00 . mN−2 lN−1

1 u0 . 00 1 . 00 . . uN−20 . 0 1

Los vectores mi , li, y ui se calculan utilizando el esquema:

l0 = a0u0 = b0/l0Para i = 1, ..,N − 2

mi−1 = ci−1 La complejidad del método de Crout es O(N1)li = ai −mi−1ui−1ui = bi/li

Fin ParamN−2 = cN−2lN−1 = aN−1 −mN−2uN−2

A partir de la descomposición se resuelven los 2 sistemas triangularesasociados como en Cholesky mediante un descenso y un remonte

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 23

Page 109: Métodos Numéricos. Grado en Ingeniería ... - dis.ulpgc.eslalvarez/teaching/mn/2012... · donde A = (aij) es una matriz de NxN;b = (bi) es un vector de tamaño N que determina los

ULPGCLogo

Análisis Numérico Matricial IMétodo de Crout para matrices tridiagonales

Si A es una matriz tridiagonal se puede descomponer de la forma siguiente:a0 b0 . 0c0 a1 . 00 . . bN−20 . cN−2 aN−1

=

l0 0 . 0

m0 l1 . 00 . . 00 . mN−2 lN−1

1 u0 . 00 1 . 00 . . uN−20 . 0 1

Los vectores mi , li, y ui se calculan utilizando el esquema:

l0 = a0u0 = b0/l0Para i = 1, ..,N − 2

mi−1 = ci−1 La complejidad del método de Crout es O(N1)li = ai −mi−1ui−1ui = bi/li

Fin ParamN−2 = cN−2lN−1 = aN−1 −mN−2uN−2

A partir de la descomposición se resuelven los 2 sistemas triangularesasociados como en Cholesky mediante un descenso y un remonte

Luis Alvarez León () Métodos Numéricos Univ. de Las Palmas de G.C. 23 / 23