Está en la página 1de 42

Typeset by GMNI & FoilT

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

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
FACTORIZACI

ON DE CHOLESKY A

= 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: Fundamentos Te oricos (I)


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

ON DE CROUT consiste en:


A

= 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

ON DE CROUT: Fundamentos Te oricos (IIa)


FUNCIONAMIENTO DEL M

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

ON DE CROUT: Fundamentos Te oricos (IIb)


Pretendemos factorizar (a partir de lo anterior)
A

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

ON DE CROUT: Fundamentos Te oricos (IIc)


Multiplicamos por cajas . . .
D
e
k+1
U
e
k+1
=
2
6
6
6
6
6
6
6
6
6
6
6
6
6
4
D
e
k
U
e
k
+
0
e z}|{

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

ON DE CROUT: Fundamentos Te oricos (IId)


Igualamos . . .
2
6
6
6
6
6
6
6
4
A
e
k
c
k+1

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

ON DE CROUT: Fundamentos Te oricos (IIe)


Por tanto . . .
1. El vector u
k+1
es la soluc on del sistema:
[L

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

ON DE CROUT: Fundamentos Te oricos (IIf)


4. Para k = 1:
A

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 CROUT: Fundamentos Te oricos (IIIa)


REALIZACI

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

ON DE CROUT: Fundamentos Te oricos (IIIb)


Notas:
1. Los sistemas [L

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 CROUT: Fundamentos Te oricos (IIIc)


REALIZACI

ON DE LOS C

ALCULOS (continuaci on)


2. SOLUCI

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 CROUT: Fundamentos Te oricos (IVa)


CONDICIONES DE EXISTENCIA
Por construcci on (unos en la diagonal principal), se cumple
det(L
e
k
) = det(U
e
k
) = 1 para k = 1, . . . , n.
Por tanto, basta con que se cumplan las condiciones
(
det(D
e
k
) = 0, k = 1, . . . , n 1 para que pueda realizarse la factorizaci on,
det(D
e
k
) = 0, k = n para que pueda realizarse la soluci on de sistemas.
Por otro lado,
A
e
k
= L
e
k
D
e
k
U
e
k
= det(A
e
k
) = det(L
e
k
) det(D
e
k
) det(U
e
k
) = det(D
e
k
) k.
Luego, las condiciones de existencia pueden expresarse en la forma
(
det(A
e
k
) = 0, k = 1, . . . , n 1 para que pueda realizarse la factorizaci on,
det(A
e
k
) = 0, k = n para que pueda realizarse la soluci on de sistemas.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI

ON DE CROUT: Fundamentos Te oricos (IVb)


En general, podemos armar que:
Si la matriz es REGULAR
h
det(A
e
) = 0
i
. . .
puede pasar que la factorizaci on exista; (
*
)
puede pasar que la factorizaci on NO exista; (
**
)
es pr acticamente imposible comprobar a priori la condici on de existencia anterior;
es sencillo (y RECOMENDABLE en todo caso) comprobar sobre la marcha que
d
11
= 0, d
k+1,k+1
= 0 para k = 1, . . . , n.
Aunque la matriz sea SINGULAR
h
det(A
e
) = 0
i
. . .
puede pasar que la factorizaci on exista; (
*
)
pero no se podr a utilizar para resolver el sistema. (
***
)
(
*
) Esto suceder a cuando det(A
e
k
) = 0, k = 1, . . . , n 1.
(
**
) Esto suceder a cuando no se cumpla la condici on anterior. Por ejemplo, cuando a
11
= 0.
Al igual que en el M etodo de Gauss, estos casos requieren PIVOTAMIENTO (intercambio de las y/o columnas).
El problema es que el pivotamiento casa mal con los almacenamientos en banda y en perl.
(
***
) Porque el sistema no tiene soluci on y el algoritmo fallar a al resolver D
e
y = z .
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI

ON DE CROUT: Fundamentos Te oricos (IVc)


Un caso importante es el de las MATRICES DEFINIDAS:
A
e
DEFINIDA = det(A
e
k
) = 0, k = 1, . . . , n.
Luego, si A

es DEFINIDA (positiva o negativa)


puede realizarse la factorizaci on y
puede realizarse la soluci on de sistemas.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI

ON DE CROUT: Algoritmos (I)


1. 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 CROUT: Algoritmos (II)


2. SOLUCI

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

ON DE CROUT: Algoritmos (III)


2. SOLUCI

ON DE SISTEMAS: [Planteamiento Alternativo] (


*
)
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
; i = 1, . . . , n
x
j
= x
j
u
ji
x
i
; j = 1, . . . , i 1 ; i = n, . . . , 2, 1
(
*
) Este planteamiento es adecuado para matrices en banda y tambi en para matrices en perl.
Obs ervese que el bucle interno de la ultima expresi on barre ahora la matriz U
e
por columnas.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI

ON DE CROUT: Algoritmos (IV)


Es f acil comprobar que
podemos almacenar L

, 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 CROUT: Programaci on (I)


1. 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 CROUT: Programaci on (II)


2. SOLUCI

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 CROUT: Programaci on (III)


2. SOLUCI

ON DE SISTEMAS: [Planteamiento Alternativo] (


*
)
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
j
b
j
a
ji
b
i
; j = 1, . . . , i 1 ; i = n, . . . , 2, 1
(
*
) Este planteamiento es adecuado para matrices en banda y tambi en para matrices en perl.
Obs ervese que el bucle interno de la ultima expresi on barre ahora la parte superior de la matriz A
e
por columnas.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI

ON DE CROUT: Adaptaci on a Banda y Perl (I)


Se conservan los semianchos de banda inferior y superior:
Se conservan los perles inferior (por las) y superior (por columnas):
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI

ON DE CHOLESKY: Fundamentos Te oricos (I)


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

ON DE CHOLESKY consiste en:


A

= 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

ON DE CHOLESKY: Fundamentos Te oricos (IIa)


FUNCIONAMIENTO DEL M

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

ON DE CHOLESKY: Fundamentos Te oricos (IIb)


Por tanto . . .
1-2. El vector

l
k+1
es la soluc on del sistema:
[L

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

ON DE CHOLESKY: Fundamentos Te oricos (IIc)


4. Para k = 1:
A

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 CHOLESKY: Fundamentos Te oricos (IIIa)


REALIZACI

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

ON DE CHOLESKY: Fundamentos Te oricos (IIIb)


Notas:
1. Los sistemas [L

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 CHOLESKY: Fundamentos Te oricos (IIIc)


REALIZACI

ON DE LOS C

ALCULOS (continuaci on)


2. SOLUCI

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 CHOLESKY: Fundamentos Te oricos (IV)


CONDICIONES DE EXISTENCIA
Son las mismas que en el caso de la Factorizaci on de CROUT.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI

ON DE CHOLESKY: Algoritmos (I)


1. 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 CHOLESKY: Algoritmos (II)


2. SOLUCI

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

ON DE CHOLESKY: Algoritmos (III)


2. SOLUCI

ON DE SISTEMAS: [Planteamiento Alternativo] (


*
)
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
; i = 1, . . . , n
x
j
= x
j
l
ij
x
i
; j = 1, . . . , i 1 ; i = n, . . . , 2, 1
(
*
) Este planteamiento es adecuado para matrices en banda y tambi en para matrices en perl.
Obs ervese que el bucle interno de la ultima expresi on barre ahora la matriz L
e
por las.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI

ON DE CHOLESKY: Algoritmos (IV)


Es f acil comprobar que
podemos almacenar L

Y D

sobre la parte inferior de A

;
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 CHOLESKY: Programaci on (I)


1. 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 CHOLESKY: Programaci on (II)


2. SOLUCI

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 CHOLESKY: Programaci on (III)


2. SOLUCI

ON DE SISTEMAS: [Planteamiento Alternativo] (


*
)
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
j
b
j
a
ij
b
i
; j = 1, . . . , i 1 ; i = n, . . . , 2, 1
(
*
) Este planteamiento es adecuado para matrices en banda y tambi en para matrices en perl.
Obs ervese que el bucle interno de la ultima expresi on barre ahora la parte inferior de la matriz A
e
por las.
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI

ON DE CHOLESKY: Adaptaci on a Banda y Perl (I)


Se conservan los semianchos de banda inferior y superior:
Se conservan los perles inferior (por las) y superior (por columnas):
UNIVERSIDAD DE A CORU NA GRUPO DE M ETODOS NUM ERICOS EN INGENIERIA
FACTORIZACI

ON DE CHOLESKY: Adaptaci on a Banda y Perl (IIa)


1. 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 CHOLESKY: Adaptaci on a Banda y Perl (IIb)


2. SOLUCI

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

También podría gustarte