Documentos de Académico
Documentos de Profesional
Documentos de Cultura
FactorizacionesCrout Cholesky
FactorizacionesCrout Cholesky
E
X
FACTORIZACIONES DE CROUT Y DE CHOLESKY
F. Navarrina, I. Colominas, H. G omez, J. Pars, M. Casteleiro
GMNI GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
Departamento de M etodos Matem aticos y de Representaci on
Escuela T ecnica Superior de Ingenieros de Caminos, Canales y Puertos
Universidad de A Coru na, Espa na
e-mail: fnavarrina@udc.es
p agina web: http://caminos.udc.es/gmni
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
INDICE
FACTORIZACI
ON DE CROUT A
= L
= L
T
Fundamentos te oricos. Condiciones de existencia
Algoritmos de factorizaci on y de soluci on de sistemas
Programaci on. Almacenamiento de los resultados sobre los datos
Adaptaci on para almacenamientos en banda y perl
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE CROUT [A
= L
]
Sea el problema
A
x =
b con A
=
_
_
a
11
a
12
a
1n
a
21
a
22
a
2n
.
.
.
.
.
.
.
.
.
.
.
.
a
n1
a
n2
a
nn
_
_
, x =
_
_
x
1
x
2
.
.
.
x
n
_
_
,
b =
_
_
b
1
b
2
.
.
.
b
n
_
_
.
La FACTORIZACI
= L
= L
z
..
D
x
..
y
=
b =
_
_
L
z =
b,
y = z,
x = y.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ETODO
Supongamos que ya hemos factorizado
A
k
= L
k
D
k
U
k
, con A
k
=
_
a
11
a
1k
.
.
.
.
.
.
.
.
.
a
k1
a
kk
_
,
siendo
L
k
=
_
l
11
0
.
.
.
.
.
.
l
k1
l
kk
_
, D
k
=
_
d
11
0
.
.
.
0 d
kk
_
, U
k
=
_
u
11
u
1k
.
.
.
.
.
.
0 u
kk
_
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
k+1
= L
k+1
D
k+1
U
k+1
, con A
k+1
=
_
_
A
k
c
k+1
f
T
k+1
a
k+1,k+1
_
_
,
de forma que
L
e
k+1
=
2
6
6
6
6
6
6
6
4
L
e
k
0
l
T
k+1
l
k+1,k+1
3
7
7
7
7
7
7
7
5
, D
e
k+1
=
2
6
6
6
6
6
6
6
4
D
e
k
0
0
T d
k+1,k+1
3
7
7
7
7
7
7
7
5
, U
e
k+1
=
2
6
6
6
6
6
6
6
6
6
4
U
e
k
u
k+1
0
T u
k+1,k+1
3
7
7
7
7
7
7
7
7
7
5
.
donde
c
k+1
=
8
<
:
a
1,k+1
.
.
.
a
k,k+1
9
=
;
, u
k+1
=
8
<
:
u
1,k+1
.
.
.
u
k,k+1
9
=
;
,
f
T
k+1
= [ a
k+1,1
a
k+1,k
] ,
l
T
k+1
= [ l
k+1,1
l
k+1,k
] .
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
0
0
T
D
e
k
u
k+1
+
0
z }| {
0 u
k+1,k+1
0
T
U
e
k
| {z }
0
T
+ d
k+1,k+1
0
T
| {z }
0
T
0
T
u
k+1
| {z }
0
+ d
k+1,k+1
u
k+1,k+1
3
7
7
7
7
7
7
7
7
7
7
7
7
7
5
.
L
e
k+1
`
D
e
k+1
U
e
k+1
=
2
6
6
6
6
6
6
6
6
6
6
6
6
6
4
L
e
k
D
e
k
U
e
k
+
0
e z}|{
0
0
T
L
e
k
D
e
k
u
k+1
+
0
z }| {
0 d
k+1,k+1
u
k+1,k+1
l
T
k+1
D
e
k
U
e
k
+ l
k+1,k+1
0
T
| {z }
0
T
l
T
k+1
D
e
k
u
k+1
+ l
k+1,k+1
d
k+1,k+1
u
k+1,k+1
3
7
7
7
7
7
7
7
7
7
7
7
7
7
5
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
f
T
k+1
a
k+1,k+1
3
7
7
7
7
7
7
7
5
=
2
6
6
6
6
6
6
6
4
L
e
k
D
e
k
U
e
k
L
e
k
D
e
k
u
k+1
l
T
k+1
D
e
k
U
e
k
l
T
k+1
D
e
k
u
k+1
+ l
k+1,k+1
d
k+1,k+1
u
k+1,k+1
3
7
7
7
7
7
7
7
5
,
lo que por cajas equivale a
_
_
A
k
= L
k
D
k
U
k
, [ HIP
OTESIS]
c
k+1
= L
k
D
k
u
k+1
,
f
T
k+1
=
l
T
k+1
D
k
U
k
,
a
k+1,k+1
=
l
T
k+1
D
k
u
k+1
+ l
k+1,k+1
d
k+1,k+1
u
k+1,k+1
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
k
D
k
] u
k+1
= c
k+1
.
2. El vector
l
k+1
es la soluc on del sistema:
_
U
T
k
D
l
k+1
=
f
k+1
.
3. Los coecientes l
k+1,k+1
, d
k+1,k+1
y u
k+1,k+1
verican:
l
k+1,k+1
d
k+1,k+1
u
k+1,k+1
= a
k+1,k+1
l
T
k+1
D
k
u
k+1
. (
*
)
(
*
) Donde
l
k+1
y u
k+1
se habr an calculado previamente.
Hay innitas descomposiciones posibles. Por convenio, se eligen (arbitrariamente) los valores:
l
k+1,k+1
= 1, u
k+1,k+1
= 1 = d
k+1,k+1
= a
k+1,k+1
l
T
k+1
D
e
k
u
k+1
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
1
= L
1
D
1
U
1
= l
11
d
11
u
11
= a
11
. (
*
)
5. Para k = n:
A
n
= A
= A
= L
con
_
_
L
= L
n
,
D
= D
n
,
U
= U
n
.
(
*
) Hay innitas descomposiciones posibles. Por convenio, se eligen (arbitrariamente) los valores:
l
11
= 1, u
11
= 1 = d
11
= a
11
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE LOS C
ALCULOS
1. FACTORIZACI
ON DE LA MATRIZ:
Asignar l
11
= 1, u
11
= 1,
d
11
= a
11
.
Para k = 1, . . . , n 1
_
_
Resolver
_
L
k
D
u
k+1
= c
k+1
,
_
U
k
T
D
l
k+1
=
f
k+1
.
Asignar l
k+1,k+1
= 1, u
k+1,k+1
= 1,
d
k+1,k+1
= a
k+1,k+1
l
T
k+1
D
k
u
k+1
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
k
D
k
] u
k+1
= c
k+1
se resuelven en dos fases:
L
k
v
k+1
..
D
k
u
k+1
= c
k+1
=
_
_
_
L
k
v
k+1
= c
k+1
,
k
u
k+1
= v
k+1
.
2. Los sistemas
_
U
T
k
D
l
k+1
=
f
k+1
se resuelven en dos fases:
U
T
k
m
k+1
..
D
l
k+1
=
f
k+1
=
_
_
_
U
T
k
m
k+1
=
f
k+1
,
l
k+1
= m
k+1
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE LOS C
ON DE SISTEMAS:
Resolver L
z =
b ,
D
y = z ,
U
x = y .
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE LA MATRIZ:
l
11
= 1, u
11
= 1
d
11
= a
11
DO k=1,n-1
u
i,k+1
= a
i,k+1
i1
X
j=1
l
ij
u
j,k+1
; i = 1, . . . , k
u
i,k+1
= u
i,k+1
/ d
ii
; i = 1, . . . , k
l
k+1,i
= a
k+1,i
i1
X
j=1
u
ji
l
k+1,j
; i = 1, . . . , k
l
k+1,i
= l
k+1,i
/ d
ii
; i = 1, . . . , k
l
k+1,k+1
= 1, u
k+1,k+1
= 1
d
k+1,k+1
= a
k+1,k+1
k
X
j=1
l
k+1,j
d
jj
u
j,k+1
ENDDO
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE SISTEMAS: (
*
)
z
i
= b
i
i1
X
j=1
l
ij
z
j
; i = 1, . . . , n
y
i
= z
i
/ d
ii
; i = 1, . . . , n
x
i
= y
i
n
X
j=i+1
u
ij
x
j
; i = n, . . . , 1, 1
(
*
) Este planteamiento es adecuado para matrices en banda pero inadecuado para matrices en perl
debido a que el bucle interno de la ultima expresi on (sumatorio) barre la matriz U
e
por las.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
, D
y U
sobre A
;
podemos almacenar z, y y x sobre
b;
As. . .
_
_
a
11
a
12
a
13
a
1n
a
21
a
22
a
23
a
2n
a
31
a
32
a
33
a
3n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
a
n1
a
n2
a
n3
a
nn
_
_
se transformar a en
_
d
11
u
12
u
13
u
1n
l
21
d
22
u
23
u
2n
l
31
l
32
d
33
u
3n
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
l
n1
l
n2
l
n3
d
nn
_
_
.
_
_
b
1
b
2
b
3
.
.
.
b
n
_
_
se transformar a en
_
z
1
z
2
z
3
.
.
.
z
n
_
_
se transformar a en
_
y
1
y
2
y
3
.
.
.
y
n
_
_
se transformar a en
_
x
1
x
2
x
3
.
.
.
x
n
_
_
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE LA MATRIZ:
DO k=1,n-1
a
i,k+1
a
i,k+1
i1
X
j=1
a
ij
a
j,k+1
; i = 2, . . . , k
a
i,k+1
a
i,k+1
/ a
ii
; i = 1, . . . , k
a
k+1,i
a
k+1,i
i1
X
j=1
a
ji
a
k+1,j
; i = 2, . . . , k
a
k+1,i
a
k+1,i
/ a
ii
; i = 1, . . . , k
a
k+1,k+1
a
k+1,k+1
k
X
j=1
a
k+1,j
a
jj
a
j,k+1
ENDDO
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE SISTEMAS: (
*
)
b
i
b
i
i1
X
j=1
a
ij
b
j
; i = 2, . . . , n
b
i
b
i
/ a
ii
; i = 1, . . . , n
b
i
b
i
n
X
j=i+1
a
ij
b
j
; i = n1, . . . , 1, 1
(
*
) Este planteamiento es adecuado para matrices en banda pero inadecuado para matrices en perl
debido a que el bucle interno de la ultima expresi on (sumatorio) barre la parte superior de la matriz A
e
por las.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE CHOLESKY [A
= L
T
, A
sim etrica]
Sea el problema
A
x =
b con A
=
_
_
a
11
a
12
a
1n
a
22
a
2n
.
.
.
.
.
.
Sim. a
nn
_
_
, x =
_
_
x
1
x
2
.
.
.
x
n
_
_
,
b =
_
_
b
1
b
2
.
.
.
b
n
_
_
.
La FACTORIZACI
= L
T
= L
z
..
D
T
x
. .
y
=
b =
_
_
L
z =
b,
y = z,
T
x = y.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ETODO
Observamos que es un caso particular de la Factorizaci on de CROUT para
matrices sim etricas en el que
U
= L
T
.
Debido a la simetra se cumplir a
_
_
c
k+1
=
f
k+1
,
U
k
= L
T
k
,
u
k+1
=
l
k+1
,
u
k+1,k+1
= l
k+1,k+1
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
k
D
k
]
l
k+1
=
f
k+1
.
3. Los coecientes l
k+1,k+1
y d
k+1,k+1
verican:
l
k+1,k+1
d
k+1,k+1
l
k+1,k+1
= a
k+1,k+1
l
T
k+1
D
l
k+1
. (
*
)
(
*
) Donde
l
k+1
se habr a calculado previamente.
Hay innitas descomposiciones posibles. Por convenio, se eligen (arbitrariamente) los valores:
l
k+1,k+1
= 1 = d
k+1,k+1
= a
k+1,k+1
l
T
k+1
D
e
k
l
k+1
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
1
= L
1
D
1
L
T
1
= l
11
d
11
l
11
= a
11
. (
*
)
5. Para k = n:
A
n
= A
= A
= L
T
con
_
L
= L
n
,
D
= D
n
.
(
*
) Hay innitas descomposiciones posibles. Por convenio, se eligen (arbitrariamente) los valores:
l
11
= 1 = d
11
= a
11
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE LOS C
ALCULOS
1. FACTORIZACI
ON DE LA MATRIZ:
Asignar l
11
= 1,
d
11
= a
11
.
Para k = 1, . . . , n 1
_
_
Resolver
_
L
k
D
l
k+1
=
f
k+1
.
Asignar l
k+1,k+1
= 1,
d
k+1,k+1
= a
k+1,k+1
l
T
k+1
D
l
k+1
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
k
D
k
]
l
k+1
=
f
k+1
se resuelven en dos fases:
L
k
m
k+1
..
D
l
k+1
=
f
k+1
=
_
_
_
L
k
m
k+1
=
f
k+1
,
l
k+1
= m
k+1
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE LOS C
ON DE SISTEMAS:
Resolver L
z =
b ,
D
y = z ,
L
T
x = y .
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE LA MATRIZ:
l
11
= 1,
d
11
= a
11
DO k=1,n-1
l
k+1,i
= a
k+1,i
i1
X
j=1
l
ij
l
k+1,j
; i = 1, . . . , k
l
k+1,i
= l
k+1,i
/ d
ii
; i = 1, . . . , k
l
k+1,k+1
= 1,
d
k+1,k+1
= a
k+1,k+1
k
X
j=1
l
k+1,j
d
jj
l
k+1,j
ENDDO
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE SISTEMAS: (
*
)
z
i
= b
i
i1
X
j=1
l
ij
z
j
; i = 1, . . . , n
y
i
= z
i
/ d
ii
; i = 1, . . . , n
x
i
= y
i
n
X
j=i+1
l
ji
x
j
; i = n, . . . , 1, 1
(
*
) Este planteamiento es adecuado para matrices en banda pero inadecuado para matrices en perl
debido a que el bucle interno de la ultima expresi on (sumatorio) barre la matriz L
e
por columnas.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
Y D
;
podemos almacenar z, y y x sobre
b;
As. . .
_
_
a
11
a
21
a
22
a
31
a
32
a
33
.
.
.
.
.
.
.
.
.
.
.
.
a
n1
a
n2
a
n3
a
nn
_
_
se transformar a en
_
d
11
l
21
d
22
l
31
l
32
d
33
.
.
.
.
.
.
.
.
.
.
.
.
l
n1
l
n2
l
n3
d
nn
_
_
.
_
_
b
1
b
2
b
3
.
.
.
b
n
_
_
se transformar a en
_
z
1
z
2
z
3
.
.
.
z
n
_
_
se transformar a en
_
y
1
y
2
y
3
.
.
.
y
n
_
_
se transformar a en
_
x
1
x
2
x
3
.
.
.
x
n
_
_
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE LA MATRIZ:
DO k=1,n-1
a
k+1,i
a
k+1,i
i1
X
j=1
a
ij
a
k+1,j
; i = 2, . . . , k
a
k+1,i
a
k+1,i
/ a
ii
; i = 1, . . . , k
a
k+1,k+1
a
k+1,k+1
k
X
j=1
a
k+1,j
a
jj
a
k+1,j
ENDDO
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE SISTEMAS: (
*
)
b
i
b
i
i1
X
j=1
a
ij
b
j
; i = 2, . . . , n
b
i
b
i
/ a
ii
; i = 1, . . . , n
b
i
b
i
n
X
j=i+1
a
ji
b
j
; i = n1, . . . , 1, 1
(
*
) Este planteamiento es adecuado para matrices en banda pero inadecuado para matrices en perl
debido a que el bucle interno de la ultima expresi on (sumatorio) barre la parte inferior de la matriz A
e
por columnas.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE LA MATRIZ: (
*
)
DO k=1,n-1
a
k+1,i
a
k+1,i
i1
X
j=max{i(i),(k+1)(k+1)}
a
ij
a
k+1,j
; i = [(k+1)(k+1)+1], . . . , k
a
k+1,i
a
k+1,i
/ a
ii
; i = [(k+1)(k+1)], . . . , k
a
k+1,k+1
a
k+1,k+1
k
X
j=(k+1)(k+1)
a
k+1,j
a
jj
a
k+1,j
ENDDO
(
*
) (i) es el semiancho de banda inferior de la la i.
Este valor indica que el primer elemento no nulo de la la i es el coeciente a
i,i(i)
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI
ON DE SISTEMAS: (
*
)
b
i
b
i
i1
X
j=i(i)
a
ij
b
j
; i = 2, . . . , n
b
i
b
i
/ a
ii
; i = 1, . . . , n
b
j
b
j
a
ij
b
i
; j = [i(i)], . . . , i1 ; i = n, . . . , 2, 1
(
*
) (i) es el semiancho de banda inferior de la la i.
Este valor indica que el primer elemento no nulo de la la i es el coeciente a
i,i(i)
.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA