You are on page 1of 6

Factorizacin LU de matrices cuadradas

Antes de comenzar a ver este tema convendra hacer un repaso de las nociones de
matrices:
Operaciones con matrices (Suma de matrices, producto por un escalar).
Matrices cuadradas, matriz inversa de una matriz.
Matriz fila, matriz columna.
Matriz diagonal, matriz triangular.

En concreto, sobre este ltimo aspecto tenemos:

a) Matriz diagonal:

d11 0 0 0

0 d 22 0 0
D
0 0 d33 0

0 0 0 d 44

b) Matriz triangular superior (Upper triangular):

u11 u12 u13 u14



0 u22 u23 u24
U
0 0 u33 u34

0 0 0 u44

c) Matriz triangular inferior (Lower triangular):

l11 0 0 0

l21 l22 0 0
L
l31 l32 l33 0

l41 l42 l43 l44

En los tres casos citados el determinante de la matriz es el producto de los elementos


de la diagonal.

Matriz estrictamente dominante diagonalmente.

Se dice que una matriz es estrictamente dominante diagonalmente si cumple:

n
aii aij
i 1
i j

Las matrices estrictamente dominantes diagonalmente son no singulares (su


determinante es no nulo), adems pueden resolverse por eliminacin gaussiana sin
intercambio de filas y por tanto pueden siempre factorizarse en la forma A = L.U.
Ejemplo de matriz estrictamente dominante diagonalmente:

6 2 1 1
2 4 1 0
A
1 1 4 1

1 0 1 3

Para una matriz cuadrada A es muy til descomponerla como producto de una matriz
triangular inferior por una triangular superior:

A=L.U

La factorizacin L.U de una matriz cuadrada tiene la siguiente ventaja:

Al operar con un sistema en la forma A . x = b, si expresamos A = L . U tendremos:

L.U.x=b

Y ahora podemos poner:

U . x = L-1. b

Y teniendo en cuenta que U es triangular y L-1 tambin es triangular, la solucin del


sistema se limita a:

a ) L1. b y
U . x L1. b
b) U . x y
Es decir, se resuelven dos sistemas triangulares (ms simple y exacto que resolver uno
no triangular): en a) se obtiene y, finalmente en b) se obtiene x.

La factorizacin LU de una matriz cuadrada A se podra hacer por el mtodo de Gauss


(consultar las pag. 173-174 de Curso de Mtodos Numricos de Virginia Muto), sin
embargo hay otros mtodos como el de Doolittle, el de Crout, y el de Cholesky.

l11 0 0 0 u11 u12 u13 u14



l l 0 0 0 u22 u23 u24
L.U 21 22
l31 l32 l33 0 0 0 u33 u34

l41 l42 l43 l44 0 0 0 u44
a11 a12 a13 a14
a a a23 a24
21 22
a31 a32 a33 a34

a41 a42 a43 a44
Observad arriba que conocida A, tendramos 16 ecuaciones con 20 incgnitas: lij,
uij, sin embargo, nosotros podemos dar cualquier valor a 4 de ellas. As hay dos mtodos
que se suelen utilizar: a) Mtodo de Doolittle: se toman los cuatro elementos de la
diagonal de L como 1, lii=1 . b) Mtodo de Crout: se toman los cuatro elementos de la
diagonal de Ucomo 1, uii=1.

Nosotros aqu seguiremos el mtodo de Doolittle, con un ejemplo. Sea dada A,


entonces es sencillo hallar L y U, sin ms que resolver un sistema:

u11 u12 u13 u14


0 u u23 u24
U 22
0 0 u33 u34

0 0 0 u44
1 0 0 0 6 2 1 1
l 0 0 2
1 4 1 0
L 21 A
l31 l32 1 0 1 1 4 1

l41 l42 l43 1 1 0 1 3

La forma de operar manualmente es:


- 1) Considerar el desarrollo de los elementos de la primera fila de A.
- 2) Considerar el desarrollo de los elementos de la primera columna de A.
- 3) Considerar el desarrollo de los elementos de la segunda fila de A.
- Etc. etc.

a1 j
Es decir, u11 6, u12 2, u13 1, u14 1 uij
l11
Ahora continuamos con:
a j1
l21u11 2, l31u11 1, l41u11 1 l j1
u11
1 1 1
As obtenemos: l21 , l31 , l41 .
3 6 6
Hasta ahora tenemos:

6 2 1 1
u u u23 u24
U 11 22
0 0 u33 u34
0 0 0 u44


1 0 0 0 6 2 1 1
1/ 3 1 0 2
0 4 1 0
L A
1/ 6 l32 1 0 1 1 4 1

1/ 6 l42 l43 1 1 0 1 3

Seguiramos con la siguiente fila de U:

1
l21u12 l22u22 a22 u22 (a22 l21u12 )
l22
1
l21u13 l22u23 a23 u23 (a23 l21u13 )
l22

En realidad para obtener la segunda fila de U sirve la siguiente frmula:

i 1
1
u2 j
l22
a 2j
k 1
l2 k ukj (j=1, , 4)

Para una fila i-sima de U servira:


i 1
1
uij aij lik ukj
lii k 1

De una manera anloga, la columna i-sima de L se calcula por la frmula:

i 1
1
l ji
uii
a ji
k 1
l jk uki

ALGORITMO DE FACTORIZACIN DE DOOLITTLE.

Entrada: Elementos de A. Tomaremos inicialmente L= eye(4), U = zeros(4).


Salida: Matrices L y U, producto L*U.

Paso 1: Para j = 1, , n tomar:


a
uij 1 j (primera fila de U).
l11
a
l j1 j1 (primera columna de L).
u11
Paso 2: Para i = 2, 3,, n-1 seguir paso 3.

Paso 3: Para j = i+1, , n tomar:

i 1
3-A: uii aii lik uki ;
k 1
i 1
4-A: uij aij lik ukj ;
k 1
i 1
1
5-A: l ji

uii
a ji
k 1
l jk uki ;

Paso 4: Para el ltimo trmino, un,n :

n 1
Tomar: unn ann lnk ukn
k 1

Paso 5: (Salida):
Desplegar L, U y L*U.
MTODO DE CHOLESKI

En el caso de que la matriz A, n x n, sea simtrica y definida positiva


(Xt . A . X > 0), entonces A admite una factorizacin en la forma A = L.Lt, siendo L
triangular inferior.

l11 0 0 0 l11 l21 l31 l41 a11 a12 a13 a14



l21 l22 0 0 0 l22 l32 l42 a21 a22 a23 a24
L.L
t

l31 l32 l33 0 0 0 l33 l43 a31 a32 a33 a34

l41 l42 l43 l44 0 0 0 l44 a41 a42 a43 a44

Los 10 elementos de L se obtienen a partir de los elementos conocidos de A:

Algoritmo de Choleski

Entrada: Matriz A, L = zeros(n)


Salida: Matriz A, Matriz L, Matriz producto L*Lt.

Paso 1: Tomar l11 a11

a j1
Paso 2: Para j = 2,, n tomar l j1 ,
l11

Paso 3: Para i = 2, , n-1 seguir los pasos 4 y 5.

i 1
Paso 4: Tomar lii aii lik2
k 1

Paso 5: Para j = i+1, , n tomar:


i 1
1
l ji a ji l jk lik
lii k 1

n 1
Paso 6: Tomar lnn ann lnk2
k 1

You might also like