Ejemplo ilustrativo: Reduzca por filas la matriz
a una matriz triangular superior y después escriba A como un producto de una matriz triangular inferior y una matriz triangular superior.
Solución: Se procede como antes; sólo que esta vez no se dividen los elementos de la diagonal (pivotes) por sí mismos:
Usando las matrices elementales como en el ejemplo, se puede escribir:
o
Se ha escrito A como un producto de seis matrices elementales y una matriz triangular superior.
Sea L el producto de las matrices elementales. Debe verificar que
,que se trata de una matriz inferior con unos en la diagonal principal.
Después se puede escribir A = LU, donde L es triangular inferior y U es triangular superior. Los elementos de la diagonal de L son todos iguales a 1 y los elementos de la diagonal de U son los pivotes. Esta factorización se llama factorización LU de A.
El procedimiento utilizado en el ejemplo anterior se puede llevar a cabo mientras no se requieran permutaciones para poder reducir A a la forma triangular. Esto no siempre es factible.
En Scilab:
Se usa una función creada por drankez, llamada fact_LU, podemos obtener de manera automática las descomposición de A en L*U. La Función devuelve una estructura con las dos matrices m.L y m.U. Esta función usa básicamente eliminación gaussiana con la matriz A sin pivoteo.
De esta manera obtenemos la matriz L y U:
A=[ 2,3,2,4; 4,10,-4,0; -3,-2,-5,-2; -2,4,4,-7; ] m=fact_LU(A); disp('U') disp(m.U) disp('L') disp(m.L)
Verificamos los valores obtenidos:NOTA: Debemos ejecutar al mismo mismo ambos archivo factorizacionLU.sce y fact_LU.sce .. Para ello usamos el comando SAVE AND EXECUTE ALL. O Ejecutar la funcion fact_LU y luego la factorización.
AL final comprobamos que el producto L*U es la matriz A.
0 comments :
Publicar un comentario