Explora Libros electrónicos
Categorías
Explora Audiolibros
Categorías
Explora Revistas
Categorías
Explora Documentos
Categorías
b, Ax =
con
Se pretende resolver mediante un metodo semi-iterativo este problema teniendo en cuenta: - El algoritmo debe ser preciso y robusto. - El algoritmo debe permitir el calculo en paralelo.
ww w.
at
em
at ic
ww
w.
at
em
at ic
x = xo +
a1
.c
om
Entonces:
con = x xo obtenemos
(o AV y , w) = 0, r
ww
w.
at
(o A, w) = 0 r
em
at ic
a1
x = xo + V y
Del mismo modo para 2); si A es una matriz cualquiera, el metodo de proyeccion tambien presenta propiedades de minimizacion del residuo. De ah el nombre del Metodo GMRES (Generalized Mininum RESidual). La demostracion se puede encontrar en las pag. 135-138 Saad2003.
ww
w.
Se puede demostrar para 1) que si A es simetrica y denida positiva el metodo de proyeccion presenta propiedades de minimizacion del residuo (Gradientes Conjugados). (Veanse los apuntes del Metodo PCG)
at
em
at ic
a1
GMRES
.c om
at
em
at ic
a1
Axm Lm b
.c
om
siendo ro = Axo. Los diferentes metodos sobre subespacios de Krylov b se eligen en funcion de Lm y del tipo de precondicionamiento utilizado. La solucion x se aproximara como:
A
1
b xm = xo + qm1(A)o r
ww
m1
ro
a1
.c
Km(A, v ) = span v , Av , A v , . . . , A
at ic
m1
Km es el subespacio de todos los vectores Rn que se pueden expresar como combinacion lineal de un polinomio de grado m 1
ww w.
at
em
q = xj
rij qi
ww
w.
at
em
at ic
a1
.c
om
Finalmente,
El Metodo de Gram-Schmidt equivale a una factorizacion QR, con Q ortonormal o unitaria. Este planteamiento es matematicamente exacto pero desde un punto de vista numerico propaga excesivamente los errores y no es recomendable. Para evitar, en parte, estos efectos se propone una formulacion alternativa: el Metodo de Gram-Schmidt modicado (MGS).
ww
w.
at
em
at ic
a1
.c
{rij }
om
at
em
at ic
a1
.c
om
ww
w.
Una transformacion de Householder es una transformacion (P ) que aplicada sobre un vector () nos proporciona el vector simetrico con respecto a un x hiperplano dado (P x).
at
em
at ic
~
a1
x
.c
Ortogonalizacion de Householder
om
Px
a1
.c
Pi =
em
...
at ic
at
1 . . . ... . . .
ww
w.
M
i1
Por lo tanto,
x 1 e w= x 1 e
ww
w.
escalar
at
e 2w w x = x 1
em
T
at ic
(I 2ww ) = 1 x e
a1
siendo un escalar
.c
om
at ic
a1
2( 1) x = ( 1) x e x e
.c
om
2 2 2
em
2 x 21 = x x
2 2
2 x e1 +
1
M
Habitualmente se toma:
ww w.
at
x
2 2
= signo(1) x
Por lo tanto,
w= x + signo(1) x 2e1 x + signo(1) x 2e1
2
siendo
ww
= P k1 . . . P 1X =
Asumamos ahora que hemos aplicado esta tecnica k 1 veces. Entonces obtendramos:
at
em
at ic
a1
e X 1e1 = 1
.c
om
x1,1
x1,2 x2,2
X k1
...
... ...
w.
ww
w.
at
em
wk =
z z 2
con zi =
at ic
a1
(1)
= signo((k )k ) x
i=k
(k )2 x i
ww
(k )i 2(wk )i = (k )i x x
w.
at
em
at ic
(w k )i = 0
a1
i < k
.c
om
para
i<k
para para
i>k i>k
ww
w.
at
j=k
em
(k )i = 2(wk )i x
(wk )j (k )j x
at ic
a1
.c
om
para
i>k
(2)
(k )i = x
i=1 i=1
(k )i x
+ ((I 2wk wk )k )k x
termino de la diagonal
n T
i=k
ww
2 (k )i = (k )k 2(wk )k x x
at
terminos no modicados
em
at ic
a1
om
2 (wk )j (k )j x
w.
j=k
(k )i x (k )k (wk )k x (wk )i
para
i>k
(k )i = ((k )k (wk )k ) x x
i=k
a1 at ic
(wk )k = signo ((k )k ) x
donde:
.c
om
em
(k )2 + (k )k x i x
i=k
Por lo tanto, el vector z se obtiene tal y como se ha deducido de acuerdo con (1). Finalmente, se normaliza este vector z para aplicar la transformacion. Es importante destacar que para aplicar la transformacion de Householder no es necesario almacenar ni calcular las matrices P .
ww w.
at
x1,1
x1,2 x2,2
.c om
Por lo tanto, si P = P mP m1 . . . P 2P 1, P T contendra las primeras m columnas de la matriz Q de la factorizacion QR, de modo que:
X = QR
cuando m = n, donde las columnas de R son las columnas de X m y corresponden a una matriz triangular superior.
at
em
at ic
a1
Xm
...
em
T T T T
at ic
R O
Sea ahora E m una matriz de dimension m m cuyas m primeras las corresponden a una I mm. Entonces:
X = P E mR
ww
X =P
at
a1
at
em
at ic
a1
.c
om
at
em
at ic
a1
.c
om
at
em
at ic
a1
.c
om
=1
i=1 wj 2
En cada paso el algoritmo genera un nuevo vector de la base del subespacio de Krylov premultiplicando el vector v del paso anterior por la matriz A y luego genera a partir del este con el algoritmo de Gram-Schmidt un vector ortonormal a los anteriores que pertenece al subespacio de Krylov.
ww
w.
at
wj = Avj
hi,j vi
em
at ic
a1
.c
om
at
em
at ic
a1
.c
at
em
at ic
a1
.c
om
o lo que es lo mismo:
AV m = V m+1H m.
ww
w.
AV m = V mH m + wmem,
3) Se puede demostrar que cuando el algoritmo se detiene se habra obtenido el subespacio de Krylov de grado mnimo capaz de representar todos los vectores v
ww
w.
El producto V T V m+1 da como resultado una matriz de dimension m m (m + 1) cuyas m primeras columnas corresponden a una matriz I mm y cuya columna m + 1 es una columna de ceros debido a las propiedades de ortogonalidad.
at
em
at ic
a1
.c
om
Este algoritmo cumple exactamente las mismas propiedades que el algoritmo original de Arnoldi. Ambos algoritmos son equivalentes desde un punto de vista analtico.
ww
w.
at
em
at ic
a1
.c
om
at
em
at ic
a1
.c
om
Qj = P j P j1 . . . P 1
Denimos ahora:
at
em
at ic
a1
.c
om
Pi =
ww
w.
at
P i hj = hj
em
at ic
Observese en este punto que las componentes j + 2, . . . , n de hj son nulas por construccion del metodo. Entonces:
a1
ij+2
.c
om
hj =
...
1 . . . i1 ... . . .
. . . 0 . . . 0
1 j+1 j+2 n
j = 1, . . . , m
donde [h0, h1, . . . , hm] es una matriz triangular superior de dimension n (m + 1) y Qm es una matriz unitaria (ortonormal). Denamos ahora H m como la matriz de dimension (m + 1) m obtenida como resultado de seleccionar las m + 1 primeras las de la matriz de dimension n m [h1, . . . , hm].
ww w.
at
em
at ic
a1
.c
om
Avj = Qj+1
i=1
hi,j ei
.c om
columna j de
ww
at
em
j+1
A vj =
i=1
at ic
Hm
hi,j Qj+1ei.
a1
ei =
1 . . . k1 ... . . .
ww
w.
at
em
at ic
0 . . . 0 1 0 . . . 0
a1
.c
om
i j + 1.
j+1
hi,j vi
i=1
j = 1, . . . , m,
at ic
a1
.c
om
escalar
ww
at
M. Gram-Schmidt
em
HouseHolder
T (2m2n) (m + 1)n
T (2m2n) (m + 1)n
1) Otra forma alternativa de plantear el problema consiste en aplicar las tecnicas propuestas en los metodos de proyeccion teniendo en cuenta que:
ww w.
es decir, aplicamos tecnicas de ortogonalizacion con respecto al subespacio Lm = AKm en las tecnicas de proyeccion.
at
em
W m = AV m ,
at ic
a1
J() = Ax y b
ww
w.
siendo V m una base ortonormal de vectores del espacio de Krylov e y un vector de coecientes de dimension m que permite expresar la aproximacion a la solucion como combinacion lineal de los vectores de la base. Denamos ahora:
at
em
at ic
2
= A(0 + V my ) b x
a1
.c
om
siendo = eT h0. 1
= 1 H my e
V T (1 H my ) 2 = V m+1(1 H my ) V m+1(1 H my ) = e e e 2 m+1 T = 1 H my V T V m+1 1 H my = 1 H my 2 e e e 2 m+1 I La aproximacion GMRES corresponde al unico xm x0 + Km que minimiza J(). Por lo tanto, y
xm = x0 + V mym
tal que
ww w.
a1
.c
om
A(0 + V y ) b x m
2 2
= V m+1(1 H my ) 2, e 2
at
em
at ic
ym
minimiza
J() y
es la aproximacion GMRES a la solucion del sistema de ecuaciones para un subespacio de Krylov de dimension m.
at
em
at ic
a1
.c
om
ww
w.
at
em
at ic
a1
donde
.c
om
at
em
at ic
a1
.c
om
La forma mas habitual de obtener este mnimo consiste en aplicar transformaciones matriciales al vector anterior que no modiquen la norma del resultado y que transformen la matriz de Hessemberg en una matriz triangular superior. Para ello aplicamos rotaciones matriciales en un plano.
ww
at
em
1 H my e
at ic
a1
.c
at ic
Ci Si
om
Si Ci 1
...
at
Por lo tanto, para eliminar el termino hi+1,i premultiplicamos por i por la izquierda. Para que la matriz sea ortonormal y se elimine el termino hi+1,i debe cumplirse que:
Ci = hi,i hi,i
2 () ()
ww
w.
i i+1
em
a1
.c
Si =
hi+1,i hi,i
2 ()
+ h2 i+1,i
+ h2 i+1,i
donde el () indica que ese termino es el resultado de aplicar una rotacion anterior correspondiente a la eliminacion de una la anterior (si existe).
= mn g m Rmy
siendo
Entonces, una vez obtenida la matriz triangular, el vector ym que minimiza la norma del residuo es el resultado de resolver el sistema triangular superior:
Rmym = gm,
siendo Rm la matriz de dimension m m obtenida como resultado de eliminar la la m + 1 de la matriz Rm y el vector gm se obtiene como resultado de eliminar la componente m + 1 del vector g m.
ww
w.
at
em
at ic
Rm = T m H m ,
a1
.c
om
g m = T m1, e
si bien el valor realmente importante es la norma de ese residuo, que se obtiene como:
A xm b
ww w.
at
em
2
Por lo tanto, una vez que se han aplicado triangularizaciones al residuo de modo que se triangulariza la matriz H m hasta la la m, se pueden calcular los coecientes de la triangularizacion para la la m + 1.
at ic
a1
= |m+1|
.c
om
w.
Si se realizan las operaciones de rotacion indicadas se puede obtener una ley de recurrencia que permite obtener la norma del residuo como:
at
em
at ic
a1
.c
om
= Sm rm
2.
Por lo tanto, partiendo de m = 0 y del residuo r0 se puede calcular la norma del residuo obtenido como resultado de aplicar el algoritmo GMRES ampliando en una unidad la dimension del subespacio de Krylov utilizado si necesidad de realizar el calculo de Axm. Ademas, cuando Sm = 0 se alcanza la solucion exacta del problema (si no tenemos en cuenta la propagacion de errores en las operaciones).
ww
w.
at
em
GMRES (m): Se reinicia el calculo cada m pasos con la ultima aproximacion a la solucion obtenida
at ic
a1
.c
om
at
em
at ic
a1
.c
rm
om
2.
Ax = b
ww
at
em
r=L
at ic
bL
a1
r=L
om
Ax = L
Ax
at
em
at ic
a1
i = 1, j + 1
.c
om
ww
w.
at
em
at ic
a1
.c
om
at
em
at ic
a1
.c
om
Ux = b
u
AU
om
u= b
A partir de este primer calculo no se trabajara ya con las variables u. La solucion aproximada para el problema precondicionado se obtendra como:
ww w.
at
Ax0 = AU 1u0 b b
em
at ic
En la practica nunca trabajaremos con la nueva solucion u salvo en el primer paso en el que calculamos el residuo como
um = u0 +
i=1
a1
m
.c
vii
siendo u0 = U x0.
xm = x0 + U
i v i .
El residuo del problema precondicionado coincide con el residuo del problema original. Esta es una diferencia importante con respecto al precondicionamiento por la izquierda.
ww
w.
at
em
at ic
a1
i=1
at
em
at ic
a1
i = 1, j + 1
.c
om
at
em
at ic
a1
.c
om
ww
at
em
at ic
a1
L
1
.c
om
AU
Ux = L
u
En este caso, el algoritmo se obtendra como la aplicacion de las dos tecnicas de precondicionamiento anteriores conjuntamente.
at
em
at ic
a1
.c
om
at
em
at ic
a1
.c
om
at
em
at ic
a1
.c
om