12.05.2013 Views

Práctica de resolución de sistemas de ecuaciones lineales con ...

Práctica de resolución de sistemas de ecuaciones lineales con ...

Práctica de resolución de sistemas de ecuaciones lineales con ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

2. La or<strong>de</strong>n \ <strong>de</strong> MATLAB para resolver <strong>sistemas</strong><br />

<strong>de</strong> <strong>ecuaciones</strong> <strong>lineales</strong><br />

Para resolver el sistema (1) utilizando un método directo <strong>con</strong> el programa<br />

MATLAB hay que utilizar el comando \. Descrito brevemente A\B es A −1 B,<br />

por tanto para resolver (1) basta escribir A\b, en realidad se pue<strong>de</strong> aplicar<br />

para obtener la solución <strong>de</strong>l sistema AX = B, don<strong>de</strong> B es una matriz <strong>con</strong> el<br />

mismo número <strong>de</strong> filas que A y un número cualquiera <strong>de</strong> columnas. El algoritmo<br />

que aplica MATLAB <strong>de</strong>pen<strong>de</strong> <strong>de</strong> la matriz A. Se proce<strong>de</strong> <strong>de</strong> la siguiente<br />

forma (traducción casi literal <strong>de</strong> la ayuda <strong>de</strong> MATLAB prescindiendo <strong>de</strong> las<br />

referencias a matrices dispersas):<br />

Si A es una matriz triangular o una permutación <strong>de</strong> una matriz triangular,<br />

entonces X pue<strong>de</strong> calcularse rápidamente por un algoritmo <strong>de</strong><br />

sustitución regresiva permutado.<br />

Si A es simétrica o hermítica y tiene elementos positivos en la diagonal<br />

principal, se intenta hacer una factorización <strong>de</strong> Cholesky. Si se encuentra<br />

que A es <strong>de</strong>finida positiva, el intento <strong>de</strong> calcular la factorización <strong>de</strong><br />

Cholesky tiene éxito y requiere menos <strong>de</strong> la mitad <strong>de</strong>l tiempo que una<br />

factorización general. Normalmente las matrices no <strong>de</strong>finidas positivas<br />

se <strong>de</strong>tectan casi inmediatamente, por tanto esta comprobación requiere<br />

poco tiempo. Si tiene éxito la factorización <strong>de</strong> Cholesky es A = R T R,<br />

don<strong>de</strong> R es triangular superior. La solución X se calcula resolviendo<br />

dos <strong>sistemas</strong> triangulares X=R\(R’\B)<br />

Si A es una matriz <strong>de</strong> Hessenberg (es <strong>de</strong>cir una matriz <strong>con</strong> los elementos<br />

situados por <strong>de</strong>bajo <strong>de</strong> la diagonal principal nulos, excepto los <strong>de</strong> la<br />

diagonal inmediatamente <strong>de</strong>bajo <strong>de</strong> la principal: aij = 0, si i > j +1), a<br />

partir <strong>de</strong> la versión 6 <strong>de</strong> MATLAB, la matriz se reduce a triangular superior<br />

y ese sistema se resuelve por sustitución regresiva. En versiones<br />

anteriores se sigue el procedimiento general, <strong>de</strong>scrito a <strong>con</strong>tinuación.<br />

Si A es cuadrada pero no es una permutación <strong>de</strong> una matriz triangular,<br />

o no es hermítica <strong>con</strong> elementos positivos en la diagonal principal, o<br />

la factorización <strong>de</strong> Cholesky fracasa entonces se calcula una factorización<br />

triangular general por el método <strong>de</strong> eliminación gaussiana <strong>con</strong><br />

pivotamiento parcial (ver la or<strong>de</strong>n lu en la sección 3). Esto da como<br />

resultado A = LU, don<strong>de</strong> L es una permutación <strong>de</strong> una matriz triangular<br />

inferior y U es una matriz triangular superior. Entonces X se<br />

calcula resolviendo dos <strong>sistemas</strong> triangulares permutados X=U\(L\B).<br />

2

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!