Práctica 5 Aplicaciones de los sistemas lineales (II) Aplicaciones de los sistemas lineales (II) La ecuación del calor en una placa Condicionamiento de una matriz Interpolación polinómica. Matriz de van der Monde Integración numérica. Matriz de Hilbert Ecuación del Calor en un rectángulo N W C E S –1 –1 TC = (TW + TN + TS + TE)/4 4 –1 Molécula –1 Sistema de ecuaciones lineales tomando 9 nodos 50 0 0 50 50 T1 T4 T7 T2 T5 T8 T3 T6 100 100 T9 0 100 50 −1 4 −1 −1 4 −1 −1 4 4 −1 −1 −1 −1 −1 −1 −1 4 −1 −1 50 50 T1 50 T 0 2 T3 50 −1 T 50 −1 4 T5 = 0 −1 −1 4 −1 T6 50 T 150 4 −1 7 −1 4 −1 T8 100 −1 −1 4 T9 150 Algoritmo para generar la matriz (calor2D) Entrada: n,m dimensiones de la matriz. Salida: A matriz del sistema. Proceso: % cálculo de las diagonales 1 y –1. p = n*m; v = ones(1,p-1); for k = n:n:p-n, v(k) = 0; end % cálculo de las diagonales n y –n. w = ones(1,p-n); % Matriz del sistema A = 4*eye(p)- diag(v,1) - diag(v,-1)- diag(w,n) - diag(w,-n); Limitaciones de los Métodos Directos Acumulación del error de redondeo Coste de la eliminación: O(n3) Sensibilidad al error de redondeo Sistemas mal o bien condicionados Número de condición Estrategia de Pivotación Parcial Llenado de la matriz Sensibilidad al error de redondeo Sistema mal condicionado : Un pequeño cambio en la matriz causa un gran cambio en la solución. Sistema bien condicionado : Pequeños cambios en la matriz causan pequeños cambios en la solución. Condicionamiento de una matriz Número de condición de una matriz cond mide el mal condicionamiento cond(eye(n))=1 cond(matsingular) = inf rcond mide el buen condicionamiento rcond(eye(n))=1 rcond(matsingular) = 0 rcond y det Pivotación parcial Un algoritmo deficiente puede arruinar un sistema bien condicionado. Estrategia: Elegir como pivote el elemento de mayor valor absoluto del resto de la columna. El operador \ para resolver Ax = b Interpolación polinómica Matriz de van der Monde Determinar un polinomio Pn(x) = an+1 + anx + an-1x2 + ... + a1xn de grado no superior a n, que pase por n+1 puntos dados (x1, y1), (x2, y2),..., (xn+1, yn+1), Al imponer las condiciones queda un sistema lineal con matriz asociada al matriz de van der Monde. 1 x1 x12 2 1 x x 2 2 1 x3 x32 M M M 2 1 x x n+1 n+1 L x1n an+1 y1 n L x2 an y2 L x3n ⋅ an−1 = y3 M M M L xnn+1 a1 yn+1 Integración numérica Matriz de Hilbert Determinar los coeficientes del polinomio p(x) de modo que cumplan ∫ 1 0 xk p( x ) dx = ∫ 1 0 xk f ( x ) dx, k = 0, 1, 2, 3 siendo f(x) una función dada. Imponiendo las condiciones obtenemos otro sistema lineal cuya matriz asociada es la denominada matriz de Hilbert . 1 1 / 2 1 / 3 1 / 4 1/ 2 1/ 3 1/ 4 1/ 3 1/ 4 1/ 5 1/ 4 1/ 5 1/ 6 1 / 5 1 / 6 1 / 7