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 ...
3.1. La factorización LU La orden para calcular la factorización LU de la matriz A es lu. Sólo requiere un dato que es la propia matriz A, pero se le pueden pedir como resultado una, dos o tres matrices. Si se piden tres matrices ([L, U, P] = lu(A)), L es una matriz triangular inferior con unos en la diagonal principal, U es triangular superior y P es una matriz de permutación tal que P A = LU. Para resolver (1) se puede utilizar la orden U\(L\(P*b)). Si se le piden dos matrices ([L, U] = lu(A)), L es una matriz psicológicamente 2 triangular inferior, en realidad es el producto de la inversa de la matriz de permutación que se ha aplicado por la matriz triangular inferior que proporciona la factorización, y U es triangular superior. Se puede resolver (1) con las órdenes U\(L\b). Por último si sólo se pide una matriz se obtiene una matriz con los elementos no nulos de U y los no nulos y que no corresponden a un uno de la diagonal principal de L. Esta matriz no es en realidad muy útil. Ejemplo 1 Vamos a utilizar la factorización LU para resolver un sistema de ecuaciones lineales » A=[3 -1 2 4; 2 0 -1 3; 7 2 1 4; 0 -1 2 3]; » b=[2 -1 3 9]’; » [L,U]=lu(A) L = U = 0.42857 1 0 0 0.28571 0.30769 1 0 1 0 0 0 0 0.53846 -0.65217 1 7 2 1 4 0 -1.8571 1.5714 2.2857 0 0 -1.7692 1.1538 0 0 0 2.5217 2 Según la ayuda de MATLAB 4
» sol=U\(L\b) sol = -3.2931 5.7414 3.0517 2.8793 » sol2=A\b sol2 = -3.2931 5.7414 3.0517 2.8793 » sol==sol2 ans = 1 1 1 1 se observa que L no es triangular inferior, pero es muy fácil reordenarla intercambiando filas para que lo sea. También se ha comprobado que la solución proporcionada por el comando \ de MATLAB coincide exactamente con la calculada utilizando la factorización LU. Aunque en el cálculo de ésta se han realizado más operaciones que con \ se precisa menos tiempo, esto se debe a que \ realiza una serie de comprobaciones previas. Seguimos ahora calculando con la misma matriz, pero obteniendo la matriz de permutación. » [L,U,P]=lu(A) L = 5
- Page 1 and 2: Índice Práctica de resolución de
- Page 3: La descripción de la ayuda de MATL
- Page 7 and 8: ahora L es realmente triangular inf
- Page 9 and 10: de la matriz A = ⎡ ⎢ ⎣ 4 −1
- Page 11 and 12: R=chol(A) ??? Error using ==> chol
- Page 13 and 14: 4. Errores numéricos al aplicar el
3.1. La factorización LU<br />
La or<strong>de</strong>n para calcular la factorización LU <strong>de</strong> la matriz A es lu. Sólo<br />
requiere un dato que es la propia matriz A, pero se le pue<strong>de</strong>n pedir como<br />
resultado una, dos o tres matrices.<br />
Si se pi<strong>de</strong>n tres matrices ([L, U, P] = lu(A)), L es una matriz triangular<br />
inferior <strong>con</strong> unos en la diagonal principal, U es triangular superior y P<br />
es una matriz <strong>de</strong> permutación tal que P A = LU. Para resolver (1) se pue<strong>de</strong><br />
utilizar la or<strong>de</strong>n U\(L\(P*b)).<br />
Si se le pi<strong>de</strong>n dos matrices ([L, U] = lu(A)), L es una matriz psicológicamente<br />
2 triangular inferior, en realidad es el producto <strong>de</strong> la inversa <strong>de</strong> la<br />
matriz <strong>de</strong> permutación que se ha aplicado por la matriz triangular inferior<br />
que proporciona la factorización, y U es triangular superior. Se pue<strong>de</strong><br />
resolver (1) <strong>con</strong> las ór<strong>de</strong>nes U\(L\b).<br />
Por último si sólo se pi<strong>de</strong> una matriz se obtiene una matriz <strong>con</strong> los<br />
elementos no nulos <strong>de</strong> U y los no nulos y que no correspon<strong>de</strong>n a un uno <strong>de</strong><br />
la diagonal principal <strong>de</strong> L. Esta matriz no es en realidad muy útil.<br />
Ejemplo 1 Vamos a utilizar la factorización LU para resolver un sistema<br />
<strong>de</strong> <strong>ecuaciones</strong> <strong>lineales</strong><br />
» A=[3 -1 2 4; 2 0 -1 3; 7 2 1 4; 0 -1 2 3];<br />
» b=[2 -1 3 9]’;<br />
» [L,U]=lu(A)<br />
L =<br />
U =<br />
0.42857 1 0 0<br />
0.28571 0.30769 1 0<br />
1 0 0 0<br />
0 0.53846 -0.65217 1<br />
7 2 1 4<br />
0 -1.8571 1.5714 2.2857<br />
0 0 -1.7692 1.1538<br />
0 0 0 2.5217<br />
2 Según la ayuda <strong>de</strong> MATLAB<br />
4