NOTES DE COURS
PRECONDITIONNEMENT
1 G´en´eralit´es
Consid´erons un syst`eme lin´eaire
Au =b, (1)
o`u Aest une matrice carr´ee inversible d’ordre n.
Etant donn´e une matrice Minversible d’ordre n, le syst`eme
M1Au =M1b, (2)
admet la mˆeme solution que (1). On dira que Mest la matrice de pr´econditionnement
associ´ee au syst`eme pr´econditionn´e (2).
La convergence d’une m´ethode it´erative d´ependra beaucoup des propri´et´es spectrales
de la nouvelle matrice M1Aam´eliorant celles de A. Dans la pratique, on ne calcule
pas la matrice inverse M1. En fait, dans les m´ethodes it´eratives de type Krylov, on
a seulement besoin de connaˆıtre le produit matrice-vecteur. Lorsque le syst`eme est
pr´econditionn´e, l’op´eration matrice-vecteur correspond `a
w=M1Av Mw =Av.
Par cons´equent, il faut pouvoir r´esoudre facilement le syst`eme
Mw =c.
Comment choisir un pr´econditionnement est une question fort d´elicate qui, `a ce jour,
n’a pas de solution universelle. Par contre, on peut donner quelques id´ees directrices
qui nous guideront dans l’´elaboration d’un bon pr´econditionneur.
Il y a deux cas extrˆeme :
M=A.
Dans ce cas, la convergence est imm´ediate mais peu utile car aussi difficile `a r´esoudre
que le probl`eme original.
M=I
Dans ce cas, on ne fait rien. La convergence n’est pas acc´el´er´ee.
De ces observations, on retiendra les faits suivants :
1
1. Mdoit ˆetre le plus pr`es possible de A, c’est-`a-dire ;
Sp(M1A)
=Sp(I),
||M1AI||2< ,
2. On doit respecter la structure de la matrice, par exemple, le fait que Asoit
sym´etrique.
3. Le stockage de Mne devrait pas exc´eder de beaucoup celui de A.
4. D’apr`es l’´etude de la convergence des m´ethode it´eratives de type Krylov, un
bon choix d’un pr´econditionneur Mdoit satisfaire les conditions :
la matrice M1Adoit ˆetre presque normale,
les valeurs propres de M1Adoivent ˆetre regroup´ees.
2 Pr´econditionnement :
Pr´econditionnement `a gauche
On dira que Mest une matrice de pr´econditionnement `a gauche si le syst`eme original
(1) est transform´e sous la forme :
M1Au =M1b.
Pr´econditionnement `a droite :
De mani`ere analogue, on dira que Mest une matrice de pr´econditionnement `a droite
si le syst`eme (1) est transform´e sous la forme :
AM1y=b.
Dans ce cas, la solution s’obtient en posant :
u=M1y.
Pr´econditionnement `a gauche et `a droite :
En principe, on peut combiner ces deux types de pr´econditionnement. Il s’agira d’avoir
deux matrices inversibles MGet MDet d’´ecrire le syst`eme (1) sous la forme
M1
GAM1
Dy=M1
Gb.
2
En g´en´eral, on utilise un pr´econditionnement `a gauche. Mais il y a un cas tr`es impor-
tant o`u ce type de pr´econditionnement est n´ecessaire.
Supposons que la matrice Asoit sym´etrique et d´efinie-positive. Dans cette ´eventualit´e,
on voudrait utiliser la m´ethode du gradient conjugu´e qui est adapt´ee `a cette situation.
Mais, le choix d’un pr´econditionnement `a gauche d´etruit cette propri´et´e de sym´etrie.
Dans ce cas, on construit de la mani`ere suivante le pr´econditionneur.
Soit Mune matrice sym´etrique et d´efinie-positive. Cette matrice admet une factori-
sation de Cholesky
M=CCt.
Le syst`eme original peut s’´ecrire :
Au =b,
C1ACtCtu=C1b,
C1ACty=C1b,
avec y=Ctuou encore u=Cty.
Or la nouvelle matrice du syst`eme pr´econditionn´e C1ACtest aussi sym´etrique et
d´efinie-positive. De plus :
C1ACtCtC1A=M1A.
Donc les spectres sont ´egaux :
Sp(C1ACt) = Sp(M1A).
3 Types de pr´econditionnement
3.1 Pr´econditionnement par les m´ethodes classiques it´eratives
Supposons que la matrice Aadmet la d´ecomposition suivante
A=MN,
o`u Mest inversible.
Le syst`eme lin´eaire Au =bpeut s’´ecrire :
Au =b,
Mu =Nu +b,
u=M1Nu +M1b,
(IM1N)u=M1b.
3
Les m´ethodes it´eratives classiques telles que les m´ethodes de Jacobi, Gauss-Seidel et
relaxation sont toutes bas´ees sur ce type de d´ecomposition et s’´ecrivent :
uk+1 =M1Nuk+M1b
ou encore
M(uk+1 uk) = bAuk.
Or M1N=IM1A. Par cons´equent, ceci signifie qu’une m´ethode it´erative clas-
sique converge vers la solution d’un probl`eme pr´econditionn´e de la forme
M1Au =M1b.
Autrement dit, la matrice Mest une matrice de pr´econditionnement du syst`eme
lin´eaire Au =b.
Voici une liste de pr´econditionnement bas´ee sur cette id´ee. On utilisera la d´ecomposition
A=DEFtelle que d´efinie dans le chapitre sur les m´ethodes it´eratives classiques.
1. Jacobi :
M=D= la diagonale de la matrice A
2. SOR :
M=DωE
On obtient le pr´econditionnement Gauss-Seidel avec ω= 1. En g´en´eral, si la
matrice Aest sym´etrique, la matrice Mne l’est pas. Pour cette raison, on pr´ef`ere
utiliser le pr´econditionnement SSOR.
3. SSOR :
M= (DωE)D1(DωF )
On notera que, si Aest sym´etrique, la matrice Ml’est aussi car F=Et. Donc, ce
type de pr´econditionnement serait adapt´e `a l’algorithme du gradient conjugu´e.
4. SGS : Ce type de pr´econditionnement est obtenu `a partir de SSOR en posant
ω= 1.
4
Remarques :
On notera que l’inversion de Mse fait uniquement par des descentes et remonees tri-
angulaires. Le pr´econditionnement SSOR peut aussi ˆetre interpr´et´e comme une ´etape
de l’algorithme de relaxation dans le sens ordinaire suivi d’une ´etape de relaxation
dans le sens contraire, i.e. xn, xn1, . . . , x1.
3.2 Pr´econditionnement par factorisation incompl`ete
Voir le document s´epar´e.
4 M´ethode GMRES pr´econditionn´e
Consid´erons le syst`eme lin´eaire Au =bpr´econditionn´e par la matrice M, i.e.
M1Au =M1b.
Par d´efinition, l’algorithme GMRES pr´econditionn´e est la m´ethode GMRES appliqu´ee
au syst`eme
M1Au =M1b.
Etant donn´e un vecteur u0, on d´efinit le r´esidu pr´econditionn´e par
r0=M1(bAu0).
En pr´esence de pr´econditionnement, l’espace de Krylov correspond `a
Km=Km(M1A, r0) = [r0, M1Ar0,(M1A)2r0,...,(M1A)m1r0].
L’algorithme GMRES appliqu´e `a un syst`eme pr´econditionn´e, consiste `a chercher, `a
l’´etape m, une approximation umde la solution dans u0+Kmminimisant le r´esidu
pr´econditionn´e
||rm|| =||M1(bA(um))|| = min
vKm
||M1(bA(u0+v))||.
Voici l’algorithme GMRES pr´econditionn´e
1. Evaluer le r´esidu initial r0=M1(bAu0), β=||r0||2et poser v1=r0.
2. Pour j= 1, . . . , m faire :
3. Calculer w=M1Avj
4. Pour i= 1, . . . , j, faire :
5
1 / 6 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !