Resolución numérica de sistemas de ecuaciones lineales

Documentos relacionados
Parte 2. Métodos directos para la resolución de sistemas de ecuaciones lineales

I. Métodos directos para resolución de SEL. Se dice que una matriz A admite una factorización LU indirecta A = LU

Resolución de sistemas de ecuaciones lineales

Clase. 1. Resolución de sistemas de ecuaciones lineales: preliminares

1.II.3. Sistemas de ecuaciones lineales: métodos iterativos.

Sistemas de ecuaciones lineales

9. Normas y métodos iterativos de resolución de sistemas lineales.

Elementos de Cálculo Numérico

2. Sistemas de ecuaciones lineales

Profesor Francisco R. Villatoro 13 de Diciembre de 1999 SOLUCIONES. 1. Una matriz A de n n es diagonalmente dominante (estrictamente) por filas si

METODOS ITERATIVOS. Hermes Pantoja Carhuavilca. Facultad de Ingeniería Mecanica Universidad Nacional de Ingenieria

Sistemas de Ecuaciones Lineales

Resolverlo mediante el método de Gauss con aritmética exacta y sin pivoteo.

Unidad 5 Problemas de álgebra lineal numérica.

Cálculo Numérico. Curso Ejercicios: Preliminares I

Resolución numérica de sistemas de ecuaciones. Introducción

Resolución de Sistema de Ecuaciones Lineales

OCW-V.Muto Sistemas lineales: Preliminares Cap. XIII CAPITULO XIII. METODOS PARA LA RESOLUCION DE SISTEMAS LINEALES: PRELIMINARES

Métodos Numéricos para Sistemas de Ecuaciones Lineales

Métodos de factorización para resolver sistemas de ecuaciones lineales. 22 de agosto, 2012

Para resolver un sistema lineal estan permitidas tres operaciones en las ecuaciones.

Sistemas de Ecuaciones. Lineales II

1.IV Aproximación numérica de valores y vectores propios.

2.2 Normas matriciales

Métodos numéricos para sistemas de ecuaciones. (Prácticas)

Métodos Numéricos: ecuaciones lineales Eduardo P. Serrano

Elementos de Cálculo Numérico (M) - Cálculo Numérico

Al considerar varios polígonos regulares inscritos resulta: perímetro del cuadrado < π. perímetro del 96 gono < π

UNIVERSIDAD CATÓLICA DE TEMUCO FACULTAD DE INGENIERÍA DEPTO. DE CIENCIAS MATEMÁTICAS Y FÍSICAS SOLUCIÓN NUMÉRICA DE SISTEMAS DE ECUACIONES LINEALES

Tema 1: Matrices. Sistemas de ecuaciones. Determinantes

Gustavo Rodríguez Gómez. Agosto Dicembre 2011

Métodos iterativos para resolver sistemas de ecuaciones lineales

Sistemas de Ecuaciones Lineales y Matrices

Análisis Numérico para Ingeniería. Clase Nro. 6

Parte 4. Métodos iterativos para la resolución de sistemas de ecuaciones lineales

Matrices y Sistemas Lineales

Sistema de Ecuaciones Lineales

3. Sistemas inconsistentes y sistemas indeterminados

Cálculo Numérico - CO3211. Ejercicios. d ) Sabiendo que la inversa de la matriz A = es A c d

Cálculo de autovalores

Elementos de Cálculo Numérico / Cálculo Numérico Segundo Cuatrimestre 2017

Resolución numérica de sistemas de ecuaciones. Introducción

RESOLUCIÓN DE SISTEMAS LINEALES

Problemas Ampliación de Matemáticas. Sistemas lineales 1.- Encontrar la factorización L U de las siguientes matrices:

Curso Hoja 1. Análisis de errores

Resolución de Sistema de Ecuaciones Lineales

Unidad 1: Fuentes y propagación de errores

3. ÁLGEBRA LINEAL // 3.1. SISTEMAS DE

OCW-V.Muto Los métodos de transformación ortogonal. Cap. XX CAPITULO XX. LOS METODOS DE TRANSFORMACION ORTOGONAL

3. ÁLGEBRA LINEAL // 3.1. SISTEMAS DE

1.2 Valores y vectores propios. Método de las potencias y Rayleigh.

Resolución de Sistema de Ecuaciones Lineales

Métodos Numéricos Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 1/15

SEL - Métodos Directos

Ejercicios. CÁLCULO NUMÉRICO II Curso 2009/2010. Departamento de Ecuaciones Diferenciales y Análisis Numérico

Sistemas de Ecuaciones. Lineales III

Matrices triangulares y descomposición LU

Departamento de Ecuaciones Diferenciales y Análisis Numérico. CÁLCULO NUMÉRICO I (Tema 3 - Relación 2)

SISTEMAS DE ECUACIONES

Matrices y sistemas de ecuaciones lineales. Autovalores y autovectores.

2. Sistemas de ecuaciones lineales.

Métodos Numéricos Cap 4: Solución de Sistemas de Ecuaciones lineales y no lineales 1/15

Lección 8. Matrices y Sistemas de Ecuaciones Lineales

Tema 1. Espacios Vectoriales. Sistemas de ecuaciones.

Sistema de ecuaciones lineales

Conjuntos y matrices. Sistemas de ecuaciones lineales

1.1 Sistemas de ecuaciones lineales: método del gradiente conjugado.

Resolución de sistemas lineales

MÉTODOS MATEMÁTICOS (Curso ) Cuarto Curso de Ingeniero Industrial Departamento de Matemática Aplicada II. Universidad de Sevilla

SEL Métodos Directos

Tema 1. Espacios Vectoriales. Sistemas de ecuaciones.

OCW-V.Muto El problema de mínimos cuadrados. Cap. XIX CAPITULO XIX. EL PROBLEMA DE LOS MINIMOS CUADRADOS: PRELIMINARES

Sistemas de Ecuaciones Lineales. Matrices y determinantes.

6. Forma canónica de matrices

CURSO DE METODOS NUMERICOS T ERCERA PART E METODOS PARA LA RESOLUCION DE SISTEMAS LINEALES

Aplicar este algoritmo para resolver el sistema de ecuaciones: º «« º ««

Matrices y sistemas de ecuaciones

OCW-V.Muto Eliminación Gaussiana y sustitución hacia atrás Cap. XIV CAPITULO XIV. ELIMINACION GAUSSIANA Y SUSTITUCION HACIA ATRAS

ALN - Curso 2007 Gradiente Conjugado

Matrices 3. Matrices. Verónica Briceño V. agosto 2012

1. Normas matriciales

ÁLGEBRA LINEAL I NOTAS DE CLASE UNIDAD 2

Métodos Numéricos Grado en Informática Tema 6: Análisis Numérico Matricial II

Tema 6: Resolución aproximada de sistemas de ecuaciones lineales

CURSO DE METODOS NUMERICOS Año Académico Curso Tercero de Matemáticas EXAMEN FINAL FEBRERO

Edgar Acuña/ ESMA 6665 Lecc1-2 1 ESTADISTICA COMPUTACIONAL. Capítulo I. Matrices y solución de Ecuaciones lineales

Métodos directos para resolver sistemas de ecuaciones lineales

Métodos iterativos de solución de SEL

Definición Dados dos números naturales m y n, una matriz de orden o dimensión m n es una tabla numérica rectangular con m filas y n columnas.

TEMA 8.- NORMAS DE MATRICES Y

Apuntes de CÁLCULO NUMÉRICO II. Curso 2008/2009

METODOS NUMERICOS. Curso

Método de diferencias finitas para ecuaciones diferenciales parciales elípticas. (Parte II)

Elementos de Cálculo Numérico / Cálculo Numérico Primer Cuatrimestre 2016

CONTENIDOS MATEMÁTICAS II SEGUNDA EVALUACIÓN CURSO 2017/2018 MATRICES

Transcripción:

Resolución numérica de sistemas de ecuaciones lineales María González Taboada Departamento de Matemáticas Febrero de 2008

Esquema: 1 Descripción del problema 2 Algunas definiciones y propiedades 3 Condicionamiento de un sistema de ecuaciones lineales 4 Métodos directos 5 Métodos iterativos clásicos 6 Referencias

1. El problema Resolver sistemas de ecuaciones lineales con el mismo número de ecuaciones que de incógnitas. Dados los números a i j y b i, para i, j = 1, 2,..., n, se trata de hallar los números x 1, x 2,..., x n que verifican las n ecuaciones lineales siguientes simultáneamente : a 11 x 1 + a 12 x 2 +... + a 1n x n = b 1 a 21 x 1 + a 22 x 2 +... + a 2n x n = b 2. a n1 x 1 + a n2 x 2 +... + a nn x n = b n

El problema Definimos: - la matriz de coeficientes : A = (a ij ) n i,j=1 - el vector del segundo miembro : b = (b i ) n i=1 - el vector de incógnitas : x = (x i ) n i=1 Usando la notación matricial, el sistema se escribe A x = b En lo que sigue, suponemos que el sistema tiene una única solución.

Solución algebraica Si conocemos A 1, simplemente hay que hacer x = A 1 b El coste de resolver el sistema en este caso es el de una multiplicación "matriz por vector" : n 2 multiplicaciones y n (n 1) sumas Si no conocemos la matriz inversa, A 1, desde el punto de vista de los cálculos necesarios, no es eficiente determinarla para resolver el sistema.

Solución numérica Disponemos de dos tipos de métodos: 1 Métodos directos: Permiten calcular la solución en un número finito de pasos conocido a priori. Solo están sujetos a errores de redondeo. 2 Métodos iterativos: Construyen una sucesión que converge a la solución del sistema. Además de los errores de redondeo, existe un error de truncamiento.

2. Algunas definiciones y propiedades 1 Autovalores y autovectores 2 Normas vectoriales. Normas vectoriales equivalentes 3 Normas matriciales. Normas matriciales subordinadas a normas vectoriales 4 Sucesiones de vectores y de matrices

2.1 Autovalores y autovectores Dada una matriz A M n, se dice que un número λ C es un autovalor o valor propio de la matriz A si existe un vector x 0 tal que A x = λ x Cualquier vector x 0 que verifique la relación anterior se llama autovector o vector propio asociado al autovalor λ de la matriz A. Si x 0 es un autovector asociado a un autovalor λ de la matriz A, α x también lo es, α K ( K = R ó C ).

Autovalores y autovectores Si λ es un autovalor de la matriz A, el sistema homogéneo tiene soluciones no triviales. (A λ I) x = 0 Por tanto, si λ es un autovalor de la matriz A, det(a λ I) = 0 - p A (λ) := det(a λ I) es un polinomio de grado n en λ. - Se llama polinomio característico de la matriz A. Los autovalores de A son las raíces de su polinomio característico.

Autovalores y autovectores Una matriz A M n tiene exactamente n autovalores, contando sus multiplicidades. Si λ = a + b i es un autovalor de A, entonces λ = a b i también lo es. Teorema: (N.H. Abel - E. Galois) Los polinomios de grado n 5 no se pueden resolver por radicales. Para calcular los autovalores de matrices de orden 5 o superior, es necesario emplear métodos numéricos.

Autovalores y autovectores Si A es una matriz diagonal o triangular, sus autovalores son los elementos de su diagonal principal. Si A es una matriz simétrica, sus autovalores son números reales. Si A es una matriz ortogonal, todos sus autovalores tienen módulo 1. Se llama radio espectral de una matriz A a la cantidad ρ(a) := max { λ : λ C es un autovalor de A }

2.2 Norma vectorial Sea V un espacio vectorial sobre un cuerpo K ( K = R ó C ). Una norma sobre V es una aplicación : V R con las propiedades siguientes: 1 v 0, v V 2 v = 0 v = 0 3 α v = α v, α K, v V 4 Desigualdad triangular: u + v u + v, u, v V El espacio vectorial V dotado de una norma vectorial, (V, ), se denomina espacio vectorial normado.

Normas vectoriales más utilizadas Sea V un espacio vectorial de dimensión n. Dado v V, denotamos por v 1, v 2,..., v n sus componentes en la base canónica de V. Norma uno: Norma euclídea: v 1 := v 1 + v 2 +... + v n v 2 := Norma del máximo: v 1 2 + v 2 2 +... + v n 2 v := max ( v 1, v 2,..., v n )

Normas vectoriales equivalentes Dos normas y son equivalentes si existen constantes positivas, c y C, tales que c v v C v v V Todas las normas definidas sobre un espacio de dimensión finita son equivalentes.

2.3 Norma matricial Sea M n (K) el espacio vectorial de las matrices cuadradas de orden n con coeficientes en K. Una norma matricial sobre M n (K) es una aplicación : M n (K) R con las propiedades siguientes: 1 A 0, A M n (K) 2 A = 0 A = O 3 α A = α A, α K, A M n (K) 4 A + B A + B, A, B M n (K) 5 AB A B, A, B M n (K) Si no hay posibilidad de confusión, escribiremos simplemente M n.

Norma matricial subordinada Dada una norma vectorial sobre K n, la aplicación : M n R definida por A v A := sup v K n v = sup A v = sup A v v K n v K n v 0 v =1 v 1 es una norma matricial y se llama norma matricial subordinada a la norma vectorial. Una norma matricial se dice compatible con una norma vectorial sobre K n si A v A v v K n

Norma matricial subordinada Si es una norma matricial subordinada, entonces: A v A v v K n Además, existe al menos un vector u 0 tal que A u = A u Alternativamente, la norma matricial subordinada a la norma vectorial se puede definir como: A = inf { α R : A v α v v K n } En particular, si es una norma matricial subordinada, I = 1

Normas matriciales subordinadas más utilizadas Norma matricial subordinada a la norma uno: A v 1 A 1 = sup v K n v 1 v 0 = m«ax 1 j n n a ij i=1 Norma matricial subordinada a la norma del máximo: A v A = sup v K n v v 0 = m«ax 1 i n n a ij j=1 Norma matricial subordinada a la norma euclídea: A v 2 A 2 = sup = ρ(a v K n v A) 2 v 0

Propiedades Si la matriz A es simétrica, A 2 = ρ(a) Si la matriz A es ortogonal, A 2 = 1. Relación entre radio espectral y normas matriciales : 1 Para cualquier norma matricial, ρ(a) A 2 El radio espectral es el ínfimo de las normas matriciales subordinadas: ρ(a) = «ınf A subordinada

Un ejemplo de norma matricial no subordinada La aplicación E : M n R definida por ( n A E := a ij 2) 1/2 i,j=1 es una norma matricial no subordinada para n 2, llamada norma de Frobenius. La norma E es fácil de calcular y proporciona una cota superior de la norma euclídea ya que A 2 A E n A 2 A M n

2.4 Sucesiones de vectores Sea (V, ) un espacio vectorial normado sobre un cuerpo K. Una sucesión de vectores en V es una aplicación x : N V k x(k) =: x (k) Se denota (x (k) ) k N o, simplemente, (x (k) ) k. Se dice que la sucesión (x (k) ) k V converge a x V si l«ım x (k) x = 0 k + En ese caso, se escribe l«ım k x (k) = x.

Sucesiones de matrices Una sucesión de matrices en M n es una aplicación A : N M n k A(k) =: A (k) Se denota (A (k) ) k N o, simplemente, (A (k) ) k. Si es una norma matricial, se dice que la sucesión (A (k) ) k N M n converge a la matriz A M n si l«ım k A(k) A = 0 En ese caso, se escribe l«ım k A (k) = A.

Sucesiones de matrices Lema: Si A M n (R), las afirmaciones siguientes son equivalentes: 1 l«ım k A (k) = O 2 l«ım k A (k) x = 0 3 ρ(a) < 1 x R n 4 Existe alguna norma matricial subordinada tal que A < 1

3. Condicionamiento de un sistema de ecuaciones lineales 1 Ejemplo (R.S. Wilson) 2 Perturbación del vector del segundo miembro 3 Perturbación de la matriz de coeficientes 4 Número de condición de una matriz 5 Recopilación de resultados 6 Implicaciones prácticas

3.1 Ejemplo (R.S. Wilson) 10 7 8 7 x 32 7 5 6 5 y 8 6 10 9 z = 23 33 7 5 9 10 t 31 x 1 y z = 1 1 t 1 - La matriz de coeficientes es simétrica. - Su determinante vale 1. - Su inversa también es simétrica: 25 41 10 6 41 68 17 10 10 17 5 3 6 10 3 2

Ejemplo (R.S. Wilson) 10 7 8 7 x 32,1 7 5 6 5 y 8 6 10 9 z = 22,9 33,1 7 5 9 10 t 30,9 x y z = t 9,2 12,6 4,5 1,1 - Error relativo en los datos: 0,3332 10 2 - Error relativo en los resultados: 0,8198 10 1 El error relativo se ha multiplicado por más de 2460! Nota: Todos los errores han sido calculados en la norma 2.

Ejemplo (R.S. Wilson) 10 7 8,1 7,2 x 32 7,08 5,04 6 5 y 8 5,98 9,89 9 z = 23 33 6,99 4,99 9 9,98 t 31 x y z = t 81 137 34 22 - Error relativo en los datos: 0,7621 10 2 - Error relativo en los resultados: 0,8198 10 2 El error relativo se ha multiplicado por más de 10757! Nota: Todos los errores han sido calculados en la norma 2.

Ejemplo (R.S. Wilson) El ejemplo es preocupante: El orden de los errores en los datos es considerado aceptable en las ciencias experimentales. Son fiables los resultados que obtenemos? En lo que sigue, analizamos este problema. Suponemos que - A es una matriz invertible - denota una norma vectorial y la norma matricial subordinada correspondiente.

3.2 Perturbación del vector del segundo miembro Consideramos el sistema de ecuaciones lineales A x = b y el sistema de ecuaciones lineales perturbado A (x + δx) = b + δb Se tiene que δx x A A 1 δb b El error relativo en el resultado está acotado superiormente en función del error relativo en los datos.

3.3 Perturbación de la matriz de coeficientes Comparamos ahora la solución exacta del sistema de ecuaciones A x = b con la solución exacta del sistema perturbado (A + δa)(x + δx) = b (Suponemos que admite una única solución). Se tiene que δx x + δx A A 1 δa A δx El error relativo en el resultado, medido por x+δx, está acotado superiormente en función del error relativo en los datos.

3.4 Número de condición de una matriz Se llama condicionamiento o número de condición de una matriz A relativo a la norma matricial subordinada a la cantidad cond(a) := A A 1 También se suele denotar χ(a) o κ(a). En la práctica, suelen calcularse los números de condición relativos a las normas matriciales 1, 2 y. Escribiremos cond p (A) = A p A 1 p, p = 1, 2,

Número de condición de una matriz Propiedades: 1 cond(a) 1 2 cond(a) = cond(a 1 ) 3 cond(α A) = cond(a), α 0 4 Si A es una matriz ortogonal, cond 2 (A) = 1.

3.5 Recopilación de resultados Teorema: (Perturbación del vector del segundo miembro) Sea A una matriz invertible, y sean x y x + δx las soluciones de los sistemas de ecuaciones lineales Si b 0, entonces A x = b A (x + δx) = b + δb δx x δb cond (A) b Además, esta cota es óptima: es posible encontrar vectores b 0 y δb 0 para los que se tiene la igualdad.

Ejemplo (R.S. Wilson) A = 10 7 8 7 7 5 6 5 8 6 10 9 7 5 9 10 b = 32 23 33 δb = 31 0,1 0,1 0,1 0,1 cond 2 (A) 2984 δx 2 x 2 0,8198 10 1 0,9943 10 1 cond 2 (A) δb 2 b 2

Recopilación de resultados Teorema: (Perturbación de la matriz de coeficientes) Sea A una matriz invertible, y sean x y x + δx las soluciones de los sistemas de ecuaciones lineales A x = b (A + δa) (x + δx) = b Si b 0, entonces δx x + δx cond (A) δa A y la cota es óptima: es posible encontrar un vector b 0 y una matriz δa O para los que se tiene la igualdad. Además, δx x δa ( ) cond (A) 1 + O( δa ) A

Ejemplo (R.S. Wilson) A = 10 7 8 7 7 5 6 5 8 6 10 9 7 5 9 10 δa = 0 0 0,1 0,2 0,08 0,04 0 0 0 0,02 0,11 0 0,01 0,01 0 0,02 cond 2 (A) 2984 δx 2 x + δx 2 0,9984 10 0 0,2274 10 2 cond 2 (A) δa 2 A 2

3.6 Implicaciones prácticas El número de condición de una matriz A mide la sensibilidad de la solución de un sistema de ecuaciones de matriz A respecto a variaciones en la matriz de coeficientes y/o en el segundo miembro. Se dice que un sistema de ecuaciones lineales es bien condicionado si el número de condición de su matriz de coeficientes es pequeño. En caso contrario, se dice que es mal condicionado. Un sistema de ecuaciones lineales es tanto mejor condicionado cuanto más próximo a 1 es el número de condición de su matriz de coeficientes.

Implicaciones prácticas No se puede mejorar el condicionamiento de un sistema de ecuaciones lineales multiplicando todas las ecuaciones por el mismo escalar. Sí es posible hacerlo multiplicando cada fila y/o columna por un número adecuado (problema del equilibrado de una matriz). Las matrices ortogonales son muy bien condicionadas para la resolución de sistemas de ecuaciones lineales.

4. Métodos directos 1 Introducción 2 Sistemas de matriz diagonal 3 Sistemas de matriz triangular inferior 4 Sistemas de matriz triangular superior 5 Factorización LU 6 Factorización de Cholesky o LL t 7 Factorización QR 8 Cálculo de determinantes

4.1 Introducción Los métodos directos permiten obtener la solución exacta del sistema realizando un número de operaciones conocido a priori. Si se emplea aritmética finita, la solución estará afectada por errores de redondeo. La mayoría de los métodos directos se basan en factorizaciones de la matriz de coeficientes.

Introducción La idea del método de Gauss es transformar el sistema de ecuaciones lineales original en un sistema de matriz triangular superior con las mismas soluciones. Para ello, se realizan tres tipos de operaciones: 1 E i λ E i, λ 0 2 E i E i + λ E j, j i 3 E i E j En estos cálculos, solo intervienen la matriz de coeficientes y el vector del segundo miembro.

Introducción Por tanto, para resolver el sistema de ecuaciones lineales, solo es necesario almacenar la matriz aumentada: a 11 a 12... a 1n b 1 a 21 a 22... a 2n b 2 [A b] =....... a n1 a n2... a nn b n

Introducción El tiempo de cálculo y el error de redondeo que contiene el resultado dependen del número de operaciones que se realicen (que a su vez depende del orden del sistema). Por ejemplo, para resolver un sistema de orden n usando el método de Gauss, son necesarias n 3 3 + n2 n 3 multiplicaciones / divisiones n 3 3 + n2 2 5n 6 sumas / restas Las diferencias reales en el tiempo de ejecución también dependen de la precisión que usemos y del ordenador empleado.

Introducción n Multiplicaciones/Divisiones Sumas/Restas 10 1 430 375 10 2 343 300 338 250 10 3 334 333 000 333 832 500 10 4 333 433 330 000 333 383 325 000 10 5 333 343 333 300 000 333 338 333 250 000 10 6 333 334 333 333 000 000 333 333 833 332 500 000 Operaciones del método de Gauss

4.2 Sistemas de matriz diagonal Consideramos el sistema de ecuaciones lineales D x = b donde D es una matriz diagonal: d 11 0 0... 0 0 d 22 0... 0 D = 0 0 d 33... 0....... 0 0 0... d nn

Sistemas de matriz diagonal La ecuación i-ésima del sistema (i = 1, 2,..., n) es: d ii x i = b i Por tanto, si d ii 0, para i = 1, 2,..., n, tenemos que x i = b i d ii

Sistemas de matriz diagonal Algoritmo: Para i = 1,..., n, Fin Implementación: Si d ii 0, hacer x i = b i /d ii La diagonal principal de la matriz D se almacena en un vector d. Número de operaciones: n divisiones

Sistemas de matriz diagonal Nota: Si se van a resolver muchos sistemas de matriz D, en lugar de su diagonal principal, suelen almacenarse los números d 1 ii, i = 1, 2,..., n. En ese caso, para resolver un sistema de orden n, realizaríamos n multiplicaciones.

4.3 Sistemas de matriz triangular inferior Consideramos el sistema de ecuaciones lineales L x = b donde L es una matriz triangular inferior: l 11 0 0... 0 l 21 l 22 0... 0 L = l 31 l 32 l 33... 0....... l n1 l n2 l n3... l nn

Sistemas de matriz triangular inferior La ecuación i-ésima del sistema (i = 1, 2,..., n) es: l i1 x 1 +... + l ii 1 x i 1 + l ii x i = b i Por tanto, si l ii 0, para i = 1, 2,..., n, tenemos que x i = b i l i1 x 1... l ii 1 x i 1 l ii = i 1 b i l ij x j j=1 l ii

Sistemas de matriz triangular inferior Algoritmo (sustitución hacia adelante o descenso): 1 Si l 11 = 0, parar (no existe solución única). 2 Hacer x 1 = b 1 l 11 3 Para i = 2,..., n, 1 Si l ii = 0, parar (no existe solución única). 2 Hacer x i = Xi 1 b i l ij x j j=1 l ii

Sistemas de matriz triangular inferior Implementación: Los elementos de la parte triangular inferior de L se almacenan en un vector l siguiendo el orden por filas o por columnas. Se suele usar un vector puntero para señalar la posición en que comienza cada fila o columna en l. La solución del sistema se puede almacenar sobre el vector del segundo miembro. Número de operaciones: n 2 + n 2 n 2 n 2 multiplicaciones / divisiones sumas / restas

Sistemas de matriz triangular inferior n Multip./Divisiones Sumas/Restas 10 1 55 45 10 2 5 050 4 950 10 3 500 500 499 500 10 4 50 005 000 49 995 000 10 5 5 000 050 000 4 999 950 000 10 6 500 000 500 000 499 999 500 000 Operaciones para resolver sistemas de matriz triangular

4.4 Sistemas de matriz triangular superior Consideramos el sistema de ecuaciones lineales U x = b donde U es una matriz triangular superior: u 11 u 12 u 13... u 1n 0 u 22 u 23... u 2n U = 0 0 u 33... u 3n....... 0 0 0... u nn

Sistemas de matriz triangular superior La ecuación i-ésima del sistema, para i = 1, 2,..., n, es: u ii x i + u ii+1 x i+1 +... + u in x n = b i Por tanto, si u ii 0, para i = 1, 2,..., n, tenemos que x i = b i u ii+1 x i+1... u in x n u ii = b i n j=i+1 u ii u ij x j

Sistemas de matriz triangular superior Algoritmo (sustitución hacia atrás o remonte): 1 Si u nn = 0, parar (no existe solución única). 2 Hacer x n = b n u nn 3 Para i = n 1,..., 1, 1 Si u ii = 0, parar (no existe solución única). 2 Hacer x i = nx b i u ij x j j=i+1 u ii

Sistemas de matriz triangular superior Implementación: Los elementos de la parte triangular superior de U se almacenan en un vector u siguiendo el orden por filas o por columnas. Se suele usar un vector puntero para señalar la posición en que comienza cada fila o columna en el vector u. La solución del sistema se puede almacenar sobre el vector del segundo miembro. Número de operaciones: las mismas que requiere el algoritmo de sustitución hacia adelante.

4.5 Factorización LU Notación: Dada una matriz cuadrada A, de orden n, para k = 1,..., n, denotamos por a 11... a 1k A k :=..... a k1... a kk Teorema: (Existencia de la factorización LU ) Si det(a k ) 0, para k = 1,..., n, entonces existen una matriz triangular inferior L y una matriz triangular superior U tales que A = LU

Factorización LU Muchas matrices que aparecen en las aplicaciones admiten factorización LU: 1 Las matrices estrictamente diagonal dominantes: - Por filas: a ii > n a ij, para i = 1,..., n j=1 j i - Por columnas: a ii > n a ji, para i = 1,..., n j=1 j i 2 Las matrices simétricas y definidas positivas: A = A t y x t A x > 0 x 0

Factorización LU La factorización LU de una matriz A no es única. Habitualmente, se fija l ii = 1, para i = 1,..., n En este caso: - U = A (n), la matriz triangular superior que se obtiene al aplicar eliminación gaussiana a la matriz A. - Para i = 2,..., n y j = 1,..., i 1, l ij = m ij siendo m ij los pivotes de la eliminación gaussiana.

Factorización LU Consideramos el sistema de ecuaciones lineales A x = b donde la matriz A admite la factorización LU. Entonces A x = b LU x = b Para resolver el sistema, hay que hacer: 1 Resolver L y = b 2 Resolver U x = y

Factorización LU El uso de la factorización LU presenta ventajas cuando hay que resolver varios sistemas de ecuaciones lineales con la misma matriz de coeficientes: A x (k) = b (k), k = 1,..., K Pasos a seguir: 1 Calcular la factorización LU de la matriz A 2 Para k = 1,..., K, 1 Resolver L y (k) = b (k) 2 Resolver U x (k) = y (k) Una vez obtenida la factorización, la resolución de cada sistema requiere n 2 multiplicaciones/divisiones y n 2 n sumas/restas.

Factorización LU Algoritmo ( factorización LU ): Para i = 1,..., n : i 1 1 Hacer u ii = a ii l ik u ki k=1 2 Si u ii = 0, parar (factorización imposible). 3 Para j = i + 1,..., n : Xi 1 1 Hacer u ij = a ij l ik u kj k=1 Xi 1 2 Hacer l ji = a ji l jk u ki /u ii k=1

Factorización LU Implementación: Factorización LU : Es suficiente usar un array n n, en el que inicialmente se almacena la matriz A. A medida que se va calculando la factorización, se almacenan en el array la parte triangular superior de U y la parte estrictamente triangular inferior de L (la diagonal principal de L no se almacena). Resolución de los sistemas triangulares: En el algoritmo de sustitución hacia adelante, hay que tener en cuenta que l ii = 1, para i = 1,..., n.

Factorización LU En la práctica, la factorización LU solo es útil cuando no se requieren intercambios de filas para controlar el error de redondeo. Teorema: Si A es una matriz invertible, entonces existe una matriz de permutación P tal que PA admite una factorización LU. Entonces: A x = b P A x = P b LU x = P b 1 Calcular c = P b 2 Resolver L y = c 3 Resolver U x = y

Factorización LU (matriz tridiagonal) En el caso particular en que la matriz A es tridiagonal: a 1 b 1 c 2 a 2 b 2 A =......... c n 1 a n 1 b n 1 c n a n solo es necesario emplear 3n 2 posiciones de memoria para almacenar la matriz A.

Factorización LU (matriz tridiagonal) Para factorizar la matriz A, son necesarias 2n 2 multiplicaciones / divisiones n 1 sumas / restas Para resolver los sistemas triangulares, son necesarias 3n 2 multiplicaciones / divisiones 2n 2 sumas / restas

4.6 Factorización de Cholesky (L L t ) La factorización de Cholesky se usa para resolver sistemas de ecuaciones lineales de matriz simétrica y definida positiva. Una matriz cuadrada A de orden n es definida positiva si, y solo si, x t A x > 0 x 0 Si det(a k ) > 0, para k = 1,..., n, entonces la matriz A es definida positiva.

Factorización de Cholesky (L L t ) Teorema: (Cholesky) Una matriz simétrica A es definida positiva si y solo si se puede factorizar en la forma LL t, donde L es una matriz triangular inferior con elementos distintos de cero en su diagonal principal. Si se fija el signo de los elementos l ii, i = 1, 2,..., n, la factorización es única. Tomaremos los elementos l ii > 0, para i = 1, 2,..., n.

Factorización de Cholesky (L L t ) Consideramos el sistema de ecuaciones lineales A x = b donde la matriz A es simétrica y definida positiva. Entonces: A x = b LL t x = b Para resolver el sistema, hay que hacer: 1 Resolver L y = b 2 Resolver L t x = y

Factorización de Cholesky (L L t ) Algoritmo ( factorización de Cholesky para calcular L ): 1 Si a 11 > 0, hacer l 11 = a 11 2 Para j = 2,..., n, hacer l j1 = a j1 /l 11 3 Para i = 2,..., n 1, v i 1 X u Xi 1 1 Si a ii lik 2 > 0, hacer l ii = t aii k=1 k=1 Xi 1 2 Para j = i + 1,..., n, hacer l ji = a ji l jk l ik /l ii n 1 4 Si a nn lnk 2 > 0, hacer l nn = k=1 l 2 ik k=1 n 1 ann k=1 l 2 nk

Factorización de Cholesky (L L t ) Implementación: Factorización LL t : La parte triangular inferior de la matriz A se almacena en un vector. A medida que se va calculando la factorización, se almacena en el vector la parte triangular inferior de la matriz L. Resolución de los sistemas triangulares: Al implementar el algoritmo de sustitución hacia atrás, hay que tener en cuenta que solo se ha almacenado la parte triangular inferior de L.

Factorización de Cholesky (L L t ) Número de operaciones: Para la factorización: n 3 6 + n2 2 2n 3 multiplicaciones / divisiones n 3 6 n 6 sumas / restas n raíces cuadradas Para la resolución de los sistemas triangulares: n 2 + n multiplicaciones / divisiones n 2 n sumas / restas

Factorización de Cholesky (LL t ) n Multiplic./Divisiones Sumas/Restas 10 1 320 255 10 2 181 700 176 550 10 3 168 167 000 167 665 500 10 4 166 816 670 000 166 766 655 000 10 5 166 681 666 700 000 166 676 666 550 000 10 6 166 668 166 667 000 000 166 667 666 665 500 000 Operaciones del método de Cholesky (sin contar )

4.7 Factorización Q R Una matriz cuadrada Q de orden n es ortogonal si Q Q t = Q t Q = I n es decir, si es invertible y su inversa es su traspuesta. Teorema: ( Existencia de la factorización QR ) Dada una matriz cualquiera A, existen una matriz ortogonal Q y una matriz triangular superior R tales que A = QR

Factorización QR Consideramos el sistema de ecuaciones lineales A x = b donde A es una matriz cuadrada invertible. Si conocemos una factorización QR de la matriz A, A x = b QR x = b R x = Q t b Para resolver el sistema, hay que: 1 Calcular c := Q t b 2 Resolver R x = c

Factorización QR Para obtener una factorización QR de una matriz o resolver un sistema de ecuaciones lineales por el método QR, usaremos las matrices de Householder. Una matriz de Householder es una matriz de la forma H = H(v) = I n 2 v vt v t v donde v 0 es un vector columna. La matriz H = I n también se considera una matriz de Householder.

Factorización QR Propiedades de las matrices de Householder: 1 Las matrices de Householder son simétricas y ortogonales. Por tanto, H = H t = H 1 2 Dado a R n, existe una matriz de Householder H M n (R) tal que Si α := H a = a 2 e 1 n a i y v := a a 2 e 1, entonces i=2 H(v) si α 0 ó si α = 0 y a 1 < 0 H := I n si α = 0 y a 1 > 0

Factorización QR Usando la factorización QR, A x = b R x = Q t b El método QR para resolver sistemas de ecuaciones lineales consiste en transformar la matriz ampliada (A b) en (R Q t b) usando matrices de Householder.

Factorización QR Sean A (1) := A y b (1) := b. Si a (1) es la primera columna de la matriz A, entonces existe una matriz de Householder, H (1), tal que H (1) a (1) = a (1) 2 e 1 Definimos A (2) := H (1) A (1) y b (2) := H (1) b (1). Entonces: A x = b A (2) x = b (2) Todos los elementos de la primera columna de A (2) por debajo del diagonal son cero.

Factorización QR En la etapa k 1, se tiene un sistema equivalente al original: A x = b A (k) x = b (k) Los coeficientes de las k 1 primeras columnas de A (k) por debajo de la diagonal principal son cero. Sea a (k) := (a (k) kk... a(k) nk )t R n k+1. Entonces existe H (k) M n k+1 tal que H (k) a (k) = a (k) 2 e 1

Factorización QR Definimos ( H (k) Ik 1 0 := 0 H(k) ) A (k+1) := H (k) A (k) y b (k+1) = H (k) b (k) Los coeficientes de las k primeras columnas de A (k+1) por debajo de la diagonal principal son cero. Además, A x = b A (k+1) x = b (k+1)

Factorización QR Tras n etapas, se tiene que A x = b A (n+1) x = b (n+1) donde la matriz A (n+1) = H (n) H (n 1)... H (2) H (1) A es triangular superior y b (n+1) = H (n) H (n 1)... H (2) H (1) b. Por tanto, R := A (n+1) Q := H (1) H (2)... H (n 1) H (n)

Factorización QR Algoritmo: 1 Para k = 1,..., n 1 Calcular 2 Calcular H (k) (A (k+1) b (k+1) ) k:n,k:n+1 = H (k) (A (k) b (k) ) k:n,k:n+1

Factorización QR Número de operaciones: Para resolver el sistema: Para cálcular la matriz Q: 4 3 n3 flops 4 3 n3 flops El método QR se emplea para resolver sistemas de ecuaciones lineales mal condicionados.

4.8 Cálculo de determinantes Sea A una matriz cuadrada, de orden n. El cálculo del determinante de A mediante el método de los menores requiere O(n!) operaciones elementales. Concretamente, se precisan n 1 1 n! multiplicaciones / divisiones k! k=1 n! 1 sumas / restas

Cálculo de determinantes n Multip./Divisiones Sumas/Restas 5 205 119 10 6 199 200 3 628 799 50 5,19574092 10 64 3,04140932 10 64 100 1,59432285 10 158 9,33262154 10 157 Operaciones necesarias para calcular el determinante de una matriz de orden n por el método de los menores Incluso para valores de n relativamente pequeños, la cantidad de cálculos es demasiado grande.

Cálculo de determinantes Si A es una matriz diagonal o triangular, entonces det(a) = a 11 a 22... a nn = Por otra parte, se tiene que: 1 det(ab) = det(a) det(b) 2 det(a) = det(a t ) n i=1 a ii

Cálculo de determinantes Si A = LU, con l ii = 1, i, entonces det(a) = det(u) Si A = LU, con u ii = 1, i, entonces det(a) = det(l) Si A = LL t, det(a) = det(l) 2

5. Métodos iterativos clásicos 1 Introducción 2 Criterios de parada 3 Métodos de descomposición 1 Método de Jacobi 2 Método de Gauss-Seidel 3 Métodos de relajación 4 Convergencia de los métodos iterativos clásicos

5.1 Introducción Los métodos iterativos son, en general, más eficientes que los métodos directos para resolver sistemas de ecuaciones lineales grandes y de matriz hueca ya que se basan en la operación "multiplicación matriz por vector". Como consecuencia: - Solo es necesario almacenar los coeficientes no nulos de la matriz del sistema. - Son menos sensibles a los errores de redondeo. - No se produce el llenado de la matriz.

Ejemplo: llenado en LU A = 4 1 0 1 0 0 0 0 0 1 4 1 0 1 0 0 0 0 0 1 4 0 0 1 0 0 0 + + 1 0 0 4 1 0 1 0 0 0 1 0 1 4 1 0 1 0 0 0 1 0 1 4 0 0 1 + + 0 0 0 1 0 0 4 1 0 0 0 0 0 1 0 1 4 1 0 0 0 0 0 1 0 1 4

Ejemplo: llenado en LU 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 nz = 33 Estructura de nulidad de la matriz A

Ejemplo: llenado en LU 0 1 2 3 4 5 6 7 8 9 10 0 1 2 3 4 5 6 7 8 9 10 nz = 49 Estructura de nulidad de la factorización LU de A

Introducción Algunas desventajas de los métodos iterativos frente a los métodos directos: - En general, no es posible predecir el número de operaciones que se requieren para obtener una aproximación a la solución con una precisión determinada. - El tiempo de cálculo y la precisión del resultado pueden depender de la elección de ciertos parámetros.

Introducción Dada una aproximación inicial x (0), un método iterativo genera una sucesión de aproximaciones x (k), para k = 1, 2,..., que converge a la solución del sistema. Para generar esta sucesión, se repite el mismo esquema de operaciones hasta que: - se obtiene una aproximación a la solución con una precisión especificada de antemano, - o se rebasa un número máximo de iteraciones.

Introducción Clases de métodos iterativos: 1 Métodos iterativos clásicos (estacionarios o lineales): Algunos pueden usarse para construir precondicionadores, que permiten mejorar el condicionamiento de un sistema. 2 Métodos iterativos de descenso (no estacionarios): Son los más eficientes para resolver sistemas grandes de matriz hueca.

Introducción Los métodos iterativos clásicos (lineales) se basan en reescribir el problema: donde G M n (R) y c R n. Algoritmo: A x = b x = G x + c 1 Sea x (0) una aproximación inicial a la solución. 2 Para k = 1, 2,..., x (k) = G x (k 1) + c La matriz G se llama matriz de iteración y el vector c se llama vector de iteración.

Introducción Se dice que un método iterativo es consistente con el sistema de ecuaciones lineales A x = b si, en el caso en que la sucesión generada por el método iterativo sea convergente, su límite es solución del sistema de ecuaciones lineales. En lo que sigue, suponemos que el método iterativo considerado es consistente. Número de operaciones en cada iteración: n 2 multiplicaciones + n 2 sumas

5.2 Criterios de parada 1 Basado en el error absoluto en la aproximación: x (k) x (k 1) < ɛ 2 Basado en el error relativo en la aproximación: x (k) x (k 1) < ɛ x (k) 3 Basado en el residuo: r (k) < ɛ b donde r (k) es el vector residuo en la iteración k: r (k) := b A x (k)

Criterios de parada La comprobación del criterio de parada no debe incrementar en exceso el número de operaciones por iteración. Conviene organizar los cálculos de forma adecuada. La norma vectorial que se emplea con más frecuencia en la implementación de métodos iterativos lineales es la norma infinito.

5.3 Métodos de descomposición Los métodos de descomposición son métodos iterativos clásicos. Se obtienen a partir de una descomposición de la matriz de coeficientes de la forma: A = M N donde M es una matriz fácil de invertir (diagonal, triangular,... ).

Métodos de descomposición Entonces: A x = b M x = N x + b x = M 1 N x + M 1 b G := M 1 N c := M 1 b El método iterativo asociado es: 1 Sea x (0) una aproximación inicial a la solución. 2 Para k = 1, 2,..., resolver el sistema de ecuaciones lineales M x (k) = N x (k 1) + b Este método iterativo es consistente, por construcción.

Métodos de descomposición Usando que N = M A, la ecuación que define el método iterativo se escribe: x (k) = x (k 1) + M 1 r (k 1) Esta formulación del método iterativo se conoce como formulación eficiente. Si la matriz de coeficientes A es bien condicionada, el criterio de parada basado en el residuo es fiable y no supone muchos cálculos adicionales.

Métodos de descomposición Algoritmo: 1 Sea x (0) una aproximación inicial a la solución. 2 Para k = 1, 2,...,max_it: 1 Calcular el vector residuo: r (k 1) = b A x (k 1) 2 Si r (k 1) < ɛ b, parar y tomar x (k 1) como aproximación a la solución. 3 Resolver el sistema de ecuaciones lineales M z = r (k 1) 4 Actualizar la aproximación a la solución: x (k) = x (k 1) + z

Métodos de descomposición Los principales métodos de descomposición son: - El método de Jacobi - El método de Gauss Seidel - Los métodos de relajación Para usar estos métodos, es necesario que a ii 0 i = 1, 2,..., n En lo que sigue, supondremos que se verifica esta condición.

5.3.1 El método de Jacobi K.G.J. Jacobi (1845) Se basa en la descomposición A = D (D A) donde D = a 11 0... 0 0 a 22... 0...... 0 0... a nn D A = 0 a 12... a 1n a 21 0... a 2n...... a n1 a n2... 0

El método de Jacobi En cada iteración, se resuelve un sistema de matriz diagonal: D x (k) = (D A) x (k 1) + b Por esta razón, el método de Jacobi también se llama método de inversión diagonal. Multiplicando por D 1 : x (k) = D 1 (D A) x (k 1) + D 1 b se tiene que la matriz del método de Jacobi es J := D 1 (D A) = I D 1 A

El método de Jacobi: forma en componentes De la ecuación D x (k) = (D A) x (k 1) + b se deduce que, para i = 1, 2,..., n, a ii x (k) i = b i n j=1 j i a ij x (k 1) j Por tanto, si a ii 0, para i = 1, 2,..., n, ( x (k) i = b i n j=1 j i ) a ij x (k 1) j /a ii

El método de Jacobi: forma en componentes Las n componentes de x (k) se pueden calcular simultáneamente. Por esta razón, el método de Jacobi también se conoce como método de los desplazamientos simultáneos. En este caso, es menos costoso usar un criterio de parada sobre la aproximación, como por ejemplo, el criterio de error relativo x (k) x (k 1) < ɛ x (k)

El método de Jacobi: forma en componentes Algoritmo (Jacobi, forma en componentes): 1 Elegir una aproximación inicial, x (0) 2 Para k = 1, 2,..., max_it : 1 Para i = 1, 2,..., n, calcular x (k) i = b i nx j=1 j i a ij x (k 1) j /a ii 2 Si x (k) x (k 1) < ɛ x (k), parar y tomar x (k) como aproximación a la solución.

El método de Jacobi: formulación eficiente Formulación eficiente: x (k) = x (k 1) + D 1 (b A x (k 1) ) En cada iteración, hay que: 1 Calcular z = A x (k 1) 2 Calcular el vector residuo r (k 1) = b z 3 Si r (k 1) < ɛ b, parar y tomar x (k 1) como aproximación a la solución. 4 Resolver el sistema D z = r (k 1) 5 Calcular x (k) = x (k 1) + z

El método de Jacobi: ejemplo Consideremos el sistema A x = b: 4 1 0 0 1 A = 1 5 1 0 0 1 6 1 b = 7 16 1 0 1 4 14 x = 0 1 2 3 x(0) = 0 0 0 0 Primera iteración del método de Jacobi: x (1) = x (0) + D 1( b A x (0)) x (1) = [0,2500 1,4000 2,6667 3,5000]

5.3.2 El método de Gauss Seidel En el método de Jacobi: ( x (k) i = b i i 1 j=1 a ij x (k 1) j n j=i+1 ) a ij x (k 1) j /a ii En el método de Gauss Seidel: ( x (k) i = b i i 1 j=1 a ij x (k) j n j=i+1 ) a ij x (k 1) j /a ii C.F. Gauss (1845) K.G.J. Jacobi L.P. von Seidel (1874)

El método de Gauss Seidel Algoritmo (Gauss Seidel, forma en componentes): 1 Elegir una aproximación inicial, x (0) 2 Para k = 1, 2,..., max_it : 1 Para i = 1, 2,..., n, calcular x (k) i = b i Xi 1 j=1 a ij x (k) j nx j=i+1 a ij x (k 1) j /a ii 2 Si x (k) x (k 1) < ɛ x (k), parar y tomar x (k) como aproximación a la solución.

El método de Gauss Seidel El método de Gauss Seidel es un método de descomposición. En efecto, para i = 1, 2,..., n, la ecuación ( x (k) i = b i i 1 j=1 puede escribirse como b i i j=1 a ij x (k) j a ij x (k) j n j=i+1 n j=i+1 ) a ij x (k 1) j /a ii a ij x (k 1) j = 0

El método de Gauss Seidel Si consideramos la descomposición A = L (L A) donde a 11 0... 0 a 21 a 22... 0 L =...... a n1 a n2... a nn L A = 0 a 12... a 1n 0 0... a 2n...... 0 0... 0

El método de Gauss Seidel b i i j=1 a ij x (k) j n j=i+1 se puede escribir como de donde se deduce que a ij x (k 1) j = 0, i = 1, 2,..., n b L x (k) + (L A) x (k 1) = 0 x (k) = L 1 (L A) x (k 1) + L 1 b Luego, el método de Gauss-Seidel es un método de descomposición y la matriz de iteración del método es L 1 := L 1 (L A) = I L 1 A

El método de Gauss Seidel Formulación eficiente: x (k) = x (k 1) + L 1 (b A x (k 1) ) En cada iteración, hay que: 1 Calcular z = A x (k 1) 2 Calcular el vector residuo r (k 1) = b z 3 Si r (k 1) < ɛ b, parar y tomar x (k 1) como aproximación a la solución. 4 Resolver el sistema L z = r (k 1) 5 Calcular x (k) = x (k 1) + z

El método de Gauss Seidel: ejemplo Consideremos el sistema A x = b: 4 1 0 0 1 A = 1 5 1 0 0 1 6 1 b = 7 16 1 0 1 4 14 x = 0 1 2 3 x(0) = 0 0 0 0 Primera iteración del método de Gauss Seidel: x (1) = x (0) + L 1( b A x (0)) x (1) = [0,2500 1,3500 2,4417 2,8271]

5.3.3 Métodos de relajación La convergencia de los métodos de Jacobi y Gauss Seidel es en general bastante lenta. Los métodos de relajación pueden mejorar sustancialmente la convergencia del método de Gauss Seidel. La convergencia de los métodos de relajación depende de la elección adecuada de un parámetro. También se conocen como métodos SOR (Successive Over Relaxation).

Métodos de relajación Consideramos la descomposición de la matriz A : A = D E F donde: 0 0... 0 a 21 0... 0 E =...... a n1 a n2... 0 F = 0 a 12... a 1n 0 0... a 2n...... 0 0... 0

Métodos de relajación Los métodos de relajación se basan en la descomposición: ω A = (D ω E) (ω F + (1 ω) D) donde ω 0 es el parámetro de relajación. Entonces la solución del sistema satisface x = (D ω E) 1 (ω F + (1 ω) D) x + ω (D ω E) 1 b El método iterativo correspondiente es: x (k) = (D ω E) 1 (ω F +(1 ω) D) x (k 1) +ω (D ω E) 1 b

Métodos de relajación La matriz de iteración es L ω := (D ω E) 1 (ω F + (1 ω) D) Nótese que para ω = 1, se tiene el método de Gauss Seidel. Como ω F + (1 ω) D = D ω (D F) = D ω E ω (D E F) = (D ω E) ω A la matriz de iteración se puede expresar como L ω = I ω (D ω E) 1 A

Métodos de relajación Formulación eficiente: x (k) = x (k 1) + ω (D ω E) 1( b A x (k 1)) En cada iteración, hay que: 1 Calcular z = A x (k 1) 2 Calcular el vector residuo r (k 1) = b z 3 Si r (k 1) < ɛ b, parar y tomar x (k 1) como aproximación a la solución. 4 Resolver el sistema (D ω E) z = r (k 1) 5 Calcular x (k) = x (k 1) + ω z

Métodos de relajación: forma en componentes De la ecuación (D ω E) x (k) = (ω F + (1 ω) D) x (k 1) + ω b se deduce que, para i = 1, 2,..., n, a ii x (k) i ( = (1 ω) a ii x (k 1) i +ω b i Si a ii 0, para i = 1, 2,..., n, x (k) i ( = (1 ω) x (k 1) i +ω b i i 1 j=1 i 1 j=1 a ij x (k) j a ij x (k) j n j=i+1 n j=i+1 ) a ij x (k 1) j ) a ij x (k 1) j /a ii

Métodos de relajación: ejemplo Consideremos el sistema A x = b: 4 1 0 0 1 A = 1 5 1 0 0 1 6 1 b = 7 16 1 0 1 4 14 x = 0 1 2 3 x(0) = 0 0 0 0 Primera iteración del método de relajación (ω = 1,03): x (1) = (1 ω) x (0) + ω x (1) GS x (1) = (1 1,03) x (0) + 1,03 [0,2500 1,3500 2,4417 2,8271] x (1) = [0,2575 1,3905 2,5149 2,9119]

5.4 Convergencia de los métodos iterativos clásicos Consideramos el método iterativo lineal: x (k) = G x (k 1) + c, k = 1, 2,... donde x (0) es una aproximación inicial a la solución del sistema de ecuaciones lineales. Se dice que el método iterativo es convergente si la sucesión generada por el método converge a la solución del sistema de ecuaciones lineales cualquiera que sea la aproximación inicial x (0).

Convergencia y acotación del error Teorema: (Caracterización de la convergencia) Un método iterativo lineal consistente es convergente si, y solo si, el radio espectral de la matriz de iteración es menor que uno. Corolario: (Acotación del error) Si G < 1, para alguna norma matricial subordinada, entonces el método iterativo es convergente y se verifican las acotaciones del error: 1 x (k) x G k x (0) x 2 x (k) x G k 1 G x(1) x (0)

Velocidad de convergencia Se tiene que x (k) x ρ(g) k x (0) x Dados dos métodos iterativos lineales: (1) x (k) = G 1 x (k 1) + c 1 para k = 1, 2,... (2) x (k) = G 2 x (k 1) + c 2 para k = 1, 2,... se dice que el método (1) converge más rápido que el método (2) si ρ(g 1 ) < ρ(g 2 ) < 1

Velocidad de convergencia Algunos parámetros para medir la velocidad de convergencia: - Velocidad media de convergencia: v j (G) = log( G j ) 1/j - Velocidad asintótica de convergencia: v (G) = log ρ(g)

Convergencia (Jacobi y Gauss Seidel) Teorema: Si A es estrictamente diagonal dominante, los métodos de Jacobi y Gauss Seidel son convergentes. Teorema: Si A es simétrica, definida positiva y tridiagonal, entonces los métodos de Jacobi y de Gauss Seidel son convergentes. Además, en este caso, el método de Gauss Seidel converge más rápido que el de Jacobi: ρ(l 1 ) = ρ(j ) 2 < 1

Convergencia (Jacobi y Gauss Seidel) Teorema: (Stein Rosenberg) Si a ii > 0 i y a ij 0 i j, entonces se cumple una y solo una de las afirmaciones siguientes: 1 0 < ρ(l 1 ) < ρ(j ) < 1 2 1 < ρ(j ) < ρ(l 1 ) 3 ρ(l 1 ) = ρ(j ) = 0 4 ρ(l 1 ) = ρ(j ) = 1

Convergencia (métodos de relajación) La convergencia de los métodos de relajación depende de la elección del parámetro de relajación ω. Teorema: (Kahan) El método de relajación solo puede converger si ω (0, 2). Teorema: (Ostrowski Reich) Si A es simétrica y definida positiva, el método de relajación es convergente para cualquier elección del parámetro ω (0, 2).

Convergencia (métodos de relajación) Teorema: Si A es una matriz simétrica, definida positiva y tridiagonal, entonces la elección óptima del parámetro ω para el método de relajación es 2 ω opt = 1 + 1 ρ(j ) 2 Para esta elección del parámetro de relajación, ρ(l ωopt ) = ω opt 1

6. Referencias 1 R.L. Burden y J.D. Faires, Análisis Numérico, Thomson Learning, 7 a edición, 2002. 2 C. Conde y G. Winter, Métodos y algoritmos básicos del álgebra numérica, Reverté, 1990. 3 J.F. Epperson, An introduction to numerical methods and analysis, Wiley, 2002. 4 G.H. Golub & C.F. van Loan, Matrix Computations, 3 a ed., The Johns Hopkins University Press, 1996. 5 A. Quarteroni & F. Saleri, Cálculo científico con MATLAB y Octave, Springer, 2006.