Documentos de Académico
Documentos de Profesional
Documentos de Cultura
En Ciencias Aplicadas, uno es muy a menudo enfrentar un sistema lineal de la forma: (5.1) donde es una matriz cuadrada de dimensin cuyos elementos son ya sea real o complejo, mientras que y b son vectores columna de dimensin con representando la solucin desconocida y un vector dado. Adems, (5.1) puede ser escrito como
Presentamos a continuacin tres problemas diferentes que dan lugar a sistemas lineales.
Consideremos la red hidrulica hecha de 10 tuberas mostrada en la Figura 5.1, que es alimentada por un depsito de agua a presin constante pr = 10 bar. En este problema, los valores de presin se refieren a la diferencia entre la presin real y la atmosfrica. Para la tubera j-sima, la siguiente relacin mantenida entre el caudal (en ) y la diferencia de presin en la tubera son los finales de cada tubera. (5.2) donde k es la resistencia hidrulica (en ) y L es la longitud (en m) de la tubera. Se supone que los flujos de agua de los puntos (Indicado por un punto negro) estn a presin atmosfrica 0 bar, que se estableci por coherencia con el convenio anterior. Un problema tpico consiste en la determinacin de los valores de presin en cada nodo interno . Con este objetivo, para cada j = 1, 2, 3,4 podemos complementar la relacin (5.2) con la condicin de que la suma algebraica de los ndices de flujo de las tuberas que se unen en el nodo j debe ser nulo (un valor negativo debera indicar la presencia de una superficie de filtracin). Designado por . El vector de la presin en el nodo interior, obtiene un sistema de 4 4 de la forma . En la siguiente tabla mostramos las caractersticas relevantes de las diferentes tuberas:
Consideremos una mezcla de gas no reactivo de n componentes desconocidos. El uso de un espectrmetro en una masa del compuesto es bombardeado por electrones de baja energa: la mezcla resultante de los iones es analizada por un galvanmetro que muestra los picos correspondientes a especficas relaciones masa / carga. Slo se consideran los picos mas relevantes n. Puede conjeturar que la altura del pico i-simo es una combinacin lineal de , es la presin parcial del componente j-simo (que es la presin ejercida por un gas simple cuando es parte de una mezcla), dando:
donde el son llamados los coeficientes de sensibilidad. La determinacin de las presiones parciales exige por lo tanto, la solucin de un sistema lineal. Para su solucin, vase el ejemplo 5.3.
(5.4) Para la solucin de este sistema lineal vea Ejercicio 5.17 La solucin de sistema (5.1) existe si y slo si A es no singular. En principio, la solucin puede ser calculada utilizando la llamada regla de Cramer:
La figura. 5.2. El esquema de interaccin entre tres fbricas y el mercado donde es la matriz obtenida de A al sustituir la columna i-sima por b y el determinante de A denotada por . Si los determinantes son calculados por la aplicacin de Laplace (vase el ejercicio 5.1), se requiere un nmero total de aproximadamente de las operaciones. Operaciones nos referimos a la suma, resta, producto o una divisin. Por ejemplo, un ordenador capaz de realizar flops (es decir, 1 giga flops), se requieren aproximadamente 12 horas para resolver un sistema de dimensin si n = 20 y aos si n = 100. El costo computacional puede ser drsticamente reducido a la orden de alrededor de operaciones si el n + 1 determinantes son calculados por el algoritmo citado en el ejemplo 1.3. Sin embargo, este costo es demasiado alto para valores grandes de n, que a menudo se plantean en aplicaciones prcticas. Dos enfoques alternativos se llevar a cabo: se les llama mtodos directos si producen la solucin del sistema en un nmero finito de pasos, y mtodos iterativos si requieren (en principio) un nmero infinito de pasos. Los mtodos iterativos se tratan en la seccin 5.7. Advertimos al lector que la eleccin entre mtodos directos y los mtodos iterativos depender de varios factores: en primer lugar, la eficiencia terica predicha del sistema, pero tambin el tipo particular de matriz, la memoria de almacenamiento y, finalmente, la arquitectura de ordenador (vase, la seccin 5.11 para ms detalles). Por ltimo, se observa que un sistema con matriz completa no puede ser resuelto por menos de operaciones. En efecto, si las ecuaciones estn completamente acopladas, debemos esperar que cada uno de los coeficientes de la matriz sera involucrado en una operacin algebraica al menos una vez.
(5.6) Ambos sistemas son fciles de resolver. En efecto, siendo L triangular inferior, la primera fila del sistema tiene la forma:
Que proporciona el valor de desde . Al sustituir este valor de en la ecuacin siguiente se obtiene un nuevo sistema cuyo incgnitas son , en la que se puede proceder de una manera similar. Continuando hacia adelante, ecuacin por ecuacin, podemos calcular todas las incgnitas con el siguiente algoritmo de sustitucin hacia delante:
(5.7) Vamos a contar el nmero de operaciones requeridas por (5.7). Desde i-1 sumas, i-1 productos y una divisin son necesarios para calcular la incgnita , el nmero total de operaciones es:
El sistema puede ser resuelto procediendo de una manera similar. Esta vez, la primera incgnita a calcular es , procediendo hacia atrs, podemos calcular las incgnitas que quedan , desde hasta .
(5.8) Esto se conoce como algoritmo de sustitucin hacia atrs y requiere tambien operaciones. En esta etapa se necesita un algoritmo eficaz que permita el clculo de los factores de L y U, de la matriz A. Se ilustra un procedimiento general a partir de un par de ejemplos.
Ejemplo 5.1 Vamos a escribir la relacin (5.5) para una matriz genrica A
Los 6 elementos desconocidos de L y U deben cumplir las siguientes ecuaciones (no lineales):
El sistema (5.9) es indeterminado ya que cuenta con menos ecuaciones que incgnitas. Podemos completar asignando arbitrariamente los elementos diagonales de L, por ejemplo y . Ahora el sistema (5.9) puede ser resuelto de la siguiente manera: se determinan los elementos y de la primera fila de U utilizando ( ) y ( ). Si es no nulo entonces de ( ) deducimos (es la primera columna de L, ya que est ya disponible). Ahora podemos obtener de ( ) el nico elemento distinto de cero de la segunda fila de U.
Ejemplo 5.2 Repitamos los mismos clculos en el caso de una matriz de 33. Para los 12
coeficientes desconocidos de L y U tenemos las siguientes 9 ecuaciones:
Vamos a completar este sistema estableciendo para i = 1, 2, 3. Ahora, los coeficientes de la primera fila de U se pueden conseguir mediante el uso de ( ), ( ) y ( ). A continuacin, utilizando ( ) y ( ), se pueden determinar los coeficientes y de la primera columna de L. Utilizando ( ) y ( ), ahora podemos calcular el coeficiente y de la segunda fila de U. Entonces, usando ( ), se obtiene el coeficiente de de la segunda columna de L. Finalmente, la ltima fila de U (que consiste en la nico elemento ) se puede determinar mediante la resolucin de ( ). En una matriz de dimensin n arbitraria podemos proceder de la siguiente manera: 1. Los elementos de L y U satisfacen el sistema de ecuaciones no lineales
2. El sistema (5.10) es indeterminado, de hecho hay ecuaciones y ( ) incgnitas, por lo que la factorizacin LU no puede ser nica. 3. Forzando a los n elementos diagonales de L que sean igual a 1, (5.10) se convierte en un sistema determinado, que puede resolverse por el siguiente algoritmo de Gauss: establecido para :
Los elementos de
todos debe ser diferente de cero y se llaman elementos pivotes. Para cada
de la matriz = tiene filas y columnas. Al final de este procedimiento, los elementos de la parte superior triangular matriz U son dados por , para y =i,,n mientras que los de L estn dadas por los coeficientes generado por
este algoritmo. En (5.11) no hay ningn clculo de los elementos diagonales de L, como ya sabemos que su valor es igual a 1. Esta factorizacin se llama factorizacin de Gauss, la determinacin de los elementos de L y U se requiere cerca de operaciones (ver Ejercicio 5.4).
Ejemplo 5.3 (Espectrometra) Para el Problema 5.2 consideramos una mezcla de gases que,
despus de una inspeccin espectroscpica, presenta los siguientes siete picos ms relevantes: , , , , , y . Queremos comparar la presin total medida, iguales a 38,78 micras de Hg (que representa tambin para aquellos componentes que se podra haber descuidado en nuestro modelo simplificado) con la obtenida usando relaciones (5.3) con , donde los coeficientes de sensibilidad se dan en la Tabla 5.1 (tomado de [CLW69, p.331]). Las presiones parciales puede ser calculadas resolviendo el sistema (5.3) para usando la factorizacin LU. Obtenemos
Con estos valores se calcula una presin total aproximada (dada por sum(partpress)) de la mezcla de gas que difiere del valor medido por 0,0252 m de Hg.
La figura. 5.3 muestra el nmero de operaciones de punto flotante necesarios para generar la factorizacin de Gauss LU de la matriz de Vandermonde, como una funcin de la matriz de dimensin n. Esta funcin es un polinomio cbico obtenido mediante la aproximacin en el sentido de mnimos cuadrados de los valores (representados por crculos) correspondientes a
donde la el cuadro de la submatriz es . La factorizacin de Gauss es la base de varios comandos de MATLAB: - [L, U] = lu (A), cuyo modo de uso se discuten en la Seccin 5.2; -inv que permite el clculo de la inversa de una matriz; - \ Por el cual es posible resolver un sistema lineal con la matriz A y la matriz de la derecha b simplemente escribiendo A \ b (ver seccin 5.6).
Como cuestin de hecho, este procedimiento es tambin la base de la orden det de MATLAB. En el Programa 5.1 implementamos el algoritmo (5.11). El factor L se almacena en la (estrictamente) triangular inferior de A y U en la triangular superior de A (por el ahorro de almacenamiento). Despus de la ejecucin del programa, los dos factores se pueden recuperar simplemente escribiendo: L=eye (n)+tril (A,-1) y U = triu (A), donde es el tamao de A.
Ejemplo 5.5 Vamos a calcular la solucin del sistema detectado en el problema 5.1 mediante el
uso de la factorizacin LU, a continuacin, aplicamos los algoritmos de sustitucin hacia atrs y hacia adelante. Tenemos que calcular la matriz A y la matriz de la derecha b y ejecutar las siguientes instrucciones:
Si nos fijamos , a pesar de que A es no singular, la factorizacin de Gauss no se puede llevar a cabo ya que el algoritmo (5.11) implicara divisiones por 0. El ejemplo anterior muestra que, por desgracia, la factorizacin de Gauss A = LU no existe necesariamente para cada matriz no singular A. Por lo tanto, el siguiente resultado se puede probar:
Proposicin 5.1 Para una matriz dada , su factorizacin de Gauss existe y es nica y slo si las submatrices principales de A de orden (es decir los obtenidos mediante la restriccin de A, primero las filas y columnas) son no singulares. Volviendo al ejemplo 5.6, se puede notar que cuando = 0, la segunda submatriz principal de la matriz A es singular. Podemos identificar clases especiales de matrices para las cuales la hiptesis de la Proposicin 5.1 se cumple. En particular, cabe mencionar: 1. Matrices definidas simtricas y positivas. Una matriz es definida positiva si
Por columna si
Un caso especial ocurre cuando en las desigualdades anteriores se puede sustituir por >. Entonces, la matriz A se llama estrictamente diagonal dominante (por fila o por columna, respectivamente). Si A es simtrica y definida positiva, es adems posible construir una factorizacin especial:
donde H es una matriz triangular inferior con elementos diagonales positivos. Esta es la factorizacin de Cholesky y requiere aproximadamente operaciones (media de los prescritos en la factorizacin de Gauss LU). Adems, debemos destacar que, debido a la simetra, slo la parte inferior de A se almacena, y H se puede almacenar en la misma zona. Los elementos de H puede ser calculados por el algoritmo siguiente: se establecer = y para ,
La factorizacin de cholesky esta disponible en MATLAB por R=chol(A) donde R es el factor triangular superior ver ejercicio 5.1-5.5
Ya que el pvot es igual a cero, este procedimiento no puede ser continuado. Por otra parte, si intercambisemos de antemano las filas segunda y tercera, obtendramos la matriz * +
Y de esta manera la factorizacin podra ser llevada a cabo sin recurrir a una divisin para cero. Podemos estipular que la permutacin en una manera adecuada de las sucesiones de la matriz original A hara viable el procedimiento de la factorizacin entera incluso si las hiptesis de Proposicin 5.1 no estn verificadas, siempre que no es igual 0. Desafortunadamente, no podemos conocemos a priori qu filas deberan permutarse. Sin embargo esta decisin puede ser hecha en cada paso K en la cual un elemento diagonal nulo es generado. Retornemos a la matriz en 5.16 ya que el coeficiente en la posicin (2,2) es nulo, ahora intercambiemos la tercera y segunda fila de esta matriz y veamos si es que el nuevo coeficiente generado en posicin (2,2) es aun nulo. Para ejecutar el segundo paso del procedimiento de factorizacin encontramos la misma matriz que habramos generado para una permutacin a priori de las mismas dos sucesiones de A. Por lo tanto podemos realizar una permutacin de filas tan pronto como sea necesaria, sin continuar con ninguna transformacin en A. Ya que una permutacin de sucesin supone cambiar el elemento pivote, a esta tcnica se le llama pivoteo para la sucesin. La factorizacin generada en esta manera retorna a la matriz original hasta una permutacin de sucesin. Con exactitud obtenemos:
P es una matriz de permutacin adecuada inicialmente situada igual a la matriz idntica. Si en el curso del proceso las filas r, y, s de A son permutadas, la misma permutacin debe ser llevada a cabo en las filas homlogas de P. Correspondientemente, deberamos ahora resolver los siguientes sistemas triangulares:
Desde la segunda ecuacin de (5.11). Vemos que no solamente los elementos del pivot nulo
son
algo dificultosos, pero as son, estos que son muy pequeos. Efectivamente debera estar cerca de cero, posibles errores que terminan afectando los coeficientes que sern severamente ampliados.
Durante el proceso de facturacin del programa 5.1 ninguno de los elementos del pivote 1 nulo son obtenidos. Todava, los factores L Y U resultan ser completamente inexactos, as como se puede dar cuenta por el computo de la matriz residual A-LU (el cual debe ser la matriz nula si todas las operaciones fueron seguidas en la aritmtica exacta) [ ]
Por lo tanto es recomendado seguir pivoteando en cada paso del proceso de la factorizacin, para descubrir entre todos los elementos del pivoteo virtual con aquel con modulo mximo. El algoritmo (5.1) pivoteando la fila seguida en cada paso que toma la siguiente forma para hallamos tal que | | | | intercambio la fila con la fila en ambos para ,
para j=k+1, ,n
El Programa MATLAB lu, que hemos mencionado previamente computa la Gauss factorizacin ] pivoteando la fila su completa sintaxis es efectivamente[ siendo la matriz de la ] permutacin. Cuando el llamado modo taquigrfico[ la matriz L es igual a P*M donde M es triangularmente mas baja y P es la matriz de la permutacin generada por el pivot para la fila. El programa LU activa automticamente el pivot para la fila cuando un nulo (o muy pequeo) el elemento pivote es computado. Vea los ejercicios 5.6-5.8.
donde
Mientras es escogida de tal manera que la solucin exacta es . La matriz claramente simtrica y se puede probar que esto es tambin definidamente positivo.
es
Para diferentes resultados de N usamos la funcin MATLAB LU para conseguir la factorizacin Gauss de pivoteando la fila. Entonces resolvemos los sistemas lineales asociados (5.18) y denotar para la solucin computada. En la figura 5.4 reportamos (en escala logartmica) los relativos errores. , (5.20) Teniendo denotado por la norma Euclidiana introducida en la seccin 1.3.1 . Tenemos si (que es un error relativo en la solucin ms alta que 1000%) mientras Es la matriz nula (hasta la exactitud de la maquina) para cualquier resultado obtenido de N Acerca del comentario previo, podramos especular para decir que, cuando un sistema lineal es resuelto numricamente, efectivamente se est buscando la solucin exacta De un sistema perturbada. Donde y son respectivamente una matriz y un vector el cual depende del mtodo especifico numeral el cual est siendo usado. Empecemos por considerar el caso donde y lo cual es ms simple que el caso msgeneral.Ms que todo, para hacerlo simple asumiremos que A es simtrica y definitivamente positivo. Para comparar (5.1) y (5.21) encontramos , y de esta manera: (5.22)
FIG 5.4: comportamiento contra n de (lnea slida) y de en la escala logartmica, para el Sistema Hilbert de ejemplo 5.8. las matriz .
Para encontrar un vinculo superior para el lado de la mano derecha de (5.22) , procedemos tal como sigue Ya que A simtrico y definitivamente positivo, la ubicacin de sus eigen vectores provee una base ortonormal de Esto quiere decir que:
Donde es el valor propio of una A asociada con y es el smbolo Kronecker. Consecuentemente, un vector genrico puede ser escrito como:
Tenemos: ]
Denota para El msgrandevalor propio de A. Ya que (5.23) En una manera similar, obtenemos. Sobre recalcando que los valores propios de nos permite deducir de (5.22) que.
conluimos que:
Esta desigualdad
Podemos concluir que el error relativo en la solucin depende del error relativo en los datos travs de la siguiente constante:
La cual es llamada nmero condicional espectral de la matriz A. K(A) puede ser computado en MATLAB usando el comando cond. Otras definiciones para el nmero condicional estn disponibles para matrices no simtricas, vase. (QSSO captulos 3) Comentario 5.2: el comando MATLAB cond (A) permite la computacin de el numero condicional de cualquier tipo de matriz A, incluso aquellos que no son simtricos y defectivamente positivos. Un comando especial MATLAB condest(A) est disponible para calcular una aproximacin del numero de condicion de una matriz dispersa A, y otro rcond(A) para su reciproco, con un ahorro sustancial de operaciones de punto flotante. Si la matriz A esta mal condicionada ( es decir ) la computacin de su nmero condicional puede ser inexacta. Considerar por ejemplo las matrices tridiagonales Para diferentes valores de n. es simtrico y definitivamente positivo, sus valores propios son para con de ah . Puede ser computada exactamente. En la figura 5.5 reportamos el valor del error Note que incrementa cuando n incrementa. Una prueba mas envuelta nos llevara al resultado mas general en le caso donde ..es una simetra arbitraria y matriz definitivamente positiva suficientemente pequea para satisfacer :
Si es pequea, esa es solo el orden de la unidad, a es dicha para ser bien condicionada. En ese caso, pequeos errores en los datos llevaran a errores del mismo orden de magnitud en la solucin. Esto no ocurrira en el caso de matrices mal condicionadas.
Fig.5.5 Comportamiento de
Ejemplo 5.9 para la matriz Hilbert introducida en el ejemplo 5,8 es una funcin de incremento rpido de n. Se tiene mientras si El numero condicional es tan alto que, MATLAB advierte que la matriz estcerca de singular. De hecho crece en una ndice exponencial. (vase HIG02). Este provee una explicacin indirecta de los malos resultados obtenidos en el ejemplo 5.8 Desigualdad (5.25) puede ser reformulada para la ayuda del residuo r: debera ser la solucin exacta, el residuo seria el vector nulo. De esta manera, en general, r puede ser considerada como un estimador del error El excedente para el cual el residuo es un buen error estimador que depende de la medida del nmero condicional de A. Efectivamente observando que deducimos de (5.25) que
De esta manera si K(A) es pequeo, podemos estar seguros que el error es pequeo debido a que el residuo es pequeo, mientras este puede ser verdad cuando Es largo Ejemplo 2.10 Los residuos asociados con n la solucin computada de los sistemas lineales de el ejemplo 5.8 son muy pequeos (sus normas varan entre y ) sin embargo las soluciones computadas difieren remarcablemente de la solucin exacta. Vase los ejercicios 5.9-5.10.
Esta matriz es llamada tridiagonal ya que los nicos elementos que pueden ser no nulos pertenecen a diagonal principal y a la primera sper y subdiagonales. Si la factorizacin Gauss LU de A existe, los factores L y U debe ser bidiagonales(inferior y superior respectivamente) ms precisamente:
] [ ]
Los coeficientes desconocidos y pueden ser determinados para recurrir que la igualdad LU=A lo sostiene. Estos produce las siguientes relaciones repetidas para la computacin de los factores: L yU (5.30) Usando (5.30) ,fcilmente podemos resolver los sistemas bidiagonales Ly=b y Ux=y para obtener la siguiente formula : (5.31) (5.32) Este es conocido como el algoritmo Thomas y permite la solucin del sistema original con un costo computacional delorden de operaciones n. El comando MATLAB spdiags permite la construccin de una matriz tridiagonal. por ejemplo , los comandos. b= ones (10 ,1); a=2*b; c=3*b; T= spdiags ([b a c], -1:1 ,10 ,10); Calcula la matriz T Con los elementos iguales a dos de la diagonal principal 1 en la primera subdiaconal y 3 en la primera superdiagonal . Se pude notar que T es reservado en el espacio dispersa, de acuerdo a lo cual los nicos elementos reservados son los diferentes de 0. La matriz A es dispersa si tiene un nmero sin 0 que esta en el orden n (y no ) Llamamos patrn de uno matriz dispersa en el coeficiente diferente de cero. Cuando un sistema es resuelto para invocar el comando MATLAB pude reconocer el tipo de matriz (en particular si a sido generada modo disperso) selecciona la solucin algortmica mas apropiada. En particular cuando A es una matriz tridiagonal generada en el modo disperso el algoritmo de thomas es el que debe ser seleccionado
En general para un lado derecho arbitrario B podemos descubrir un vector minimiza la norma euclidiana del residuo que es:
Lo que
Similar a un vector X se llama solucin de casillas menores del sistema sobredeterminado . Similar al lo que fue echo en la seccin 3.4 la solucin de 5.34 puede ser encontrada para imponer la condicin que la altura de la funcin debe ser igual a cero en .Con clculos similares encontramos que es por consecuente la solucin del sistema lineal de casillas.
El cual se llama el sistema de ecuaciones normales. Este sistema es no singular si A tiene lleno el rango (que es ), donde el rango de A, es el mximo orden de los determinantes no nulos extradas de A). Como el caso B= es una matriz simtrica definida positiva, entonces la solucin de las menores casillas existe y es nica. Para calcular lo se puede usar la factorizacin Cholesky (5.14). Sin embargo, debido a los errores de agrupamiento, el calculo de puede ser afectado por una perdida de dgitos significativos, con un perdida consecuente de la definida positiva de la matriz en si misma. En ves de esto es mas conveniente usar la as llamada factorizacin QR. Ninguna matriz llena del rango , con m>=n, admite una nica factorizacin, en donde existe una matriz. , con la propiedad ortogonal Y una matriz trapezoidal superior , con filas nulas de la n+1 tal como:
Entonces la nica solucin de (5.34) es dada por. Donde Y Tomar en cuenta que no es singular. Ejemplo 5.11.- considerar una alternativa de acercamiento para el problema de encontrar la lnea d regresin , (vase la seccin 3.4) de los datos del problema 3.3. Usando los datos d la tabla 3.2 imponiendo las condiciones de interpolacin obtenemos el sistema sobre determinado Aa=b donde y
Para calcular su solucin de las menores casillas usamos las siguientes instrucciones: [Q,R]= qr(A); Qt=Q (:,1:2); Rt=R(1:2,:); xstar = Rt \ (Qt*b) xstar = 0.3741 0.0654 Estos son precisamente los mismos coeficientes para la lnea de regresin calculada en el ejemplo 3.10. Ten en cuenta que este procedimiento es directamente implementado en el comando \: de hecho, la instruccin xstar = A\b produce el mismo xstar vector.
4. Si la matriz es cuadrada , frecuenciada y si la densidad banda lis suficientemente pequea continua, mas el goto 3 a) Si la matriz es tridiagonal y la de lado derecho no es densa continua, mas goto b); i. Si la matriz es simtrica, con una diagonal positiva, ensaya la factorizacin Cholesky ii. Si la de encima fallara o la matriz no es simtrica con diagonal positiva usa la eliminacin Gaussiana pivoteando; b) si la matriz es simtrica con diagonal positiva. Prueba la factorizacin Cholesky c) Si la de encima fallara o la matriz no es simtrica con diagonal positiva usa la eliminacin Gaussiana pivoteando; 5. .si la matriz no esta cuadrada, o ninguna de las resoluciones previas muestra una singular o cercana matriz singular, encuentra una solucin en el sentido de las casillas menores.
RESUMAMOS 1. La factorizacin LU de A consiste in calcular una matriz triangular inferior L y una matriz triangular superior U tal como A=LU; 2. La factorizacin, siempre que exista, que existe no es nica. Sin embargo, puede ser determinada sin error para proporcionar una condicin adicional tal como e.g., ajustando los elementos diagonales de L igual a 1. Esta se llama factorizacin Gauss; 3. La factorizacin Gauss exista y es nica si y si solamente las submatrices principales de A de l orden 1 a n-1 son no singulares (de lo contrario al menos que un elemento pivote sea nulo; 4. Si un elemento pivote nulo es generado, un nuevo elemento pivote puede ser obtenido para intercambiar en una manera adecuada de dos filas (o columnas) de nuestro sistema. Esta es la estrategia pivote; operaciones, y solamente un 5. El calculo de la factorizacin Gauss requiere alrededor de orden de n operaciones en el caso de los sistemas tridiagonales; 6. Para matrices definitivamente positivas y simtricas podemos usar la factorizacin Cholesky donde H es una matriz triangular inferior, y el costo calculable es de orden de operaciones 7. La sensibilidad del resultado de perturbacin es de datos depende del numero condicional de la matriz del sistema; mas precisamente la exactitud de la solucin calculada puede ser baja si la s matrices son mal condicionadas; 8. la solucin de un sistema lineal sobre determinado puede ser intentada en el sentido de las menores casillas y puede ser calculada usando la factorizacin QR.
(5.40) desde esto proporciona al error de paso Por resta (5.39) de (5.40), nosotros
Por esta razn es llamado matriz de iteracin asociada con (5.39). Si positiva, por (5.23) tenemos
es simtrica y definida
Hemos denotado como el radio espectral de , esto es, el mximo mdulo de los eigenvalores de . Por iteracin hacia atrs de la misma inecuacin, obtenemos As que [ ] (5.41)
cuando para cada posible (y de aqu en adelante ) con la condicin de . Actualmente, esta propiedad es tambin necesaria para convergencia.
Debera estar disponible, por alguna posibilidad, un valor aproximado de , (5.41) debera permitirnos deducir el mnimo numero de iteraciones que sea necesario para multiplicar el error inicial por un factor . Efectivamente, podra ser la mnima integracin positiva para ] cada [ . En conclusin, para una matriz genrica los siguientes resultados sostienen que:
Proposicin 5.2 Para un mtodo iterativo de la forma (5.39) cuya matriz de iteracin satisface (5.40), converge para algn . Adems, el mas pequeo el menor que el numero de iteraciones necesarias para reducir el error inicial por un factor dado.
5.7.1 Cmo construir un mtodo iterativo Una tcnica general para idear un mtodo iterativo est basada en un reparto de la matriz , , siendo una matriz no singular adecuada (llamado el precondicionador de ). Entonces
tiene la forma (5.40) proporciona que nosotros pongamos . Correspondientemente, nosotros podemos definir el siguiente mtodo iterativo: ( donde )
(5.42)
(5.43) donde es un parmetro que puede cambiar en toda iteracin y la cual, principalmente, podra ser til para mejorar las propiedades de convergencia de la secuencia { } El mtodo (5.43) requiere encontrar a cada paso el as llamado pre condicionamiento residual que es la solucin de el sistema lineal. (5.44) entonces la nueva iteracin esta definida por . Por esta razn la matriz debera ser escogida en tal camino que el costo computacional para la solucin de (5.44) sea mnima (ej., todo cualquier diagonal o triangular o tridiagonal servir como propsito). Consideremos ahora algunas instancias especiales de mtodos iterativos que tomen la forma (5.43)
El mtodo de Jacobi
Si las entradas de la diagonal de son distintas de cero, nosotros podemos poner , donde es la matriz diagonal conteniendo las entradas de la diagonal de . El mtodo de Jacobi corresponde a esta seleccin con la suposicin para todo entonces de (5.43) obtenemos o, componente atinado,
) es el vector inicial.
(5.46)
Los siguientes resultados permiten la verificacin de la Proposicin 5.2 sin computacin explicita :
De hecho, podemos verificar que , donde est dado en (5.46). Para empezar, anotamos que los elementos de la diagonal de son no nulos debiendo estar estrictamente en la
es un eigenvalor genrico de
es su eigenvector asociado.
Suponemos por simplicidad que (este no es limitado dado que un eigenvector es definido como una constante multiplicativa) y dejamos ser la componente cuyo mdulo es igual a 1. Entonces | | | | gracias a la
Podemos notar que tiene solo elementos nulos en la diagonal. Por lo tanto suposicin hecha en .
El mtodo de Jacobi esta implementado en el Programa 5.2 puesto en el parmetro . Los parmetros de entrada son: el sistema matriz , al lado de la derecha , el vector inicial y el mximo nmero de iteraciones asignado, . El procedimiento iterativo est terminado tan pronto como la proporcin entre la norma Euclidiana de el residuo actual y el residuo inicial de este son menores que la tolerancia prescrita (por una justificacin de este criterio de parada, ver Seccin 5.10). Programa 5.2. itermeth: mtodo iterativo general
El Mtodo de Gauss-Seidel
Cuando aplicamos el mtodo de Jacobi, cada componente del nuevo vector, es decir , es computado independientemente de los otros. Esto puede sugerir que una convergencia ms rpida podra (esperanzadamente) lograrse si los nuevos componentes ya disponibles , junto con los antiguos , son usados para el clculo de . Esto puede conducir a modificar (5.45) como sigue: para (hasta suponer que para )
( (5.47)
Los componentes mejorados estn hechos en modo secuencial, mientras que en el mtodo original de Jacobi este es hecho simultneamente (o en paralelo). El nuevo mtodo, el cual es llamado mtodo de Gauss-Seidel, corresponde a la seleccin y , en (5.43), donde es una matriz triangular reducida cuyas entradas no nulas son . La iteracin correspondiente a la matriz entonces
Una posible generalizacin es as llamada mtodo de relajacin en cual es el parmetro de relajacin, y (ver Ejercicio 5.13).
, donde
Tambin para el mtodo de Gauss-Seidel existen matrices especiales cuyas matrices de iteracin asociadas satisfacen la suposicin de la Proposicin 5.2 (las garantas de convergencia). Entre ellos podemos mencionar: 1. Matrices que son estrictamente diagonales dominante por hileras; 2. Matrices que son definidas simtricas y positivas. El mtodo de Gauss-Seidel est implementado en el Programa 5.2 coloca los parmetros de entrada iguales a G. No hay resultados declarados que el mtodo de Gauss-Seidel converja ms rpido que el de Jacobi. Sin embargo, en algunas instancias especiales este es el caso, cuando es declarada por la siguiente proposicin:
Proposicin 5.4 Dejamos a A ser una matriz tridiagonal no singular de NxN cuyos elementos de la diagonal son no nulos. Entonces el mtodo de Jacobi y el de Gauss-Seidel son cualquiera de los dos divergentes o cualquiera de los convergentes. En el ltimo de los casos, el mtodo de GaussSeidel es ms rpido que el de Jacobi; mas precisamente el radio espectral de esta matriz de iteracin es igual al cuadrado de la de Jacobi.
Ejemplo 5.12 Consideramos un sistema lineal , donde es elegido en tal forma que la solucin es el vector unitario y es la matriz tridiagonal de cuyas entradas de la diagonal son iguales a 3, las entradas de la primera diagonal inferior son iguales a -2 y las de la diagonal superior son todas iguales a -1. Ambos mtodos el de Jacobi y el de Gauss-Seidel converge desde el radio espectral de sus matrices de iteracin son estrictamente menores a 1. Mas precisamente, por empezar de un vector nulo inicial y elegir , el mtodo de Jacobi converge en 277 iteraciones mientras solo 143 iteraciones son requeridas para el de Gauss-Seidel. Para este resultado hemos usado las siguientes instrucciones:
en el cual puede cambiar a lo largo de las iteraciones. En esta estructura de una matriz no singular es an llamado un pre condicionamiento de . El asunto crucial es el camino en que los parmetros son escogidos. Con respecto a esto, los siguientes resultados sostienen (ver ejemplo, [QV94, captulo 2], [Anexo 94]).
Proposicin 5.5 Si los dos, y son simtricas y positivas definidas, el mtodo estacionario de Richardson converge para todas las posibles elecciones de si , donde es el mximo eigenvalor de . Adems, el radio espectral de la matriz de iteracin es minima cuando , donde
(5.48) siendo el mnimo eigenvalor de . Bajo la misma suposicin en y , el mtodo dinmico de Richardson converge si por ejemplo es elegido en la siguiente forma: ( (5.49) donde es el residuo precondicionado definido en (5.44). El mtodo (5.43) con esta eleccin de es llamado el mtodo precondicionado del gradiente, o simplemente el mtodo del gradiente cuando el precondicionador es la matiz identidad. Para ambas elecciones, (5.48) y (5.49), las siguientes convergencias estimadas sostienen: (
( )
Donde matriz
La versin dinmica debe, por lo tanto, ser preferida al mtodo estacionario desde que este no necesita los eigenvalores extremos conocidos de . Preferiblemente, el parmetro es determinado en trminos de cantidades las cuales son ya vlidas desde la iteracin previa.
Podemos escribir el mtodo del gradiente pre condicionado ms eficientemente a travs del siguiente algoritmo (la deduccin es dejado como ejercicio): dado , hacemos
Para
Igual algoritmo puede ser usado para implementar el mtodo estacionario de Richardson, simplemente reemplazando con el valor constante . De (5.50), podemos deducir que si es mal condicionado el tipo de convergencia podra ser muy bajo incluso para (como en el caso ( ) ). Esta circunstancia puede ser evitada con la condicin de que una eleccin conveniente de sea hecha. Esta es la razn porque es llamada el pre condicionante o la matriz precondicionadora. Si es una matriz genrica, esta puede dar una difcil tarea para encontrar un pre condicionante cuyas garantas y cambios ptimos entre el producto del numero de condicin y conservar el costo computacional para la solucin del sistema (5.44) sea razonablemente baja. El mtodo dinmico de Richardson es implementado en el Programa 5.2 donde el parmetro de entrada colocado por la matriz precondicionante (cuando no preescribe, el programa implementa el mtodo no pre condicionante por colocacin ). Ejemplo 5.14 Permtanos condicionar un sistema , donde is una matriz pentadiagonal donde su diagonal principal tiane todas las entradas iguales a 4, mientras la primera y tercera diagonales inferiores y superiores tienen todas las entradas iguales a -1. Como de costumbre, es elegido de tal forma que es la solucin exacta de nuestro sistema. Tenemos que es la matriz trigiadonal cuyos elementos de la diagonal son todos iguales a 2, mientras que los elementos de la diagonal superior e inferior son todos iguales a -1. Ambos, y son simetricas y definidas positivas. Con como un precondicionante, el Programa 5.2 puede ser usado para implementar el mtodo precondicionante dinamico de Richardson. Fijamos . el mtodo converge con 18 iteraciones. El mismo Programa 5.2, usado con , implementa el mtodo de Gauss-Seidel; esta vez tantas como 2421 iteraciones son requeridas para satisfacer el mismo criterio de detencin.
Fig. 5.6. Historia de convergencia para Jacobi, Gauss-Seidel y el mtodo del gradiente aplicados al sistema (5.52)
y Para k=0,1,
(5.54) La constante garantiza que el error es minimo alrededor de la direccin descendente , mientras es elegido para asegurar que la nueva direccin es la conjugada de con . Para una completa demostracin del mtodo, ver por ejemplo [QSS06, Captulo 4] o [Saa96]. Es posible demostrar el siguiente resultado importante:
Proposicin 5.6 Tenemos que es una matriz simtrica y positiva definida. El mtodo del gradiente conjugado para resolver (5.1) converge despus de mas de n pasos (en una aritmtica exacta). Adems, el error a la k-sima iteracin (con ) es ortogonal para , en y
(5.55)
Por lo tanto, en ausencia de errores de redondeo, el mtodo CG puede ser considerado como un mtodo directo, desde que este termina a un finito nmero de pasos. Sin embargo, para matrices de gran tamao, este es usualmente empleado como un proyecto iterativo, donde las iteraciones son detenidas cuando el error est debajo de una tolerancia fijada. Con respecto a esto, la dependencia
del factor de reduccin del error en el nmero de condicin de la matriz es mas favorable que para el mtodo del gradiente (gracias a la presencia de la raz cuadrada de ). Tambin para el mtodo CG es posible considerar a la versin pre condicionante (el mtodo PCG), con un pre condicionante simtrico y positivo definido, cuyas entradas son las siguientes: dado y colocado y , Para k=0,1,
(5.56) El mtodo PECG est implementado en MATLAB funcin pcg. Ejemplo 5.15 (Factorizacin vs mtodos iterativos en el sistema de Hilbert) Regresemos al Ejemplo 5.8 en la matriz de Hilbert y resolvamos el sistema (para diferentes valores de ) por el mtodo del gradiente pre condicionado (PG) y el mtodo del gradiente pre condicionado conjugado (PCG), usando como pre condicionante la matriz diagonal creada por las entradas de la diagonal de la matriz de Hilbert. Fijamos para ser el vector nulo e iteramos hasta que el residuo relativo sea menos que . En la Tabla 5.2 reportamos los errores absolutos (con respecto a la solucin exacta) obtenidos con los mtodos PG y PCG y los errores obtenidos usando el comando de MATLAB \. En el ltimo de los casos el error se degenera cuando crece. Por otra parte, podemos apreciar el efecto beneficioso que un apropiado mtodo iterativo como el PCG puede tener en un nmero de iteraciones. PG Error 1.74e-02 8.80e-03 1.78e-02 2.52e-03 1.76e-02 1.46e-02 PCG Error 2.24e-02 9.50e-03 2.13e-02 6.98e-03 1.12e-02 1.61e-02
4 6 8 10 12 14
Iter. 3 9 4 5 5 5
Tabla 5.2. Errores obtenidos usando el mtodo del gradiente pre condicionante (PG), el mtodo de la conjugada del gradiente pre condicionante (PCG) y el mtodo directo implementado en MATLAB comando \ para la solucin del sistema de Hilbert. Para los mtodos iterativos reportamos tambin el nmero de iteraciones. Comentario 5.3 (Sistemas no simtricos) El mtodo CG es un ejemplo especial de el tambin llamado mtodo Krilov (o Lanczos) que puede ser usado para la solucin de sistemas las que no son
necesariamente simtricas. Algunas de estas partes con el mtodo CG tienen la notable propiedad de la terminacin finita, esto es, en aritmtica exacta ellos proporcionan la solucin exacta en un finito nmero de iteraciones adems para sistemas no simtricos. Un ejemplo es el mtodo GMRES(Mnimo Residuo Generalizado). Su descripcin es demostrada, ej., en [Axe94], [Saa96] y [vdV03]. Ellos son validos en las herramientas en MATLAB sparfun bajo el nombre de gmres. Otro mtodo de esta familia sin la propiedad de terminacin finita, la cual sin embargo requiere el menor esfuerzo computacional que GMRES, es el mtodo de la gradiente conjugada al cuadrado (CGS) y su variante, el mtodo BiCGStab, que est caracterizado por mas convergencias regulares que CGS. Todos estos mtodos son vlidos en las herramientas de MATLAB sparfun. Octave 5.1 Octave proporciona solo una implementacin de el mtodo del gradiente de la conjugada pre condicionante (PCG) a travs de el comando pcg y el mtodo del residuo pre condicionante conjugado (PCR/Richardson) a travs del comando pcr. Otro mtodo iterativo como GMRES, CGS, Bi-CGStab no estn implementados todava. Ver Ejercicios 5.15-5.17
en (5.29) se obtiene
que es una estimacin del error relativo. Deducimos que el control en el residual es significativo slo para aquellos cuyo nmero de condicin de matrices es razonablemente pequeo. Ejemplo 5.16 Consideremos el sistema lineal (5.1) donde es la Matriz de Hilbert de dimensin 20 introducido en el Ejemplo 5.8 y est construido de tal manera que la solucin exacta es . Puesto que es simtrica y definida positiva el mtodo de GaussSeidel converge seguramente. Usamos Programa de 5.2 para resolver este sistema de tomar como el vector inicial nulo y establecer una tolerancia en el residual igual a . El mtodo converge en iteraciones, sin embargo el error relativo es muy grande y es igual a . Esto es debido al hecho de que A est extremadamente mal condicionado, teniendo . En la Figura 5.7 que muestran el comportamiento de la residual (normalizada a la inicial) y la del error segn como aumenta el nmero de iteraciones.
(lnea continua) para las iteraciones de Gauss-Seidel aplicada al sistema del Ejemplo 5.16 Un enfoque alternativo se basa en el uso de un diferente estimador de error diferente, a saber, el increment . Ms precisamente, podemos detener nuestro mtodo iterativo en el iteracin primer paso para que
Puesto que
(5.57) Desde la ltima desigualdad se ve que el control sobre el incremento es significativo slo si es mucho menor que 1 ya que en ese caso, el error ser del mismo tamao que el incremento. De hecho, la misma conclusin se mantiene incluso si B no es simtrica y definida positiva (como ocurre para los mtodos de Jacobi y de Gauss-Seidel); sin embargo en este caso (5.57) ya no es cierto. Ejemplo 5.17 Consideremos un sistema cuya matriz es tridiagonal y simtrica con entradas iguales a en la diagonal principal e igual a 1 en las otras dos diagonales. Como de costumbre, el del lado derecho se elige de tal manera que el vector unitario es la solucin exacta. Como A es tridiagonal con estricta dominancia diagonal, el mtodo de GaussSeidel converge casi el doble de rpido que el mtodo de Jacobi (vea la Proposicin 5.4). Usemos Programa de 5.2 para resolver nuestro sistema en el que se remplaza el criterio de parada basado en el residuo por el basado en el incremento. El uso de un vector inicial nulo y el establecimiento de la tolerancia , despus de 1604 iteraciones el programa devuelve un error cuya solucin 0.0029 es bastante grande. La razn es que el radio espectral de la matriz de iteracin es igual a 0.9952, que est muy cerca de 1. Deberan las entradas diagonales ser igual a 3, despus de
solamente 17 iteraciones habramos obtenido un error igual a espectral de la matriz de iteracin sera igual a 0.428.
Resumamos
1. Un mtodo iterativo para la solucin de un sistema lineal se inicia a partir de un determinado vector inicial y construye una secuencia de vectores que se requiere para converger hacia la solucin exacta como k ; 2. Un mtodo iterativo converge para cada posible eleccin del vector inicial si y slo si el radio espectral de la matriz de iteracin es estrictamente menor que 1; 3. Mtodos iterativos clsicos son los de Jacobi y Gauss-Seidel. Una condicin suficiente para la convergencia es que la matriz del sistema sea estrictamente diagonal dominante por fila (o simtrica y definida positiva en el caso de Gauss-Seidel); 4. En la convergencia del mtodo de Richardson se acelera gracias a la introduccin de un parmetro y (posiblemente) una matriz conveniente pre condicionada; 5. Con el mtodo del gradiente conjugado la solucin exacta de un sistema simtrico definido positivo se puede calcular en un nmero finito de iteraciones (en aritmtica exacta). Este mtodo se puede generalizar para el caso no simtrico; 6. Hay dos posibles criterios de parada para un mtodo iterativo: el control del residual o control del incremento. El primero es significativo si el sistema de matriz est bien condicionada, este ltimo si el radio de espectral de la matriz de iteracin no est cerca de 1.
comando de MATLAB \ que, en el caso que actual, es de hecho un algoritmo ad hoc para matrices simtricas pentadiagonales. El criterio de parada para el mtodo PCG es que la norma de la relacin residual sea inferior a , el tiempo de CPU incluye tambin el tiempo necesario para construir el preacondicionador. En la Figura 5.8, derecha, se compara el tiempo de CPU para los tres mtodos diferentes en comparacin con el tamao de la matriz. El mtodo directo oculto por el comando \ es, con mucho, el ms barato: de hecho, que se basa en una variante de la eliminacin gaussiana que es particularmente eficaz para matrices dispersas en bandas con ancho de banda pequeo. El mtodo PCG, a su vez, es ms conveniente que la factorizacin de Cholesky, proporcionado un adecuado pre acondicionador se utiliza. Por ejemplo, si el mtodo PCG requiere 19 iteraciones, mientras que el mtodo CG (sin pre condicionamiento) requerira 325 iteraciones, lo que resulta, de hecho, menos conveniente que la factorizacin de Cholesky simple.
Fig. 5.8. La estructura de la matriz para el primer caso de prueba (a la izquierda), y el tiempo de CPU necesario para la solucin del sistema lineal asociado (a la derecha): la lnea continua se refiere a la \ comando, la lnea de rayas y puntos a la utilizacin de la factorizacin de Cholesky, la lnea discontinua a la PCG mtodo iterativo
directo implementado en MATLAB (que no utiliza la factorizacin de Cholesky puesto que la matriz se almacena con el formato sparse). Se seala que un pre condicionante adecuado es sin embargo fundamental para que el mtodo PCG sea competitivo. Finalmente, debemos tener en cuenta que los mtodos directos requieren ms capacidad de almacenamiento de memoria que los mtodos iterativos, una dificultad que podra convertirse en insuperable en aplicaciones a gran escala.
Fig. 5.9. La estructura de la matriz utilizada en el segundo caso de prueba (a la izquierda), y el tiempo de CPU necesario para resolver el sistema lineal asociado (a la derecha): la lnea continua se refiere a la \ comando, la lnea de rayas y puntos para el uso de la factorizacin de Cholesky, la lnea discontinua para el mtodo iterativo PCG
MATLAB, puede guardar una matriz definida en la galera con el comando save y luego cargarla en Octave usando load. Aqu est un ejemplo: En MATLAB:
En OCTAVE:
La figura. 5,10. A la izquierda, el nmero de condicin de la matriz A. Riemann A la derecha, la comparacin entre los tiempos de CPU para la solucin del sistema lineal: la lnea continua se refiere a la \ comando, la lnea discontinua se refiere a los GMRES mtodo iterativo con sin preacondicionamiento. Los valores en abscisas se refieren a la dimensin de la matriz Tenga en cuenta que slo la Octave versin 2.9 puede cargar Mat-files correctamente desde MATLAB versin 7.
Fig. 5.11. La estructura de una de las matrices usadas para el cuarto caso de prueba (a la izquierda), y el tiempo de CPU necesario para la solucin del sistema lineal asociado (a la derecha): la lnea continua se refiere a la \ comando, la lnea discontinua a la Bi-CGStab mtodo iterativo Cuanto menor sea el dimetro h de los tringulos (es decir, las longitudes de su borde ms largo), mayor es el tamao de la matriz. Hemos comparado el tiempo de la CPU necesario para resolver el sistema lineal correspondiente al caso h = 0,1, 0,05, 0,025, 0,0125 y 0,0063. Hemos utilizado el comando de MATLAB \, que en este caso utilizar la UMFPACK library and the (MATLAB implementation of the) mtodo iterativo Bi-CGStab que puede considerarse como una generalizacin a sistemas no simtricas del mtodo del gradiente conjugado. En abscisas se ha reportado el nmero de incgnitas que van desde los 64 (para h = 0,1) y 101.124 (para h = 0,0063). Tambin en este caso, el mtodo directo es menos cara que un iterativo. Deberamos usar como pre condicionante para el mtodo de Bi-CGStab la factorizacin LU incompleta, el nmero de iteraciones reducira, sin embargo el tiempo de CPU sera ms alto que el otro para el caso no pre condicionado.
En conclusin
Las comparaciones que hemos llevado a cabo, aunque muy limitado, esboza unos pocos aspectos relevantes. En general, los mtodos directos (especialmente si se aplican en sus versiones ms sofisticadas, como en el comando \ MATLAB) son ms eficientes que los mtodos iterativos cuando estos ltimos se utilizan sin pre condicionantes eficientes. Sin embargo, son ms sensibles a la matriz mal condicionada (vase por ejemplo el Ejemplo 5.15) y pueden requerir una cantidad considerable de almacenamiento. Un aspecto adicional que vale la pena mencionar es que los mtodos directos requieren el conocimiento de las entradas de la matriz, mientras que los mtodos iterativos no. De hecho, lo que es necesario en cada iteracin es el clculo de productos vectoriales matriz de vectores dados. Este aspecto hace que los mtodos iterativos especialmente interesantes para los problemas en los que la matriz no est explcitamente generada.
mantener la L factores triangular y U tan escaso como sea posible. El mtodo multifrontal se implementa en el paquete de software UMFPACK. Ms sobre este tema est disponible en [GL96] y [DD99]. En cuanto a los mtodos iterativos, tanto el mtodo de gradiente conjugado y el mtodo GMRES son casos especiales de los mtodos de Krylov. Para obtener una descripcin de los mtodos de Krylov vase, por ejemplo [Axe94], [Saa96] y [vdV03]. Como se seal, los mtodos iterativos convergen lentamente si la matriz del sistema est gravemente enfermo acondicionado. Varias estrategias de pre condicionamiento se han desarrollado (vase, por ejemplo, [dV89] y [vdV03]). Algunos de ellos son puramente algebraicos, es decir, que se basan en incompletos (o inexactas) factorizaciones de la matriz del sistema dado, y se aplican en las funciones ya citadas luinc MATLAB o cholinc. Otras estrategias se desarrollan ad hoc mediante la explotacin del origen fsico y la estructura del problema que se ha generado por el sistema lineal a mano. Finalmente, merece la pena mencionar los multigrid methods que se basan en el uso secuencial de una jerarqua de sistemas de dimensiones variables que "se asemejan a" la original, permitiendo una estrategia de reduccin de error inteligente (vase, por ejemplo, [Hac85], [Wes04] y [Hac94]). Octave 5.3 En Octave, cholinc no est todava disponible. Slo luinc ha sido implementado.
5.13 Ejercicios
Ejercer 5.1 Para una matriz dada A encontrar el nmero de operaciones (como una funcin de ) que se necesitan para calcular su determinante por la frmula recursiva (1.8). Ejercicio 5.2 Uso del comando de MATLAB magic (n), n = 3, 4,. . . , 500, para la construccin de los cuadrados mgicos de orden n, es decir, las matrices que tienen entradas para las que la suma de los elementos por filas, columnas o diagonales son idnticos A continuacin, calcular sus determinantes por el comando det introducido en la Seccin 1.3 y el tiempo de CPU que se necesita para este clculo mediante el comando cputime. Por ltimo, estos datos aproximados por el mtodo de mnimos cuadrados y deducir que las escalas de tiempo de CPU aproximadamente como . Ejercicio 5.3 Encontrar para qu valores de la matriz definida en (5.13) no satisface las hiptesis de la Proposicin 5.1. Para qu valor de es esta matriz convertirse en singular? Es posible calcular la factorizacin LU en ese caso? Ejercicio 5.4 Verificar que el nmero de operaciones necesarias para calcular la factorizacin LU de una matriz cuadrada A de dimensin n es de aproximadamente Ejercicio 5.5 Demostrar que la factorizacin LU de A se puede utilizar para el clculo de la matriz inversa . (Observe que el vector columna j-sima de satisface el sistema lineal siendo el vector cuyos componentes son todos nulos excepto el componente j-sima que es 1. Ejercicio 5.6 Calcular la L y U factores de la matriz del ejemplo 5.7 y verificar que la factorizacin LU es inexacta. Ejercicio 5.7 Explique por qu pivoteo parcial por filas no es conveniente para las matrices simtricas. Ejercicio 5.8 Considere el sistema lineal con
y b tal que la solucin correspondiente es factorizacin de Gauss de A y que tenga en cuenta que la solucin calculada es exacta. Ejercicio 5.9 Considere el lineal sistemas
, i = 1, 2, 3, con
y tal que la solucin es siempre . Resuelve el sistema de la factorizacin de Gauss con pivoteo parcial por fila, y comentar los resultados obtenidos. Ejercicio 5.10 Demostrar que para una matriz definida positiva y simtrica A. Tenemos . Ejercicio 5.11 Analizar las propiedades de convergencia de los Jacobi y Gauss-Seidel mtodos para la solucin de un sistema lineal cuya matriz es
Ejercicio 5.12 Proporcionar una condicin suficiente manera que tanto mtodos de Jacobi y de Gauss-Seidel convergen cuando se aplica para la solucin de un sistema cuya matriz es
Ejercicio 5.13 Para la solucin del sistema lineal con A , tenga en cuenta el mtodo de relajacin: dado , para k = 0, 1,. . . calcular
para i = 1,. . . , N, donde es un parmetro real. Encuentra la forma explcita de la matriz correspondiente iterativo, a continuacin, compruebe que la condicin 0 < <2 es necesaria para la convergencia de este mtodo. Tenga en cuenta que si = 1 este mtodo reduce al mtodo de Gauss Seidel. Si 1 < <2 el mtodo se conoce como SOR (successive over-relaxation). Ejercicio 5.14 Considere el sistema lineal con
y decir si converge el mtodo de Gauss-Seidel, sin calcular explcitamente el radio espectral de la matriz de iteracin Ejercicio 5.15 Calcular la primera iteracin con los mtodos de Jacobi, Gauss-Seidel y el mtodo del gradiente pre condicionado (con pre condicionante propuesto por la diagonal de A) para la solucin de sistema (5.52) con . Ejercicio 5.16 Demostrar (5.48), y luego demostrar que
Ejercicio 5.17 Consideremos un conjunto de n = 20 fbricas que producen 20 productos diferentes. Con referencia al modelo de Leontief introducido en el problema 5.3, supongamos que la matriz C tiene las siguientes entradas: para , mientras que , para . Es posible resolver este sistema por el mtodo del gradiente? Proponer un mtodo basado en el mtodo de gradiente de sealar que, si A es no singular, el matriz es simtrica y definida positiva.