Méthode Numérique de Base

Télécharger au format docx, pdf ou txt
Télécharger au format docx, pdf ou txt
Vous êtes sur la page 1sur 44

M´ethodes num´eriques de base

Le but de ce chapitre est de fournir, de mani`ere succincte, les principes


de base des m´ethodes num´eriques les plus utilis´ees. Mˆeme si d´esormais le
premier contact avec les m´ethodes num´eriques ne se fait plus au travers
d’une programmation de ces m´ethodes dans les langages de bas-niveau, mais
plutoˆt par l’utilisation d’outils tels que Matlab, Scilab, Maple, Mathematica...
permettant la manipulation de concepts math´ematiques ´evolu´es, il reste
indispensable de connaˆıtre les fondements des principales m´ethodes pour
les utiliser de fac¸on pertinente.

1 R´esolution des ´equations du type f(x) = 0


Nous nous restreignons, par souci de simplicit´e, `a la recherche de
racines r´eelles, z´eros de fonctions r´eelles continues.
L’existence et une premi`ere localisation des solutions utilisent le th
´eor`eme des valeurs interm´ediaires.

Th´eor`eme 1.1 (Th´eor`eme des valeurs interm´ediaires) : Si f est une


fonction continue sur [a,b], et si f(a)f(b) ≤ 0, alors il existe au moins un point c ∈
[a,b] tel que f(c) = 0.

Si de plus f est strictement monotone sur [a,b], la racine est unique dans
[a,b].

Page 1 of 44
14

12

10

ï2

ï4

ï6
ï 1.5 ï1 ï 0.5 0 0.5 1 1.5

Figure III.1 – Fonction pr´esentant 3 racines.

1.1 M´ethode de dichotomie


La m´ethode de dichotomie est un proc´ed´e syst´ematique de raffinement
de la localisation d’une racine. Le mot dichotomie (dicho = deux, tomie =
coupe) exprime clairement le principe de la m´ethode.
Soit [a,b] un intervalle initial de localisation de la racine cherch´ee s.
Supposons que l’on ait f(a)f(b) < 0, l’algorithme de la dichotomie s’´ecrit :

Tant que( abs( b-a ) > epsilon) ! test d’arret m=(a+b)/2


si (f(a) * f(m)) < )
b=m ! s est dans [a,m]
sinon
a=m ! s est dans [m,b]
Fin si
Fin tant que
Cet algorithme r´eduit a` chaque pas l’amplitude de la localisation d’un
facteur 2. L’erreur est donc r´eduite d’un facteur 2 a` chaque it´eration. En 20
it´erations, par exemple l’erreur sera 10 −6 fois l’erreur initiale. Cette m´ethode
est relativement lente. Par contre elle converge dans tous les cas ou` la
fonction change de signe au voisinage de la racine (ce qui exclut les racines de

Page 2 of 44
multiplicit´es paires). C’est une m´ethode que nous qualifierons de m´ethode
tout-terrain, lente mais quasiment infaillible.

1.2 M´ethodes de point-fixe


Les m´ethodes de point-fixe permettent de construire des algorithmes
plus rapides que la dichotomie (parfois) mais surtout des algorithmes qui se
g´en´eralisent simplement au cas de probl`emes en dimension sup´erieure `a
un. On ram`ene l’´equation f(x) = 0 a` une ´equation ´equivalente de forme
point-fixe
x = g(x)
Ceci nous permettra d’obtenir simplement une m´ethode it´erative de la

forme x0 donn´e : initialisation

(III.1)
xn+1 = g(xn)

Si cette it´eration converge, elle converge vers le point-fixe de g, donc de

Figure III.2 – Forme f(x) = 0 et forme point-fixe ´equivalente d’une


´equation.

mani`ere ´equivalente vers le z´ero recherch´e de f. La condition de


convergence essentielle est une condition de contraction sur la fonction g.

Page 3 of 44
D´ef. 1.1 (Application contractante) : On dit qu’une application d´efinie de
[a,b] dans [a,b] est contractante, ou que c’est une contraction, s’il existe un
nombre 0 ≤ k < 1 tel que, pour tout couple de points distincts (x1,x2) de [a,b], on
ait :
|g(x1) − g(x2)| ≤ k|x1 − x2|

k est le facteur de contraction. Il donne la vitesse de convergence de l’it´eration.

Dans le cas ou` g est d´erivable, la condition de contraction se ram`ene `a la


condition suivante sur la d´eriv´ee : |g(x)| ≤ k < 1 ∀x ∈ [a,b]

Remarque 1.1 : Les notions de contraction et le th´eor`eme de convergence des


it´erations associ´e peuvent s’´ecrire et se d´emontrer dans le cadre g´en´eral
des espaces vectoriels norm´es (espaces de Banach). Cette possibilit´e de g´en
´eralisation tr`es large est un des int´erˆets principaux des m´ethodes de point-
fixe (voir la d´emonstration g´en´erale du th´eor`eme ??).

1.3 Vitesse de convergence et ordre d’une m´ethode it


´erative
Nous nous pla¸cons dans le cas d’une it´eration xn+1 = g(xn) convergente et
nous supposons la fonction g suffisamment d´erivable. L’application de la
formule de Taylor au voisinage de la racine s donne :

M´ethodes d’ordre un
Si g(s) = 0 , la limite du rapport des ´ecarts est :

L’´ecart au pas n+1 est donc du mˆeme ordre que l’´ecart au pas n. Le facteur
de r´eduction d’erreur est asymptotiquement donn´e par |g(s)|. Plus petite
sera la valeur de |g(s)|, plus vite se fera la convergence.

Page 4 of 44
M´ethodes d’ordre deux
Si g(s) = 0, l’erreur au pas n + 1 est un infiniment petit d’ordre ≥ 2 par rapport
`a l’erreur au pas n. On obtient en effet :

La convergence est dite quadratique. La r´eduction du nombre des it´erations


est spectaculaire d`es l’ordre 2. A partir d’une erreur de 0` .1, on obtient
10−8 en trois it´erations.
On peut essayer, pour chaque probl`eme particulier, de construire une it
´eration de point-fixe convergente. Il est ´evidemment plus int´eressant
d’utiliser des m´ethodes g´en´erales applicables pour toute ´equation f(x) = 0.
Voici une famille de m´ethodes classiques tr`es utiles dans la pratique.

1.4 M´ethode de Newton et Quasi-Newton


On obtient ´evidemment une forme point-fixe ´equivalente `a f(x) = 0 en
consid´erant la famille x = x − λ(x)f(x), avec λ d´efinie et non nulle sur un
intervalle [a,b] contenant la racine s. Parmi tous les choix possibles pour λ, le

choix qui conduit `a la convergence la plus rapide est d´eriv´ee de


f). La m´ethode obtenue ainsi est la m´ethode de Newton. Il est facile de
v´erifier que l’it´eration

(III.2)

est d’ordre deux si elle converge. Evidemment la m´ethode de Newton n’est´


plus efficace si f s’annulle, donc dans le cas de racines multiples. Il existe des r
´esultats de convergence globale de Newton. Ils supposent des hypoth`eses
de monotonie et de concavit´e de signe constant sur f (pas de point
d’inflexion). La m´ethode de Newton est tr`es classique. Elle s’interpr`ete g
´eom´etriquement comme m´ethode de la tangente.
La m´ethode de Newton n´ecessite le calcul des d´eriv´ees f(xn). C’est un
inconv´enient dans la pratique ou` l’on ne dispose pas toujours d’expression
analytique pour la fonction f.

Page 5 of 44
Figure III.3 – Interpr´etation g´eom´etrique de la m´ethode de Newton.

Une solution simple est fournie par la m´ethode de la s´ecante ou de


fausseposition dans laquelle on remplace le calcul de f(xn) par l’approximation

Ce qui donne

(III.3)
Les proc´edures de r´esolution d’´equations de type f(x) = 0 que l’on
trouve dans les outils g´en´eriques d’algorithmique (Matlab par exemple),
combinent en g´en´eral une premi`ere approche de la racine par quelques pas
de dichotomie, suivis, pour la convergence fine, par une m´ethode rapide afin
d’obtenir une grande pr´ecision en peu d’it´erations. L’algorithme propos´e
par Matlab est duˆ a` Dekker (1969). La m´ethode rapide utilis´ee est une
interpolation quadratique inverse, assurant l’ordre deux de convergence
(comme Newton), sans calcul de la d´eriv´ee de f.
1.5 M´ethode de Newton et Quasi-Newton pour les syst`emes
La m´ethode de Newton se g´en´eralise en dimension sup´erieure a` un. On
peut en effet montrer que le choix du n + 1e it´er´e xn+1 est tel que

Page 6 of 44
f(xn+1) = O(|xn+1 − xn|2)

En effet un d´eveloppement simple donne :

f(xn+1) = f(xn) + (xn+1 − xn)f(xn) + O(|xn+1 − xn|2) On voit donc

que le choix

assure bien f(xn+1) = O(|xn+1 − xn|2)

On retrouve ainsi l’ordre 2 de la m´ethode de Newton.


Dans le cas d’un syst`eme de N ´equations non-lin´eaires, on peut ´ecrire

F(Xn+1) = F(Xn) + F (Xn)(Xn+1 − Xn) + O(Xn+1 − Xn2)

la mˆeme id´ee conduit au choix suivant pour l’it´eration vectorielle :

Xn+1 = Xn − {F (Xn)}−1F(Xn) (III.4)

ou` F (Xn) d´esigne la matrice jacobienne de coefficients ).


Pratiquement le n+1e it´er´e est calcul´e a` chaque it´eration par r´esolution de
syst`emes lin´eaires

F (Xn)[Xn+1 − Xn] = −F(Xn) (III.5)

La matrice F (Xn) doit ˆetre assembl´ee et recalcul´ee et le syst`eme doit ˆetre r


´esolu a` chaque it´eration. Ceci rend la m´ethode de Newton tr`es couˆteuse
en temps de calcul.
Pour ´eviter ces inconv´enients, on utilise des m´ethodes dites de Quasi-
Newton dans lesquelles sont propos´ees des approximations de l’inverse de la
matrice Jacobienne. Une m´ethode classique et efficace de ce type est la m
´ethode BFGS (Broyden-Fletcher-Goldfarb-Shanno).

Page 7 of 44
1.5.1 Application `a l’optimisation
Dans un contexte d’optimisation, la recherche du minimum d’une
fonctionnelle J peut ˆetre ramen´ee a` la recherche du point qui annule son
gradient ∇J(x), x d´esignant la param´etrisation du probl`eme (voir chapitre
??). On pourra alors utiliser les m´ethodes de type Newton ou Quasi-Newton
(nous renvoyons `a la litt´erature pour les m´ethodes d’optimisation en
dimension un du type de la m´ethode de la section dor´ee qui ne n´ecessite
pas le calcul des d´eriv´ees). Ces m´ethodes demandent le calcul exact ou
approch´e de la matrice des d´eriv´ees partielles secondes ou matrice
Hessienne. La m´ethode BFGS permet de construire directement une
approximation de l’inverse de la
Hessienne H, en d´emarrant de la matrice identit´e (H0 = Id) et en appliquant
l’it´eration suivante :

Hp)T )γp
Hp+1 = Hp +
(III.6)

ou` p indique l’it´eration d’optimisation, δxp = xp − xp−1 la variation du param`etre


et γp = ∇J (xp+1)−∇J (xp). Voir chapitre ?? pour des d´eveloppements sur
l’optimisation.

2 Interpolation
Une collection de valeurs not´ees yi ´etant donn´ees pour un ensemble
d’abscisses xi, pour i = 0 `a n, l’interpolation est le proc´ed´e qui consiste a` d
´eterminer une fonction, d’une famille choisie a priori, prenant les valeurs
donn´ees aux abscisses correspondantes. Le choix de fonctions polynomiales
est le plus classique. Dans ce cas, le polynˆome d’interpolation est le
polynoˆme de degr´e minimal passant par les n + 1 points donn´es. Ce
polynoˆme est unique et il est de degr´e inf´erieur ou ´egal `a n. Si l’on exprime
le polynoˆme recherch´e dans la base canonique sous la forme

P(x) = a0 + a1x + a2x2 + ... + anxn

Page 8 of 44
on doit r´esoudre un syst`eme lin´eaire de n + 1 ´equations `a n + 1 inconnues.
Sous cette forme le calcul est donc couˆteux. La solution de ce syst`eme est
tr`es sensible aux erreurs d’arrondis.
1

0.8

0.6

0.4

0.2

ï 0.2

ï 0.4

ï 0.6

ï 0.8

ï1
ï5 ï4 ï3 ï2 ï1 0 1 2 3 4 5

Figure III.4 – Interpolation polynomiale de degr´e 10 pour une fonction


sinuso¨ıde.

2.1 Polynoˆmes de Lagrange


Une solution simple, ´el´egante et ´economique de ce probl`eme est
fournie par l’utilisation de la base des polynoˆmes de Lagrange.
On consid`ere les n + 1 polynˆomes Li de degr´e ≤ n qui v´erifient, pour tout i et
j compris entre 0 et n, les ´egalit´es :
Li(xi) = 1
(III.7)
Li(xj) = 0

Les polynˆomes Li sont d´etermin´es de fa¸con unique par les n + 1 ´equations


ci-dessus. Il est facile de montrer qu’ils forment une base de l’espace des
polynˆomes de degr´e inf´erieur ou ´egal a` n et qu’ils s’´ecrivent :

(III.8)

Page 9 of 44
Exprim´e dans cette nouvelle base, le polynoˆme d’interpolation s’´ecrit

) (III.9)
La relation ci-dessus, facile a` v´erifier, explique l’int´erˆet de la base de
Lagrange. Les coefficients du polynoˆme d’interpolation cherch´e sont, dans
cette base, tout simplement les valeurs yi donn´ees. Exprim´e autrement, le
changement de base, de la base canonique a` la base de Lagrange, a transform
´e le syst`eme a` r´esoudre en un syst`eme a` matrice identit´e.

2.2 Limites de l’interpolation polynomiale


L’interpolation polynomiale est la base de nombreuses techniques num
´eriques, en particulier les techniques d’int´egration approch´ee. Elle se g´en
´eralise de fa¸con naturelle aux cas de dimension sup´erieure `a un.
Cependant elle a des limites :
– th´eoriques : on n’est pas assur´e de la convergence du polynoˆme
d’inter-polation vers la fonction interpol´ee lorsque l’on fait tendre le
nombre de points d’interpolation (et donc le degr´e du polynoˆme) vers
l’infini (voir le ph´enom`ene de Runge pour la fonction );
– num´eriques : mˆeme dans le cas ou` la convergence th´eorique est as-
sur´ee, les instabilit´es de calcul provenant de l’accumulation des
erreurs d’arrondis, auxquelles le proc´ed´e d’interpolation polynomiale
est particuli`erement sensible, limite l’usage de cette technique d`es
que le nombre de points d’interpolation d´epasse la dizaine;

Page 10 of 44
2

1.5

0.5

ï 0.5
ï5 ï4 ï3 ï2 ï1 0 1 2 3 4 5

Figure III.5 – Divergence de l’interpolation polynomiale pour la fonction


. Ph´enom`ene de Runge. En pointill´es : la fonction, en traits pleins :
le polynˆome d’interpolation de degr´e 10 construit sur 11 points r
´eguli`erement espac´es.

– pratiques : remarquons que dans de nombreux cas, les valeurs donn


´eesr´esultent d’exp´eriences ou de calculs pr´ealables. Ces valeurs sont
donc approximatives. Le probl`eme r´eel n’est alors plus un probl`eme
d’interpolation, mais plutoˆt un probl`eme de meilleure approximation
pour lequel les m´ethodes de moindres carr´es, pr´esent´ees plus bas,
sont mieux adapt´ees.

2.3 Interpolation par des splines


Pour ´eviter l’inconv´enient, signal´e plus haut, de l’augmentation du degr
´e du polynoˆme et de l’instabilit´e qui en r´esulte, lorsque le nombre de
points est grand, tout en restant dans un proc´ed´e d’interpolation, on
subdivise l’ensemble des points donn´es en plusieurs sous-ensembles. On r
´ealise les interpolations sur ces petits sous-ensembles, ce qui permet de se
limiter `a des polynˆomes de bas degr´e. Les fonctions polynomiales par
morceaux obtenues sont `a la base des ´el´ements finis de Lagrange.
Les interpolations ci-dessus produisent des fonctions globalement
continues mais non continuˆment d´erivables.

Page 11 of 44
Les splines cubiques d’interpolation sont des fonctions cubiques par mor-

Figure III.6 – Une fonction affine par morceaux.

Figure III.7 – Une fonction polynomiale de degr´e deux par morceaux.

ceaux, globalement C2. On obtient leur expression analytique, segment par


segment, en imposant les conditions suivantes aux points xi d’interpolation
s(xi) = yi donn´e pour i = 0,..n, s et s continues

Les inconnues du probl`eme sont alors les d´eriv´ees secondes Ci de la spline


1

0.9

0.8

0.7

0.6

0.5

0.4

0.3

0.2

0.1

0
ï5 ï4 ï3 ï2 ï1 0 1 2 3 4 5

Figure III.8 – Spline cubique d’interpolation pour .

Page 12 of 44
aux points xi. On suppose la d´eriv´ee seconde de la spline affine par
intervalles. On int`egre deux fois en prenant en compte les conditions de
continuit´e de la d´eriv´ee et les valeurs donn´ees yi aux points xi. On en d
´eduit les expressions suivantes de la spline sur chaque intervalle [xi,xi+1] :

avec hi = xi+1 − xi, et ou` les Ci sont solutions du syst`eme tridiagonal :

3
pour i = 1,..n − 1, compl´et´e, en g´en´eral, par .

Voici par exemple (Figure III.8) la spline cubique d’interpolation de la

fonction sur 10 intervalles. On observe la stabilit´e de cette


interpolation par contraste avec le r´esultat obtenu (Figure III.5) par
interpolation polynomiale.

3 Approximation au sens des moindres carr´es


L’instabilit´e du proc´ed´e d’interpolation polynomiale lorsque le nombre
de points augmente, d’une part, l’incertitude des r´esultats de mesure, d’autre
part, conduisent a` pr´ef´erer a` l’interpolation des m´ethodes
d’approximation. Ainsi il est clair que l’exp´erimentateur qui rel`evera 100
points quasiment align´es sera plus int´eress´e par la droite passant “ au
mieux ” par ces 100 points plutoˆt que par le polynoˆme de degr´e 99 r
´ealisant l’interpolation exacte.
La plus c´el`ebre et la plus utile des m´ethodes d’approximation est la m
´ethode des moindres carr´es. La formalisation de l’id´ee intuitive d’une

Page 13 of 44
droite repr´esentant “au mieux” un nuage de points au sens des moindres
carr´es se fait de la mani`ere suivante.

3.1 Droite des moindres carr´es


Soient N valeurs y1,y2,...yi,...yN donn´ees aux N abscisses x1,x2,...xi,...xN.
Le polynˆome P de degr´e un : P(x) = a0+a1x (repr´esent´e par une droite) qui

Figure III.9 – Droite des moindres carr´es

r´ealise la meilleure approximation au sens des moindres carr´es des valeurs


yi donn´ees aux points xi est celui qui minimise la somme des carr´es des
´ecarts entre les yi et les P(xi), soit

(III.11)

S apparaˆıt comme le carr´e de la norme euclidienne du vecteur de


composantes

ydu vecteur le plus proche du vecteur i − (a0 + a1xi). La minimisation de S


Ys’interpr`ete donc comme la recherche∈ IRN de composantesU, de

composantesyi, dans le

Page 14 of 44
sous-espace de dimension deux engendr´e par les vecteurs toutes ´egales `a 1,
et X, de composantes xi. Comme la norme utilis´ee est la norme euclidienne, le
vecteur le plus proche est le projet´e orthogonal. On obtient ses composantes
a0 et a1 en ´ecrivant les relations d’orthogonalit´e :
N




 (Y − a00U − a11X|U) = ii=1=1[yii − (a00+ a11xii)] 1 = 0i

(III.12)

 (Y − a U − a X|X) = [y − (a + a x )] x = 00 1

Ceci conduit au syst`eme dit des ´equations normales pour a et a , coefficients


de la droite des moindres carr´es (ou de r´egression) cherch´ee.
N N



Ni =1 xii  a0  i yi 

N
iN =
N=1 (III.13)

x x2  a1 xiyi

i=1 i=1 i=1

Page 15 of 44
3.2 G´en´eralisation : polynˆome des moindres carr´es
Il est facile de g´en´eraliser le calcul pr´ec´edent au cas de la recherche du

polynoˆme de degr´eau sens des moindres carr´es des≤ m, avec m << Nyi. Ce

polynoˆme minimise, qui r´ealise la meilleure approximation

(III.14)
On obtient les relations d’orthogonalit´e :

(III.15)
ou` l’on a not´e Xm le vecteur de composantes xmi . Les valeurs des coefficients
ak du polynˆome des moindres carr´es s’en d´eduisent apr`es r´esolution du
syst`eme lin´eaire d´eduit de (III.15).
Remarque 3.1 : Le syst`eme des moindres carr´es ci-dessus est mal conditionn
´e (il est de plus en plus sensible aux erreurs d’arrondis `a mesure que m
augmente). On se limite habituellement `a des polynˆomes de degr´e peu ´elev´e.
La r´esolution pratique des probl`emes de moindres carr´es se fait par des
algorithmes sp´ecifiques d’´elimination pour des syst`emes rectangulaires surd
´etermin´es. Ces algorithmes utilisent la factorisation QR (technique de
Householder).
On peut envisager, comme dans le cas de l’interpolation, la recherche
d’une meilleure approximation par des splines en d´ecoupant l’ensemble des
points en sous-ensembles plus petits. Cette id´ee de meilleure approximation
au sens des moindres carr´es par des splines est `a la base de nombreuses
techniques d’approximation et de repr´esentation de donn´ees.
4 Int´egration num´erique
La plupart des formules d’int´egration num´erique proviennent de m
´ethodes d’interpolation polynomiales. Le calcul de l’int´egrale d’une fonction
est approch´e par le calcul exact de l’int´egrale d’un polynoˆme interpolant

Page 16 of 44
cette fonction en certains points xk pour k = 1,..p. On obtient ainsi une forme g
´en ´erale pour les quadratures num´eriques
b
p

f(x)dx
= Akf(xk) (III.16)

a
k=1

Les xk sont alors les points d’int´egration et les coefficients Ak les poids de la
formule de quadrature.
Le couˆt d’une formule est mesur´e par le nombre de calculs de f n´ecessaires,
donc par le nombre de points d’int´egration. Le crit`ere d’efficacit´e choisi est
le degr´e maximal de l’espace des polynoˆmes pour lequel la formule est
exacte. La pr´ecision d’une formule d’int´egration num´erique est mesur´ee
par son ordre.
D´ef. 4.1 : On dit qu’une formule est d’ordre k si k est le plus grand entier pour
lequel elle donne l’int´egrale exacte de tout polynˆome de degr´e ≤ k. On montre
que l’erreur d’int´egration est alors, pour toute fonction suffisamment r
´eguli`ere, un infiniment petit d’ordre k du pas d’int´egration h.

4.1 Formules des rectangles


Ce sont les formules a` un point d’int´egration qui proviennent
d’interpolation par des polynoˆmes constants.

) (III.17)
Le couˆt d’une telle formule `a un point est celui d’une ´evaluation de f. Les
choix classiques sont α = a, α = b et le choix donnant la meilleure formule dite
formule du point-milieu (exacte pour les fonctions affines) est .

4.2 Formule des trap`ezes


On consid`ere cette fois l’interpolation par un polynoˆme de degr´e un
construit sur les points a et b. On obtient la formule classique des trap`ezes :

Page 17 of 44
)] (III.18) Cette formule, `a deux points,
est clairement exacte pour les polynˆomes de degr´e ≤ 1.

4.3 Formule de Simpson


En utilisant l’interpolation sur les trois points a, , on obtient la
formule de Simpson, que l’on v´erifie ˆetre exacte pour les polynˆomes de
degr´e

)] (III.19)
Cette formule `a trois points n´ecessite donc trois ´evaluations de f par
segment (voir cependant, paragraphe 4.5 dans le cas d’un segment global
subdivis´e en sous-intervalles, les formules composites de calcul d’int´egrales
par les m´ethodes des trap`ezes et de Simpson).

4.4 Formules de Gauss


Dans les formules pr´ec´edentes le choix des points d’int´egration ´etait fix
´e (extr´emit´es et/ou milieu des intervalles d’int´egration). Dans les formules
de type Gauss, les points d’int´egration sont choisis de mani`ere a` obtenir la
pr´ecision la plus ´elev´ee.
La Formule de Gauss Legendre a` 2 points, est exacte pour les polynˆomes
de degr´e ≤ 3 :

. (III.20)

avec et

Page 18 of 44
4.5 Formules composites, maillages et m´ethodes
adaptatives
Toutes les formules pr´esent´ees ci-dessus sont des formules de base,
utilisables sur de petits ´el´ements en dimension un, deux ou trois. Pour faire
un calcul r´eel, il faut pr´ealablement d´ecouper le domaine d’int´egration
global en un ensemble de petits sous-domaines ´el´ementaires. Voici, pour
fixer les

Figure III.10 – Choix optimal de points d’int´egration par Matlab pour la


fonction .

id´ees, le calcul global, de l’int´egrale d’une fonction f, par la m´ethodes des


trap`ezes, sur un intervalle [a,b] d´ecoup´e uniform´ement en N sous-
intervalles de longueur h (le pas d’int´egration) :

et le mˆeme calcul par Simpson

ou` P = N/2.

Page 19 of 44
Cependant, un d´ecoupage g´eom´etrique uniforme en sous-intervalles ´egaux
n’est pas optimal. L’op´eration de discr´etisation g´eom´etrique ou “maillage”
que l’on retrouvera dans le contexte des m´ethodes de diff´erences, d’´el
´ements ou de volumes finis est d´eterminante pour la pr´ecision du r´esultat.
Il faut mettre plus de points d’int´egration l`a ou` la fonction pr´esente des
variations relatives rapides. Dans les outils g´en´eriques comme Matlab, on
trouve des proc´edures de quadrature adaptatives qui choisissent
automatiquement les points d’int´egration (ou la taille des mailles) selon les
variations de la fonction a` int´egrer. Typiquement, ces m´ethodes utilisent
des indicateurs d’erreurs locaux bas´es sur l’´ecart entre deux calculs effectu
´es avec deux m´ethodes de base diff´erentes, trap`ezes et Simpson par
exemple (voir Fig III.10).

Page 20 of 44
5 R´esolution des ´equations diff´erentielles
Nous limiterons l’expos´e au cas simple d’´equations diff´erentielles
ordinaires de la forme

 yTrouver la fonction(x) = f(x,y(x)) y :∀x ∈x [→a,by](x) telle que :

(III.21)

y(a) = y0
Les probl`emes diff´erentiels de ce type sont appel´es probl`emes de Cauchy
ou probl`emes a` valeurs initiales. Si f est continue et si elle v´erifie une
condition de Lipschitz par rapport a` la deuxi`eme variable (Il existe L > 0 tel
que ∀x ∈ [a,b] et ∀y1, y2 on ait : |f(x,yy pour toute valeur initiale. On dit qu’il1) −
f(x,y2)| ≤ L|y1 − y2| ), alors le
probl`eme admet une solution unique est “bien pos´e”. On a vu, lors du
chapitre pr´ec´edent, que certains probl`emes diff´erentiels bien pos´es du
point de vue th´eorique pouvaient s’av´erer impossibles a` r´esoudre num
´eriquement car instables. Num´eriquement, il faudra en effet consid´erer
l’ensemble des solutions voisines de la solution exacte cherch´ee, solutions
voisines correspondant a` de petites perturbations des conditions initiales. Si
ces solutions ne s’´ecartent pas trop de la solution de r´ef´erence exacte, on
aura un probl`eme stable et on pourra construire des approximations num
´eriques convenables.
En g´en´eralisant l’´ecriture de l’´equation (III.21) au cas d’une fonction
inconnue vectorielle, on pourra traiter des syst`emes diff´erentiels et des
´equations ou syst`emes d’ordre sup´erieur a` un par des extensions
naturelles des techniques que nous pr´esentons ci-dessous dans le cas de la
dimension un par souci de simplicit´e.

Page 21 of 44
5.1 Principe g´en´eral des m´ethodes num´eriques
La solution exacte d’une ´equation diff´erentielle du type (III.21) est une
fonction continue. Les ordinateurs ne peuvent fournir qu’un nombre fini de r
´esultats num´eriques. Tout commence donc par un choix pr´ealable d’un
nombre fini de points xi sur [a,b]. Ceci s’appelle une discr´etisation ou un
maillage du domaine g´eom´etrique (ici le segment [a,b]). On limitera le calcul
au calcul approch´e de la solution en ces points.
Le choix des points xi est ´evidemment crucial pour la qualit´e de la solution
num´erique obtenue. Le maillage doit permettre de repr´esenter de fa¸con pr
´ecise la solution. Comme cette solution est au d´epart inconnue, on proc`ede
par des techniques d’adaptation de maillage a posteriori. On calcule une
premi`ere solution sur un premier maillage. On d´eduit de ce premier calcul
les zones de forte variation de la solution. On raffine le maillage dans ces
zones.
Encore une fois dans un souci de simplicit´e, nous pr´esenterons ici les m
´ethodes num´eriques dans le cas de maillage a` pas uniformes. Le probl`eme
de l’adaptation de maillage sera trait´e dans un cadre g´en´eral chapitre ??.
On peut construire des sch´emas d’int´egration d’´equations diff´erentielles
de diverses mani`eres. Par exemple :
– les sch´emas d’int´egration `a un pas peuvent ˆetre obtenus en
utilisantdes formules d’int´egration num´erique approch´ee. En
introduisant des sous-pas, on obtient les sch´emas de Runge et Kutta
qui sont les plus pratiques et les plus utilis´es;
– les sch´emas multi-pas peuvent ˆetre construits par d´eveloppement
deTaylor.
Deux crit`eres principaux gouvernent le choix d’une m´ethode :
– l’ordre, qui mesure la pr´ecision du sch´ema ou erreur de troncature
faiteen remplac¸ant l’´equation diff´erentielle exacte par son
approximation. L’ordre de la m´ethode donnera, a` convergence, l’ordre
de l’erreur commise en fonction du pas de discr´etisation.
– la stabilit´e, qui concerne le comportement de la solution approch
´eediscr`ete et la propagation des erreurs d’arrondis dans le cas d’un
calcul r´eel pour un pas de discr´etisation fix´e. Le sch´ema est stable si
la solution discr`ete reste born´ee quel que soit le nombre de pas de
discr´etisation.

Page 22 of 44
Remarque 5.1 : Un crit`ere suppl´ementaire et important de choix des sch´emas
concerne la facilit´e de mise en œuvre, notamment lors d’un red´emarrage des
calculs. Imaginons un calcul instationnaire ne pouvant faire l’objet d’un calcul
complet, soit en raison de la mod´elisation (comme en m´et´eorologie par exemple,
ou` de nouvelles conditions initiales et aux limites doivent ˆetre assimil´ees chaque
jour par le mod`ele), soit en raison de l’impl´ementation et de la dur´ee du calcul.
Par exemple, sur un calculateur parall`ele, le temps d’attente est li´e au temps de
calcul et `a la quantit´e de m´emoire requise. Dans le premier cas, comme dans le
second, on aura recours aux approches `a un pas de type Runge et Kutta pour
assurer une pr´ecision ´elev´ee, plutˆot qu’aux sch´emas multi-pas. En effet, quelle
que soit la pr´ecision demand´ee, les m´ethodes de Runge et Kutta ne n´ecessitent
que le stockage d’un seul ´etat pour un red´emarrage des calculs.
5.2 M´ethodes `a un pas
Dans ces m´ethodes la valeur approch´ee yn+1 de la fonction inconnue y
pour l’abscisse xn+1 est calcul´ee en fonction des seules valeurs de l’abscisse pr
´ec´edente xn, de l’approximation yn et du pas de discr´etisation h. Si yn+1
s’obtient par une formule explicite de la forme

yn+1 = yn + Φ(xn,yn,h)

on dit que la m´ethode est explicite.


Si par contre yn+1 est donn´ee par une relation de la forme g´en´erale

yn+1 = yn + Φ(xn,yn,yn+1,h)
on ne pourra l’obtenir que par la r´esolution d’une ´equation. On dit que la m
´ethode est implicite.
La fonction Φ d´efinit la m´ethode utilis´ee.
Ces sch´emas sont obtenus, par exemple, en int´egrant l’´equation diff
´erentielle et en utilisant des formules d’int´egration num´erique pour le
second membre. L’ordre du sch´ema sera ´egal au degr´e du polynˆome pour
lequel l’int´egration est exacte + 1.

A titre d’exemple, on obtient les sch´emas suivants :`

Page 23 of 44
– A l’ordre 1, avec une formule exacte pour les polynoˆmes constants
parmorceaux, on obtient le sch´ema d’Euler explicite :

yn+1 − yn = hf(xn,yn)

– Toujours a` l’ordre 1, mais en utilisant le point d’arriv´ee, on obtient


lesch´ema d’Euler implicite :

yn+1 − yn = hf(xn+1,yn+1)

– A l’ordre 2, en utilisant la m´ethode des trap`ezes, on obtient le sch


´ema des trap`ezes ou de Crank-Nicolson :

En g´en´eral un sch´ema explicite a une complexit´e plus faible mais impose


des conditions de stabilit´e plus restrictives (voir plus loin).
y ✻
yn +1
yn ✶
✯ y(x )


y0

x x x n +1 x
0 n

Figure III.11 – Interpr´etation de la m´ethode d’Euler comme m´ethode de la


tangente. En chaque point xn, utiliser un d´eveloppement de Taylor a` l’ordre
un revient `a remplacer la courbe solution par sa tangente.

Page 24 of 44
5.3 Interpr´etations de la m´ethode d’Euler explicite
La m´ethode d’Euler est le prototype le plus simple des m´ethodes num
´eriques de r ´esolution des ´equations diff´erentielles. Pour l’´equation
y(x) = f(x,y(x))
∀x ∈ [a,b] y(a)
= y0
elle s’´ecrit :
y0 donn
´e
(III.22)
yn+1 = yn + hf(xn,yn)
C’est la plus simple des m´ethodes explicites a` un pas.
1. La m´ethode d’Euler provient du d´eveloppement de Taylor d’ordre
unde y au voisinage de xn. On peut montrer que, lorsque cette m´ethode
converge, l’erreur est un infiniment petit d’ordre un en h.
2. G´eom´etriquement, elle revient a` remplacer localement en chaque
pointxn, la courbe solution par sa tangente. On voit donc qu’au cours du
processus num´erique, on va passer, `a chaque pas d’une courbe
solution a` une courbe voisine correspondant a` une condition initiale l
´eg`erement diff´erente. Si le probl`eme est stable, on pourra obtenir la
convergence. Par contre, les r´esultats peuvent vite devenir
catastrophiques dans un cas instable (exemple ?? du chapitre 1).
3. Enfin, en utilisant l’´equivalence entre un probl`eme diff´erentiel et une
´equation int´egrale, on peut interpr´eter, on l’a vu plus haut, la m
´ethode d’Euler comme le r´esultat de l’application de la formule des
rectangles bas´ee sur le point xn

5.4 M´ethodes de Runge et Kutta


Dans les m´ethodes de r´esolution des probl`emes a` valeurs initiales, le
processus de calcul est un processus fini. On avance de N pas, `a partir du

Page 25 of 44
temps initial jusqu’au temps final et on s’arrˆete. Chaque valeur est donc
calcul´ee une fois pour toutes. Sauf technique plus complexe d’adaptation de
maillages, il n’y a pas de r´eit´eration pour am´eliorer le r´esultat. Il faudra
donc utiliser des m´ethodes suffisamment pr´ecises. Ceci explique le recours
a` des m´ethodes d’ordre ´elev´e. Les m´ethodes de Runge et Kutta sont les g
´en´eralisations de la m´ethode d’Euler `a des ordres sup´erieurs a` un. Elles
s’obtiennent a` partir de formules d’int´egration num´eriques plus pr´ecises
que la formule des rectangles.
Consid´erons tout d’abord l’utilisation de la formule des trap`ezes. Elle
conduit a` la m´ethode

y0 donn´e
h
(III.23)
yn+1 = yn + [f(xn,yn) + f(xn+1,yn+1)] 2
Cette m´ethode est une m´ethode implicite. Le calcul de la nouvelle valeur
yn+1 n´ecessite la r´esolution d’une ´equation. Si l’on veut obtenir une m´ethode
explicite du mˆeme ordre, on peut proc´eder de la mani`ere
 suivante : y0 donn´e

hf (III.24)

Ceci peut s’interpr´eter comme une it´eration de point-fixe (limit´ee ici `a un


pas) pour r´esoudre l’´equation du sch´ema implicite des trap`ezes (voir plus
bas ??). On obtient ainsi la m´ethode de Runge et Kutta d’ordre 2 : RK2.
De mˆeme l’utilisation de la formule d’int´egration de Simpson est a` la base
de la formule de Runge et Kutta d’ordre 4 : RK4. C’est l’une des formules les
plus utilis´ees, elle s’´ecrit :

 y0 donn´e, puis pour n ≥ 0

Page 26 of 44
(III.25)
Pour r´eduire la complexit´e en stockage de ce sch´ema (pas de stockage des
coefficients ki), on peut utiliser le sch´ema de Runge-Kutta sans stockage
suivant : yn+1 = yn + θphf(yn+1),p = 1...q, θp ∈]0,1]

ou` l’on passe de n `a n + 1 apr`es q sous-it´erations, sans stocker les valeurs


interm´ediaires. Les coefficients θp doivent ˆetre cal´es pour r´ealiser une int
´egration exacte `a un ordre donn´e pour une fonction f donn´ee (ce qui est
une limitation de cette technique).
Consid´erons l’´equation y(x) = λy(x), et prenons q = 2, le sch´ema s’´ecrit alors
(on introduit pour la compr´ehension les vi interm´ediaires) :

 v0 = yn

 v1 = v0 + hθ1λv0

v2 = v0 + hθ2λv1 yn+1 = v2
on a donc :
yn+1 = yn + hθ2λyn + h2θ1θ2λ2yn
Or y(x) = λ2y(x) d’ou` par identification : .

Page 27 of 44
5.5 Application aux syst`emes diff´erentiels
300

250

200

150

100

50
0 2 4 6 8 10 12 14 16 18 20

600

500

400

300

200

100

0
0 2 4 6 8 10 12 14 16 18 20

Figure III.12 – Syst`eme proie-pr´edateur : les proies sont repr´esent´ees en


trait continu, les pr´edateurs en pointill´es. En haut le cas b = 0.01 : proies en
milieu fini, en bas le cas b = 0 : pas de limite au d´eveloppement de la
population des proies, hormis la pr´esence de pr´edateurs.

On peut g´en´eraliser simplement l’application des m´ethodes de Runge et


Kutta aux syst`emes. Pour un syst`eme de deux ´equations coupl´ees de la
forme

donn´es

Page 28 of 44
)= (x,y(x),z(x)) (III.26)
z (x) = g(x,y(x),z(x)) on obtient l’algorithme suivant pour Runge

et Kutta d’ordre 4 :

 y0,z0 donn´es, puis pour n ≥ 0

Voici trois applications classiques


1. Le syst`eme proies-pr´edateurs :

y1 = (a − by1 − cy2 )y1


y21 = (−α + γy21 )y2

Page 29 of 44
(III.28) y (0) = 300 y (0) = 150 a = 2,b = 0.01 (ou b = 0), c =
0.01,α = 1,γ = 0.01

dont voici le programme en langage Matlab utilisant le sch´ema RK2.

x=0:0.1:20;
h=0.1; a= 2;
b=0.01; c=0.01;
alpha=1;
gamma=0.01;
y(1)=300; z(1)=
100;

for i=1:200
k1=h*(a -b*y(i)-c*z(i))*y(i); l1=h*(-alpha
+gamma*y(i))*z(i); k2=h*(a-b*(y(i)+k1) -c*(z(i)+l1))*(y(i)
+k1); l2=h*(-alpha +gamma*(y(i)+k1))*(z(i)+l1);
y(i+1)=y(i)+(k1+k2)/2; z(i+1)=z(i)+(l1+l2)/2;
end hold on
plot(x,y)
plot(x,z,’--’) hold
off

2. L’´equation du pendule amorti :

 (

2
θ
t) + αθ(t) + k sin(θ(t)) = 0 sur [0,4π]

3. Le syst`eme dynamique de Lorentz : (III.29)

x˙ = σ(y − x), y˙ = ρx − y − xz, z˙ = xy − βz (III.30)

Page 30 of 44
dont les conditions initiales sont pr´ecis´ees dans le programme ci-
dessous :

! Etude du systeme dynamique de Lorentz

x1=x0=-10.; y1=y0=20.;
z1=z0=-5.;
epsilon=1.e-2 ! perturbation 1 pourcent
sigma=10.*(1.+epsilon) ro=28.*(1.+epsilon)
beta=2.6667*(1.+epsilon)

Page 31 of 44
Figure III.13 – Oscillation du pendule amorti : les angles sont repr´esent´es en
pointill´es, leurs d´eriv´ees en trait continu. En bas le diagramme de phase,
angles / vitesses angulaires

irkmax=4 ! Runge et Kutta a 4 pas dt=1.e-3 ! pas de


temps
do kt=1,10000 ! boucle en temps
do irk=1,irkmax ! boucle Runge et Kutta sans stockage
alpha=1./(irkmax+1-irk);
x1=x0+dt*alpha*(sigma*(y1-x1));
y1=y0+dt*alpha*(ro*x1-y1-x1*z1);
z1=z0+dt*alpha*(x1*y1-beta*z1);
enddo
x0=x1; y0=y1; z0=z1; enddo

Ci-dessus le pas de temps a´et´e fix´e a priori, a` la suite d’essais num


´eriques. Nous pouvons, par une analyse de stabilit´e, proposer un
crit`ere pour son choix. Cependant, l’analyse de stabilit´e s’av`ere
souvent difficile pour les syst`emes coupl´es. Dans ce cas, on effectue
l’analyse pour chaque ´equation, en laissant invariantes les autres
variables. Le pas de temps sera alors le minimum des pas de temps
produits par ces analyses. Par exemple, dans le cas du syst`eme de
Lorentz on obtient :

5.6 M´ethodes `a pas multiples


Les m´ethodes de Runge et Kutta sont des m´ethodes `a un pas. Pour
obtenir des m´ethodes d’ordre de pr´ecision ´elev´e, on peut aussi augmenter
le nombre de pas. Dans ce cas, la solution au point n+1 sera fonction des
solutions aux p pas pr´ec´edents avec p > 1. La construction de ces sch´emas
peut se faire en utilisant la d´erivation num´erique et la pr´ecision du sch´ema
sera donn´ee par la pr´ecision de cette d´erivation. Ainsi, pour un sch´ema `a
l’ordre 2, on peut combiner les expressions ci-dessous :

Page 32 of 44
pour aboutir au sch´ema “saute-mouton” (leap-frog en anglais) :

) (III.31)
Un autre sch´ema a` deux pas largement utilis´e est le sch´ema implicite
d’ordre deux de Gear :

) (III.32)
On trouvera dans les ouvrages sp´ecialis´es un grand nombre de formules
multipas d’ordre ´elev´e (voir cependant la remarque 5.1 sur les avantages
pratiques des m´ethodes a` un pas de type Runge-Kutta). Remarquons
toutefois, qu’un sch´ema d’ordre ´elev´e n’a d’int´erˆet que si l’on est assur´e
de la r´egularit´e suffisante de la solution. Pour une solution discontinue ou
peu r´eguli`ere des m´ethodes d’ordre bas sont mieux adapt´ees. D’autre part,
il y a, en g´en´eral, sauf ´evidemment dans le cas de sch´emas implicites,
antagonisme entre ordre
´elev´e et stabilit´e.

5.7 Stabilit´e
Par opposition a` l’ordre de pr´ecision qui utilise la solution du probl`eme
continu, le concept de stabilit´e est bas´e sur la solution discr`ete. Il rend
compte du comportement r´eel de la solution approch´ee pour une valeur
pratique, donc non nulle, du pas h.
Lors d’un calcul r´eel, les erreurs d’arrondis, in´evitables, s’accumulent. Ceci
est particuli`erement ´evident dans le processus de r´esolution d’une
´equation diff´erentielle ou` l’on progresse pas a` pas `a partir d’une valeur
initiale. Il existe diverses conditions de stabilit´e. Tout d’abord la solution
num´erique doit rester born´ee. Cette exigence minimale de stabilit´e peut se
r´ev´eler insuffisante dans la pratique, la borne obtenue ´etant souvent une
exponentielle de la dur´ee qui donc croˆıt infiniment lorsque celle-ci
augmente.

Page 33 of 44
On introduit alors des crit`eres de stabilit´e plus exigeants afin que la solution
num´erique reproduise le comportement physique de la solution exacte. Par
exemple, pour des probl`emes dissipatifs, on imposera des conditions de
stabilit´e permettant d’obtenir une solution de norme d´ecroissante. Le
concept de A-stabilit´e, sous sa forme la plus simple, est bas´e sur l’analyse du
comportement, selon les valeurs du pas h, des solutions num´eriques de
l’´equation mod`ele

y(t) = −ay(t) avec y(0) donn´e et a r´eel > 0 (III.33)

dont la solution exacte est y(t) = y(0)e−at.

Etudions le cas du sch´ema d’Euler explicite. On obtient´ yn+1 = yn − ahyn,


soit
yn = (1 − ah)ny0
at
Si l’expression exacte e− est toujours d´ecroissante en temps et positive, ce
n’est pas le cas de l’expression approch´ee (1 − ah)n, qui selon les valeurs du
pas h > 0, peut tendre vers l’infini, vers z´ero ou prendre alternativement les
valeurs 1 et −1. Pour que la solution approch´ee reproduise le comportement
de la solution exacte, donc reste positive et d´ecroissante, il faut imposer une

condition de stabilit´e sur le pas h. On doit avoir . Pour des syst`emes


diff´erentiels de type X(t) + AX(t) = F (A est suppos´ee sym´etrique d´efinie
positive, donc `a valeurs propres r´eelles positives), la condition de stabilit´e

imposera, pour toute valeur propre λi de la matrice A, les conditions : .

Donc . Si certaines valeurs propres sont grandes, ceci imposera


des pas h tr`es petits, et donc des difficult´es pour le calcul des solutions sur
de longues dur´ees. On dit, dans ce cas, que le syst`eme diff´erentiel est raide
(stiff en anglais).
Etudions maintenant le cas d’un sch´ema implicite, le sch´ema d’Euler impli-´
cite : yn+1 = yn + f(xn+1,yn+1) Son application `a (III.33) donne :

Page 34 of 44
Dans ce cas, quel que soit h > 0, la solution num´erique est born´ee, positive et
d´ecroissante au cours du temps. On dit que le sch´ema est
inconditionnellement stable.

Remarque 5.2 : On retrouve ici les approximations stables et instables de la


fonction exponentielle pr´esent´ees au chapitre pr´ec´edent.
6 M´ethodes de r´esolution des syst`emes lin
´eaires
Les syst`emes lin´eaires sur-d´etermin´es (plus grand nombre
d’´equations que d’inconnues) sont r´esolus, en g´en´eral, en utilisant les
techniques de moindres carr´es. Nous nous limitons donc ici au cas des
syt`emes carr´es comportant autant d’´equations que d’inconnues.
On consid`ere le syst`eme suivant :

qui s’´ecrit matriciellement


AX = B
Soit φ l’application lin´eaire repr´esent´ee par la matrice A, si X repr´esente x
et B, b, AX = B correspond `a φ(x) = b.

6.1 Existence et unicit´e de la solution


Th´eor`eme 6.1 (Syst`emes de Cramer) : Une condition n´ecessaire et
suffisante pour qu’un syst`eme lin´eaire de n ´equations `a n inconnues admette
une solution unique pour tout second membre B ∈ IRn est de mani`ere
´equivalente que
– det(A) = 0
– Ker(φ) = {0}
– rg(φ) = dim(Im(φ)) = n
– les vecteurs lignes ou les vecteurs colonnes de A sont ind´ependants

Page 35 of 44
– la seule solution de AX = 0 est X = 0

6.2 M´ethodes directes


Les m´ethodes directes de r´esolution des syst`emes lin´eaires sont des m
´ethodes dans lesquelles la solution est obtenue de fa¸con exacte en un nombre
fini d’op´erations. De fa¸con exacte s’entend, sur un ordinateur, aux erreurs
d’arrondis machine pr`es. Le prototype de m´ethode directe est la m´ethode du
pivot de Gauss. Cette m´ethode permet de ramener la r´esolution d’un syst`eme
g´en´eral a` la r´esolution d’un syst`eme triangulaire sup´erieur. La
triangularisation de Gauss consiste a` annuler, par ´etape, colonne par colonne,
les coefficients sous-diagonaux de la matrice par combinaison des lignes avec
une ligne de r´ef´erence ou ligne “pivot”. A la premi`ere ´etape, la ligne pivot` est
la premi`ere ligne, puis la ke a` l’´etape k et ainsi de suite jusqu’a` l’´etape n − 1.
Le coefficient diagonal Ak,k de la ligne de r´ef´erence s’appelle le pivot.
L’´elimination se fait selon

pour k = 1...N −1, i = k+1...N et j = k+1...N, sans oublier de combiner de la


mˆeme fac¸on les composantes du second-membre. La rencontre de pivot nul
peut n´ecessiter la permutation de lignes du syst`eme. Cependant pour
certaines classes de matrices, en particulier les matrices sym´etriques d
´efinies positives, on est assur´e de pouvoir triangulariser le syst`eme par
Gauss sans permutation. La m´ethode du pivot ´equivaut alors a` une
factorisation de type

A = LU

de la matrice A. L est une matrice triangulaire inf´erieure a` diagonale unit´e


et U une matrice triangulaire sup´erieure. Une fois obtenu le syst`eme
triangulaire sup´erieur ´equivalent au syst`eme initial, sa r´esolution se fait
ensuite explicitement par un processus de remont´ee. On commence par
calculer la derni`ere composante du vecteur inconnu en utilisant la derni`ere
´equation et on remonte ´equation par ´equation en d´eterminant les
composantes correspondantes.
Dans le cas d’une matrice A sym´etrique, on peut utiliser la sym´etrie pour
obtenir une factorisation de Crout :

Page 36 of 44
A = LDLT

avec D diagonale.
Dans le cas d’une matrice A sym´etrique d´efinie positive, la m´ethode de
Choleski conduit a` une factorisation :

A = LLT

On trouve la matrice L, qui cette fois n’est plus `a diagonale unit´e, par un
algorithme d’identification de coefficients.
De

Aij = LikLjk pour j≤i

k=1,i

on d´eduit pour tout i : et pour tout j < i

Les m´ethodes directes pr´esentent l’avantage de fournir la solution exacte


(aux erreurs d’arrondis machine pr`es) en un nombre fini d’op´erations (de
l’ordre de pour Gauss). La m´ethode du pivot de Gauss s’applique `a tout
syst`eme inversible. Par contre les m´ethodes directes ont un couˆt important
en stockage m´emoire (bien que des techniques de stockage minimal associ
´ees a` des algorithmes de num´erotation optimale des inconnues permettent
de le r´eduire sensiblement). Ceci rend leur application pratiquement
impossible, en l’´etat actuel de la technologie, pour de gros syst`emes `a plus

Page 37 of 44
de 105 inconnues, et donc en particulier pour la r´esolution de probl`emes
industriels en dimension 3 d’espace.
Nous renvoyons `a la litt´erature pour plus de pr´ecisions sur les m´ethodes
directes (voir Lascaux-Th´eodor, Ciarlet, Lucquin-Pironneau).

6.3 M´ethode de Gauss-Seidel ou de relaxation


Soit encore
AX = B
le syst`eme lin´eaire `a r´esoudre. La m´ethode de Gauss-Seidel correspond
aussi a` la d´ecomposition de la matrice A sous la forme

A=D−E−F

avec D matrice diagonale constitu´ee des ´el´ements diagonaux aii de A,


−E, matrice triangulaire inf´erieure stricte, constitu´ee des ´el´ements
strictements sous-diagonaux de A : aij pour i > j, et

−F, matrice triangulaire sup´erieure stricte, constitu´ee des ´el´ements


strictements sur-diagonaux de A : aij pour i < j.

Mais on d´efinit cette fois la m´ethode de Gauss-Seidel comme la m´ethode it


´erative :
  X
(0)
donn´e
(III.34)

X(k+1) = (D − E)−1F X(k) + (D − E)−1B

La matrice d’it´eration de Gauss-Seidel est donc


L = (D − E)−1F

et la condition de convergence s’exprime par


ρ(L) < 1

Page 38 of 44
On observe que la m´ethode de Gauss-Seidel correspond a` l’´ecriture ligne
par ligne suivante :

(III.35)
Elle utilise les informations les plus r´ecentes sur les composantes des it´er
´es. La m´ethode de Gauss-Seidel converge en g´en´eral plus vite que la m
´ethode de Jacobi. Par contre, Gauss-Seidel n’est pas adapt´ee a` la
vectorisation.
Les m´ethodes de relaxation sont des extrapolations de la m´ethode de
Gauss-Seidel d´ependant d’un param`etre ω. Ce param`etre est d´etermin´e
pour obtenir une convergence plus rapide. Les m´ethodes de
relaxation s’´ecrivent : donn´e
(III.36)
X = (D − ωE)− (ωF + (1 − ω)D) X + ω(D − ωE)− B
+1) 1 (k) 1

La m´ethode de relaxation s’´ecrit ligne par ligne comme une extrapolation de


la composante obtenue par Gauss-Seidel. On a :
Xik+1(relax) = ω Xik+1(GS) + (1 ω
k
)X (relax)
i

La m´ethode de Gauss-Seidel correspond au cas = 1. Dans le cas de matrices A


sym´etriques d´efinies positives, les m´ethodes de relaxation convergent pour
0 < ω < 2.
6.4 M´ethodes de descente - M´ethode du gradient
Les m´ethodes de descente sont des m´ethodes it´eratives qui utilisent
l’´equivalence entre les probl`emes suivants (voir thEor` Eme¨ ??) :

  Trouver
X ∈ IRN tel que
(III.37)
 AX = B

et

Page 39 of 44

 Trouver X ∈ IRN tel que  (III.38)

1
J(X) = 2(AX,X) − (B,X) soit minimal

et qui sont donc limit´ees au cas des syst`emes lin´eaires dont la matrice A est
sym´etrique d´efinie positive. Elles se g´en´eralisent, par contre, au cas nonlin
´eaire de la minimisation de fonctionnelles strictement convexes quelconques
(voir chapitre ??).
Les m´ethodes de descente sont bas´ees sur le calcul de la solution comme
limite d’une suite minimisante de la forme quadratique J. Cette suite est
construite comme une suite r´ecurrente :
  X
(0)
donn´e
(III.39)
 X(k+1) = X(k) − α d (k)
k

aveccoeffidcient d´etermin´e de mani`ere `a minimiser(k) ∈ IRN vecteur


donnant la direction de descente a` l’´etapeJ dans la directionkdet(k)α. ∈
IR k

J(X(k) − αk d(k)) ≤ J(X(k) − αd(k)) ∀α ∈ IR

Apr`es d´eveloppement, on obtient αk comme valeur annulant la d´eriv´ee de J


par rapport a` α, soit :

avec
On peut montrer que la m´ethode de Gauss-Seidel est la m´ethode de
descente correspondant aux choix des axes de coordonn´ees comme
directions successives de descente. Dans le cas de la m´ethode du gradient,
on choisit comme direction de descente la direction du vecteur gradient de J

Page 40 of 44
au point X(k). Cette direction est la direction de variation maximale de J. On dit
encore direction de plus profonde descente, d’ou` le nom :“steepest descent
method” , employ´e dans certains ouvrages en anglais.
L’it´eration de la m´ethode du gradient s’´ecrit :

  X
(0)
donn´e
(III.40)

 X(k+1) = X(k) − αk G(k)

avec

6.4.1 Vitesse de convergence. Conditionnement.


A partir de` G(k+1) = AX(k+1) − B et de X(k+1) = X(k) − αk G(k), on obtient la r

´ecurrence suivante sur les gradients :

G(k+1) = G(k) − αk AG(k)

On en d´eduit G(k+1)2 = G(k)2 − 2αk(AG(k),G(k)) + αk2AG(k)2

avec

on obtient :

Et en utilisant les valeurs propres et les vecteurs propres de la matrice A


suppos´ee d´efinie positive, on d´eduit :

Page 41 of 44
D´ef. 6.1 : Pour une matrice sym´etrique r´eelle le nombre

rapport des plus grandes et plus petites valeurs propres de A est appel´e
nombre de conditionnement de la matrice A.

Plus il est proche de 1, plus vite la m´ethode du gradient converge. Les


techniques de pr´econditionnement ont, entre autres, pour but de rapprocher
les valeurs propres extrˆemes afin d’acc´elerer la convergence des m´ethodes
it´eratives.

Remarque 6.1 : Le nombre de conditionnement est, en particulier, ´egal `a 1


pour la matrice identit´e. D’ailleurs, dans ce cas, l’expression `a minimiser d
´ecrirait, en dimension deux, un ensemble de cercles concentriques. Les
gradients ayant la direction d’un rayon, on obtiendrait la solution en une it
´eration. Cette remarque est `a la base de l’id´ee de la m´ethode du gradient
conjugu´e.

6.5 M´ethode du gradient conjugu´e


Dans le cas d’une matrice sym´etrique d´efinie positive quelconque A, les
iso-J sont des hyper-ellipses. Elles redeviennent des cercles pour le produit
scalaire d´efinie par A :

X,Y −→ (X,Y )A = (AX,Y )

D’ou` l’id´ee de remplacer les directions de descente dans la m´ethode du


gradient, par des directions conjugu´ees, c’est `a dire orthogonales au sens du
produit scalaire (.,.)A.
On obtient alors l’algorithme :

 X0 ∈ IRN donn´e

k = 0,1...

Page 42 of 44
(III.41)
Nous renvoyons a` la litt´erature pour une ´etude exhaustive de la m´ethode
du gradient conjugu´e. Retenons que la propri´et´e de A-orthogonalit´e
entraˆıne une convergence th´eorique en N it´erations. Ce qui en ferait une m
´ethode directe. Cependant, elle serait alors plus ch`ere que Choleski. De plus,
les erreurs d’arrondis font que les propri´et´es d’orthogonalit´e ne sont pas v
´erifi´ees exactement. Il faut donc consid´erer le gradient conjugu´e comme
une m´ethode it´erative. On montre que sa vitesse de convergence d´epend
´egalement du conditionnement de la matrice A. On est conduit a` pr
´econditionner A pour obtenir des performances int´eressantes. Parmi les pr
´econditionnements classiques, on citera le pr´econditionnement SSOR (O.
Axelsson) et par Choleski incomplet (Meijerink et Van der Vorst).
Dans le cas ou` la matrice du syst`eme n’est pas sym´etrique d´efinie
positive, il est plus difficile d’obtenir des m´ethodes it´eratives performantes.
Mentionnons la m´ethode GMRES (Saad et Schultz), dont il existe ´egalement
une version pour la r´esolution de syst`emes non-lin´eaires.

6.6 Application des m´ethodes de gradient au cas nonlin


´eaire
Dans le cas plus g´en´eral de minimisation d’une fonctionnelle J
strictement convexe non n´ecessairement quadratique, le gradient ∇J est non-
lin´eaire. Cependant les m´ethodes de gradient peuvent s’appliquer (on peut
mˆeme les appliquer sans garantie de convergence, car dans tous les cas on r
´eduira J, voir chapitre ??). La d´etermination du pas optimal αk a` l’it´eration
k se fait alors par une m´ethode de recherche de l’argument αk qui minimise la
fonction J(Xk −α∇J(Xk)). On est ramen´e `a un probl`eme en dimension un pour

Page 43 of 44
lequel diverses techniques existent, en particulier les algorithmes de
recherche de type section dor´ee.

L’extension de la m´ethode du gradient conjugu´e au cas non-lin´eaire n


´ecessite, de plus, la d´efinition des directions de descente “conjugu´ees”.
L’algorithme le plus efficace est celui de Polak-Ribi`ere. Les directions de
descente successives sont donn´ees par
dk+1 = ∇J(Xk+1) + βk+1 dk

avec cette fois

Page 44 of 44

Vous aimerez peut-être aussi