Upload
rocio-toro-rivero
View
228
Download
0
Embed Size (px)
Citation preview
PRECONDICIONAMIENTOPRECONDICIONAMIENTO
Teoría y AplicacionesTeoría y Aplicaciones
Dr. Pablo Barrera Sánchez
Mat. Luis Alberto Vázquez Maison
Facultad de Ciencias, UNAM
Laboratorio de cómputo científicoLaboratorio de cómputo científico
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
La solución de sistemas lineales
Ax b
Aparece en diversos campos del computo científico
Solución de Ecuaciones Diferenciales Parciales (EDP)Métodos clásicos:
Tipo SOR (Jacobi, Gauss-Sidel)
Elim. Gaussiana (Fact. LU, Choleski)
Métodos de Krylov (no tan clásicos):
GMRES, GC, BiGCStab
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
Métodos clásicos: Costo computacional alto
Métodos de Krylov: Convergencia lenta
Sistemas sparse de dimensión grande
N = 500, 5000 ,10000, 30000, ...
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
Es un operador Es un operador M M tal que uno de los tal que uno de los siguientes sistemas es “fácil” de resolver:siguientes sistemas es “fácil” de resolver:
Ax b
Un precondicionador para el Un precondicionador para el sistemasistema
1 1M Ax M b 1 1AM u b x M u
1 1 1
2 1 1
1 2
M AM u b x M u
M M M
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
Problema General: Determinar un Problema General: Determinar un operador operador MM tal que: tal que:
1 1M Ax Ix M b M A
2) La construcción y almacenaje de M
son económicos
3) El sistema
Mu x es mas fácil que
Ax b
1)
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
Posibles formas para M
Diagonales de Diagonales de A
Factorización de Factorización de A
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
Algunos ejemplosAlgunos ejemplos
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
EDPEDP
cos( ) , , 102
Div x Grad U x y U x y
( , )x y
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
El efecto “visible” de un El efecto “visible” de un precondicionador es el de disminuir el precondicionador es el de disminuir el número de iteraciones necesarias para número de iteraciones necesarias para que un método de solución converjaque un método de solución converja
El efecto “oculto” es el de cambiar El efecto “oculto” es el de cambiar las propiedades de los eigenvalores las propiedades de los eigenvalores de de A A para disminuir su condiciónpara disminuir su condición
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
0 50 100 150 200 250 300 350 400 450 500
100
102
104
106
108
1010
2.4 x 1012
Distribucion de los eigenvalores
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
Error relativo sin precondicionamiento 10e+0
Error relativo con precondicionamiento 10e-7
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
¿Cómo elegir un buen precondicionador?¿Cómo elegir un buen precondicionador?
¡¡ Buena pregunta !!
Analizar el sistema:
Propiedades de A
Estructura de A
¿Que representa?
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
Factorizaciones incompletas
Idea básica
Definir un conjunto de índices bajo una condición particular
, Condicion: |i jS
Aplicar factorización LU considerando :
, ,
, ,
0
0
i j i j
i j i j
l S
u S
Formas comunes para
S
, ,: |i j i jS a tol , ,: |i j i jS l tol
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
Llenado de una matrizLlenado de una matriz
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
,
,
1
1
,1 1
,
1 1
r rj jj Ap pj j
j j j j
j j j j
r rj jj r rj j
j j j j
x x p
r r Ap
p r p
Calcular
0 0;0 0
r b Ax p r
Para j=1,… ,
,
1
1
11 1
,1 1
,
1 1
r rj jj Ap pj j
j j j j
j j j j
j j
r zj jj r zj j
j j j j
x x p
r r Ap
z M r
p z p
Fin
Para j=1,…
Calcular
10 0 0 0; ;
0 0r b Ax p r z M r
Fin
GRADIENTE CONJUGADO
1)
2)2)
3)3)
4)
5)
4)
(3-a)
5)
1)
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
No necesariamente es una matriz
M
Un precondicionador puede darse como una rutina que resuelve el sistema
Mu x
Existen problemas donde el sistema de ecuaciones correspondiente no es construido explícitamente
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
, , ,Div a x y Grad U x y f x y
, ; , Conocidasa x y f x y
, [0,1] [0,1]x y
Discretizacion por diferencias finitas sobre una malla de dimensión N
La estructura de la matriz es conocida
El sistema no es construido explícitamente, es decir, no se tiene la matriz A
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
La ecuación que se desea resolver es de tipo Elíptico
La ecuación elíptica mas simple es la ecuación de PoissonLos sistemas lineales de ambas ecuaciones tienen estructuras similares
Se conocen técnicas muy eficientes para resolver la ecuación de poisson sobre un rectángulo, basadas principalmente en el uso de la transformada rápida de Fourier (Fast Poisson Solvers)
Una rutina de solución rápida de Poisson es un buen precondicionador para resolver el sistema correspondiente a una ecuación elíptica
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
, , ,Div a x y Grad U x y f x y
, 1.1 sen 3 5 ; , sen .5 cosa x y x y f x y x y
N=60 (3600 variables)
0 0.2 0.4 0.6 0.8 1
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
utilizando GC
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
0 0; ;0 0
r b Ax p r
,
,
1
1
11 1
,1 1
,
1 1
r rj jj Ap pj j
j j j j
j j j j
j j
r zj jj r zj j
j j j j
x x p
r r Ap
z M r
p z p
Calcular
Fin
GRADIENTE CONJUGADO
1)
2)
3)
4)
5)
(3-a)
,
,
1
1
1 1
,1 1
,
1 1
r rj jj Ap pj j
j j j j
j j j j
rj j
r zj jj r zj j
j j j j
x x p
r r Ap
z F
p z p
0 0rz F
Para j=1,…
10 0z M r 0)
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
xu FRutina de solución para un sistema particular : Mu x
Donde la matriz puede no ser conocida explícitamentePosibles rutinas:
•Solución de sistemas tridiagonales
•Sistemas triangulares (Substitución)
•Cualquier solución implícita
sea “Fácil” toma otro significado
Que Mu x
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
¿Posibles rutinas?:SOR (Métodos tradicionales)MultigridMétodos de Krylov
La solución es solo aproximada, cada vez que se llama a la rutina se obtiene una aproximación con diferente precisión
Mas de un precondicionador?
[email protected]: teoría y aplicacionesPrecondicionamiento: teoría y aplicaciones
GRACIAS