You are on page 1of 217

Methodes danalyse num

erique
Cours commun au ParcoursModelisation
Dynamique et Statistique des Syst`emes Complexes
et au Parcours ProfessionnelInterfaces, Genie des
milieux divises
Pascal Viot
Laboratoire de Physique Theorique des Liquides, Bote
121,
4, Place Jussieu, 75252 Paris Cedex 05
Email : v iot @ lp tl .ju ssi eu .fr
12 novembre 2010
2
Ce cours est une introduction aux methodes danalyse numerique tr`es
large- ment ut ilisees en physique afin de resoudre les equat ions alg
ebriques ou dif- ferentielles que lon rencontre dans la modelisat ion de ph
enom`enes physiques, chimiques ou biologiques.
Ce domaine part iculi`erement vaste necessite simultanement des
connais- sances mat hemat iques, informatiques et physiques. De larges classes
de prob- l`emes numeriques sont abordees dans ces notes et montrent la n
ecessite de bien caracteriser les proprietes mathemat iques du probl`eme
considere afin de choisir la methode numerique la mieux adaptee pour le
traiteme nt numerique.
3
Chapitre 1
Integration et
sommes di scr`etes
Contenu
1.1 Introduct ion . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Les methodes de Cotes . . . . . . . . . . . . . . . .
.
4
1.2.1 Trap`eze . . . . . . . . . . . . . . . . . . . . . . . . .
.
5
1.2.2 Simpson . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Methode de Romberg . . . . . . . . . . . . . . . . . . 7
1.4 Methodes de Gauss . . . . . . . . . . . . . . . . . . . 7
1.5 Methode de Gauss-Kronr od et meth odes
adapt ati ves
9
1.6 Integrales multiples . . . . . . . . . . . . . . . . . . . 11
1.1 Introduct ion
Les sciences physiques se fixent lobjectif de predire les phenom`enes `a
partir de la connaissance dun nombre fini de grandeurs microscopiques
intervenant dans la modelisat ion. Celle-ci doit, dans un premier temps, d
ecrire les faits experimentaux observes et, dans un second temps,
permettre den predire de nouveaux. La description des phenom`enes
peut etre soit microscopique, soit phenomenologique.
La modelisati on se divise naturellement en trois etapes : une premi`ere
etape consiste `a determiner les par am`etres microscopiques essentiels qui
intervien- nent pour decrire le phenom`ene puis `a choisir le mod`ele adapt
e pour decrire le phenom`ene. La second etape consiste `a etablir les
equat ions (tr`es souvent dif- ferentielles) qui decrivent le phenom`ene. La
troisi`eme etape consiste `a resoudre les equati ons precedemment
etablies afin de donner des reponses quantitatives. Ces reponses permette nt
de valider ou dinvalider le mod`ele, soit en comparant les predictions avec
lexperience, soit en anal ysant la coherence interne du mod-
`ele `a travers ses predictions.
Dans la situat ion la plus optimiste ou` il a ete possible de realiser les trois
etapes precedentes, lobt ention dun resultat numerique necessite au
moins le calcul dune integrale simple. Pour realiser ce simple travail, il
4
existe bien
Integration et sommes
discr`etes
4
souvent plusieurs methodes et la tache principale consiste `a selectionner
celle qui est la mieux adaptee pour satisfaire lobjectif. Ce principe est tr`es
general et sapplique `a lensemble des probl`emes numeriques que nous
allons aborder tout au long de ce cours. Ce cours a donc pour objectifs de pr
esenter quelques algorithmes associes `a chacun des probl`emes rencontr
es. Il existe des logiciels gratuits ou payants qui utilisent les methodes num
eriques que nous allons ren- contrer dans ce cours ; la connaissance de ces m
ethodes est donc un prealable pour choisir la mani`ere de resoudre un
probl`eme numerique donne le plus effi- cacement possible.
Le cas typique dune integrale definie `a evaluer est
Z
b
I = f (x)dx. (1.1)
a
Comme levaluat ion de la fonction f pour une infinite de points est
impossible, lintegrat ion numerique consiste `a remplacer lintegrale Eq. (1.1)
par une somme discr`ete sur un nombre fini de points.
N
I
N
=
X
a
i
f (x
i
) (1.2)
i=1
ou` a
i
et x
i
sont des variables que nous allons preciser dans la suite. Pour que
le- valuation numerique soit correcte, il est necessaire dimposer que toute m
ethode verifie que
lim
N
I
N
= I (1.3)
Au del`a de la verificat ion de ce crit`ere Eq. (1.3), la qual ite dune m
ethode sera evaluee par la mani`ere dont la convergence vers le resultat
exact seffectue. Dans la suite nous allons considerer des fonctions de classe
C
1
1
(continument derivable) sur le support [a, b]
2
. La derni`ere restriction
imposee `a la fonction est que
ou`
|f
0
(x)| < K x [a, b] (1.4)
K est une constante finie. Cela revient `a supposer que la derivee de la
fonction f nest jamais singuli`ere sur le support [a, b].
1.2 Les meth odes de Cotes
Mathemat icien anglais, contemporain et collaborateur de Newton,
Roger Cotes sest interesse `a des methodes de calculs numeriques et
exacts pour lin- tegrat ion et explique que les methodes suivantes portent
son nom.
1
On peut calculer lintegrale dune fonction plus generale a` condition que cett e
fonction ait
la meme mesure (mesure definie au sens de Lebesgue) quune fonction de classe
C
1
, cest-a`-dire
que les fonctions ne diff`erent que sur un ensemble de mesure nulle.
Comme exemple simple densemble de mesure nulle, citons les ensembles denombrables.
2
Si la fonction est continument derivable par morceaux sur un nombre fini dintervalles sur
lintervalle [a, b], on peut se ramener au cas precedent sur chaque intervalle, et donc
evaluer lintegrale sur lensemble de lintervalle [a, b].
y
i
2.5
2
1.5
1
0 0.5 1 1.5 2 2.5 3
x
Fig. 1.1 Illustration de la methode des trap`ezes : la partie grisee correspond
`a laire calculee par lequat ion (1.7)
Les methodes les plus simples que lon peut utiliser pour calculer une int
e- grale simple sont celles ou` les abscisses sont choisies de mani`ere r
eguli`erement espacees. Si on a N + 1 abscisses, on rep`ere celles-ci
simplement par la relat ion
x
i
= x
0
+ ih (1.5)
avec x
0
= a, x
N
= b, i est un entier allant de 0 `a N et h est appele le pas
de lintegrat ion. Pour simplifier les notations, on pose
f
i
= f (x
i
) (1.6)
1.2.1 Trap`eze
La methode des trap`ezes consiste `a approximer la fonction entre deux
ab- scisses successives par une droite (voir Fig. (1.1)), ce qui donne.
Z
xi+1
f (x)dx =
h
(f
xi
2
+ f
i+1
) + O(h
3
f
00
). (1.7)
Le terme derreur indique la qualite de levaluat ion de lintegrat ion et d
epend de mani`ere cubique du pas dintegrat ion ; f
0 0
se ref`ere `a un point
situe `a linterieur
b
0 N
de lintervalle. Pour que cette methode converge rapidement il est necessaire
de choisir un pas h inferieur `a f
00
. A noter que cette formule devient exacte
quand la fonction est un polynome de degre 1 sur lintervalle [x
1
, x
2
].
Sur lintervalle [a, b], on a
Z
b
N 1
f (x) = h
X
f
i
+
h
(f
0 +
f
N )
+ O

(b a)
3
f
0 0
2
(1.8)
a
i=1
2
N
ou` on a utilise que h = (b a)/N
1.2.2 Simpson
La methode de Simpson consiste `a remplacer la fonction par un
polynome de degre 2 sur un intervalle constitue de trois abscisses cons
ecutives
Z
xi+2
x
i
f (x)dx = h

1
3
f
i
+
4
3
f
i+1
+
1
3
f
i+2 + O(h
5
f
(4)
). (1.9)
Il se trouve que cette formule est exacte jusqu`a des polynomes de degre
3 ce qui implique que lerreur depende de h `a la puissance 5.
On peut aussi determiner la formule `a 4 points qui est aussi exacte pour
les polynomes de degre 3. Cette formule sappelle aussi Simpson 3/8 `a
cause des coefficients du developpement
Z
x
i+3
xi
f (x)dx = h

3
8
f
i
+
9
8
f
i+1
+
9
8
f
i+2
+
3
8
f
i+3 + O(h
5
f
(4)
). (1.10)
Sur un intervalle complet, en choisissant un nombre de points pair, N + 1,
cest-a-dire N impair, la methode de Simpson donne une estimat ion de lint
e- grale sur lintervalle [a, b].

Z
f (x) =
h
f + f
N 1
2
+ 2
X
(2f


1
+ f ) + O (1.11)
a
3
-
i=1
2i1 2i

N
4
La methode de Simpson est donc de deux ordres de grandeur plus
efficace que la methode des trap`ezes. Mais il est possible de mieux utiliser
la methode des trap`ezes. Sachant que cette derni`ere methode converge
en 1/N
2
, on peut
evaluer lintegrale deux fois sur le meme intervalle par la methode des
trap`ezes ; la premi`ere fois avec N/2 points et la seconde avec N points, puis
en combinant les deux resultats de la mani`ere suivante
4 1
S
N
=
3
T
N


3
T
N/2
(
1.12)
Sachant que le developpement asymptotique de la methode des trap`ezes est
une fonction paire de 1/N
2
, on en deduit que la formule (1.12) donne une
estimation de lintegrale en 1/N
4
, et ce resultat redonne une evaluation
analogue `a la methode de Simpson.
1.3 Methode de
Romberg
1.3 Met hode de Romberg
Lidee de la methode de Romberg sinspire directement de la
remarque faite au paragraphe precedent. Si on calcule successivement par la
methode des trap`ezes les integrales avec un nombres de points N/2
k
, N/2
k1
, . . . , N , on peut rapidement avoir une estimat ion de lintegrale avec une
erreur en O(1/N
2k
) ou` k est le nombre de fois que lon a calcule lintegrale.
La formule iterative utilisee est la suivante
S
k+1
(h) = S
k
(h) +
(S
k
(h)
S
k
(2
h))
(4
k
1)
(1.13)
Le tableau 1.1 resume la procedure recursive employee dans la methode de
Romberg.
Pas Trap`ezes Simpson Boole troisi`eme am
eliorat ion
h
2h
4h
8h
S
1
(h)
S
1
(2h)
S
1
(4h)
S
1
(8h)
S
2
(h)
S
2
(2h)
S
2
(4h)
S
3
(h)
S
3
(2h)
S
4
(h)
Tab. 1.1 Table de Romberg
1.4 Met hodes de Ga uss
Dans les methodes precedentes, nous avons vu quen changeant les
co- efficients de ponderati on des valeurs de la fonction `a integrer aux
abscisses reguli`erement espacees, on pouvait grandement ameliorer la
convergence de la methode. Les methodes de Gauss ajoute nt aux methodes
precedentes de pouvoir utiliser des abscisses non reguli`erement espacees.
Soit W (x) une fonction strictement positive sur lintervalle [a, b], appel
ee fonction de poids, on choisit une suite de points x
i
telle que lint
egrale soit approchee par une somme discr`ete de la forme
Z
b
N
W (x)f (x)dx =
X
w
i
f
i
(1.14)
a
i=1
Quand les abscisses sont reguli`erement espacees, les coefficients
inconnus sont les poids w
i
; cela implique que pour N points dintegrat ion, on
peut obtenir une evaluation exacte de lintegrale jusqu`a un polynome de
degre N 1 si N est pair (trap`ezes) et N si N est impair (Simpson). Les m
ethodes de Gauss utilise le fait si les abscisses et les poids sont des inconnues
`a determiner ; la formule dintegration de Gauss `a N points devient exacte
jusqu`a des polynomes de degre
2N 1, ce qui augmente la precision de levaluat ion sans quil soit n
ecessaire daugmenter le nombre de points `a calculer.
Pour determiner ces 2N param`etres, on sappuie sur la construction
de polynomes orthogonaux. Le principe de cette construction remonte `a
Integration et sommes
discr`etes
Gauss
< p
< p
N 1
|
|
N 1
et Jacobi et a ete largement developpe par Christoffel. Soit un intervalle
(a, b), on introduit le produit scalaire de deux fonctions f et g avec la
fonction de poids W par :
< f |g >
Z
b
W (x)f (x)g(x)dx (1.15)
a
Les fonctions sont dites orthogonales si leur produit scalaire est nul. La fonc-
tion est normalisee quand < f |f >= 1. Un ensemble orthonorme de
fonctions est un ensemble de fonctions toutes normalisees et orthogonales
deux `a deux.
On peut construire de mani`ere systemati que une suite de polynomes
telle que le coefficient du monome de degre le plus eleve soit egal `a un et
telle quils soient tous orthogonaux.
La relation de recurrence est la suivante.
p
1
(x) = 0 (1.16)
p
0
(x) = 1 (1.17)
p
i+1
(x) = (x a
i
)p
i
(x) b
i
p
i1
(x) (1.18)
avec les coefficients a
i
et b
i
determines de la mani`ere suivante
< xp
i |
p
i >
a
i
=
i
|
p
i
(1.19)
>
< xp
i |
p
i1 >
b
i
=
i1
|
p
i1
(1.20)
>
(1.21)
Si lon divise chaque polynome par < p
i
|p
i
>
1/2
, on obt ient alors des polynomes
normalises.
Une propriete fondame ntale de ces polynomes ainsi construits est la
suiv- ante : Le polynome p
i
a exactement j racines distinctes placees sur
lintervalle [a, b]. Chaqu e racine du polynome p
i
se trouve entre deux racines
consecutives du polynome p
i+1
.
Les N racines du polynome p
N
sont choisies comme abscisses dans levalu-
ation de lintegrale de Gauss et les poids w
i
sont calcules `a partir de la formule
< p
1
p
>

xx
i

w
i
=
p (x )p
0
(1.22)
(x ) N 1 i
N
i
=
d
N
< p
N 1
|p
N 1
>
N
(x
)
(1.23)
d
N 1
p
N 1
(
x
i
)
p
0
i
ou` le symbole prime designe la derivee du polynome et d
n
le coefficient du
monome le plus eleve du polynome p
N
3
.
Avec ce choix, on peut montrer en ut ilisant la relation de recurrence, Eq.
(1.18), que < p
i
|p
1
>= 0.
A titre dexemples voici les fonctions de poids classiques que lon utilise pour
calculer une integrale par la methode de Gauss
3
Att ention, la formule 4.5.9 de la reference[1] est incorrecte et doit etre remla cee par
lequa- tion (1.22)
1.5 Methode de Gauss-Kronr od et methodes
adaptati ves
Gauss-Legendre
La fonction de poids est W = 1 sur lintervalle [1, 1]. La relation de
recurrence pour les polynomes de Legendre est
(i + 1)P
i+1
= (2i + 1)xP
i
iP
i1
(1.24)
Gauss-Hermite
La fonction de poids est W = exp(x
2
) sur la droite reelle. La
relation de recurrence pour les polynomes dHermite est
H
i+1
= 2xH
i
2iH
i1
(1.25)
Gauss-Laguerre
La fonction de poids est W = x

e
x
sur lintervalle [0, +[. La relati on
de recurrence pour les polynomes de Laguerre est
(i
+ 1)L

= (x + 2i + + 1)L

(i +
)L

(1.26)
Gauss-Jacobi
i+1 i i1
La fonction de poids est W = (1 x)

(1 + x)

sur lintervalle ] 1, 1[.
La relation de recurrence pour les polynomes de Jacobi est
c
i
P

(, )
(, ) (, )
i+1
=
(d
i
+
e
i
x)P
i

f
i
P
i1
(
1.27)
ou` les coefficients c
i
, d
i
, e
i
et f
i
sont donnes par les relat ions
c
i
= 2(i + 1)(i + + + 1)(2i + + ) (1.28)
d
i
= (2i + + + 1)(
2

2
) (1.29)
e
i
= (2i + + )(2i + + + 1)(2i + + + 2) (1.30)
f
i
= 2(i + )(i + )(2i + + + 2) (1.31)
On peut utiliser des fonctions de poids qui sont integrables sur
lintervalle, sans etre necessairement bornees.
Gauss-Chebyshev
4
La fonction de poids est W = (1 x
2
)
1/2
sur linter-
valle [1, 1]. La relation de recurrence pour les polynomes de
Chebyshev.
T
i+1
= 2xT
i
T
i1
(1.32)
1.5 Met hode de Gauss-Kronr od et meth odes
adap- tat ives
Pour determiner la precision numerique dune integrale, il est n
ecessaire de faire deux evaluat ions differentes et dutiliser la formule de
Romberg pour obtenir une estimation de la precision. Avec une methode de
Cotes, dans lesquelles
4
Pafnuty Lvovich Chebyshev (1821-1894) a un nom dont lorthographe varie un peu
selon les langues, puisquil sagit dune traduction phonetique. En Francais, son nom est g
enerale- ment orthographie Tchebytchev.
les abscisses sont reguli`erement espaces, on peut sans effort de calcul
supple- mentaire (le cout provient essentiellement de levaluat ion de la
fonction aux differents abscisses) obtenir une evaluation de lintegrale en
ut ilisant un point sur deux, ce qui donne une estimation pour un pas
double. Dans une meth- ode de Gauss, les zeros dun polynome ne
concident jamais avec ceux dun polynome de degre plus eleve.
Kronrod, mat hemat icien russe a montre que lon peut choisir un polynome
de degre n + p dont n racines sont les racines du polynome de Gauss.
Notons G(p + n, x) le polynome de degre p + n dont les racines
correspondent aux n + p abscisses de la formule dintegrat ion. Un
polynome de degre n + 2p 1 peut sexprimer sous la
forme
f (x) = G(n + p)h(x) + g(x) (1.33)
ou`
et
g(x) =
n+p1
X
k=0
p1
a
k
x
k
(1.34)
h(x) =
X
b
k
x
k
(1.35)
k=0
On impose les poids pour la nouvelle formule telle que g(x) soit integree
exacte- ment. Cette condition sexprime de la mani`ere suivante
Z
1
G(n + p, x)h(x)dx = 0 (1.36)
1
Comme tout polynome de degre p 1 peut sexprimer comme une
combinaison lineaire de Polynome de Legendre de degre p 1, on a le
syst`eme dequation
Z
1
avec k = 0, 1, ....p
1
G(n + p, x)P (k, x)dx = 0 (1.37)
1
Si p = n + 1, on note G(2n + 1, x) = K (n + 1, x)P (n, x). La condition
Eq (2.1) est alors donnee par
Z
1
K (n + 1, x)P (n, x)P (k, x)dx = 0 (1.38)
1
avec k = 0, 1, ....p 1. Considerant le cas ou` n est impair, on a K (n + 1, x)
qui est une fonction paire et se decompose sur les polynomes de Legendre
comme
n +3
2
K (n + 1, x) =
X
a
i
P (2i 2, x) (1.39)
i=1
Les coefficients a
i
sont calcules par les relations
n +3
2 X
a
i
i=1
Z
1
P (2i 2, x)P (n, x)P (k, x)dx (1.40)
1
Integration et sommes
discr`etes
pour k = 1, . . . n (on choisit a
0
= 1). Pour k pair, ces equations sont
automa- tiquement sat isfaites, les equat ions restantes permette nt devaluer
les coeffi- cients a
i
(cette methode sappelle methode de Pat terson).
Les methodes adaptat ives parte nt du principe que lerreur commise dans le
calcul de lintegrale depend souvent de la portion du segment ou` les
evaluati ons de fonctions sont faites. Si la fonction varie rapidement dans un
intervalle re- strei nt de lensemble du domaine dintegrat ion, il est pref
erable daugmenter la precision du calcul dans cette region plutot que sur la
totalite de lintervalle. Les methodes adaptati ves consistent donc `a couper
le segment en deux et evaluer chaque partie, on compare lestimation de
lerreur par rappport `a la tolerance imposee et lon proc`ede `a une
nouvelle division de lintervalle dans les regions les plus difficiles.
1.6 Integr ales
mult ipl es
Le probl`eme de levaluat ion des integrales multiples est etroitement
lie `ala difficulte de levaluat ion numerique dun tr`es grand nombre de
points pour la fonction consideree. Par exemple dans un espace `a trois
dimensions, si on utilise 30 points dans chacune des directions, il est n
ecessaire de calculer la fonction pour 30
3
points. La situat ion saggrave
tr`es rapidement quand la di- mension de lespace augmente ! Le calcul des int
egrales multiples est neanmoins possible dans un certain nombre de cas. Si
la fonction poss`ede une symetrie import ante, par exemple la symetrie sph
erique dans un espace de dimension d, on peut se ramener de mani`ere
anal ytique `a une integrale `a une dimension (Voir appendice A). De mani`ere
generale, en utilisant une symetrie de la fonction, on peut ramener le calcul
de lintegrale de dimension n `a celui dune integrale de dimension n
0
<< n
ou` les methodes precedentes peuvent encore sappliquer.
Dans le cas ou` il nexiste pas de symetrie, la methode la plus efficace est
la methode dite de Monte Carlo dont le principe est decrit dans le cours
Simulation numerique en Physique Stati stique.(http ://pascal.viot.com)
1.6 Integrales
multiples
13
Chapitre 2
Fonctions speciales et
evaluation de foncti ons
Contenu
2.1 Introduct ion . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Fonctions tran scen dantes simples . . . . . . . . . . . 14
2.3 Fonction Gamma . . . . . . . . . . . . . . . . . . . . . 14
2.3.1 Definition et proprietes . . . . . . . . . . . . . . .
. .
14
2.3.2 Fonctions reliees : , B . . . . . . . . . . . . . . . .
.
16
2.4 Fonctions de Bessel . . . . . . . . . . . . . . . . . . . 18
2.5 Fonctions Hypergeometri ques . . . . . . . . . . . .
.
20
2.5.1 Fonction Hypergeometrique Gaussienne . . . . . . .
.
20
2.5.2 Fonctions Hypergeometriques generalisees . . . .
. . .
20
2.6 Fonction erreur, expone ntielle integrale . . . . . . . 21
2.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . 22
2.1 Introduct ion
Les fonctions speciales sont definies de mani`ere assez imprecise,
puisquelles regroupent les fonctions que lusage (ou la frequence dutilisat ion)
a fini par as- socier `a un nom. Parmi ces fonctions, on trouve un grand
nombre de fonctions qui sont des solutions dequations differentielles du
second ordre, sans que cette propriete soit exclusive. Ces fonctions sont
tout efois tr`es utiles, car elles appa- raissent tr`es souvent, d`es que lon
cherche `a resoudre des equat ions differentielles du second ordre dont les
coefficients ne sont pas constants. Les fonctions spe- ciales sont disponibles
en programmation sous la forme de biblioth`eques. Elles sont aussi definies
pour un grand nombre dentre elles dans les logiciels de cal- cul symbolique
(Maple, Mat hemati ca,...). Dans la suite de ce cours, nous allons definir une
partie dentre elles et decrire les methodes numeriques utilisees dans les
biblioth`eques de programmes pour le calcul de ces fonctions.
Fonctions speciales et evaluat ion de
fonctions

(
x
)
14
20
15
10
5
0
-5
-10
-15
-20
-4 -3 -2 -1 0 1 2 3 4
Fig. 2.1 La fonction (x) en fonction de x.
2.2 Fonctions transce nda ntes simpl es
Les fonctions les plus simples que lon rencontre lors de lapprentissage des
mat hemati ques sont tout dabord les monomes, puis les polynomes, et enfin
les fractions rationnelles. Le calcul de la valeur de la fonction pour un
argument reel ou complexe necessite un nombre fini des quatre operat ions
elementaires que sont laddition, la soustraction, la multiplication et la
division.
Les premi`eres fonctions transcendantes que lon rencontre sont alors les
fonc- tions trigonometriques (sin, cos,tan, arccos, arcsin) ainsi que leurs
fonctions in- verses. Les fonctions exp et log representent generalement le
reste de larsenal des fonctions transcendantes definies dans un cursus de
premier, voire de second cycle universitaire.
2.3 Fonction Ga mma
2.3.1 Definit ion et pro pr ietes
La fonction Gamma est generalement definie par lintegrale suivante
(z) =
Z

t
z1
e
t
dt (2.1)
0
quand la partie reelle de z est strictement positive, Re(z) > 0).

1
2
La formule dEuler donne une expression de la fonction pour toute valeur
de z complexe hormis les valeurs de z enti`eres negati ves ou` la fonction
poss`ede des poles :
(z) = lim
n!n
z
(2.2)
n z(z + 1) . . . (z + n)
En integrant par par ties lequat ion (2.1), on peut facilement montrer
que
(z + 1) = z(z) (2.3)
En verifiant que (1) = 1, on obt ient par recurrence que
(n + 1) = n! (2.4)
Avec cette definition, la fonction apparat comme un prolongement
anal ytique de la fonction factorielle definie sur N. Dapr`es lequat ion (2.2),
la fonction a un pole en 0 et pour toutes les valeurs enti`eres negat ives
(voir Fig. (2.1)).
La formule suivante permet de relier la fonction entre les valeurs situ
ees dans le demi-plan complexe ou` Re(z) > 1 et celui ou` Re(z) < 1 :
(1 z) =

(2.5)
(z) sin(z)
Pour calculer numeriquement la fonction pour une valeur de z en dehors
des poles, il est necessaire de developper cette fonction sur la base des
polynomes et des exponentielles. La formule la plus precise est celle de
Lancz`os. Ce developpe- ment est specifique `a la fonction . La formule
qui sinspire de la formule de Stirling bien connue pour la fonction factorielle
nest valable que pour Re(z) > 0 et est donnee par
(z + 1) =
1

z+
2
z + +
2
e
(z++
1
)

c
1 c2 cN
2 c
0
+

z + 1
+
z + 2
+ . . . +
z + N
+ (2.6)
ou` est le param`etre estimant lerreur. Pour le choix particulier = 5, N =
6 et c
0
tr`es voisin de 1, on a | | < 2.10
10
.
Il est difficile de calculer la fonction pour des valeurs de z un peu impor-
tantes. Cela resulte de la croissance tr`es rapide de la fonction . On peut
mon- trer que la fonction crot plus vite que toute exponentielle, comme de
mani`ere analogue on montre que lexponentielle crot plus vite que tout
polynome. On dit parfois que la fonction a une croissance super-
exponentielle.
Dans de nombreuses formules, la fonction apparat `a la fois au num
erat eur et au denominat eur dune expression. Chacun des termes peut etre
tr`es impor- tant, mais le rapport est souvent un nombre relat ivement modeste.
Pour calculer numeriquement ce type dexpression, il est preferable de
calculer ln((z)) (voir Fig. 2.2). Ainsi la fract ion est alors lexponentielle de
la difference de deux logarithmes. Tous les nombres qui interviennent dans
ce calcul sont exponen- tiellement plus petits que ceux qui apparai ssent dans
un calcul direct, on evite ainsi le depassement de capacite de lordinat eur.
l
n
(

(
x
)
20
15
10
5
0
0 2 4 6 8 10
x
Fig. 2.2 La fonction ln((x)) en fonction de x.
On definit la fonction incompl`ete
1
comme
Z
x
(a, x) = t
a1
e
t
dt (2.7)
0
La fonction normalisee suivante P (a, x)
P (a, x) =
(a, x)
(a)
(2.8)
est parfois appelee aussi fonction Gamma incompl`ete. On peut montrer
que P (a, x) est monotone croissante avec x. La fonction est tr`es proche de 0
quand x est inferieur `a a 1 et proche de 1 quand x est tr`es superieur.
La variation entre ces deux valeurs apparat autour de labscisse a 1 et sur
une largeur de
lordre de

a (voir figure 2.3).


2.3.2 Fonctions rel iees : ,
B
A partir de la fonction , on definit des fonctions derivees. En raison
de leur grande frequence dut ilisat ion, elles ont recu un nom. Ainsi, la
fonction , appelee aussi fonction Digamma est definie comme la derivee
logarithmique
1
Noter que dans le logiciel Maple, la fonction Gamma et les fonctions Gamma
incompl`etes sont les seules fonctions definies avec des lettres capitales.
P
(
a
,
x
)

X
n
1
0.8
a=1
a=3
0.6
a=10
0.4
0.2
0
0 2 4 6 8 10 12 14
x
Fig. 2.3 La fonction P (a, x) en fonction de x pour trois valeurs de a (a =
1, 3, 10).
de la fonction Gamma
2
:
(x) =
d ln((x))
dx
(2.10)
Parmi les proprietes remarquables de la fonction , notons que, pour
des valeurs enti`eres, on a
n1
1
(n) = +
i
(2.11)
i=1
ou` = 0.577 . . . est la constante dEuler.
Les fonctions Beta qui sont notees paradoxalement avec un B sont d
efinies par la relation :
B(z, w) =
(z)(w)
(2.12)
(z + w)
2
On definit aussi les fonctions polygamma comme une generalisation de la fonction
Digamma
(n, x) =
d
(x)
(2.9)
dx
n
Y

(
x
)
,
J

(
x
)
1
0.5
0
-0.5
J0
J1
J2
-1
J3
Y0
Y1
Y2
-1.5
Y3
-2
0 2 4 6 8 10
x
Fig. 2.4 Les quatre premi`eres fonctions de Bessel enti`eres de premi`ere
es- p`ece et de deuxi`eme esp`ece. Ces fonctions sont presentes dans toutes
les biblio- th`eques mat hemat iques de programmation, dans les logiciels de
calcul symbol- ique comme Maple et dans un logiciel graphique comme
xmgrace.
2.4 Fonctions de Bessel
Les fonctions de Bessel sont definies de la mani`ere suivante : consid
erons lequat ion differentielle du second ordre
x
2
y
0 0
+ xy
0
+ (x
2

2
)y = 0 (2.13)
Les solutions de cette equat ion sont appelees fonctions de Bessel de
premi`ere
et de deuxi`eme esp`ece : La solution finie `a lorigine et notee J

(x) est
appelee fonction de Bessel de premi`ere esp`ece et la seconde solution not
ee Y

(x) est appelee fonction de Bessel de deuxi`eme esp`ece. Si nest
pas un entier, ces fonctions sont reliees par la relation suivante :
Y

(x) =
J

(x)
cos( ) J

(x)

(2.14)
sin( )
La figure 2.4 represente graphiquement les fonctions de Bessel de
premi`ere et de seconde esp`eces pour les quatre premi`eres valeurs enti`eres
de
Le comportement asymptotique des fonctions de Bessel de premi`ere et de
Fonctions speciales et evaluat ion de
fonctions
K

(
x
)
,
I

(
x
)


4
I0
I1
3.5 I2
I3
K0
3
K1
K2
K3
2.5
2
1.5
1
0.5
0
0 2 4
x
Fig. 2.5 Les quatre premi`eres fonctions de Bessel enti`eres modifiees de
pre- mi`ere et de deuxi`eme esp`ece. Ces fonctions sont presentes dans
toutes les bib- lioth`eques mat hemat iques de programmation, dans les
logiciels de calcul sym- bolique comme Maple et dans un logiciel graphique
comme xmgrace.
seconde esp`ece est le suivant
J

(x) '
Y

(x) '
r
2
(cos(x /2 /4)) (2.15)
x
r
2
(sin(x /2 /4)) (2.16)
x
Soit lequat ion differentielle du second
ordre
x
2
y
0 0
+ xy
0
(x
2

2
)y = 0 (2.17)
Les solutions de cette equat ion sont appelees fonctions de Bessel modifiees .
La
solution finie `a lorigine et notee I

(x) est appelee fonction de Bessel
modifiee de premi`ere esp`ece et la seconde solution notee K

(x) est appel
ee fonction de Bessel modifiee de seconde esp`ece. Ces fonctions sont reli
ees par la relation suivante :
K

(x) =
(I

(
x) I

(x))

(2.18)
2.4 Fonctions de Bessel
2 sin( )
La figure 2.5 represente graphiquement les fonctions de Bessel modifiees
de premi`ere et de deuxi`eme esp`ece pour les quatre premi`eres valeurs
enti`eres de .

X
Le comportement asymptotique des fonctions de Bessel modifiees est le
suiv- ant :
e
z
I

(x)
'
2x
(2.19)
K

(x) '
r

z
2x
e
(2.20)
Les fonctions de Hankel H
1,
and H
2,
sont appelees fonctions de Bessel
de troisi`eme esp`ece et sont definies par la relation
H
1,
(x) =J

(x) + iY

(x) (2.21)
H
2,
(x) =J

(x) iY

(x) (2.22)
2.5 Fonctions Hypergeometr iques
2.5.1 Fonction Hypergeomet rique Gaussienne
Les fonctions hypergeometriques gaussiennes sont definies comme
etant les solutions de lequat ion differentielle suivante.
x(1 x)y
0 0
+ [c (a + b + 1)x]y
0
aby = 0 (2.23)
ou` a, b et c sont des constantes.
Si c, a b et c a b sont non entiers, la solution generale de cette equat ion
est
y = F (a, b; c; x) + Bx
1c
F (a c + 1, b c + 1; 2 c; x) (2.24)
La fonction F peut etre exprimee sous la forme dune s
erie
F (a, b; c; x)
2
F
1
(a, b, c; x)
(c)

(a + n)(b + n) x
n
=
X
(2.25)
(a)(b)
n=0
(c + n) n!
Cette serie converge uniformement `a linterieur du disque unite. D`es
que a, b ou c sont entiers, la fonction hypergeometrique peut se reduire `a
une fonction transcendante plus simple. Par exemple,
2
F
1
(1, 1, 2; x) = x
1
ln(1 x)
2.5.2 Fonctions Hypergeometr iques gen
eralisees
On definit des fonctions hypergeometriques generalisees de la
mani`ere suiv- ante : soit le rapport


a
1,
a
2,
. . . , a
p


(a1)k (a2 )k . . . (a
p )k
x
k
; z =
(2.26)
p
F
q
b1, b
2
, . . . ,
b
q
k=0
(b
1
)
k
(b
2
)
k
. . . (b
q
)
k
k!
ou` on a utilise la notation de Pochhammer
(a + k)
(a)
k
=
(2.27)
(a)
Fonctions speciales et evaluat ion de
fonctions
3
E
n
(
x
)
t
x
4
E
1
E
2
E
3
E
4
2
1
0
0 1 2 3 4
x
Fig. 2.6 Les quatre premi`eres fonctions exponentielles integrales
(fonctions E
n
. Ces fonctions sont presentes dans tout es les biblioth`eques
mat hemat iques de programmation, dans les logiciels de calcul symbolique
comme Maple et dans un logiciel graphique comme xmgrace.
2.6 Fonction erreur, exponentielle int
egr ale
La fonction erreur et la fonction erreur complementaire sont definies comme
2
erf (x) =

Z
x
2
e

0
dt (2.28)
erf c(x) = 1 erf (x)
2
=

Z

e
t
2
x
dt (2.29)
La fonction erf est aussi presente dans toutes les biblioth`eques standard
de programmat ion.
La fonction exponentielle integrale Ei est definie comme la valeur
principale de lintegrale suivante pour x > 0.
Z
x
Ei(x) =

e
t
dt (2.30)
t
Le developpement en serie de cette fonction donne

n
Ei(x) = + ln(x) +
X
(2.31)
2.6 Fonction erreur, exponentielle int
egrale n=1
n n!
Pour des grandes valeurs de x, on a le developpement asymptotique suivant
Ei(x) '
e
x

x
1
1 + + . . .
x
(2.32)
De mani`ere generale, on definit les exponentielles integrales E
n
(x) comme
Z

e
zt
E
n
(z) =
1
dt (2.33)
t
n
La Figure 2.6 represente les quatre premi`eres exponentielles integrales. Le d
eveloppe- ment en serie de cette fonction donne

E
1
(x) = ( + ln(x)) +
X
(1)
n
n=1
x
n
n n!
(2.34)
La fonction E
i
(1, x) nest definie que pour des arguments reels : Pour x <
0, on a
E
i
(x) = E
i
(1, x) (2.35)
On peut noter que les exponentielles integrales E
n
(x) sont reliees `a la
fonc- tion par la relation
E
n
(x) = x
n1
(1 n, x) (2.36)
2.7 Conclus ion
Cette introduction aux fonctions speciales est tr`es loin detre exhaustive
; il existe de nombreuses autres fonctions dites speciales : les fonctions
elliptiques, les fonctions de Fresnel, les fonctions de Meier,. . . . Le d
eveloppement de bib- lioth`eques qui permette nt de calculer les valeurs de
ces fonctions est un secteur tr`es actif et nous disposerons dans les annees
futures de biblioth`eques encore plus performantes.
23
Chapitre 3
Interpolation de fonct ions
Contenu
3.1 Introduct ion . . . . . . . . . . . . . . . . . . . . . . . 23
3.2 Fonctions `a une variable . . . . . . . . . . . . . . . . 24
3.2.1 Algorithme de Neville . . . . . . . . . . . . . . . . . . 24
3.2.2 Polynomes de Chebyshev . . . . . . . . . . . . . . . . 25
3.2.3 Methodes de lissage (Spline) . . . . . . . . . . . . .
.
26
3.2.4 Approximants de Pade . . . . . . . . . . . . . . . . .
.
28
3.2.5 Algorithme de Remez . . . . . . . . . . . . . . . . . . 30
3.3 Fonctions `a plusieurs variables . . . . . . . . . . . . 30
3.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . 30
3.3.2 Interpolations bilineaire et bicubiques . . . . . . . . . 31
3.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . 32
3.1 Introduct ion
Pour evaluer une fonction, il est frequent de ne disposer que de ses
valeurs sur un ensemble fini de points. Dans le cas le plus simple dune
fonction `a une variable, ces points sont souvent disposes sur un reseau r
egulier unidimension- nel. Il est souvent necessaire de pouvoir evaluer
cette fonction en dehors de cet ensemble de points. Si le point `a evaluer
se situe `a linterieur dun inter- valle elementaire constitue de deux
points consecutifs du reseau, la procedure dappr oximation de la fonction
par une fonction plus simple (tr`es souvent un polynome) sappelle une
interpolat ion. Quand le point `a evaluer se situe en dehors des bornes du
reseau, la procedure dapproximation sappelle une ex- trapolation.
La mise en place dune interpolat ion pour une fonction evaluee
initialement sur un reseau consiste `a optimiser la fonction approchante en
utilisant lensem- ble des donnees. Le probl`eme est de savoir si lensemble
des donnees doit etre utilisee en une seule fois pour determiner une unique
fonction sur lensemble de lintervalle ou si on doit construire une succession de
fonctions approchantes en utilisant des donnees locales. Nous allons voir que
les reponses sont adaptees
Interpolation de fonctions
24
1.0
0.75
0.5
0.25
1.0 0.5
x
0.0
0.0 0.5 1.0
Fig. 3.1 Trace de la fonction triangle et des interpolat ions polynomiales
de degre 4 (courbe rouge) et 10 (courbe noire).
en fonction des proprietes de regularite de la fonction que lon veut
interpoler ainsi que le type de fonctions approchantes utilisees.
Sur la base de ce qui nous avons vu dans le premier chapitre, les polynomes
sont a priori de bons candidats pour approximer des fonctions ; nous allons voir
ci-dessous que cela nest pas aussi simple et quil existe des situati ons ou` le
fait de prendre un polynome de degre de plus en plus eleve deteriore la
qualite de lapproximati on. En general, une fonction dont les derivees
reste nt bornees peut
etre approchee avec precision avec une interpolation polynomiale de degre
eleve qui necessite de faire intervenir les valeurs de la fonction sur une
ensemble de points assez grand. Dans le cas ou` la fonction poss`ede des
discontinuites dans sa derivee, une interpolat ion locale basee sur un petit
nombre de points est alors plus precise.
3.2 Fonctions `a une
variable
3.2.1 Algorithme de Neville
Une approche naive consiste `a utiliser les N points ou`
3.2 Fonctions `a une
variable
25
la fonction a ete
evaluee y
i
= f (x
i
) pour i = 1, n et `a interpoler par un polynome dordre N avec
(x
N
la formule de Lagrange.
(x x
2)(x
x
3 )..
.(x
1
x
N )
P (x) =
1
x
2
)(x
1
x
3
)...(x
1

x )
y
1
+
+
(x x
1
)(x x
3
)...(x
1
x
N
)
(x
2
x
1
)(x
2
x
3
)...(x
2
x
N
)
y
2
+ ...
+
(x x
1
)(x x
3
)...(x
1
x
N 1
)
(x
N
x
1
)(x
N
x
3
)...(x
N
x
N
1
)
y
N
(3.1)
Pour construire une methode iterat ive plus simple, il existe la methode
de Neville basee sur une structure hierarchique. Le principe est le suivant :
ii on a N points ou` la fonction a ete evaluee, on consid`ere que ces
points representent une approximati on dordre 0 du polynome.
Larborescence de la construction des polynomes dinterpolation par la m
eth- ode de Neville a la structure suivante :
P
1
P
2
P
3
P
4
... P
N 1
P
N
P
12
P
23
P
34
...
P
(N 1)N
P
123
P
234
... ...
P
1234
... ...
...
P
1234... (N 1)N
A partir des N polynomes constants, on construit les N 1 polynomes de
degre 1, puis les N 2 polynomes de degre 2 et ainsi de suite jusqu`a
obtenir le polynome de degre N 1. Le polynome obtenu `a la fin est bien
evidemment identique `a celui decrit par la formule de Lagran ge.
La formule de recurrence pour cette construction est la suivante
(x x
i+m )
P
i(i+1) ... (i+m1)
(x
i
x)P
(i+1)( i+2) ...(i+m)
P
i(i+1) ...(i+m)
=
(x
i

+
x
i+m
) (x
i

x
i+m
)
. (3.2)
3.2.2 Polynomes de Che byshev
Dans le cas,
ou`
la fonction `a interpoler est continue, mais poss`ede des
derivees discontinues, la procedure de Neville ne converge pas uniform
ement. La figure 3.1 illustre la mani`ere dont des polynomes dinterpolation
de degre crois- sant interpole difficilement la region ou` la fonction continue
a une discontinuite de la derivee. En augmentant le degre du polynome, on
voit clairement que lap- proximation est meilleure au centre mais se deteriore
gravement sur les bords de lintervalle. En ut ilisant un developpement sur les
polynomes de Chebyshev, on obtient une interpolat ion avec des polynomes de
degres identiques, cest-a-dire
4 et 10, les approximations qui apparaissent sur la figure 3.2. Le resultat
est spectaculaire. Notons quavec cette procedure lappr oximation obtenue ne
passe pas par tous les points dun reseau regulier. (voir Fig. 3.2).
1,0
0,75
0,5
0,25
1,0 0,5
x
0,0
0,0 0,5 1,0
fonction
ordre 4
ordre 10
Fig. 3.2 Trace de la fonction triangle et des interpolations par
polynomes de Tchebyshev de degre 4 et 10.
3.2.3 Methodes de lissage (Spli ne)
Comme nous lavons vu ci-dessus, les interpolations de fonction avec lutili-
sat ion de polynomes de degre eleve peuvent conduire `a des defauts tr`es
impor- tants situes sur les limites de lintervalle ou` la fonction est definie.
Inversement, lapproximati on locale par une droite joignant deux points con
ecutifs presente le defaut import ant que la derivee de la fonction
interpolante a une derivee con- stante et discontinue sur chaque intervalle et
une derivee seconde nulle presque part out.
La methode spline minimise une sorte denergie elast ique et consiste `a
im- poser que la derivee premi`ere de la fonction interpolante soit continue
et que la derivee seconde le soit aussi sur la tot alite de lintervalle de d
efinition de la fonction.
Si on note (x
i
, y
i
= f (x
i
)) la suite de couples abscisse-ordonnee ou` la
fonction a ete calculee, lapproximat ion cubique se construit de la mani`ere
suivante
y = A(x)y
i
+ B(x)y
i+1
+ C (x) y
i
+ D(x) y
i+1
(3.3)
ou` A, B, C and D sont des fonctions de x. Ces fonctions sont determinees
par les contraintes suivantes :
A et B sont determinees par une interpolat ion lineaire. Ce qui donne
A(x) =
x
i+1

x
x
i+1
x
i
(3.4)
2
10,0
7,5
0.05
5,0
2,5
x
4 2
0.025
0 2 4
0.0
0.025
4 2
x
0,0
2,5
0 2 4
fonction
Spline
0.05
0.075
0.1
Fig. 3.3 Figure de gauche : trace de la fonction donnee par lequat ion
(3.11) ainsi que lapproximat ion donnee par un Spline cubique. Figure de
droite : trace de la difference pour la.
et
B(x) =
x x
i
x
i+1

x
i
(3.5)
C (x) et D(x) doivent sannuler sur les limites de lintervalle [x
i
, x
i+1
]
et sont des polynomes de degre 2 en x.
Il est facile de verifier que
1
3
C (x) =
6
(A(x)
et
1
3
A(x)) (x
i+1
x
i
) ) (3.6)
2
conviennent
D(x) =
6
(B(x) B(x)) (x
i+1
x
i
) ) (3.7)
En effet en derivant deux fois par rapport `a x, lequat ion (3.3), on obt ient
d
2
y
dx
2
= A
00
(x)y
i
+ B
00
(x)y
i+1
(3.8)
et donc sat isfait bien les contraintes exprimees ci-dessus.
Dans le cas ou` les derivees (premi`ere et seconde) de la fonction ne sont
pas connues, on peut estimer ces derivees en imposant que la derivee de
lapproxi- mat ion est continue, cest-a-dire que
dy
=
y
i+1
y
i 3A(x)
2
1
(x
3B(x)
2
x )y
0 0
+
1
(x x )y
0 0
(3.9)
dx x
i+1
x
i

6
i+1


i
i
6
i+1


i
i+1
Cela donne un syst`eme dequations pour les derivees secondes
x
i
x
i+1
i1
+
x
i+1
x
i1
yi
+
x
i+1
x
i
yi+1
=
y
i+1
y
i
y
i
y
i1

(3.10)
6
y0 0
0 0
0 0
3 6
x
i+1

x
i
x
i

x
i1
8
6
4
x
2
4 2 0 2 4
0
2
4
6
8
10
12
Fig. 3.4 Trace des derivees secondes de la fonction (3.11) (courbe rouge)
et de son appr oximation (courbe verte).
On a donc N inconnues pour N 2 equat ions ; pour lever lind
eterminat ion, on peut imposer que la derivee seconde de la fonction
sannule aux extremites de lintervalle total.
Ce compromis permet de davoir une appr oximation qui convient `a
un grande nombre de fonctions. Pour illustrer cette methode, nous consid
erons la fonction suivante
y = x
2
+ 6(e
x
2
1) (3.11)
La figure 3.3 presente la fonction ainsi que son appr oximation sur un reseau
de pas egal `a 2 pour la fonction donnee par lequat ion (3.11) sur la figure de
gauche. La figure de droite montre la difference entre la fonction et son
approximat ion.
Les derivees secondes de la fonction et lapproximation sont tracees sur
le meme intervalle (Voir Fig. 3.4). Lappr oximation cubique conduit `a une d
erivee seconde continue sur la total ite de lintervalle et sannule bien aux
fronti`eres de cet intervalle. Si une interpolation lineaire avait ete faite sur
chaque intervalle
elementaire la derivee seconde serait nulle presque partout sur cet
intervalle. Lappr oximation cubique est donc un compromis raisonnable.
3.2.4 Appr oxima nts de Pad
e
Il est frequent en Physique dobtenir un developpement perturbat if
dune fonction pour un nombre de derivees limite. Dans le cas ou` la
fonction inconnue
2,0
1,6
1,2
0,8
0,4
2 1
x
0,0
0 1 2
0,4
0,8
y
1,2
1,6
2,0
Fig. 3.5 Trace de la fonction donnee par lequat ion (3.12) et des d
eveloppe- ments `a lordre 4, 6, 18, 20.
a un developpement en serie dont le rayon de convergence est fini, toute
ap- proximation polynomiale ne permet pas dobtenir une approche de la
fonction au del`a du rayon de convergence du developpement en serie
enti`ere. De plus, une approximation de degre de plus en plus eleve
donnera une approximation de plus en plus mediocre quand on sapproche
du rayon de convergence. Ce phenom`ene est illustree sur la Figure 3.5 ou`
lon consid`ere la fonction
exp(x
2
)
f (x) = (3.12)
1 + x
2
et ou` les polynomes sont bases sur le developpement en x `a lordre 4, 6,
18, 20 et sont traces conjointement avec la fonction f (x).
Pour remedier `a ce type de defaut , les approximants de Pade sont bas
es sur une interpolati on ut ilisant une fraction rationnelle,
P a[m, n] =
P
m
(
x)
Q
n
(x)
(3.13)
ou` le polynome P
m
(x) est un polynomes de degre m et Q
n
(x) est un
polynome de degre n dont le coefficient constant est egal `a 1. Ainsi un
approximation de Pade dordre [m, n] est une fraction rationnelle dont m + n
+ 1 coefficients sont
`a determiner. Quand on connait la valeur dune fonction et ses n + m deriv
ees en un point, on peut calculer n + m approximants differents. Les
approxima- tions de Pade dordre [8, 0], [6, 2], [4, 4], [2, 6] ainsi que la
fonction sont tracees
1,0
0,75
y 0,5
0,25
2 1
x
0,0
0 1 2
Fig. 3.6 Trace de la fonction et des approximants de Pade [8, 0] et [6, 2]
sur la partie gauche et [4, 4]et[2,6] sur la partie droite.
sur la figure 3.6. On voit clairement que les approximations par des fract ions
rationnelles evitent la singularite liee au rayon de convergence pour |x| = 1.
De plus, lappr oximation [2, 6] tend vers zero quand largument de x est
grand et corres pond une meilleure approximation sur la totalite de
lintervalle.
3.2.5 Algorithme de Remez
Pour obtenir la meilleure approximation dune fonction sur un intervalle
donne, il existe une methode, appelee algorithme de Remez, qui approche
une fonction f (x) sur un intervalle donne en minimisant lexpression suivante
M ax( w(x)|f (x) r(x)|) (3.14)
pour tout x appartena nt `a lintervalle donne, w(x), une fonction de poids
pos- itive et r(x) est la fraction rationnelle que lon cherche `a determiner.
Le detail de la methode depasse le cadre de ce cours, mais cette methode est
implementee dans le logiciel Maple par exemple.
3.3 Fonctions `a plusieurs
variabl es
3.3.1 Introduct ion
Pour des raisons de capacite memoire sur les ordinateurs, la plupart
des fonctions de plusieurs variables que lon doit interpoler sont des
fonctions `adeux variables ou `a trois variables au maximum. La necessite
de proceder `a une interpolation intervient par exemple dans le calcul
dequat ions integrales.
3.3 Fonctions `a plusieurs
variables
3.3.2 Inter polations bilineaire et bicubique s
Pour une fonctoin tabulee sur un reseau carre regulier, lapproximat ion
bil- ineaire consiste `a utiliser un polynome `a deux variables qui donne sur
chacune des aretes dun carre elementaire la valeur exacte de la fonction.
Soit x
i
= x
0
+ hi avec i entier et y
j
= y
0
+ hj, pour la cellule el
ementaire delimite par les points (x
i
, y
j
),(x
i
, y
j+1
),(x
i+1
, y
j+1
),(x
i+1
, y
j
),
on a le polynome suivant
P (x, y) =h
2
((x x
i+1
)(y y
i+1
)f
ij
+ (x x
i+1
)(y y
i
)f
ij+1
+(x x
i+1
)(y y
i
)f
i+1j
+ (x x
i
)(y y
i
)f
i+1j+1
) (3.15)
Avec cette appr oximation, les derivees partielles secondes de cette
approx- imat ion sont toutes nulles, ce qui peut etre insuffisant pour la qualit
e de lap- proximation. Dans le cas ou` les derivees premi`eres ainsi que la
(ou les) derivee(s) croisee(s) seconde(s) est (sont) connue(s), on peut faire
une meilleure approx- imation appelee appr oximation bicubique. En
utilisant le fait que lapproxi- mation doit donner exact ement les valeurs de
la fonction ainsi que celles des derivees premi`eres et des derivees croisees
secondes, cela donne seize coefficients
`a determiner. En notant
y
x
1
y
x
2

2
y
= y
,1
= y
,2
(3.16)
(3.17)
x
1
x
2
= y
,12
(3.18)
(3.19)
on doit resoudre le syst`eme dequations suivant
4 4
y(x
1
, x
2
) =
X X
c
ij
t
i1
u
j1
(3.20)
i=1 j=1
4 4
y
,1
(x
1
, x
2
) =
X X
(i 1)c
ij
t
i2
u
j1
(3.21)
i=1 j=1
4 4
y
,2
(x
1
, x
2
) =
X X
(j 1)c
ij
t
i1
u
j2
(3.22)
i=1 j=1
4 4
y
,12
(x
1
, x
2
) =
X X
(i 1)(j 1)c
ij
t
i2
u
j2
(3.23)
i=1 j=1
ou` c
ij
sont les seize coefficients `a determiner
avec
t =
x
1

x
1,i
x
1,i+1

x
1,i
u =
x
2

x
2,i
x
2,i+1

x
2,i
Interpolation de fonctions
(3.24)
(3.25) (3.26)
x
1,i
et x
2,i
designent les points du reseau. Ce type de formule se gen
eralise aisement en dimensions 3.
3.4 Conclus ion
Le choix de lappr oximation dune fonction connue sur un ensemble discret
de points est un probl`eme delicat et quil convient de tester avec soin
pour obtenir des resultat s exploitables.
33
Chapitre 4
Racines dequations
Contenu
4.1 Introduct ion . . . . . . . . . . . . . . . . . . . . . . . 33
4.2 Di chotomie . . . . . . . . . . . . . . . . . . . . . . . . 34
4.3 Methode de Ridder . . . . . . . . . . . . . . . . . . . 35
4.3.1 Methode de la position fausse . . . . . . . . . . . . . . 35
4.3.2 Methode de Ridder . . . . . . . . . . . . . . . . . . . . 36
4.4 Methode de Bre nt . . . . . . . . . . . . . . . . . . . . 37
4.5 Newton-Raphson . . . . . . . . . . . . . . . . . . . . . 37
4.6 Racines de Polynomes . . . . . . . . . . . . . . . . . 38
4.6.1 Reduction polynomiale . . . . . . . . . . . . . . . . . . 38
4.6.2 Methode de Laguerre . . . . . . . . . . . . . . . . . . 39
4.1 Introduct ion
Lune des taches rencontrees frequemment lors dun calcul est la
recherche de la racine dune equat ion. Sans perte de generalite, on peut
toujours ecrire une equat ion ou` le membre de droite est egal `a zero,
f (x) = 0 (4.1)
Si x est une variable scalaire, le probl`eme est unidimensionnel. Si x est
une
variable vectorielle (`a N dimensions) et que lon a N equations `a satisfaire,
on
peut formellement ecrire sous une notation
vectorielle
f (x) = 0 (4.2)
Malgre la similarite des equati ons (4.1) et (4.2), un syst`eme dequat ions
`a N
variables est considerablement plus complique `a resoudre quun syst`eme
unidi- mensionnel. La raison vient du fait que la methode generale pour la
34
recherche de racines est liee `a la capacite dencadrer numeriquement la r
egion ou` le syst`eme dequat ions poss`ede une racine particuli`ere.
On exclut de ce chapitre le cas des syst`emes lineaires qui sera traite
dans le chapitre de lalg`ebre lineaire. Le principe dominant la recherche
de racines
4.3 Methode de
Ridder
2
2
2
35
dequat ions est celui de methodes iterat ives, ou` en parta nt dune valeur
dessai (ou un couple de valeurs dessai), on sapproche de plus en plus
pr`es de la solution exacte. Il est evident quune estimation de depart
raisonnable associee
`a une fonction f qui varie suffisamment lentement est necessaire pour
obtenir une convergence vers la solution recherchee.
Nous allons considerer le probl`eme unidimensionnel pour lequel
plusieurs methodes sont disponibles afin de choisir la methode la mieux
adaptee compte tenu des informations que lon dispose sur la fonction f . Une
derni`ere partie de ce chapitre sera consacree aux methodes plus sp
ecifiques pour la recherche de racines de polynomes
4.2 Di chotomi e
Comme nous lavons mentionne ci-dessus, la cle de la recherche de
racines dequat ions repose sur lexistence dun encadrement prealable de
cette racine. Sil existe un couple (a, b) tel que le produit f (a)f (b) < 0 et si
la fonction est continue, le theor`eme de la valeur intermediaire nous dit
que fonction sannule au moins une fois `a linterieur de cet intervalle.
La methode de dichotomie est une methode qui ne peut pas echouer ,
mais sa rapidite de convergence nest pas la meilleure en comparaison avec les
autres methodes. Lidee de cette methode est la suivante : soit une fonction f
monotone sur un intervalle [a
0
, b
0
] telle que f (a
0
)f (b
0
) < 0 , on sait alors
quil existe une et une seule racine comprise dans cet intervalle.
Lalgorithme de la methode de dichotomie est le suivante : tout dabord,
on calcule f (
a
0
+b
0
).
Si f (
a
0
+b
0
)f (a
0
) < 0, on definit un nouvel encadrement de la racine
par le couple (a
1
, b
1
) tel que
a
1
= a
0
(4.3)
a
0 +
b
0
b
1
=
2
. (4.4)
Si f (
a
0
+b
0
)f (a
0
) > 0, alors on definit un nouvel encadrement de la
racine par le couple (a
1
, b
1
) tel que
a
1
=
a
0
+
b
0
(
4.5)
2
b
1
= b
0
. (4.6)
En iterant cette methode, on obt ient une suite de couple (a
n
, b
n
) telle que

n
= b
n
a
n
verifie la relat ion

n+1
=

n
(4.7)
2
ou`
0
= (b
0
a
0
)/2 Cela signifie que si lon se fixe la tolerance qui repr
esente la precision `a laquelle on souhaite obtenir la racine, on a un nombre
diterati ons
`a effectuer egal `a
n = ln
2

|b
0
a
0
|
Racines
dequat ions
36

(4.8)
0
0
ou` la notation ln
2
signifie le logarithme en base
2.
Le choix de la valeur de la tolerance necessite quelques precautions. Si
la racine recherchee est de lordre de lunite, on peut tr`es raisonnablement
choisir
0
de lordre de 10
6
`a 10
13
selon que lon travaille en simple ou double pr
ecision.
Par contre pour une racine dont la valeur est de lordre de 10
10
, une pr
ecision de 10
4
sera la valeur maximale que lon peut atteindre en double
precision. Inversement, pour une racine proche de zero, la precision peut
etre meilleure que 10
14
.
4.3 Met hode de
Ri dder
4.3.1 Met hode de la position
faus se
La methode de dichotomie sous-exploite le fait que lon peut mieux utiliser
la fonction `a linterieur de lencadrement effectue `a chaque iterat ion. La
methode de la position fausse approche la fonction de mani`ere lineaire
dans lintervalle considere.
Soit la droite y = cx+d passant par f (a
0
) et f (b
0
) en a
0
et b
0
respectivement, on obt ient facilement que
c =
f (b
0
)
f (a
0
)
b
0

a
0
d =
b
0
f
(a
0
)
a
0
f
(b
0
)
b
0

a
0
(4.9)
(4.10)
La nouvelle abscisse estimee pour la racine de lequation est donnee par y =
cx + d = 0, ce qui donne
d
x =
c
(4.11)
soit encore
=
a
0
f
(b
0
)
b
0
f
(a
0
)
f (b
0
)
f (a
0
)
f (a
0)
(4.12)
x = a
0

(b
0

a
0
)

f (b
)
(4.13)
f (a
0
)
f (b
0)
= b
0

(b
0

a
0
)

f (b
)
(4.14)
f (a
0
)
On reprend `a ce stade le principe de lalgorithme precedent si f (x)f (a
0
)
> 0 alors
sinon
La figure
a
1
= x (4.15)
b
1
= b
0
(4.16)
a
1
= a
0
(4.17)
b
1
= x (4.18)
2
2
4
2
3
4
0
1
-2
0 0.5 1 1.5 2 2.5 3
Fig. 4.1 Schema illustrant le principe de la position fausse. Les lignes
en pointille correspondent aux interpolat ions lineaires. A partir de
lencadrement repere par les points 1 et 2, le processus iteratif condui t aux
points 3, puis 4...
4.3.2 Methode de
Ri dder
Une variante de la methode precedente qui est tr`es efficace est basee sur
lalgorithme suivant. On evalue la fonction au point x
3
=
a
0
+b
0
et on resout
lequat ion en
z
f (a
0
) 2f (x)z + f (b
0
)z
2
= 0 (4.19)
La solution positive est donnee par
z =
f (x) + sgn(f (x))
p
f (x)
2 f (a
0
)f (b
0
)
(4.20)
f (b
0
)
En appliquant la methode de la position fausse non pas `a f (a
0
), f (x
3
) et f
(b
0
), mais `a f (a
0
), f (x
3
)z et f (b
0
)z
2
, on obt ient une approximation de la
racine, notee x
4
et donnee par
x
4
= x
3
+ (x
3
a
0
)
sgn(f (a
0
) f (b
0
))f
(x)
p
f (x)
2
f (a
0
)f (b
0
)
(4.21)
Parmi les proprietes remarquables, notons que x
4
est toujours situee `a lint
erieur de lintervalle [a
0
, b
0
]. Si le produit f (x
3
)f (x
4
) est negat if, on prend
lintervalle [x
3
, x
4
] comme nouvel encadrement, sinon si on consid`ere le produit
f (a
0
)f (x
4
) ; si celui est negat if, le nouvel encadrement est [a
0
, x
4
], sinon on
prend [x
4
, b]. On it`ere ensuite le procede.
4.4 Methode de
Brent
Q
Q
4.4 Met hode de Brent
Le principe de cette methode est de combiner les avantages des m
ethodes precedemment exposees en utilisant, le principe de lencadrement
de la racine, la dichotomie, et linterpolation quadratique inverse. Cela n
ecessite de connatre trois valeurs de la fonction f dont la racine est `a d
eterminer. Soit (a, f (a)), (b, f (b)), et (c, f (c)) la formule dinterpolati on est
donnee par
(y f (a))(y f (b))c
x =
(f (c)
f (a))(f
(c)
f (b))
+
(y f (b))(y f (c))a
(f (a) f (b))(f (a) f
(c))
+
(y f (c))(y f (a))b
(f (b) f (c))(f (b) f
(a))
(4.22)
En choisissant y = 0, on peut ecrire lequat ion (4.22)
comme
x = b +
P
Q
(4.23)
ou` P et Q sont donnes par
P = S[T (R T )(c b) (1 R)(b a)] (4.24)
Q = (T 1)(R 1)(S 1) (4.25)
ou` R, S et T sexpriment comme
R
=
f (b)
f (c)
S =
f (b)
f (a)
T =
f (a)
f (c)
En pratique, b est une premi`ere estimation de la racine et
P
(4.26)
(4.27)
(4.28)
une petite correc-
tion. Quand Q 0 la valeur de
P
peut devenir tr`es grande et literat ion par la
methode de Brent est remplacee par une iterat ion de dichotomie.
4.5 Newton-Ra phs on
Toutes les methodes precedentes ne necessitaient que la connaissance
de la fonction en differents points de lintervalle encadrant la racine. Sous
reserve que la variation de la fonction ne soit pas trop rapide, seule une
hypoth`ese de continuite est necessaire.
La methode de Newton-Raphson necessite de plus que la fonction f
dont on cherche `a determiner une racine, soit derivable au voisinage de
celle-ci.
Racines
dequat ions
Les iterat ions successives de la methode de Newton-Raphson sont basees
sur le developpement limite de la fonction autour dun point
f (x + ) = f (x) + f
0
(
x) +
f
00
(
x)

2
+
. . . (4.29)
2
Si est suffisamment petit, on peut negliger les termes non lineaires et
une estimat ion de la racine est donnee par f (x + ) = 0.
f (x)
=
f
0
(x)
(4.30)
On voit immediat ement quil est necessaire que la derivee de la
fonction ne sannule pas dans le voisinage de x, sous peine que lestimation de
devienne tr`es grande et ne permette pas `a la methode de converger.
Si les conditions precedemment enoncees sont verifiees, on a une
methode qui converge de mani`ere quadrat ique.
En effet, la relation de recurrence entre estimat ions successives est donnee
par
x = x
f (x
i
)

(4.31) i+1 i


f
0
(x
i
)
En posant
i+1
= x
i+1
x, ou` x est la racine exacte, on
a
=
f (x
i
)

(4.32) i+1 i


f
0
(x
i
)
Si on utilise un developpement limite de f au deuxi`eme ordre au point x
i
(ce qui suppose que la fonction est deux fois derivable au voisinage de la
racine), on obt ient

i+1 =

2
f
00
(x
i
)
(4.33)
i
2f
0
(x
i
)
La methode converge donc tr`es rapidement par comparaison avec les m
ethodes precedentes.
A noter que si la derivee de la fonction nest pas connue
analytiquement, levaluat ion numerique de sa derivee est possible par
une formule daccroisse-
ment
f
0
(x) '
f (x + x) f (x)
(4.34)
x
Dans ce cas, la methode de Newton-Raphson se reduit `a une methode
din- tersection et la convergence de celle-ci est moins rapide que la
convergence quadratique.
4.6 Racines de
Polynome s
4.6.1 Reducti on
polynomiale
La recherche de racines dun polynome se construit de la mani`ere suivante :
soit P
n
(x) un polynome de degre n. Si on obt ient une premi`ere racine, on
peut
ecrir
e
ou`
P
n
(x) = (x x
1
)P
n1
(x) (4.35)
P
n1
(x) est un polynome de degre n 1. Ainsi, theoriquement, une fois
obtenue une premi`ere racine, on peut recommencer la recherche dune autre
racine pour une polynome de degre strictement inferieur. Successivement,
on poursuit cette procedure jusqu`a lobt ention de lensemble des n
racines du
4.6 Racines de
Polynomes
=
X
0
=
X
n
polynome P
n
(x). Rappelons que les polynomes `a coefficients complexes se
fac- torisent en un produit de monomes de degre 1. Cette propriete exprime
le fait que les polynomes `a coefficients complexes ont lensemble de leurs
racines dans le plan complexe,
n
P
n
(x) =
Y
(x x
i
) (4.36)
i=1
(C est un corps algebriquement clos).
4.6.2 Met hode de Lague rre
Les methodes de recherche de zeros de polynomes sont nombreuses et
une presentation detaillee depasse largement le cadre de ce cours. Nous
avons choisi de presenter une methode dont le principe est assez simple.
La methode de Laguerre utilise le fait que les derivees logarithmiques
successives dun polynome divergent au voisinage dune racine. En prenant
le logarithme de lequat ion (4.36), on obtient
n
ln(|P
n
(x)|) =
X
ln(|x x
i
|) (4.37)
i=1
En derivant lequati on (4.37), on obtient
d ln(|P
n
(x)|)
n
dx
i=1
1
x x
i
=
P
n
(
x)
P
n
(x)
(4.38)
En derivant lequati on (4.38), il
vient
= G (4.39)
d
2
ln(|P
n
(x)|)
n

dx
2
(
x
1
x )
2
i=1


i

P
0

2
=
n
(
x)
P
n
(x)
P
00
(x)

P
n
(x)
= H (4.40)
Soit la racine x
1
`a determiner, on suppose que la valeur de depart x est situee
`a une distance a de x
1
et que lensemble des autres racines sont situees `a
une distance supposee identique et qui vaut b
x x
1
= a
(4.41)
x x
i
= b i [2, n] (4.42)
En inserant les equations (4.41) et (4.42) dans les equati ons (4.38), (4.40), on
en deduit respectivement les relations suivantes
1
+
n 1
a b
1
+
n 1
a
2
b
2
= G (4.43)
= H (4.44)
Apr`es eliminat ion de b, la valeur de a est
a =
n
G
p
(n 1)(nH
G
2
)
(4.45)
Le signe place devant la racine du denominateur est choisi tel que le d
enom- inat eur soit le plus grand possible. x a devient alors la nouvelle
valeur de depart et on it`ere le processus. En combinant cette methode
avec celle de la reduction polynomiale, on peut calculer lensemble des
racines. En pratique, comme chaque racine nest determinee quavec une pr
ecision finie, il est neces- saire dajouter une procedure dite de lissage pour
eviter les probl`emes dinsta- bilite numerique.
41
Chapitre 5
Equations di ffere ntielles
Contenu
5.1 Introduct ion . . . . . . . . . . . . . . . . . . . . . . . 41
5.2 Definiti ons . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.3 Equations differentiell es special es . . . . . . . . .
.
42
5.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . 42
5.3.2 Equations du premier ordre . . . . . . . . . . . . . . . 43
5.3.3 Equation differentielles du second ordre . . . . . . .
.
44
5.3.4 Equation de Bessel . . . . . . . . . . . . . . . . . . . . 45
5.3.5 Equation differentielle erreur . . . . . . . . . . . . .
.
45
5.3.6 Equation differentielle dHermite . . . . . . . . . . . 45
5.4 Methodes dintegratio n `a pas separe . . . . . . . . . 45
5.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . 45
5.4.2 Methode dEuler . . . . . . . . . . . . . . . . . . . .
.
46
5.4.3 Methode RK explicites `a un point . . . . . . . . . .
.
47
5.4.4 Methodes RK implicites `a un point . . . . . . . . . .
.
47
5.4.5 Methodes RK explicites `a 2 points intermediaires .
. .
47
5.4.6 Methodes RK explicites `a 3 points intermediaires .
. .
48
5.4.7 Formule generale des methodes RK explicites . . .
. .
48
5.5 Methode dintegrati on `a pas variables . . . . . .
. .
49
5.5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . 49
5.6 Methodes de Runge-Ku tta embar quees . . . . .
.
49
5.7 Methode de Bulirsh-St oer . . . . . . . . . . . . . . . 50
5.8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . 51
5.1 Introduct ion
La resolution numerique dequat ions differentielles est tr`es souvent
neces- saire, faute de lexistence de solutions analytiques. Le but de ce
chapitre est de montrer que la meilleure methode, ou la plus efficace `a
utiliser pour obtenir une solution, necessite de connatre la nature de
lequat ion differentielle `a re- soudre. Les methodes les plus standards
que nous allons presenter sont large- ment presentes dans les logiciels de
calcul comme Maple, Matlab, Scilab, Oc- tave, ou Mathematica, et surtout
dans les biblioth`eques pour la programmat ion
Equations diff
erentielles
0
0
0
42
(IMSL, NAG, GSL). Il est donc preferable dutiliser ces biblioth`eques
plutot que de reecrire un code peu performant et probablement faux dans un
premier temps.
5.2 D
efinit ions
Soit une fonction numerique notee y(x) definie sur un intervalle de R et
de classe C
p
(continument derivable dordre p). On appelle equat ion diff
erentielle dordre p une equat ion de la forme
F (x, y, y
0
, y
00
, . . . y
(p)
) = 0 (5.1)
ou`
y
0
represente la derivee premi`ere par rapport `a x, y
0 0
la derivee
seconde,
etc... Plus generalement, on appelle syst`eme differentiel un ensemble
dequati ons differentielles reliant une variable x et un certain nombre de
fonction y
i
(x) ainsi que leurs derivees. Lordre du syst`eme differentiel
correspond `a lordre de derivat ion le plus eleve parmi lensemble des
fonsctions.
On appelle solution de lequat ion differentielle (5.1) toute fonction y(x)
de classe C
p
qui verifie lequat ion (5.1).
On appelle forme canonique dune equati on differentielle une expression du
type
y
(p)
= f (x, y, y
0
, y
00
, . . . y
(p1)
) (5.2)
Seul ce type dequat ions sera considere dans ce
chapitre.
Il est facile de verifier que toute equat ion differentielle canonique peut etre
ecrite comme un syst`eme dequat ions differentielles du premier ordre.
Si on introduit p 1 fonctions definies comme
y
1
= y
y
2
= y
0
. . .
y
p
= y
(p1)
(5.3)
on peut exprimer lequat ion (5.2) sous la forme
y
1
= y
2
y
2
= y
3
. . .
y
p
= f (x, y, y
1
, y
2
, . . . y
p
) (5.4)
5.3 Equations differentielles sp
eci ales
5.3 Equations differentielles sp
eciales
43
5.3.1 Introduct ion
Une classe restreinte, mais importante, dequat ions differentielles ont
des solutions mat hemat iques sous la forme de fonctions transcendantes ou de
fonc- tions speciales en general. Nous allons donc donner un rapide
apercu de ces
c t

equations differentielles particuli`eres qui contiennent en autres quelques


equa- tions differentielles non-lineaires, dont limmense majorite ne peut
etre resolue que numeriquement.
5.3.2 Equations du premier ordre
Equation `a coefficie nts
const ants
Les equations differentielles `a coefficients constants de forme generale
a
dy
+ by(x) = c(x) (5.5)
dx
ont pour solution generale

Z
y(x) = e
b/ax
( )
dt e
b/at
+
cste a
(5.6)
Equation lineair e
Une equation differentielle lineaire a pour forme generale
dy
+ f (x) y(x) = g(x) (5.7)
dx
ou
`
f (x) et g(x) sont des fonctions arbitraires. La solution de cette equat ion
differentielle est
y(x) = e

R
x
f (u)du
(
Z
dtg(t)e
R
t
f (u)du
+ C ste

(5.8)
Equation de Ber nouilli
Lequat ion de Bernouilli a pour forme generale
dy
+ f (x)y(x) + g(x)y(x)
a
=
0 (5.9)
dx
ou` f (x) et g(x) sont des fonctions arbitraires. En introduisant le
changement de fonction
1
y(x) = u(x)
1a
(5.10)
lequat ion differentielle devient une equation differentielle du premier ordre
du
= (a 1) (u(x)f (x) + g(x)) (5.11)
dx
qui sintegre alors comme une equat ion differentielle lineaire.
2
i
Equation de Clair aut
Une equation de Clairaut est une equat ion de la forme
y(x) = x
dy
+ g

dy

(5.12)
dx dx
Ce type dequation differentielle admet une solution lineaire de la forme
y(x) = C x + g(C ) (5.13)
ou` C est une constante arbitraire. On peut aussi exprimer la solution de
lequa- tion sous forme parametrique
x(s) = g
0
(s) (5.14)
y(s) = g(s) sg
0
(s) (5.15)
Equation de Ri ccatti
La forme dune equation de Riccat ti est donnee par lexpression suivante
dy
2
dx
f (x)y(x) g(x)y(x) h(x) = 0 (5.16)
ou` f (x), g(x) et h(x) sont des fonctions arbitraires. Il ny a pas de
solutions generales pour lequat ion de Riccat ti. Quand h(x) = 0, on
retrouve la forme dune equation de Bernouilli dont la solution a ete donn
ee plus haut. La forme dite speciale de lequat ion de Riccat ti est definie
par lequat ion differentielle suivante
Si de plus c est de la forme
dy
2
dx
ay(x)
bx
c
= 0 (5.17)
c =
4 i
2i 1
(5.18)
avec i entier relatif, on peut obtenir une expression analytique de lequat ion
differentielle de Riccat i.
5.3.3 Equation differentiell es du second ordr e
Equations di ffere ntiell es `a coefficie nts consta nts
Les equations differentielles `a coefficients constants de forme gen
erale
a
ont pour solution compl`ete
d
2
y
dx
2
+ b
dy
dx
+ cy(x) = d(x) (5.19)
y(x) =
X
e
u
i
x

C
i=1

bx
Z
+ e

a
dt
2ad(t)

b
2

4ac

e
u
j
t
(5.20)
ou` les u
i
sont les solutions de lequati on caracteristique
au
2
+ bu + c = 0 (5.21)
et u
j
est la seconde racine de lequat ion caracteristique quand u
i
est la premi`ere.
5.4 Methodes dintegrat ion `a pas s
epare
2
5.3.4 Equation de Bessel
Les equati ons differentielles de Bessel sont definies par les equat ions
suiv- antes
x
2
d
y
+ x
dy
+ (x
2

n
2
)
y(x) = 0 (5.22)
dx
2
dx
et
2
x
2
d
y
+ x
dy
2 2
dx
2
dx
(x n )y(x) = 0 (5.23)
ce qui donne respectivement pour solutions les equat ions de Bessel J et Y pour
la premi`ere et les equat ions de Bessel modifiees I et K pour la seconde.
5.3.5 Equation differentielle erre ur
On appelle equation differentielle erreur lequat ion suivante
d
2
y
dx
2
+ 2x
dy
dx
2ny(x) = 0 (5.24)
ou` n est un entier. Pour n = 0 la solution est de la forme
y(x) = c + derf (x) (5.25)
ou` c et d sont des constantes arbitraires. Dans le cas ou` ou` n = 1, la
solution est de la forme
y(x) = cx + d(e
x
2
+

erf (x)x) (5.26)


De mani`ere generale, la solution est une combinaison generale de fonction de
WhittakerM.
5.3.6 Equation differentielle dHermite
Lequat ion differentielle dHermite est tr`es proche de lequat ion diff
erentielle precedente, puisque on a
d
2
y
dy
dx
2

2x
dx
+ 2ny(x) = 0 (5.27)
De mani`ere generale, la solution est aussi une combinaison generale de
fonction de WhittakerM.
5.4 Met hodes di ntegr ation `a pas sepa re
5.4.1 Introduct ion
Soit lequation differentielle definie par les equati ons (5.4). On suppose
que la fonction f sat isfait une condition de Lipschitz afin detre certain que la
solution existe, est unique et que le probl`eme est bien pose.
On cherche `a calculer une approximation de la solution y(x) en un
certain nombre de points x
1
, x
2
, . . . x
N
de lintervalle [a, b], appele maillage
de linter- valle, avec x
0
= a et x
N
= b
Nous supposons que la suite des points est choisie de mani`ere `a ce que
la distance entre deux points consecutifs soit constante et on pose
(b a)
h =
N
ce qui donne
(5.28)
avec k = 0, 1, . . . ,
N
x
k
= a + kh (5.29)
On appelle methode dintegrati on `a pas separe toute formule de r
ecurrence de la forme
y
k+1
= y
k
+ h(x
k
, y
k
, h)
k = 0, 1, . . . N avec y
0
donne (5.30)
la fonction est supposee continue par rapport aux trois variables x, y, h.
On appelle methode `a pas multiples les methodes telles que y
k+1
d
epend de plusieurs valeurs precedentes y
k
, y
k1
, . . . y
kr
.
5.4.2 Methode dEuler
Cette methode est definie par
y
k+1
= y
k
+ hf (y
k
, x
k
) (5.31)
avec y
0
donne.
Cette methode revient `a approximer la solution au voisinage de x
k
par
sa tangente et nous allons voir quelle est dordre 1. En effet, si la solution
est suffisamment derivable, on peut ecrire
y(x
k
+ h) = y(x
k
) + hy
0
(x
k
)
+
avec 0 1. ce qui donne
h
2
2
y
00(
x
k
+
h) (5.32)
h
2
y(x
k
+ h) = y(x
k
) + hf (y
k
, x
k
)
+
Dapr`es la definition de la methode
2
y
00(
x
k
+
h) (5.33)
1
h
(y(x
k
+
h) y(x
k
)
(y
k
(x
k
),
x
k
,
h))
=
ou
y(x
k
+ h) y(x
k
)
h
f (y(x
k
), x
k
)
(5.34)
1
h
(y(x
k
+
h) y(x
k
)
(y
k
(x
k
),
x
k
,
h)) =
h
y
00
(x
k
+ h)
2
(5.35)
Si la derivee seconde de y est bornee par une constante K dans lintervalle
dintegrat ion [a, b], on aura
1
max k
h
(y(x
k
+
h) y(x
k
)
(y
k
(x
k
),
x
k
,
h))k K h (5.36)
ce qui montre que la methode est dordre un.
La methode dEuler est une methode numerique peu couteuse num
erique- ment, mais peu precise quand on int`egre sur plusieurs pas de temps.
Des amelio- rations sont possibles d`es que lon consid`ere des points
intermediaires, ce que nous allons voir ci-dessous en considerant des m
ethodes dites de Runge-Kut ta
5.4.3 Met hode RK explicites `a un point
h
y
k,1
=
y
k
+

2
f (x
k
,
y
k
)
h
y
k+1
=
y
k
+
h(1 )f (x
k
,
y
k
)
+ f (x
k
+

2
, y
k,1
)
y
0
donne
avec un nombre reel compris entre 0 et 1. Les valeurs de
couramment utilisees sont = 1, = 1/2 et = 3/4. Ces methodes sont
dordre 2.
5.4.4 Met hodes RK impl icites `a un
point
La formule de recurrence est definie par la relat ion
y
k+1
= y
k
+ h[(1 )f (x
k
, y
k
) + f (x
k+1
, y
k+1
)] (5.37)
ou` est un nombre reel appartena nt `a lintervalle ]0, 1] (si = 0, on
retrouve la methode dEuler). Si = 1/2, la methode est dordre 2 et
sappelle la methode des trap`ezes. Si = 1/2, la methode est dordre 1.
5.4.5 Met hodes RK expl icites `a 2 points interm
edi aires
Ces methodes sont definies par les relat ions
h
y
k,1
=
y
k
+

3
f (x
k
,
y
k
)
2h
y
k,2
= y
k
+
3
f
h

h
x
k
+

3
, y
k,1
2h
y
k+1
=
y
k
+

4
f (x
k
, y
k
) +
3f
x
k
+
3
, y
k,2
(5.38)
ou par
h
y
k,1
=
y
k
+

2
f (x
k
,
y
k
)

h
y
k,2
= y
k
+ h f (x
k
, y
k
) +
2f
x
k
+

2
, y
k,1
h

y
k+1
=
y
k
+

6
f (x
k
, y
k
) +
4f
h
x
k
+

2
, y
k,1
+ f (x
k+1
, y
k,2
) (5.39)
Ces deux methodes sont dordre 3. La premi`ere est parfois appelee methode de
Heun.
5.4.6 Methodes RK explicites `a 3 poi nts intermedi aires
La methode suivante est de loin la plus connue et utilisee. Les relations
de recurrence sont les suivantes.
h
y
k,1
=
y
k
+

2
f (x
k
,
y
k
)
h
y
k,2
= y
k
+
2
f
h
y
k,3
= y
k
+
2
f
h
x
k
+

2
, y
k,1
h
x
k
+

2
, y
k,2
h

y
k+1
=
y
k
+

6
f (x
k
, y
k
) +
2f
h
x
k
+

2
, y
k,1 + 2f
h
x
k
+

2
, y
k,2
+ f (x
k+1
, y
k,3
) (5.40)
Cette methode est dordre
4.
5.4.7 Formule generale des methodes RK
expli cit es
Les methodes de Runge Kutta secrivent de mani`ere generale
K
1
= h[f (x
k
+
1
h, y
k
+
1,1
K
1
+
1, 2
K
2
+ . . . +
1,n
K
n
)]
K
2
= h[f (x
k
+
2
h, y
k
+
2,1
K
1
+
2,2
K
2
+ . . . +
2,n
K
n
)]
. . . . . .
K
n
= h[f (x
k
+
n
h, y
k
+
n,1
K
1
+
n, 2
K
2
+ . . . +
n,n
K
n
)]
y
k+1
= y
k
+ h[
1
K
1
+
2
K
2
+ . . .
n
K
n
] (5.41)
Les coefficients sont determines afin que lordre soit le plus eleve possible.
On note A la matrice de coefficients (
i,j
), le vecteur des coefficients
i
et
le vecteur des coefficients
i
.
Quand la matrice A est triangulaire inferieure stricte,
ij
= 0 pour j i,
on dit que la methode est explicite. Si seule la partie triangulaire superieure
est
nulle,
ij
= 0 pour j > i, la methode est dite implicite ; sinon elle est
totalement implicite.
Une representat ion en forme de tableau des equat ions (5.41) donne

2
. . .
n

2
. . .

1,1

2,1
. . .

n, 1

1,2

2,2
. . .

n, 2
. . .
. . .
. . .
. . .

1,n

2,n

n,n
Avec cette representat ion, la methode Runge-Kut ta explicite `a deux
points qui est dordre 4 est representee par le tableau suivant
1/6 1/3 1/3 1/6
0
1/2
1/2
1
0
1/2
0
0
0
0
1/2
0
0
0
0
1
0
0
0
0
Equations diff
erentielles
i
i
5.5 Met hode di ntegration `a pas
variabl es
5.5.1 Introduct ion
Un integrateur intelligent poss`ede une procedure de controle de la m
ethode de convergence, cest `a dire un moyen destimer lerreur commise par
le calcul sur un pas dintegrat ion et la possibilite de choisir en consequence
un nouveau pas si le syst`eme differentiel aborde une region ou` la fonction
prend des valeurs plus importantes. Le calcul de cette estimat ion entrane
un surcout de calcul, quil convient de bien gerer afin de minimiser cet
effort supplementaire.
Lidee la plus simple pour estimer cette erreur consiste `a calculer la
solution donnee par un algorithme (de Runge-Kutta dordre 4 par exemple)
pour deux pas dintegrati on differents, h et 2h. Soit y(x + 2h) la solution
exacte `a x + 2h et y(x + h) la solution exacte `a x + h, on a
y(x + 2h) = y
1
+ (2h)
5
+ O(h
6
) (5.42)
y(x + 2h) = y
2
+ 2(h
5
) + O(h
6
) (5.43)
ou` est une fonction qui reste constante sur lintervalle x, x + 2h `a lordre
h
5
. La premi`ere equat ion correspond `a une integrat ion avec un pas egal `a
2h tandis que la seconde correspond `a deux integrat ions successives avec un
pas de h. La difference
= y
2
y
1
(5.44)
fournit une estimat ion de lerreur commise avec un pas dintegrat ion h.
5.6 Met hodes de Runge-Kutta embarquees
Une autre methode pour estimer lerreur commise par lutilisat ion dun
pas h est due `a Fehlberg. Il utilise le fait quen choisissant des valeurs
particuli`eres de
i
(voir section 5.4.7), on peut changer lordre de
levaluat ion de la solution pour un pas de temps h donne.
6
y
1
= y(x) +
X

i
K
i
+ 0(h
6
) (5.45)
i=1
6
y
2
= y(x) +
X

K
i
+ 0(h
5
) (5.46)
i=1
ce qui conduit `a une estimation de lerreur
6
=
X
(
i

)K
i
(5.47)
i=1
Pour determiner la valeur du pas la plus adaptee, on note tout dabord que
est calcule `a lordre h
5
. Si on a un pas h
1
qui donne une erreur
1
, le
pas h
0
donne pour une erreur
0
fixee `a lavance, est donne par la
relat ion
5.5 Methode dintegrat ion `a pas
variables

0

1/5
h
0 =
h
1

(5.48)

1

10
8
1
6
2
4
3
2
0
-2
0.5 1 1.5 2 2.5 3 3.5
Fig. 5.1 Schema illustrant le principe de la methode de Burlish-Stoer.
Les lignes en pointille correspondent aux integrat ions realisees avec trois
pas din- tegration differents. La courbe en trait plein correspond `a la
solution exacte.
Il est donc possible, pour une valeur de |
0
| donnee `a lavance de diminuer
h
0
pour obtenir une erreur plus faible ou daugmenter h
0
de mani`ere
raisonnable si
1
est inferieur en valeur absolue `a |
0
|.
Une difficulte apparat pour ce type de methode quand on consid`ere un
sys- t`eme differentiel `a plusieurs variables. Lestimat ion de lerreur est alors
donnee `apriori par un vecteur. La generalisat ion de la procedure ebauch
ee reste possible, mais nous ne detaillerons pas ce type de subtilite dans ce
chapitre.
5.7 Met hode de Buli rsh-
St oer
Lidee de cette methode repose sur les trois principes suivants : la r
esolution de lequat ion differentielle pour un accroissement de x est
donnee par une fonction qui depend de h, mais qui tend vers une limite
finie (independante de h) ; on cherche `a estimer la valeur exacte du
syst`eme differentiel `a integrer en calculant pour differents pas et en
prenant la limite dun pas tenda nt vers zero.
La figure 5.1 illustre graphiquement les differentes estimations de la
valeur de la fonction solution en ut ilisant trois pas dintegrat ion differents.
La limite dun pas de temps nul correspond `a la solution exacte donnee
par la courbe en trait plein. Ce point est tr`es comparable `a celui de la m
ethode de Romberg decrite pour lintegrat ion.
Equations diff
erentielles
Le second principe de la methode consiste `a extrapoler cette limite non
pas sur la base de developpements polynomiaux mais de developpements
en frac- tions rationnelles. Le troisi`eme principe consiste `a utiliser des
fonctions derreur qui sont paires en pas dintegration.
5.8 Conclus ion
Les methodes exposees ci-dessus permette nt dobtenir une solution de
plus en plus precise pour des syst`emes differentiels ou` le nombre de
fonctions nest pas tr`es important. En simulation de Dynamique Mol
eculaire, un crit`ere de qualite pour le choix dune methode est le respect
de la propriete dinvariance par renversement du temps, qui est une propri
ete sat isfaite pour les syst`emes hamiltoniens. Les algorithmes sat isfaisant
cette propriete sont appeles symplec- tiques ; un exemple de ce type
dalgorithme est lalgorithme dit de Verlet dont le principe est decrit dans le
cours Simulation numerique en Physique Statis- tique.(http ://www. v iot .f r)
5.8 Conclusion
53
Chapitre 6
Equations di ff
ere ntielles
stochastique s
Contenu
6.1 Introduct ion . . . . . . . . . . . . . . . . . . . . . . . 53
6.2 Variables aleato ires et processus stochastiques . . . 54
6.3 Pr ocessus de Wiener, bruit blanc . . . . . . . . . . . 56
6.3.1 Equation de diffusion . . . . . . . . . . . . . . . . . . 56
6.3.2 Equation de Langevin . . . . . . . . . . . . . . . . . . 57
6.4 Calcul dIto et equati ons differentiell es
stochastiques
58
6.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . 58
6.4.2 Calcul differentiel stochastique . . . . . . . . . . . . . 59
6.4.3 Processus dOrstein-Uhlenbeck . . . . . . . . . . . . . 60
6.4.4 Mod`ele de Black-Scholes . . . . . . . . . . . . . . . . . 61
6.4.5 Transformee de Lamperti . . . . . . . . . . . . . . .
.
62
6.5 Methodes numeriques . . . . . . . . . . . . . . . . .
.
63
6.5.1 Introdution . . . . . . . . . . . . . . . . . . . . . . . . 63
6.5.2 Schema dEuler . . . . . . . . . . . . . . . . . . . . . . 64
6.5.3 Schema de Milstein . . . . . . . . . . . . . . . . . . . . 64
6.5.4 Runge-Kutta . . . . . . . . . . . . . . . . . . . . . . . 65
6.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . 65
6.1 Introduct ion
Depuis les observations de Robert Brown sur le deplacement des grains
de pollen en solution et les travaux dEinstein et de Smoluchowski qui ont
pro- pose une description de ce phenom`ene, on sest rendu compte que de
nombreux situations pouvaient etre decrites en faisant intervenir des
forces aleatoi res : la dynamique des particules collodales en solution est
bien decrite par une dynamique Brownienne, (voir le cours de simulation
numerique en Physique Stati stique), la cinetique dune react ion chimique
peut etre decrite de mani`ere plus realiste en incorporant des fluctuat ions
54
liees `a lenvironnement par laddi- tion dun bruit aleat oire, les
evolut ions des mar ches financiers ont ete depuis
6.2 Variables aleat oires et processus
stochast iques
55
ces trente derni`eres annees lobjet dune intense recherche par des mod
elisat ions faisant intervenir des forces aleat oires,...
Le propos de ce chapitre est de donner des principes de bases pour la r
esolu- tion des equat ions differentielles stochast iques. Sur un sujet tr`es vaste
et en evo- lut ion rapide, nous serons tr`es loin de lexhaustivite. Nous allons
donc rappeler les definitions et proprietes fondamentales concernant les
processus stochas- tiques ainsi que ceux des equat ions differentielles
stochastiques, et nous ren- voyons le lecteur `a plusieurs ouvrages de base
concernant les processus stochas- tiques.
6.2 Variables aleatoires et processus
stochastiques
Pour definir une variable aleat oire X , il est necessaire davoir `a la
fois un ensemble de valeurs que peut prendre la variable aleat oire X et
une loi de probabilite definissant la mani`ere dont les valeurs de cette
variable aleat oire peuvent apparai tre.
Compte tenu du fait que la variable aleat oire X prend des valeurs successives
`a chaque nouveau tirage, on associe `a chacun de ces tirages un ecoulement
du temps, et les instants successifs sont notes t
1
, t
2
, ..., t
n
, ....
Un processus stochastique est defini comme une dynamique dont les eveve-
ments successifs sont donnes par une loi de probabilite. Trois definitions
sont part iculi`erement import antes pour classifier le type de processus
stochastique que lon etudie. Si on note x
1
, x
2
, ...x
n
la sequence de la
variable X , on definit la probabilite jointe de ces n valeurs successives
p(x
1
, t
1
; x
2
, t
2
; ...x
n
, t
n
), (6.1)
comme la probabilite de voir realiser la sequence de valeurs de X
constituant des valeurs (dans lordre) de x
1
`a x
n
aux instants de t
1
`a t
n
.
On definit alors la probabilite conditionnelle de la sequence x
i
, x
i+1
, ...x
n
arrivant aux instants t
i
, t
i+1
, ...t
n
sachant la sequence x
1
, x
2
, ..., x
i1
a eu
lieu aux instants t
1
, t
2
, ..., t
i1
comme
p(x
1,
t
1;
x
2,
t
2;
...x
n ,
t
n )
p(x
i
, t
i
; x
i+1
, t
i+1
; ...x
n
, t
n
|x
1
, t
1
; x
2
, t
2
; ...x
i1
, t
i1
) =
p(x , t ; x , t ;
...x
, t ),
1 1 2 2 i1 i1
(6.2)
On definit la probabilite marginale p(x
2
, t
2
) dune probabilite jointe p(x
2
, t
2
; x
1
,
t
1
)
comme la somme sur tous les evenements x
1
qui sont apparus `a linstant t
1
Z
p(x
2
, t
2
) =
dx
1
p(x
2
, t
2
; x
1
, t
1
) (6.3)
de mani`ere similaire, on peut generaliser ce type dequat ion pour la
probabilite davoir un evenements x
3
`a t
3
sachant que lon a eu un ev
evement x
1
`a linstant t
1
.
Z
p(x
3
, t
3
|x
1
, t
1
) =
Z
=
Equations differentielles
stochast iques
56
dx
2
p(x
3
, t
3
; x
2
, t
2
|x
1
, t
1
)
(6.4)
dx
2
p(x
3
, t
3
|x
2
, t
2
, x
1
, t
1
)p(x
2
, t
2
|x
1
,
t
1
)
(6.5)
2
|
Une classe particul`erement importante de processus stochastiques a ete
plus part iculi`erement etudiee ; il sagit de dynamiques pour lesquelles la
probabilite conditionannelle ne depend pas de lhistoire du parcours de la
particule , mais uniquement de linstant present. En dautres termes, les
processus Markoviens sont definis par une loi de probabilite conditionnelle
qui est independente des
evevements anterieurs `a linstant present. En termes de probabilites, la
proba- bilite conditionnelle que levenement x
i
apparaisse `a linstant t
i
est
donnee par lequat ion
p(x
i
, t
i
|x
i1
, t
i1
; ...x
2
, t
2
; x
1
, t
1
) = p(x
i
, t
i
|x
i1
, t
i1
) (6.6)
Ainsi un Processus Markovien ne garde la memoire que de la valeur dou` la
variable est partie. Cette classe de processus stochastique nest pas restrictive
car elle contient de tr`es nombreux exemples physiques comme la diffusion
de particules, la simulation Monte Carlo, et aussi les modelisat ions des
mar ches financiers...
Pour un processus Markovien, lequat ion (6.4) se simplifie compte tenu
de la propriete, Eq. (6.13), et on obt ient lequation dite de Chapman -
Kolmogorov
Z
p(x
3
, t
3
|x
1
, t
1
) = dx
2
p(x
3
, t
3
|x
2
, t
2
)p(x
2
, t
2
|x
1
, t
1
) (6.7)
Elle traduit le fait que les probabilites conditionnelles sont reliees entre
elles et ne font pas intervenit des probabilites jointes, contrairement aux
processus stochastiques en general.
Le raisonnement precedent correspondant aux processus `a ev
enements et temps discr`ets peut etre generalise `a des espaces dev
evements continus ainsi quune evolution `a temps continu. Lequation de
Chapman Kolmogorov peut -
etre aussi generalisee et apr`es calculs on obtient (dans le cas ou` espace et
temps sont continus)
p(y, t|x, t
0
)
=


A(y, t)p(y, t x, t
0
)

+
1

B(y, t)p(y, t x, t
0
)

t y
Z
|
2 y
2
|
+ dz(W (y|z, t), p(y, t|x, t
0
)| W (z|x, t)p(z, t|x, t
0
)) (6.8)
ou` les fonctions A(x, t), B(x, t) et W(z|x, t) sont definis de mani`ere suivante :
1
Z
A(x, t) = lim dy(y x)p(y, t + t|x, t), (6.9)
t0 t
1
B(x, t) = lim
t 0 t
et
|xy|<
Z
|xy|<
dy(y x)
2
p(y, t + t|x, t), (6.10)
1
W (x z, t) = lim
t 0 t
p(x, t + t|z, t). (6.11)
Dans le cas ou` lespace est discr`et et le temps continu, lequat ion de
Chapman- Kolmogorov prend alors la forme suivante
|
2

p(n, t|n
0
, t
0
)
=
X
(W (n m, t), p(m, t n
0
,
t
0
)
W (m n, t)p(n, t n
0
,
t
0
))
(6.12)
t
m
| | | |
Cette derni`ere equation correspond par exemple `a la dynamique Monte-
Carlo dans le cas dun mod`ele dIsing. Pour les differentes equat ions de
Chapman- Kolmogorov, il existe une infinite de solutions qui sat isfont ces
equati ons et il est necessaire de specifier plus precisement la dynamique
pour obtenir une solution unique. Nous allons voir maitenant des processus
Markoviens tr`es utiles.
6.3 Pr ocessus de Wiener, bruit bla nc
6.3.1 Equation de diffusion
Quand un processus de Markov `a espace et temps continus Eq. (6.13), est
tel que W (x|z, t) = 0 pour tout temps t et x, z ainsi que A(x, t) = 0, et B(x, t)
= 1 on obtient un processus de Wiener avec une equat ion devolut ion de la
proba- bilite donnee par
p(w, t|w
0 ,
t
0)

=
1
t 2 w
2
p(
w, t|w
0
,
t
0
)
(6.13)
ce qui correspond `a une equation de diffusion. La solution de cette equation
est bien entendu exacte et donnee par une Gaussienne
1 (w w
0)
2

p(w, t|w
0
,
t
0
)
= p
2(t
Cela donne pour la valeur moyenne
exp
t
0
)

2(t t
0
)
(6.14)
< W (t) >= w
0
(6.15)
et la variance
< (W (t) w
0
)
2
>= t t
0
(6.16)
Un processus de Wiener est aussi appele mouvement Brownien
puisque lequat ion devolution de sa probabilite est identique `a celle
obtenue par Einstein pour la description du comport ement erratique des
particules en solution.
Trois proprietes essentielles caracterisent un processus de Wiener :
(i) la trajectoire est continue (quand lintervalle de temps tend vers zero, les
valeurs possibles de la position de la particule `a linstant t + t reste au
voisinage de la position de la par ticule `a linstant t. (ii) On peut montrer
que la valeur de la vitesse en tout point est infinie ce qui correspond au
fait que la tra- jectoire nest pas differentiable (iii) Parta nt dune meme
condition initiale, si on gen`ere plusieurs dynamiques de Wiener, on obtient
des trajectoires dont la valeur moyenne est la meme, mais dont la dispersion
augmente avec le temps, car la variance crot lineairement avec le temps
(voir Fig. (6.2)), (iv) la derni`ere propriete importante concernant les
processus de Wiener est liee `a lindepen- dance statistique des incr
ements successifs de la variable W.
6.3 Processus de Wiener, bruit blanc
0 20 40 60 80 100
t
Fig. 6.1 Trajectoires de mouvement Brownien `a une dimension en
fonction du temps : les cinq trajectoires parte nt de lorigine.
6.3.2 Equation de Langevin
Lequat ion stochastique differentielle que lon cherche `a resoudre est
lequa- tion de type Langevin definie comme suit
dx
= a(x, t) + b(x, t)(t) (6.17)
dt
ou` a(x, t) et b(x, t) sont des fonctions continues et (t) est un fonction al
eat oire fluctuante variant rapidement. Sans perdre de generalite, on peut
toujours im- poser (`a une redefinition pr`es de la fonctions a) que la
moyenne de est nulle,
< (t) >= 0 et on impose que
< (t)(t
0
) >= (t t
0
) (6.18)
qui impose labscence de correlations entre les differents temps du
processus.
La notion de bruit blanc provient du fait que si lon fait la transformee
de Fourier de la fonction de correlati on temporelle definie par lequat ion
(6.18), on obtient une fonction independante de la frequence, ce qui signifie
que toutes les frequences sont egalement representees dans le spectre et
par analogie avec le spectre lumineux, on qualifie ce processus de bruit blanc.
Soit le processus u(t) defini par lintegrale
suivante
Z
t
u(t) = dt
0
(t
0
) (6.19)
0
Il est simple de verifier que u(t) et u(t
0
) u(t) sont stat istiquement ind
ependant pour t
0
> t. En dautres termes u(t) est un processus stochast ique
Markovien. De plus, on verifie que < u(t
0
) u(t) >= 0 et < (u(t
0
) u(t))
2
>= t
0
t, ce qui montre que le processus u(t) est en fait un processus de
Wiener. On a donc
Equations differentielles
stochast iques
ainsi le resultat
suivant
dW (t) = (t)dt (6.20)
x
1

0
.
4

0
.
2
0
.
0
0
.
2
0
.
4
0 20 40 60 80 100
t2
Fig. 6.2 Bruit blanc `a une dimension en fonction du
temps
Il faut tout efois souligner quun processus de Wiener conduit `a une
trajectoire non differentiable, ce qui signifie que la definition de (t) est
en fait mat he- mat iquement delicat e et lequation de Langevin nest pas a
priori integrable. Il faut donc preciser son sens ce que nous allons voir
maintenant avec la procedure introduite par Ito. Pour comprendre
simplement cette difficulte, on peut voir
que dW (t) est de lordre de

dt contrairement `a une forme differentielle


usuelle.
6.4 Calcul dIto et equations di fferentiell es
stochas- tiques
6.4.1 Introduct ion
Pour resoudre lequation de Langevin precedemment introduite, nous avons
`a calculer une integrale de la
forme
Z
t
f (t)dW (t) (6.21)
t0
ou` W (t) est un processus de Wiener et f (t) une fonction quelconque La
mani`ere naturelle de chercher `a calculer cette integrale est de faire une discr
etisat ion du temps avec un intervalle de temps constant et devaluer une
integrale de type Riemann. Ainsi on a
n
S
n
=
X
f (
i
)(W (t
i
) W (t
i1
)) (6.22)
i=1
ou`
i
est un temps intermediaire entre t
i1
et t
i
.
Si on choisit maintenant f (t) = W (t), on peut calculer exact ement la
6.4 Calcul dIto et equat ions differentielles
stochast iques
moyenne de lintegrale sur les differentes realisati ons du processus de Wiener
n
< S
n
>=
X
(Min(
i
, t
i
) Min(
i
, t
i1
)) (6.23)
i=1
n
=
X
(
i
t
i1
) (6.24)
i=1
Si maintenant on choisit de prendre
i
comme le barycentre des extr`emites
de lintervalle de temps

i
= t
i
+ (1 )t
i1
(6.25)
avec compris entre 0 et 1, on obtient pour la valeur moyenne de S
n
< S
n
>= (t t
0
) (6.26)
ce qui conduit `a avoir un resultat qui depend compl`etement du point
interme- diaire, meme une fois la moyenne sur les differentes realisat ions !
Pour definir de mani`ere la valeur dune integrale stochastique, il est n
eces- saire de choisir le point intermediaire et le choix dIto est de prendre
= 0. Ainsi, on a
Z
t
f (t)dW (t) =
lim
n
X
f (t
i1 )(W (t
i ) W (t
i1 )) (6.27)
t
0
n
i=1
Ce choix est physiquement raisonnable car il signifie que lon choisit
deval- uer lintegrale en prenant une valeur de la fonction f qui est ind
ependante du comportement du processus de Wiener dans le futur. Un respect
de la causal ite en quelque sorte !
Lintegrale stochastique dIto a des proprietes un peu non intuitives.
En effet, on peut montrer en ut ilisant les proprietes dun processus de
Wiener que
Z
t
f (t)(dW (t))
2
=
t
0
Z
t
f (t)dt (6.28)
t
0
ce qui, une fois de plus, met en evidence que la forme differentielle dW (t)
est de lordre

dt
6.4.2 Calcul differentiel stochastique
Soit le changement de variable dy = f (x(t), t). Si on fait un developpement
`a lordre 2 en dx, on obtient
f
dy(t) = f (x(t + dt)) f (x(t)) +
t
dt (6.29)
2
=
f (x, t)
dx(t) +

x
f (x, t)
2
2x
2
dx
(t)
+
f
dt... (6.30)
t
Compte tenu de la forme differentielle de lequati on de Langevin, le
Equations differentielles
stochast iques
terme en dx(t)
2
contient des termes en dt
2
, dW dt qui sont negligeables, mais
il reste
X
0
2
4
6
8
1
0
un

OrnsteinUhlenbeck
0.0 0.2 0.4 0.6 0.8 1.0
Time
Fig. 6.3 Exemple de trajectoire dun processus dOrnstein-Uhlenbeck
un terme dW (t)
2
qui est egale `a dt que lon doit conserver. Ainsi, on obtient
le resultat suivant
dy(t) =(
f (x, t)
+ a(x, t)
f (x, t)
+

2
f
(x, t)
2
t x 2x
2
b
(x, t))dt
+ b(x, t)f
0
(x).dW (t) (6.31)
Une
fois ces r`egles parfaitement d
efinies
il est possible de donner un sens
`a lequat ion de Langevin ; sa solution
est donnee par

e integrale stochastique integrale
x(t) x(t
0
) =
Z
t
dt
0
a(x(t
0
), t
0
) +
t
0
Z
t
dW (t
0
)b(x(t
0
), t
0
) (6.32)
t
0
Nous allons voir maintenant quelques exemples tr`es connus dequations de
Langevin avant daborder les methodes de resolut ion numerique.
6.4.3 Processus dOrstein-U hlenbeck
Un procesus dOrnstein-Uhlenbeck sat isfait lequat ion de Langevin suivante
dx
= ( x(t)) + (t) (6.33)
dt
ou de mani`ere equivalente (et mat hemat iquement plus correcte), on peut
ecrire sous la forme differentielle suivante
dx = ( x(t))dt + dW (t) (6.34)
ou` dW (t) est la forme differentielle dun processus de Wiener.
On utilise le changement de variable suivant
y(t) = x(t)e
t
(6.35)
G
B
M
(
x

=

1
,

r

=

0
.
2
,

s
i
g
m
a

=

0
.
4
,

T

=

1
0
,

N

=

5
0
0
)
1
2
3
4
5
6
7
2
0 2 4 6 8 10
Time
Fig. 6.4 Exemple de trajectoire dun mouvement Brownien geometrique
En appliquant les r`egles dIto, on a
dy(t) =x(t)e
t
dt + e
t
dx(t) (6.36)
=e
t
dt + e
t
dW (t) (6.37)
On peut alors faire lintegrale stochastique, ce qui donne
Z
t
y(t) = y(t
0
) + (e
t
1) +
t0
Revenant `a la variable initiale x(t), on obtient
e
s
dW (s) (6.38)
Z
t
x(t) = x(t
0
)e
t
+ (1 e
t
) +
t0
La valeur moyenne `a linstant t est donnee par
e
(st)
dW (s) (6.39)
< x(t) >= x(t
0
)e
t
+ (1 e
t
) (6.40)
tandis que la variance est donnee par
< x(t)
2
>
< x(t) >
2
=

(1 e
2t
)
(6.41)

Le processus dOrnstein-Uhle nbeck est un processus de Markov qui conduit


donc une valeur moyenne qui devient independante de la condition initiale
et dont la variance est finie quand le temps devient tr`es grand.
6.4.4 Mod`ele de Black-
Scholes
Le mod`ele de Black-Scholes est un processus Markovien stochast ique
satis- faisant lequat ion de Langevin suivante
dS(t)
= S(t)( + (t)) (6.42)
dt
ou`
S(t) est le prix de lact if sous-jacent `a linstant t. Pour les lecteurs peu
familiers au mod`eles financiers, je vous renvoie au cours de N. Sator, et bien
sur aussi `a des ouvrages plus specialises.
On applique `a nouveau la formule dIto en ut ilisant le changement de
vari- able
ce qui donne
y(t) = ln( S(t)) (6.43)
dy(t) =
dS(t)

2
dt
S(t)

2
(6.44)
2
=( )dt + dW (t) (6.45)
2
La solution est donnee par lintegrale stochastique suivante

2
y(t) = y(t
0
) + (
Revenant `a la variable S(t), on obtient
S(t) = S(t
0
) exp((
)t + W (t) (6.46)
2

2
)t + W (t)) (6.47)
2
Compte tenu de lexpression de la solution, on parle souvent de mod`ele
Brownien geometrique. La distribut ion de la probabilite de S est une loi log-
normale, cest- a-dire une une distribution Gaussienne avec le logarithme de la
variable.
Ce type de mod`ele peut etre aisement generalise pour tenir compte
de com- port ements plus realistes, en particulier, la volatilite symbolisee
par nest generalement pas constante en fonction du temps.
6.4.5 Trans formee de
Lamperti
Avant daborder les methodes de resolut ion numerique, nous allons
intro- duire la transformee de Lamperti qui est tr`es utile pour traiter de
nombreux pro- cessus stochastiques Markoviens. Sous la forme differentielle
(autonome) suiv- ante
dX (t) = a(X, t)dt + b(X )dW (t) (6.48)
On appelle la transformee de Lamperti de X , la fonction Y definie de la
mani`ere suivante
Y (t) = F (X (t)) =
Z
X (t)
0
du
b(u)
(6.49)
Avec ce changement de variable, lequat ion stochastique devient
dY (t) = a
Y
(Y, t)dt + dW (t) (6.50)
avec
a(t, F
1
(
y)
1
1 b

a
Y
(
y, t) =
b(F
1
(y))

2 x
(F (y)) (6.51)
Equations differentielles
stochast iques
La demonstrati on de cette propriete est un simple exercice du calcul diff
erentiel stochastique expose ci-dessus. Linter`et de cette transformat ion est
quelle sup- prime le bruit multiplicatif de lequat ion differentielle
stochast ique initiale au profit dune equation de Langevin non lineaire avec
un bruit blanc simple. Nous allons voir par la suite que sur le plan numerique
ce changement de variable est tr`es utile et peut ameliorer la precision num
erique.
6.5 Met hodes num
eri ques
6.5.1 Introdut ion
De mani`ere similaire aux equat ions differentielles ordinaires ou` la r
esolut ion numerique passe par une discretisat ion du temps et un schema
dapproximat ion concernant lintervalle de temps elementaire sur lequel lint
egrat ion est faite, il est necessaire de proceder de mani`ere similaire avec
les equat ions differentielles stochastiques, `a quelques differences pr`es : (i)
pour une equat ion ordinaire, la trajectoire etant deterministe (en tout
cas pour les exemples simples `a une particule, oscillateur harmonique ou
anharmonique), on peut controler avec la solution exacte la qualite de
lappr oximation. Avec un processus de Wiener, nous avons vu que deux
trajectoires sont tr`es differentes, cette difference saccroissant avec le temps.
Si par contre, on cherche `a resoudre un processus dOrnstein- Uhlenbeck,
on sait que le syst`eme evolue vers une distribution stationnaire que la
variance des trajectoires est finie... (ii) Les schemas dapproximat ion des
methodes de resolut ion des equat ioins differentielles sont bases sur le
calcul differentiel usuel. Dans le cas des equat ions differentielles
stochast iques, ces schemas reposent sur le calcul differentiel stochast ique de
nature assez differente. (iii) Des questions fondame ntales sur lexistence et
lunicite dune solution pour une equat ion existent de mani`ere similaire aux
equat ions ordinaires.
Sans bien evidemment rentrer dans le detail qui rel`eve de travaux tr`es
tech- niques, il y a deux cri`eres pour prouver lexistence ete lunicite dune
solution sur un intervalle donne
1. Une condition de Lipschitz qui exprime le fait que pour tout couple (x, y)
et tout t appartena nt `a lintervalle ou` lintegration numerique
doit etre faite, il existe une constante K telle que
|a(x, t) a(y, t)| + |b(x, t) b(y, t)| K |x y| (6.52)
2. Une condition de croissance qui exprime le fait que les variations de
a(x, t) et de b(x, t) ne sont pas trop rapides, cest-`a-dire quil existe
une constante K telle que dans lintervalle de temps de lintegrat ion on
ait la condition
|a(x, t)|
2
+ |b(x, t)|
2
K
2
(1 + x
2
) (6.53)
Sur le plan numerique, on parle dordre fort de convergence si une
ap- proximation discretisee en temps X

dun processus continu X , repr
6.5 Methodes num
eriques
esentant la borme superieure des increments de temps utilises verifie la
propriete
h |X

(T ) X (T )|i C

(6.54)
Equations differentielles
stochast iques
les crochets symbolisant la valeur moyenne sur les trajectoires et C etant
une constante.
6.5.2 Schema
dEuler
Soit `a nouveau la forme differentielle de lequation stochastique
dX (t) = a(X, t)dt + b(X, t)dW (t)
avec une valeur initiale X
0
.
Lappr oximation dEuler consiste `a utiliser une discretisat ion r
eguli`erement espacee du temps t
i
= it avec t = T /N et i varie de 0 `a
N .
Le schema dEuler est bien evidemment analogue `a celui que lon a pour les
equations differentielles
ordinaires
X
i+1
= X
i
+ a(X
i
, t
i
)(t
i+1
t
i
) + b(X
i
, t
i
)(W
i+1
W
i
) (6.55)
On peut montrer que lordre fort de convergence de la methode
dEuler
est egal `a = 1/2. Facile `a mettre en oeuvre, lalgorithme dEuler souffre
de defaults similaires `a ceux rencontres lors des equat ions differentielles
ordinaires, car la precision nest pas tr`es grande et il convient de diminuer
fortement le pas de temps pour eviter les probl`emes numeriques.
6.5.3 Schema de
Mi lstein
Il est bien evidemment raisonnable de chercher davoir une methode de r
e- solution allant au dela de cette appr oximation et dans cet etat desprit,
Milstein a propose une approximation du second ordre qui utilise `a
nouveau le calcul stochastique differentiel. En ut ilisant `a nouveau un pas
de discretisat ion tem- potrel constant, on a le schema iterat if suivant
X
i+1
= X
i
+ a(X
i
, t
i
)(t
i+1
t
i
) + b(X
i
, t
i
)(W
i+1
W
i
)+
1 b
2
2
b(X
i
,
t
i
)

x
(X
i
,
t
i
)
[(W
i+1

W
i
)
(t
i+1
t
i
)] (6.56)
Cette appr oximation a un ordre fort de convergence egal `a 1. Cette m
ethode ameliore donc les instabilites numeriques par rapport `a la m
ethode dEuler. Toutefois, il y a un lien entre les deux methodes dans le cas
ou` on peut realiser une transformee de Lamperti de lequat ion diff
erentielle stochastique de depart . En effet, dans le cas ou` lequation
stochast ique de depart na pas de bruit multi- plicatif, comme par exemple dans
6.5 Methodes num
eriques
lexemple du processus dOrnstein-Uhle nbeck, la methode dEuler a un ordre
de convergence fort qui devient egal `a 1. Or, avec une transformee de
Lamperti (si b(x, t) = b(x) est independant du temps), on peut transformer
lequat ion stochast ique en une autre equat ion sans bruit multiplicat if.
Ainsi, on peut montrer que le schema dEuler de lequat ion trans- formee
est identique au schema de Milstein sur lequation originale. Dans le cas ou`
la transformee de Lamperti est difficile `a obtenir anal ytiquement, il est utile
dutiliser le schema de Milstein qui est plus precis.
Equations differentielles
stochast iques
i
0
6.5.4 Runge-K utta
En continuant le parall`elisme avec les equat ions differentielles ordinaires,
on peut aller aller au dela et des methodes plus precises ont ete developpes.
Jusqu`aune periode recente (1996), on pensait que les methodes de type
Runge-Kutta ne pouvaient pas donner un ordre de convergence superieur `a
1.5. Cette limite est auj ourdhui depassee et il est possible de contruire de
mani`ere systemat ique des schemas dapproximat ion qui augmentent
progressivement lordre fort de convergence. Pour information, nous donnons
ci-dessous une methode de Runge- Kutta explicite dordre 1.5
X
i+1
= X
i
+ a(X
i
, t
i
)(t
i+1
t
i
) + b(X
i
, t
i
)(W
i+1
W
i
)+
avec
1
2
(b(X
0,
t
i
)
b(X
i
,
t
i
))
[(W
i+1
W
i
)
2
(t
i+1
t
i
)]
p
(t
i+1
t
i
)
(6.57)
X
i
= X
i
+ a(X
i
)(t
i+1
t
i
) + b(X
i
)
p
(t
i+1
t
i
) (6.58)
Cette methode permet de realiser des simulations en nutilisant quun
nom- bre aleat oire issu dune distribut ion gaussienne. Il existe bien entendu
dautres methodes dordre plus eleve, mais faisant faisant intervenir des
nombres alea- toires qui ne sont pas des variables aleat oires gaussiennes, ce
qui complique de beaucoup la resolution de lequat ion differentielle
stochastique. Toutefois, pour des equat ions de Langevin sans bruit
multiplicat if, il a ete developpe des al- gorithmes dordre eleve
(jusqu`a 4) et ne faisant intervenir que des variables aleat oires
gaussiennes.
6.6 Conclus ion
Compte tenu des applications en physique et en sciences sociales et en
econometrie, le domaine des equat ions differentielles stochast iques est en
plein essor et lamelioration des methodes numeriques pour leur resolut ion
lest tout auta nt. Ce bref survol aurait montre, je lesp`ere, limport ance de
ce sujet.
67
Chapitre 7
Transformee de Fourier
rapide et algorithmes de tri
Contenu
7.1 Introduct ion . . . . . . . . . . . . . . . . . . . . . . . 67
7.2 Pro prietes . . . . . . . . . . . . . . . . . . . . . . . .
.
68
7.3 Discret isatio n de la tran sformee de Fourier . . . .
.
70
7.3.1 E

chantillonage . . . . . . . . . . . . . . . . . . . . .
.
70
7.3.2 Transformee de Fourier discr`ete . . . . . . . . . . . .
.
71
7.4 Tran sformee de Fourier rapide . . . . . . . . . . . . 72
7.5 Algorithmes de tri . . . . . . . . . . . . . . . . . . . . 74
7.5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . 74
7.5.2 Methode dinsertion . . . . . . . . . . . . . . . . . . . 74
7.5.3 Tri `a bulles . . . . . . . . . . . . . . . . . . . . . . .
.
75
7.5.4 Tri rapide . . . . . . . . . . . . . . . . . . . . . . . . . 75
7.1 Introduct ion
Largement ut ilisee en Physique, la transformee de Fourier dune
fonction dependant dune variable (par exemple du temps) est devenue si
naturelle que sa representat ion graphique est generalement aussi utile,
voire plus, que celle de la fonction elle-meme. Apr`es un rappel des propriet
es elementaires et fonda- mentales des transformees de Fourier pour la r
esolut ion de probl`emes mat hema- tiques, nous allons presenter le principe
de la methode numerique de levaluati on de cette transformee. Plus sp
ecifiquement, depuis pr`es de 40 ans est apparu un algorithme performant
pour le calcul de la transformee de Fourier dont le temps de calcul varie
essentiellement comme N ln
2
(N ) ou` N est le nombre de points ou` la
fonction f a ete evaluee. Par opposition `a une approche trop nave,
ou`
le nombre doperat ions crot comme N
2
cette methode a recu le nom de trans-
formee de Fourier rapide (FFT, Fast Fourier Transform, en anglais), que
toute biblioth`eque mathemat ique propose generalement `a son cat alogue.
Profitant du fait que lune des operat ions essentielles de la transformee de
68
Fourier est un rearrangement des elements dun tableau, nous allons voir les
7.2 Propriet
es
Z
Z
Z
69
principaux algorithmes de tri que lon peut utiliser pour reordonner les el
ements dun tableau.
7.2 Pr opr ietes
Soit une fonction f definie sur R, on appelle transformee de Fourier de
f , la fonction f

+
f

( ) =

f (t)e
2i t
dt (7.1)
La transformee de Fourier inverse est definie comme
Z
+
f
1
(t) =
f

( )e
2i t
d (7.2)

Pour une fonction f integrable, il y a identite entre la fonction f


1
et la fonction
f , hormis eventuellement sur un support de R de mesure nulle.
Une autre definition de la transformee de Fourier rencontree dans la litt
era- ture est celle qui correspond `a une representation en pulsation au lieu
de celle en frequence donnee ci-dessus.
+
f

() =

f (t)e
it
dt (7.3)
La transformee de Fourier inverse correspondante est definie comme
1
1
f
1
(t)
=
2
Z
+

()e

it
d (7.6)
Avec le logiciel Maple, la transformee de Fourier est definie dune
mani`ere encore differente !
+
f

() =

f (t)e
it
dt (7.7)
avec bien entendu la transformee de Fourier inverse correspondante
1
f
1
(t)
=
2
Z
+

()
e
it
d (7.8)
Compte tenu des differentes definitions des transformees de Fourier et
en labsence de documentat ion precise dans certaines biblioth`eques mat h
emat iques, il est fortement recommande de tester la transformee de Fourier
numerique que
1
Pour symetriser les expressions, la transformee de Fourier est parfois definie comme
f

() =
1

2
et la transformee de Fourier inverse comme
Z
+

f (t)e
it
dt (7.4)

1

Z
+

it
f
1
(t) =
2
f ()e

d (7.5)
lon va utiliser, en testa nt une fonction dont la transformee de Fourier est
con- nue anal ytiquement pour determiner de mani`ere simple la convention
ut ilisee dans la biblioth`eque disponible. Au del`a du principe general de la
transformee de Fourier rapide, il existe des optimisat ions possibles compte tenu
de larchitec- ture de lordinateur sur lequel le programme sera execute. Cela
renforce laspect totalement inutile de la reecriture dun code realisant la
dite transformee, ce code serait en general tr`es peu performant compare
aux nombreux programmes disponibles.
Dans le cas ou` la fonction f poss`ede des symetries, sa transformee de
Fourier presente des symetries en quelque sorte duales de la fonction initiale
Si f (t) est reelle, la transformee de Fourier des frequences n
egat ives est complexe conjuguee de celle des arguments positifs f

(
) = (f

( ))

.
Si f (t) est imaginaire, la transformee de Fourier des frequences negat ives
est egale `a lopposee du complexe conjugue de celle des arguments positifs
f

( ) = (f

( ))

.
Si f (t) est paire, la transformee de Fourier est aussi paire, f

( ) = f

( ).
Si f (t) est impaire, la transformee de Fourier est aussi impaire, f

( ) =
f

( ).
Si f (t) est paire et reelle, la transformee de Fourier lest aussi.
Si f (t) est impaire et reelle, la transformee de Fourier est imaginaire
et impai re.
Si f (t) est paire et imaginaire, la transformee de Fourier lest aussi.
Si f (t) est impaire et imaginaire, la transformee de Fourier est reelle
et impai re.
Des proprietes complementaires sont associees aux operat ions de
translation et dilatat ion
Soit f (at), sa transformee de Fourier est donnee par
1
f

(

).
|a| a
Soit
1
f
(
t
),
la transformee de Fourier est donnee par f

(b ).
|b| |b|
Soit f (t t
0
), la transformee de Fourier est donnee par f

( )e
2i t
0
.
Soit f (t)e
2i t
0 ,
la transformee de Fourier est donnee par f

(
0
).
Une identite particuli`erement utile concernant les transformees de Fourier
concerne la distribution de Dirac : soit f une fonction continue definie sur
R, La distribution est definie `a partir de la relation suivante
Z
+
dxf (x)(x x
0
) = f (x
0
) (7.9)

Ainsi, on en deduit facilement que


Z
+
et donc que
dx(x x
0
)e
2kix
= e
2kix
0
(
7.10)

Z
+
dx(x)e
2ikx
= 1 (7.11)

Par inversion de cette relation, on a la representati on integrale de la distribution

(x) =
Z
+

dke
2ikx
(7.12)
C
f
De mani`ere equivalente, on montre que
1
(x) =
2
Z
+

dke

ikx
(7.13)
La propriete sans doute la plus import ante concernant les transformees
de Fourier concerne la convolution. Soit deux fonctions f et g definie sur
C, on definit la convolution de f avec g notee f g comme
Z
+
(f g)(t) = f ( )g(t )d (7.14)

On verifie immediat ement que f g = g f . Loperateur de convolution


est commutati f, car la multiplication de deux nombres complexes lest aussi.
La transformee de Fourier de la convolution de deux fonctions f et g est
egale au produit de leurs transformees de Fourier.
(
\
f
g)( ) = f

( )g( ) (7.15)
Soit une fonction reelle f , on definit la fonction daut ocorrelat ion comme
Z
+
C
f
(t) = duf (u)f (t + u) (7.16)

La transformee de Fourier de la fonction C


f
est alors donnee par

( ) = f

( )f

( ) (7.17)
Compte tenu du fait que f est reelle, on a f

( ) = (f

( ))

, ce qui donne
C
c
f
( ) = |f

( )|
2
(7.18)
Cette relation est appelee theor`eme de Wiener-Khinchin.
Le theor`eme de Parseval donne que
Z

+

|f (t)|
2
dt =
Z
+

|f

( )|
2
d (7.19)
7.3 Dis cret isation de la transfor mee de Fourier
7.3.1 E

chantillonage
Dans la situation la plus frequemment rencontree, la fonction f est
echantil- lonnee `a intervalle regulier. Soit le pas separant deux
mesures consecutives, on a
f
n
= f (n) avec n = . . . , 2, 1, 0, 1, 2, 3, . . . (7.20)
Pour le pas de lechantillonnage , il existe une frequence critique, appel
ee frequence de Nyquist,
1

c
=
2
(7.21)
Transformee de Fourier rapide et algorithmes de
tri
n
1
au del`a de laquelle il nest pas possible davoir une information sur le
spectre de la fonction echantillonnee. Supposons que la fonction soit une
sinusode de frequence egale `a celle de Nyquist. Si la fonction est
maximale pour un point, elle est minimale au point suivant et ainsi de suite.
La consequence de ce resultat est que si on sait que le support de la
trans- formee de Fourier est strictement limite `a lintervalle [
c
,
c
], la
fonction f (t) est alors donnee par la formule
f (t) =
+
X
n=
f
sin(2
c
(t
n))
(t n)
(7.22)
Si la fonction f (t) est multipliee par la fonction e
2
1
t
avec
1
qui est
un multiple de 1/, les points echantillonnes sont exact ement les
memes. Une consequence de cette propriete est lappari tion du ph
enom`ene de duplicat ion (aliasing en anglais). Cela se manifeste de la
mani`ere suivante : supposons que la transformee de Fourier exacte dune
fonction ait un spectre plus large que celui donne par lintervalle de Nyquist,
le spectre situe `a droite se replie `agauche et celui `a droite se replie `a
gauche.
7.3.2 Transformee de Fourier
discr`ete
Soit un nombre fini de points ou` la fonction f a ete echantillonnee
f
k
= f (t
k
) avec k = 0, 1, 2, . . . , N 1 (7.23)
Avec N nombres fournis, il semble evident que lon peut obtenir N fr
equences
pour la transformee de Fourier. Soit la
suite
n

n
=

N
avec n = N/2, . . . , 0, . . . , N/2 (7.24)
Le nombre de frequences est a priori egale `a N + 1, mais comme les
bornes inferieure et superieure de lintervalle en frequence correspondent
aux bornes definies par la frequence critique de Nyquist, les valeurs
obtenues pour n =
N/2 et n = N/2 sont identiques et nous avons donc bien N points ind
epen-
dants.
Soit un nombre fini de points note h
k
, on definit la transformee de
Fourier discr`ete comme
h

n
=
N 1
X
h
k
e
2ikn/N
(7.25)
N
k=0
La transformee de Fourier discr`ete inverse est donnee par
7.3 Discretisation de la transformee de
Fourier
N 1
h
k
=
X
h

n
e
2ikn/N
(7.26)
n=0
Ces transformees de Fourier sont definies independamment des abscisses
corre- spondant aux valeurs originales ou` la fonction h a ete evaluee. Il
est toutefois
n
1
possible de relier la transformee de Fourier discr`ete `a la transformee de
Fourier de depart par la relat ion
f

(
n
) ' f

(7.27)
2
Notons que les proprietes etablies pour les transformees de Fourier au d
ebut de ce chapitre, selon le cas ou` la fonction est paire ou impaire, reelle ou
imaginaire se transposent compl`etement au cas de la transformee de Fourier
discr`ete. Les r`egles concernant la convolution se retrouvent bien
evidemment et par exemple lexpression du theor`eme de Parseval est alors
N 1
X
k=0
|h

k
|
2
=
N 1
X
N
k=0
|h
k
|
2
(7.30)
Le passage de la transformee de Fourier continue `a la transformee de
Fourier discr`ete est en fait un changement de mesure, ce qui explique que les
proprietes
etablies pour lune restent vraies pour la seconde.
On peut noter que les differences entre la transformee de Fourier
discr`ete et son inverse sont au nombre de deux : un changement de signe dans
lexponen- tielle complexe et un facteur de normalisation en 1/N . Ces faibles
differences expliquent pourquoi les procedures sont souvent identiques pour
le calcul de la transformee de Fourier et de son inverse dans les biblioth`eques
mathemat iques.
7.4 Transfor mee de Fourier rapide
Lidee de base de la transformee de Fourier rapide repose sur la
remar que suivante : posons
W = e
2i/N
(7.31)
La composante de Fourier de h sexprime alors comme
N 1
h

n
=
X
W
nk
h
k
(7.32)
k=0
Ainsi le vecteur h de composante h
k
est multiplie par une matrice de
coefficients a
nk
= W
nk
. Sans utiliser dastuces particuli`eres, le temps de
calcul pour une telle operat ion est alors en N
2
. Pour ameliorer de
mani`ere spectaculaire la rapidite de ce traiteme nt, on note que la
transformee de Fourier discr`ete de longueur N peut etre ecrite comme la
somme de deux transformees de Fourier discr`ete chacune de longueur N/2.
En effet, en supposant que le nombre N est
2
La transformee de Fourier continue est approchee de la mani`ere suivante
Z
+
f

(
n
) =

N 1
f (t)e
2i
n
t
dt (7.28)

X
f
k
e
2i
n
t
k
(7.29)
k=0
Transformee de Fourier rapide et algorithmes de
tri
k
k
k
=
f
n
(
7.37)
pair, on peut separ er la contribution des termes pairs et celle des termes
impairs dans lequat ion
N 1
F
k
=
X
e
2ijk/N
f
j
(7.33)
j=0
N/21
=
X
j=0
e
2i(2j)k/N
f2j +
N/21
X
j=0
e
2i(2j+1) k/N
f2j+1 (
7.34)
N/21
=
X
j=0
e
2ijk/(N/2)
f2j +
W
k
N/21
X
j=0
e
2ijk/(N/2)
f2j+1 (
7.35)
=F
p
+
W
k
F
i
(7.36)
k k
ou` F
p
represente la ki`eme composante de Fourier pour les composantes
paires de la fonction de depar t et F
i
represente la ki`eme composante de
Fourier pour les composantes impaires de la fonction de depart. A noter que
ces deux com- posantes sont periodiques en k avec une periode N/2.
Pour iterer ce type de procedure, nous allons supposer que le nombre
de points de la fonction de depart est dorenavant une puissance de deux. On
peut alors exprimer chaque composante de Fourier en fonction de deux
nouvelles composantes de Fourier sur un intervalle de longueur N/4 et ainsi de
suite. Une fois obtenue un intervalle de longueur 1, on a la transformee de
Fourier pour cet intervalle qui est egale au nombre f
n
correspondant. Le
nombre dindices pour caracteriser ce nombre est egal `a ln
2
(N )
F
iipip...ppi
On remarque donc que pour chaque valeur de n on a un alphabet fini dindice
iipip . . . ppi constitue de i et de p. Cette correspondance est biunivoque. Si
on pose que i = 1 et p = 0, on a lexpression inversee en binaire de chaque
valeur de n.
La procedure de transformee de Fourier rapide est alors constituee dune
pre- mi`ere operation de tri pour reordonner la matrice selon la lecture de
lalphabet genere, puis on calcule successivement les composantes de
Fourier de longueur
2, puis 4, jusqu`a N . La figure 7.1 illustre le nombre doperat ions `a
effectuer pour inverser les elements du tableau selon le mecanisme du
renversement de bits.
De nombreuses variantes de cet algorithme original sont disponibles, qui per-
mettent dobtenir la transformee de Fourier pour un nombre de points diff
erent dune puissance de deux.
000
001
010
011
100
101
110
111
000
001
010
011
100
101
110
111
000
001
010
011
100
101
110
111
(a)
(b)
Fig. 7.1 Schema illustrant le principe de la mise en ordre du tableau
par renversement de bits. (a) Sur un tableau de 8 elements etiquettes en
binaire, on note les operations de deplacements. (b) Bilan des d
eplacements `a effectuer : deux operat ions dechange delements.
7.5 Algorithmes de tri
7.5.1 Introduct ion
Un tableau est une suite delements reperes par un entier appele indice.
Une operat ion tr`es classique consiste `a changer lordre initial (qui peut etre
aleatoi re) en respectant un crit`ere defini par lutilisat eur. Une operation de
base consiste `atrier des nombres selon un ordre croissant ou decroissant. Une
operat ion voisine est la recherche du plus petit ou du grand element de ce
tableau.
Les operations precedentes sont destructrices dans le sens ou` lordre
initial du tableau est perdu une fois loperati on effectuee. On peut en creant
un tableau supplementaire construire une correspondance entre lordre obtenu
par un tri et lindice occupe par lelement du tableau correspondant dans le
tableau initial.
Si, au lieu dutiliser un tableau de nombres, on dispose dun tableau dobjets,
cest-a-dire un tableau dont lelement de base est une structure
comprenant des champs, qui sont eux-memes des nombres et des chanes
de caract`eres, les operat ions de tri peuvent aussi realisees sur plusieurs
champs de mani`ere sequentielle ; cette operat ion est appelee operat ion de
tri multiple.
7.5.2 Methode
di nsert ion
Supposons que lon veuille trier des elements dun tableau de nombre
selon un ordre croissant.Lalgorithme de la methode dinsertion est le
suivant : on
7.5 Algorithmes de tri
place un `a un les elements du tableau `a la bonne place du nouveau
tableau rempli des elements tries. On proc`ede donc de mani`ere iterat ive
jusquau dernier
element du tableau `a trier. On peut choisir de construire un nouveau
tableau ou de reutiliser le tableau existant. Pratiqueme nt, on proc`ede de
la mani`ere suivante. On choisit le premier element : il est
automat iquement bien place dans un tableau `a un element. On tire le
second element : on augmente dun
element la taille du tableau `a trier ; soit le nouvel element est plus
grand que le precedent et on place cet element `a la deuxi`eme place,
sinon, on deplace lelement initialement place `a la seconde place et lon
place le nouvel element
`a la premi`ere place. On choisit alors un troisi`eme element ; on teste si
celui-ci est plus grand que le deuxi`eme. Si le test est positif, cet element
est place en troisi`eme place, sinon on deplace lelement place en num
ero deux en numero trois et on teste si le nouvel element est plus
grand que lelement un. Si le test est positif, on place le nouvel element
en numero deux, sinon on deplace le premier element en deux et on
place le nouvel element en un. On continue cet algorithme jusquau dernier
element du tableau `a trier. Il est facile de voir que le nombre doperations
en moyenne evolue comme N
2
, ou` N est le nombre delements `a trier.
Comme nous allons le voir ci-dessous les algorithmes de type tri rapide
sont beaucoup plus efficaces car ceux-ci dependent du nombre delements
comme N log
2
(N ). Neanmoins, un algorithme de type insertion reste
suffisamment efficace si N <
20.
7.5.3 Tri `a
bul les
Le tri `a bulles es un algorithme en N
2
qui op`ere de la mani`ere
suivante : On compare les deux premiers elements du tableau ; si lordre est
correct, on ne fait rien sinon on echange les deux elements : on passe alors
au couple suivant constitue des elements 2 et 3, et on effectue un test `a
nouveau. Apr`es N 1 operat ions de ce type, on a place le plus grand el
ement du tableau en derni`ere position ; on peut alors recommencer sur le
tableau resta nt des N 1 elements ; cet algorithme est bien evidemment un
algorithme en N
2
et ne peut servir que pour des valeurs de N tr`es modestes.
7.5.4 Tri rapide
Connu par son nom anglais quicksort, le tri dit rapide proc`ede de
la mani`ere suivante : on prend le premier element du tableau `a trier,
note a
1
. On construit avec les autres elements deux sous tableaux : le
premier contient les elements plus petits que a
1
et le second les elements
plus grands. On peut placer a
1
`a la bonne place dans le tableau final et on
applique lalgorithme du tri rapide sur chacun des deux sous-tableaux. On peut
montrer quen moyenne lalgorithme est en N log
2
(N ), mais il est possible
Transformee de Fourier rapide et algorithmes de
tri
dobtenir des situations ou` lalgorithme est en N
2
.
Des variantes de cet algorithme puissant existent pour par exemple
eviter la recursivite qui penalise la rapidite dexecut ion du
programme. A nouveau, il est inutile, hormis pour des raisons pedagogiques,
de chercher `a reecrire un programme pour ces algorithmes, que cela soit
en programmation ou` de nom-
7.5 Algorithmes de tri
breuses biblioth`eques sont disponibles, ou dans les logiciels scientifiques ou`
les instructions de tri sont disponibles, mais il convient de tester la methode la
plus adaptee car le desordre initial du tableau `a trier influe de mani`ere
significative sur la performance des algorithmes.
77
Chapitre 8
Equations aux deriv
ees partielles
Contenu
8.1 Introduct ion . . . . . . . . . . . . . . . . . . . . . . . 77
8.2 Methode de la car acter istique . . . . . . . . . . . .
.
78
8.2.1 Equation du premier ordre lineaire et quasi-lineaire .
.
78
8.2.2 Surface solution . . . . . . . . . . . . . . . . . . . . . . 78
8.2.3 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . 81
8.3 Classification des EPDL du second ordre . . . . . . 81
8.4 Equations avec conditions aux fronti`eres . . . . . . 84
8.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . 84
8.4.2 Differences finies . . . . . . . . . . . . . . . . . . . .
.
84
8.4.3 Methodes matricielles . . . . . . . . . . . . . . . . .
.
85
8.4.4 Methodes de relaxation . . . . . . . . . . . . . . . .
.
85
8.4.5 Methodes de Fourier . . . . . . . . . . . . . . . . . .
.
85
8.5 Equations avec conditions initiales . . . . . . . . . . 87
8.5.1 Equations `a flux conservatif . . . . . . . . . . . . . . . 87
8.5.2 Une approche nave . . . . . . . . . . . . . . . . . . . 88
8.5.3 Crit`ere de Stabilite de Von Neumann . . . . . . . . . . 89
8.5.4 Methode de Lax . . . . . . . . . . . . . . . . . . . . . 90
8.5.5 Methode de Crank-Ni cholson . . . . . . . . . . . . . . 91
8.5.6 Methode `a contre-vent . . . . . . . . . . . . . . . . . 92
8.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . 93
8.1 Introduct ion
Les equat ions aux derivees partielles interviennent dans de nombreux
do- maines de physique, qui comprennent les probl`emes de diffusion, les ph
enom`enes de propagat ion, ainsi que le domaine de la mecanique des
fluides decrite par les equat ions hydrodynamiques comme celles de Navier-
Stokes et lequat ion de Schrodinger dependante du temps pour la m
ecanique quantique. Ces equat ions
Equations aux derivees
partielles
78
differentielles nont generalement pas de solutions analytiques et une r
esolut ion numerique de ces equat ions est alors necessaire.
Une equat ion aux derivees partielles est une relation liant une fonction
de n variables `a ses derivees partielles. Lordre de lequation est donne
par lordre le plus eleve des derivees partielles apparaissant dans
lequat ion. La forme generale dune equation aux derivees partielles lin
eaires est
L[f (x)] = g(x) (8.1)
ou` un x est un vecteur de composante (x
1
, x
2
, . . . , x
n
) et ou` L est un op
erateur defini par la relat ion
n n
L = p
0
(x) +
X
p
i
(x)
i
+
X
p
ij
(x)
i

j
+ . . . (8.2)
i=1
i, j=1
Si g(x) = 0, on dit que lequati on est homog`ene.
8.2 Met hode de la caracteristique
8.2.1 Equation du premier ordre lineaire et quasi-lineaire
Il existe une classe dequat ions aux derivees par tielles dont on peut
obtenir les solutions en utilisant une methode de resolution de type g
eometrique, la methode de la caracteristique. Ces equati ons sont des
equat ions aux derivees partielles du premier ordre qui sont lineaires pour
lordre de la derivat ion, mais quelconques pour la dependence dans la
fonction. Plus explicitement, ces equa- tions correspondent `a la forme
suivante
P
(x, y, f )
f
+ Q(x, y, f )
f
= R(x, y, f ) (8.3)
x y
ou` P , Q et R sont des fonctions scalaires `a trois variables et f une fonction
de deux variables x et y. La methode de resolution que nous allons pr
esenter sap- plique aux equat ions du premier ordre avec une nombre de
variables superieur
`a deux, mais pour une representation geometrique de cette methode et
pour la clarte de lexpose, nous nous limitons `a une equations aux deriv
ees partielles de deux variables.
8.2.2 Surface soluti on
Nous cherchons `a exprimer la solution de lEDP du premier ordre sous
la forme dune equat ion de surface suivante
g(x, y, f ) = 0 (8.4)
8.2 Methode de la caract
eristique
79
En exprimant la differentielle de cette equat ion, on obtient
dg =
g
dx +
g
dy +
g
df (8.5)
x y f
f

g
=
V M
O
Fig. 8.1 Schema illustrant la geomet rie de la surface solution, le
vecteur gradient qui est perpendiculaire `a la surface et le vecteur V
.
Vu que f (x, y) est une solution de lequat ion (8.3), on a
df =
f
dx +
f
dy (8.6)
x y
En eliminant df dans lequation (8.5), on obtient la differentielle de g
sous la forme
dg =

g g f

+ dx +

g
+
g f
dy (8.7)
x f x y f xy
Comme les variables x et y sont independantes, on doit necessairement avoir

g
+
g f
= 0 (8.8)
x f x
g
+
g f
= 0 (8.9)
y f y
Comme par hypoth`ese on a
g
= 0, on en deduit que
f
=
x
x
g
f
g
f
y
y

g
f
(8.10)
(8.11)
En inserant les equat ions (8.10)- (8.11) dans lequat ion (8.3), il vient
P (x, y, f )
g
+ Q(x, y, f )
g
+ R(x, y, f )
g
= 0 (8.12)
x y f
En introduidant le vecteur gradient `a la surface g(x, y, f ) = 0, on
g g g
g =
x
i +
y
j +
f
k (8.13)
Par definition le vecteur f est un vecteur normal `a la surface au point r
de coordonnees (x, y, f ). On definit un vecteur V tel que
V = P (x, y, f )i + Q(x, y, f )j + R(x, y, f )k (8.14)
Ainsi lequat ion (8.12) peut sexprimer de mani`ere vectorielle
g.V = 0 (8.15)
Comme le vecteur gradient est un vecteur normal `a la surface g(x, y, f ) =
0), cela signifie que V est un champ de vecteur qui vit sur la surface definie
par lequat ion g = 0 (voir fig.8.1). Pour determiner la carac teristique de ce
champ de vecteur, on doit resoudre lequat ion differentielle suivante
dr(t)
= V (8.16)
dt
ou` r(t) est un vecteur
r(t) = x(t)i + y(t)j + f (t)k (8.17)
avec t qui est un param`etre caracterisant la caracteristique.
On a de facon evidente
dr(t)
=
dx(t)
i +
dy(t)
j +
df (t)
k (8.18)
dt dt dt dt
Par identification avec les equat ions (8.14) et (8.17), on obtient le
syst`eme dequat ions differentielles suivant
dx(t)
= P (x, y, f ) (8.19)
dt
dy(t)
= Q(x, y, f ) (8.20)
dt
df (t)
= R(x, y, f ) (8.21)
dt
Il est `a noter que deux de ces trois equat ions differentielles sont ind
ependantes. La methode de la caracteristique permet de reduire une
equat ion differentielle du premier ordre lineaire ou quasi-lineaire en un
syst`eme dequat ions differen- tielles du premier ordre, bien plus facile `a
trater pour obtenir une solution.
8.3 Classification des EPDL du second ordre
2
8.2.3 Exemple
Pour illustrer la methode decrite precedemment nous allons r
esoudre un exemple dequat ion aux derivees partielles du premier ordre.
Soit lequat ion
2xt

f
+
f
= f (8.22)
avec la condition initiale
x t
f (x, 0) = x (8.23)
En utilisant les equations de la caracteristique, on obtient le syst`eme
dequations differentielles suivant
dx
2xt
= dt =
df
f
(8.24)
En integrant la premi`ere equat ion, on obtient
ln(|x/x
0
|) = t
2
(8.25)
soit une equat ion pour
x
x = x
0
e
t
(8.26)
En integrant la troisi`eme equat ion differentielle, on a
f = F (x
0
)e
t
(8.27)
En inserant lequat ion (8.26) dans lequat ion (8.27) on obt ient la solution gen
erale
de lEDP (8.22)
f = F (xe
t
2
)e
t
(8.28)
Pour determiner la fonction F , on va utiliser la condition initiale. A t =
0, lequat ion generale donne
f = F (x) (8.29)
qui doit etre egal `a x. On en deduit facilement que la fonction F est telle
que F (x) = x. On peut alors ecrire la solution de lequat ion (8.22) avec la
condition initiale et lon a
f = xe
tt
2
(8.30)
8.3 Classification des EPDL du second ordre
Pour les equat ions aux derivees par tielles du second ordre, nous allons
nous limiter aux equati ons aux derivees partielles lineaires. Une premi`ere
classifica- tion non exhaustive fait apparatre trois types dequat ions :
equat ions hyper- boliques, paraboliques et elliptiques. Cette classification
provient de lanal yse des derivees partielles dordre le plus eleve. Pour
les equati ons dordre deux, une solution unique existe si la relation appelee
equat ion aux caracteristiques
Equations aux derivees
partielles
(p
12 +
p
21

p
(p
12 +
p
21 )
2

4p
11 p22
2p
11
= 0 (8.31)
t
6
5
4
Conditions
aux
limites
3
2
1
Conditions initiales
0
-1 0 1 2 3 4 5 6 7 8 9
x
Fig. 8.2 Schema illustrant le principe de la resolution dune equat ion
aux derivees partielles avec des conditions initiales et des conditions aux
limites : La propagati on de la solution le long de laxe temporel (axe vertical) se
fait par tranche horizontale.
est vraie. Si la valeur du membre de gauche de lequat ion (8.31) est reelle,
on dit que lon a une equat ion hyperbolique. Si la valeur est complexe, on dit
que lon a une equati on elliptique et si elle est nulle, on a une equat ion
parabolique.
On peut illustrer ces trois categories par les exemples physiques suivants :
Equation hyperbolique. La propagation des ondes dans un milieu con-
tinu (unidimensionnel) obeit `a lequat ion suivante

2
u(x, t)
t
2
= c
2

2
u(x, t)
x
2
(8.32)
ou` u(x, t) peut designer une variable scalaire comme la densite locale
(x, t) ou une variable vectorielle comme la vitesse locale v(x, t).
Equation para bolique. La diffusion de particules dans un milieu continu
obeit `a lequat ion suivante
(x, t)
= D

t
2
(x, t)
x
2
(8.33)
ou` D est la constante de diffusion et (x, t) la densite locale instantan
ee des particules diffusantes.
Equation elliptique. En dimensions deux, le potentiel coulombien induit
par une densite de charges electriques satisfait lequat ion suivante
(avec
y
6
Conditions aux bords
5
4
3
2
1
0
-1 0 1 2 3 4 5 6 7 8 9
x
Fig. 8.3 Schema illustrant le principe de la resolution dune equat ion
aux derivees par tielles avec des conditions aux bords : lensemble des points
de la grille doit etre garde tout au long du calcul.
des unites choisies de mani`ere appropriee)
(x, y) =

2
V (x, y, t)
+
x
2

2
V (x, y, t)
(8.34)
y
2
ou` (x, y) est la densite locale de charge et V (x, y) le potentiel
electrosta- tique `a determiner.
La resolution numerique repose sur une distinction import ante entre
ces type dequati ons : Les deux premi`eres equat ions correspondent `a une
evolut ion temporelle tandis que la troisi`eme equat ion correspond `a un
probl`eme statique. Dans le premier cas, la solution est donnee `a partir dune
fonction (ou condition initiale) que lon doit propager le long de laxe du
temps ; en complement on doit tenir compte des conditions au limites du
probl`eme. En discretisant la resolution, on obt ient un schema du type de
celui illustre par la figure 8.2.
En effet pour une equation dependante du temps du type equat ion de
dif- fusion, la resolution de lequat ion se fait pour un temps donne en
fonction des valeurs de la fonction `a linstant anterieur precedent (ou
de quelques instants anterieurs precedents). Il nest donc pas necessaire
de garder en memoire la solution `a tous les temps.
Pour lequation de Poisson, la solution est unique une fois donnee la
fonc- tion (x, y). La solution ne pouvant etre obtenue numeriquement
directement
`a partir de lintegrat ion `a partir dune fronti`ere du syst`eme, il est n
ecessaire de proceder `a des reajustements, ce qui implique de garder en m
emoire la totalite

de valeurs de la fonction V `a determiner tout au long de la resolut ion num
erique
(voir figure 8.3).
8.4 Equations avec conditions aux
fronti`eres
8.4.1 Introduct ion
Le prototype de ces equat ions est la resolution de lequat ion de Poisson. Ces
equations sont a priori plus simples `a resoudre car le probl`eme de la
stabilite de lalgorithme se pose moins frequemment que dans pour des
equat ions avec conditions initiales, que nous allons discuter dans la section
suivante.
Avant de proceder `a la resolution numerique, il est important de bien
dis- tinguer le type de conditions aux fronti`eres du probl`eme : condition de
Dirich- let, qui specifie les valeurs des points `a la fronti`ere ; condition de
Neumann qui specifie les valeurs des gradients normaux `a la fronti`ere,
voire des conditions mixtes.
8.4.2 Difference s
fini es
La premi`ere etape consiste `a choisir un maillage regulier de lespace
(que nous choisissons bidimensionnel dans notre exemple). Soit la fonction de
deux variables V (x, y)
x
i
= x
0
+ j j = 0, 1, ..., J (8.35)
y
k
= x
0
+ k k = 0, 1, ..., K (8.36)
ou` est le pas de la grille. On note V
jk
= V (x
j
, y
k
). On approxime le
laplacien par la formule de difference finie suivante
V
j+1,k
+ V
j1,k
2V
j,k

2
+
que lon peut ecrire simplement
V
j,k+1
+ V
j,k1
2V
j,k

2
=

jk
(
8.37)
V
j+1,k
+ V
j 1,k
+ V
j,k+1
+ V
j,k 1
4V
j,k
=
2

jk
(8.38)
Ce syst`eme dequat ions lineaires peut sexprimer sous une forme matricielle
en utilisant lindexat ion suivante
i = j(K + 1) + k j = 0, 1, ..., J et k = 0, 1, ..., K (8.39)
Lequation (8.37) est correcte pour lensemble des points interieurs au
rectangle.
Pour les points aux fronti`eres, les valeurs de V ou de ces derivees sont donnees
par le probl`eme lui-meme. On obtient finalement la structure matricielle
suiv- ante.
A.Y = b (8.40)
La matrice A est une matrice tridiagonale avec des franges, le vecteur Y est un
vecteur `a J K composantes (Y
i
V
jk
) et le vecteur b `a J K composantes
(b
i

8.4 Equations avec conditions aux


fronti`eres
2
2
2

jk
) Ce type de representat ion est similaire pour des equat ions elliptiques
du second ordre
a(x, y)

V
+b(x, y)
V
+ c(x, y)
V
x
2
x
+ d(x, y)
V
y
2
+ e(x, y)
V
+ f (x, y)V = g(x, y) (8.41)
y xy
En choisissant une classification tr`es rapide, on peut dire quil existe
trois types de methodes pour resoudre ce type dequations : les methodes
de relax- ation, les methodes de Fourier et les methodes matricielles
directes.
8.4.3 Met hodes
ma tricielles
Les methodes matricielles ou methodes directes consistent `a d
eterminer les valeurs de la fonction V en calculant la matrice inverse de
A. La difficulte de cette methode repose sur la taille considerable de la
matrice que lon doit inverser. En effet, si on consid`ere un reseau
bidimensionnel dont la taille est
100100, et compte tenu de lequat ion (8.39), la matrice A est alors une
matrice carree de taille 10000 10000, contenant 10
8
elements. Il est
donc necessaire que cette matrice soit tr`es creuse et de structure simple
afin que le calcul de
son inverse soit effectue avec un algorithme
rapide.
Pratiqueme nt, la matrice inverse est facile `a obtenir quand les elements
de mat rice ne dependent pas des abscisses du reseau (cas dune equat ion
elliptique
`a coefficients
constants).
8.4.4 Met hodes de
relaxation
Les methodes de relaxation reposent sur le schema iterat if suivant. On
de- compose la matrice A comme
A = E F (8.42)
ou` E est une matrice facilement inversible et F le reste. On peut ecrire
alors que
E.u = F.u + b (8.43)
En choisissant un vecteur u
(0)
, on proc`ede `a la succession de calculs
suivants
E.u
(r)
= F.u
(r1)
+ b (8.44)
La convergence de la methode est obtenue quand la difference entre deux
valeurs de la fonction est inferieure `a , ku
(r)
u
(r1)
k < . La norme kuk d
esigne par
exemple
P
ij
|u
ij
|
2
.
Equations aux derivees
partielles
mn
8.4.5 Met hodes de Fouri er
Pr incipe
On exprime la transformee de Fourier discr`ete de V dans les deux directions
Ox et Oy.
1
V
kl
=
K L
K 1 L1
X X
V

m=0 n=0
2ikm/K
e
2iln/L
(8.45)
V
mn
2
V
00
Une expression analogue pour la fonction peut etre obtenue
1

kl
=
K L
K 1 L1
X X
m=0 n=0

mn
e

2ikm/K
e
2iln/L
(8.46)
En prenant la transformee de Fourier discr`ete de lequat ion (8.38), les
com- posantes de Fourier de V sont reliees `a celles de par la relation



e
2i m/K
+
e
2i m/K
+
e
2i n/L
+
e
2i n/L

4

=

mn

2
(8.47)
ce qui peut se reecrire plus simplement pour si n et m differents de zero comme
V

mn

(8.48)
mn
2


cos

2 m


+ cos

2 n


2

K L
La relation algebrique entre les composantes de Fourier de V et de
indique que le calcul dans lespace de Fourier est elementaire et revient `a
multiplier individuellement chaque composante de par un scalaire.
La methode de resolut ion numerique est donc la suivante :
Calculer les composantes de Fourier de :
mn
Calculer les composantes de Fourier de V en utilisant la relation (8.48) :

mn
Calculer la transformee de Fourier inverse de
V

pour obtenir V .
Noter que la transformee de Fourier obtenue donne les relations suivantes
u
jk
= u
j+J,k
= u
j,k+K
(8.49)
ce qui en dautres termes correspond `a une solution sat isfaisant des
conditions aux limites periodiques. A partir de lequation (8.48), on voit
que lon peut
choisir V

= 0, mais quil est necessaire que

00
= 0. Si cette derni`ere relation
nest pas sat isfaite, il faut modifier la solution choisie pour V comme nous allons
le voir ci-dessous.
Condition de Dirichlet
Si on impose des conditions de Dirichlet aux bords du rectangle, cest-`a-
dire u = 0 pour j = 0 et j = J et pour k = 0 et k = K , la transformee de
Fourier adaptee est alors celle en sinus.
2

K 1 L1

km

ln

X X

V
kl
=
K L
m=0 n=0
V
mn
sin

K
sin
L
(8.50)
Une expression similaire pour la fonction peut etre ecrite. Un calcul
simple montre que la relation (8.48) relie les composantes de Fourier en
sinus des deux fonctions. et la methode de calcul donnee dans le
paragraphe precedent sapplique `a nouveau `a condition de considerer les
transformees de Fourier en sinus.
8.5 Equations avec conditions initiales
2
Condition de Neumann
Si on impose des conditions de Neumann aux bords du rectangle, cest-`a-
dire u = 0 pour j = 0 et j = J et pour k = 0 et k = K , la transformee de
Fourier adaptee est alors celle en cosinus.
2
K 1 L1

km

ln

X X

V
kl
=
K L
m=0 n=0
V
mn
cos
K
cos
L
(8.51)
ainsi que pour la fonction . A nouveau, les composantes de Fourier sont reli
ees par la relation (8.48). Le meme schema donne ci-dessus sapplique
alors.
Conditions comp lexes
Ceci represente le cas general ou` par exemple la fonction u(x, y)
sannule sur lune des fronti`eres (j = 0), mais vaut u = f (y) sur la fronti`ere
opposee (j = J ). La methode consiste alors `a ecrire que la solution de ce
probl`eme est la somme de deux contribut ions : celle de la solution de
lequat ion pour une condition de Dirichlet et celle de la solution qui est
nulle `a linterieur du rectangle. En
ecrivant la solution sous la forme
u = u
0
+ u
B
(8.52)
avec u
B
= 0 sauf u
B
= f `a la fronti`ere, on obtient
u
0
=
2
u
B
+ (8.53)
ce qui montre que la fonction satisfait alors une condition de Dirichlet. Le calcul
de u
0
est effectue en ajouta nt un terme de source `a . Pratiquement, cela
ajoute une contribut ion sur la ligne situee juste avant la fronti`ere.
De mani`ere analogue, si la condition aux fronti`eres est donnee par un
gra- dient normal non nul, on decompose la solution dune premi`ere
contribution correspondant `a la solution du probl`eme de Neumann et dune
seconde contri- bution nulle en dehors de la fronti`ere. En ut ilisant une d
ecomposition anal ogue
`a celle introduite ci-dessus, cela revient `a resoudre le probl`eme de
Neumann en modifiant le terme de source.
8.5 Equations avec conditions init iales
8.5.1 Equations `a flux
cons ervatif
Les equat ions `a flux conservatif dans un espace unidimensionel
peuvent secrire sous la forme
u
=
F(u)
(8.54)
t x
ou` u et F sont des fonctions soit scalaires soit vectorielles ; F est appele
flux conserve, on peut citer lexemple de lequati on de la conservation de la
Equations aux derivees
partielles

masse (correspondant `a une fonction u scalaire)



= .(v) (8.55)
t
Si de plus on a une relation constitut ive, comme la loi de Fick, F = v =
D(), on obtient lequat ion parabolique de la diffusion.
Si u est un vecteur, lequat ion de propagation des ondes (sonores ou elec-
tromagnetiques, par exemple) se ram`ene `a ce type dequat ion. En effet
soit lequat ion des ondes suivante,

2
v
t
2
= c
2

2
v
x
2
(8.56)
on introduit les fonctions auxiliaires r et s
r = c
v
x
s =
v
t
(8.57)
(8.58)
et lequat ion de propagation sexprime alors par un ensemble de deux
equat ions aux derivees partielles du premier ordre
r
= c
s
(8.59)
t x
s
= c
r
(8.60)
t x
Si on consid`ere que r et s sont les deux composantes du vecteur u, lequat ion
de propagation est alors donnee par lequation (8.54) avec la relation
matricielle suivante
F (u) =

0 c

c 0
.u (8.61)
Ainsi les equat ions `a flux conserve compr ennent `a la fois les
equat ions aux derivees par tielles paraboliques et hyperboliques.
Par souci de simplicite, nous allons considerer par la suite lequat ion `a
flux conservatif suivante
u
= c
u
(8.62)
t x
La solution de cette equat ion est bien evidemment connue u = f (x ct),
mais nous allons chercher `a construire une procedure numerique pour d
eterminer la solution.
8.5.2 Une appr oche
nave
Une premi`ere etape consiste `a discretiser lespace et le temps sur un r
eseau regulier
x
j
= x
0
+ jx j = 0, 1, . . . J (8.63)
t
n
= t
0
+ nt n = 0, 1, . . . N (8.64)
ou` x et t sont les pas despace et de temps respectivement.
t
O
=
x
O
u
n
j
La difficulte reside maintenant dans le choix de lalgorithme dint
egrat ion. La methode la plus simple consiste `a utiliser un algorithme de
type Euler

u

n+1 n

j,n
u
j
u
j
= + (t) (8.65)
t
Meme si la precision de lalgorithme nest pas tr`es import ante, cela
permet dexprimer la solution `a linstant n + 1 uniquement en fonction de
linstant n.
Pour integrer spat ialement, on utilise un algorithme du second ordre
u

n n
u
j+1
u
j1
2
j,n
+ (x ) (8.66)
2x
ce qui donne finalement
u
n+1 n n n
j

u
j
t
u
j+1
u
j1
= c
2x
(8.67)
soit encore
n n
u
n+1 n
u
j+1
u
j1
j
=
u
j

ct (8.68)
2x
La determinat ion de u
n+1
se
fait en fonction des trois points : u
n
,
u
n
et u
n
.
j j j+1 j1
On parle de methode explicite. Malheureusement, ce schema tr`es simple ne
fonctionne pas en ce sens quil ne permet pas dobt enir une solution correcte de
lequat ion aux derivees partielles. En dautres termes, on dit quil est
instable.
8.5.3 Cr it`ere de Sta bil ite de Von Neumann
Pour faire lanalyse de la stabilite des algorithmes, on suppose que les
coef- ficients de lequat ion aux differences varient tr`es peu dans lespace et
le temps. Les modes propres solutions de cette equat ion peuvent alors
secrire sous la forme
j
= (k)
n
e
ikjx
(8.69)
ou` k est un vecteur donde reel et (k) une fonction complexe qui d
epend de k. On voit facilement que lintegration temporelle conduit `a
une progression geometrique pour les valeurs de u
n
. Afin que la solution soit
stable, il est neces- saire que les modes exponentiellement divergents
nexistent pas. Cela revient `adire que lalgorithme est instable d`es quil
existe un vecteur donde k
0
tel que
|(k
0
)| > 1 (8.70)
En inserant lequat ion (8.69) dans lequat ion (8.67) et on obtient
ct
(k) = 1 i
x
sin(kx) (8.71)
Le module de (k) est strictement superieur `a 1 pour tous les vecteurs
donde, hormis ceux ou` kx = p ou` p est un entier. Ceci permet de
comprendre la nature catastrophique de la methode precedente.
j
jj
t
Fig. 8.4 Schema illustrant le principe de la resolution dune equat ion
aux derivees partielles avec la methode de Lax : La zone hachuree indique
la zone de dependance (a) Methode instable (b) Methode stable
8.5.4 Methode de
Lax
Pour corriger le grave probl`eme dinstabilite de la methode precedente,
Lax a propose la modification suivante : le terme u
n
provenant de la derivee
temporelle est remplace par la moyenne sur les deux points adj acents :
u
n
1
n n
j


2
(u
j+1
+
u
j1
)
(8.72)
ce qui donne la relation iterative suivante
n n
u
n+1

1
n n
u
j+1
u
j1
j
=

2
(u
j+1
+
u
j1
)
+
t
(8.73)
2x
En inserant la solution (8.69) dans lequation (8.73), on obt ient une
expression pour (k)
ct
(k) = cos( kx) i
x
sin(kx) (8.74)
La condition de stabilite |(k)| < 1 equivaut `a
choisir
ct
x
< 1 (8.75)
Cette condition, dite de Cour ant est appelee aussi condition de stabilite
de Courant-Friedrichs-Lewy. Il est facile de comprendre que la discretisat ion
spat io- temporelle doit se faire `a une vitesse qui est donnee par
x
superieur
`a la vitesse de propagation du phenom`ene c. Pour comprendre
graphiquement la raison pour laquelle le rapport du pas du reseau sur celui du
temps doit exceder la vitesse de
1 +
ct
1
ct
propagation, considerons les figures suivantes : les zones hachurees
correspon- dent `a la solution donnee par la solution exacte de lequat ion de
propagation : si la valeur du point `a letape n + 1 depend des valeurs des
points situees dans la zone hachuree, lalgorithme est instable. Inversement
dans la figure de droite, le sommet de cette zone depend de points situes `a
lexterieur de la zone hachuree et lalgorithme est stable.
8.5.5 Met hode de Crank-
Ni chol son
Nous venons de voir ci-dessus que lon peut corriger en partie les defaut s
de la methode nave en modifiant la methode dEuler. La methode est
uncon- ditionnellement stable dans le sens ou` quel que soit le vecteur donde
k, (k) a un module inferieur `a 1, mais doit satisfaire un crit`ere sur la
relation entre le pas temporel et le pas spatial par la relation Eq.(8.75). Avec
des schemas de resolution implicite, on va voir que lon peut obtenir une m
ethode incondition- nellement stable.
La derivee spatiale discretisee avec le schema dEuler calcule en
fait la derivee au temps demi-entier. La methode de Crank-Ni cholson
corrige ce defaut en faisant une moyenne temporelle de derivee spatiale de
la mani`ere suivante.
u
n+1
n

t
h

n n n+1 n+1
i
(8.76)
j
=
u
j

c
4x
u
j+1

u
j1

+ u
j+1

u
j1
On peut aussi reecrire cette equation en separ ant les termes `a linstant
n + 1 de ceux `a linstant n,
u
n+1
t
h
u
n+1 n+1
i
= u
n
t
h

u
n n n+1 n+1
i
j
+
c
4x
j+1

u
j1 j

c
4x
j+1

u
j1

+ u
j+1

u
j1
(8.77)
Cette equation peut sexprimer sous la forme dun ecriture mat ricielle
A.u
n+1
= u
n
(8.78)
ou` u
n
est un vecteur dont les composantes sont les coordonnees spat iales.
En faisant une analyse du crit`ere de stabibilite de Von Neumann, on obt ient
(k) qui est donne par
(k) =
2x
i
sin( k x)
2x
i
sin(kx)
(8.79)
Pour toute valeur de k, on a|(k)| = 1, ce qui donne une methode qui
est inconditionnellement convergente.
La methode de Crank-Ni cholson est une ameliorat ion significative par
rap- port `a la methode de Lax precedemment decrite. Elle est
remarquable si le front ou la queue donde ne presente pas de discontinuite,
mais elle genere des oscilla- tions rapides si les discontinuites dans les
conditions initiales sont presentes. Les Figures 8.5 gauche et droitre montrent
levolution, sur un temps court t = 0.1, de lequati on de propagat ion donn
ee par la methode de Crank-Ni cholson pour des conditions initiales suivantes
: `a gauche, la courbe est une arche de sinusoide
1
1.2
0.8
1
0.6
0.8
0.6
0.4
0.4
0.2
1
0
1 2 3
1
0
1 2 3
0.2
x
Fig. 8.5 Illustration de la methode dintegrat ion `a contre vent pour la
propa- gat ion dun front donde abrupte (figure de gauche) avec la methode de
Crank- Nicholson (figure de droite) pour un front donde initialement donnee
par une fonction porte. La methode de Crank-Ni cholson genere des
oscillations au voisi- nage des fortes changements de pente du front donde, un
effet attenue par la methode `a contre-vent
et `a droite une fonction porte. Le fait que le module de (k) soit egal `a 1
pour toutes les valeurs de k est `a la lorigine de ce phenom`ene.
Pour eviter ces probl`emes doscillation sur le front donde, il est n
ecessaire de choisir une methode qui verifie la condition de CFL, cest `a dire
une methode ou` (k) < 1.
8.5.6 Methode `a contre-
vent
Dans le cas ou` le front donde presente une discontinuite, la methode la
plus adaptee est la methode dite `a contre-vent. La discretisat ion de
lequat ion de propagation se fait de la mani`ere suivante
u
n+1 n n n
j

u
j
t
u
j
u
j1
= c
x
(8.80)
Une analyse de stabilite de Von Neumann conduit facilement
x x
(k) = 1 c
t
(1 cos( kx)) ic
t
sin(kx) (8.81)
8.6 Conclusion
t
Le module de (k) est maintenant strictement inferieur `a 1 si c
x
< 1. On
retrouve la condition CFL obtenue dans la methode de Lax. Il nexiste pas
de methode qui soit inconditionnellement convergente et qui verifie la
condition CPL. Il est donc necessaire danal yser au prealable le
probl`eme physique `aresoudre pour choisir la methode de resolution la
plus adaptee.
8.6 Conclus ion
Les difficultes des methodes numeriques pour la resolution des
equat ions derivees partielles ont des origines diverses : elles proviennent soit
des subt ilites liees au choix de lalgorithme comme dans le cas des
equat ions avec conditions initiales, soit des probl`emes de stockage en m
emoire dans le cas des equations avec conditions aux fronti`eres. Des difficult
es supplementaires apparaissent pour des equat ions aux derivees partielles
non-lineaires (cas de lhydrodynamique) ou` il est necessaire dintroduire des
nouveaux crit`eres pour lanalyse de la stabilite des algorithmes.
De tels developpements depassent largement le cadre de ce cours
introductif, mais cela illustre la grande complexite de ce sujet. En effet, le
domaine de la resolution des equations aux derivees partielles reste un
domaine tr`es actif de recherche en analyse numerique, soulignant `a la
fois linteret de nouvelles methodes et la necessite dobtenir des m
ethodes de plus en plus performantes.
95
"
. . . .
Chapitre 9
Alg`ebr e lineaire
Contenu
9.1 Introduct ion . . . . . . . . . . . . . . . . . . . . . . . 95
9.2 E

limination de Gauss-Jordan . . . . . . . . . . . . . 97
9.2.1 Rappels sur les matrices . . . . . . . . . . . . . . . . . 97
9.2.2 Methode sans pivot . . . . . . . . . . . . . . . . . . . 97
9.2.3 Methode avec pivot . . . . . . . . . . . . . . . . . .
.
98
9.3 E

limination gaussienne avec substitution . . . . . . 98
9.4 Decompositi on LU . . . . . . . . . . . . . . . . . . . . 99
9.4.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . 99
9.4.2 Resolution dun syst`eme lineaire . . . . . . . . . .
. .
100
9.5 Matrices creuses . . . . . . . . . . . . . . . . . . . . . 101
9.5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . 101
9.5.2 Matrices tridiagonal es . . . . . . . . . . . . . . . . . . 102
9.5.3 Formule de Sherman-Morison . . . . . . . . . . . . . . 102
9.6 Decompositi on de Choleski . . . . . . . . . . . . . . . 102
9.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . 103
9.1 Introduct ion
Les deux chapitres qui suivent concernent le traiteme nt numerique des
ma- trices Ce premier chapitre est consacre aux methodes employees pour r
esoudre les quatre taches les plus frequemment rencontrees pour les
syst`emes lineaires. Par definition, on peut ecrire celles-ci comme
A.x = b (9.1)
ou` A est une matrice M N
"
a
11
a
12
. . . a
1N

"
a
21
a
22
. . . a
2N

"
A =
"
"
.
.
.
.

.
. . . .

(9.2)
"
.
.


a
M 1
a
M 2
. . . a
M N
Alg`ebre lin
eaire
"
. .
x est un vecteur colonne de M elements et b un vecteur colonne de N elements.
"

b
1

"
b
2

"
x
1

"
x
2

b =
"
.
"
x =
"
.

(9.3)
" "
" "
" "

b
N
x
M
Si N = M , il y auta nt dequat ions que dinconnues et si aucune des
equat ions nest une combinaison lineaire des N 1 autres, la solution existe et
est unique.
1
Hormis pour des valeurs de N tr`es petites (typiquement N 4), ou` les
for- mules sont simples `a exprimer, il est generalement necessaire de proc
eder `a un calcul numerique pour obtenir la solution dun syst`eme
dequat ions lineaires. Comme nous allons le voir ci-dessous, si la matrice
A nest pas une matrice creuse (matrice dont la majorite des elements est
nulle), il est necessaire dap- pliquer une methode generale qui revient en
quelque sorte `a inverser la matrice A (ou `a la factoriser), ce qui necessite
un grand nombre doperat ions qui aug- mente comme le cube de la dimension
lineaire de la matrice, N
3
.
Meme si la procedure numerique est censee conduire `a une solution
dans le cas dune matrice non singuli`ere (det(A) = 0), laccumulation
derreurs dar- rondi, souvent liee `a des soustractions de nombres voisins
fournit un vecteur x errone. Dans le cas dune matrice dont le d
eterminant est tr`es voisin de zero (matrice presque singuli`ere), les
solutions obtenues peuvent etre aussi fausses. Lenorme biblioth`eque de
sous-programmes pour les probl`emes dal- g`ebre lineaire montre
limportance de ces probl`emes dans le calcul numerique et la necessite de
choisir une methode specifique d`es que la matrice a des pro- prietes
particuli`eres.
Parmi les taches typiques dalg`ebre lineaire hormis la resolution dun
sys- t`eme lineaire, on peut citer
la determination des solutions dun ensemble de syst`emes, par
exemple A.x
j
= b
j
ou` x
j
et b
j
sont des vecteurs `a N composantes et
j un indice parcourant un ensemble fini dentiers,
le calcul de linverse de A : A
1
,
le calcul du determinant de A.
De mani`ere encore plus aigue que dans les chapitres precedents, une m
eth- ode de force brute est bien moins efficace pour resoudre un
probl`eme dal- g`ebre lineaire quune methode specifique. Nous allons
donc voir tout dabord le principe dune methode generale pour une
matrice quelconque, puis consid-
erer quelques unes des techniques specifiques qui dependent de la structure
des mat rices.
9.2 E

liminat ion de Gauss-


Jordan
1
Si N > M , les equations sont independantes entre elles et il ny a pas de solution. Si
N < M , il y a une indetermi nation et il existe une infinite de solutions.
1 a
22 "
0
a
a a
a

9.2
E

limina tion de Ga uss-Jo rda n
9.2.1 Rap pels sur les ma trices
Il est utile de remarquer que le calcul des quatre taches precedentes peut
etre a priori execute de mani`ere similaire : en effet, si on consid`ere par
exemple un syst`eme 4 4, on a
"
a
11
a
12
a
13
a
14

"
a
21 a22 a23 a24

""
x
1

""
x
2

"
t
1

"
t
2

"
y
11
y
12
y
13
y
14

"
y
21 y22 y23 y24

"
.
"" " "
=

a
31
a
132
a
133
a
34


x
3

t
3

y
31
y
132
y
133
y
34

a
41
a
42
a
43
a
44
x
4
""
b
1

=
""
b
2

t
4
"
c
1

"
c
2

y
41
y
42
y
43
y
44
"
1 0 0 0

"
0 1 0 0

(9.4)
"" " "

b
3

c
3

0 0 1 0

b
4
c
4
0 0 0 1
ou
`
loperat eur t designe loperateur reunion de colonnes. Ainsi on voit que
linversion dune matrice est identique `a la resolut ion dun ensemble de N sys-
t`emes lineaires pour lequel le vecteur situe dans le membre de droite a tous les
elements nuls sauf un seul qui est different pour chaque colonne.
Les trois r`egles elementaires que lon peut realiser sur les matrices
sont les suivantes.
E

changer les lignes de A et de b (ou c ou de la matrice identite) et en
gardant x (ou t ou Y ) ne change pas la solution du syst`eme lineaire.
Il sagit dune reecriture des equat ions dans un ordre different.
De mani`ere similaire, la solution du syst`eme lineaire est inchangee si
toute ligne de A est remplacee par une combinaison lineaire delle-
meme et des autres lignes, en effectuant une operati on analogue pour
b (ou c ou la matrice identite).
Lechange de deux colonnes de A avec echange simultane des lignes
cor- respondantes de x (ou t ou Y ) conduit `a la meme solution.
Toutefois, si on souhaite obtenir la matrice Y dans lordre initialement
choisi, il est necessaire de proceder `a loperat ion inverse une fois la
solution obt enue.
9.2.2 Met hode sans pivot
Pour la simplicite de lexpose, on consid`ere tout dabord une matrice
dont les elements diagonaux sont strictement differents de zero.
On multiplie la premi`ere ligne de A par 1/a
11
(et la ligne
correspondante de b ou de la matrice identite). On soustrait a
21
fois la 1`ere
ligne `a la deuxi`eme ligne, a
31
fois la 1`ere ligne `a la troisi`eme ligne et ainsi
de suite jusqu`a la derni`ere ligne. La matrice A a maintenant la structure
suivante
"
0
12
"
0 a
0
a
0
0 0

13 14
0 0
0 a a a
23 24
a
0
a
0

(9.5)

32 33 34

0 0 0
42 43 44
ij
22 12
32
13
23
a
a

43
a
44
ou` les coefficients
a
0
sexpriment en fonction des coefficients ou` les coefficients
a
ij
.
On multiplie alors la deuxi`eme ligne par 1/a
0
, puis on soustrait a
0
fois
la deuxi`eme ligne `a la premi`ere ligne,
a
0
fois la deuxi`eme ligne `a la troisi`eme
ligne et ainsi de suite jusqu
structure suivante
la derni`ere ligne. La matrice A a maintenant la
"
1 0 a
0 0
"
0 1 a
0 0
0 0

14
0 0
24
(9.6)
"
0 0 a
0
a
0 0

33 34

0 0 a
0 0 0 0
On it`ere le procede jusqu`a la derni`ere ligne et on obtient alors la
mat rice identite. On peut obtenir alors facilement la solution du syst`eme
dequat ions.
9.2.3 Methode avec pi vot
La methode precedente souffre du defaut de ne sappliquer quaux
matrices dont tous les elements de la diagonale sont non nuls. Or, une
matrice nest pas necessairement singuli`ere si un seul element de la
diagonale est nul. Pour permet tre une plus grande generalite de la m
ethode, on ajoute aux operations precedentes la troisi`eme r`egle enonc
ee ci-dessus. On peut en effet, en utilisant linversion des colonnes, placer sur
la diagonale un element non nul de la ligne (si tous les elements dune
ligne sont nuls, cela signifie que le determinant de la matrice est nul et que la
matrice est singuli`ere, ce qui a ete exclu par hypoth`ese). De plus, on peut
montrer que la recherche du plus grand element de la ligne pour faire la
permutation des colonnes rend la procedure bien plus stable, en particulier
en augmentant de mani`ere importante la precision numerique des
solutions.
Ce type dalgorithme est disponible dans de nombreuses biblioth`eques et
il est parfaitement inutile de chercher `a reecrire un code qui necessite un
temps import ant `a la fois pour sa realisat ion et pour sa validation.
9.3
E

limina tion gaussienne avec subs titut ion
Pour la resolution stricte dun syst`eme lineaire, il nest pas necessaire
dobtenir une matrice diagonale comme celle obtenue par la methode prec
edente. Ainsi en effectuant `a chaque ligne la soustraction des lignes situees
au dessous de la ligne dont le coefficient de la diagonale vient detre reduit `a
lunite, on obt ient une matrice triangulaire superieure dont la structure est la
suivante
22
a
a
2

44
b
4
"
a
0 0 0 0
"
x
1
"
b
0

11
a
12
a
13
a
14 1
"
0 a
0 0 0
23 24
"
x
2
"
b
0

"
0 0 a
0
a
0


.
"
x
3

=
"
b
0

(9.7)

133 34

0 0 0 a
0
x
4
0
Alg`ebre lin
eaire
X

b
a
a
N
"
.


. .

.
Il est possible de faire la resolut ion de ce syst`eme lineaire par une proc
edure de substitut ion successive
0
x
4
=
4
0
44
1
x
3
=
a
0
(9.8)
(b
3

x
4
a
34
)
(9.9)
0 0
33
et de mani`ere generale
1
0
x
i
=
0
ii
(b
i

j=i+1
a
ij
x
j
)
(9.10)
Cette methode est avantageuse dans le cas des syst`emes lineaires car le
nombre doperat ions `a effectuer est dordre N
2
, contrairement `a la m
ethode precedente qui necessite de calculer compl`etement linverse de
la matrice et necessite un temps de calcul en N
3
.
Sil faut resoudre un ensemble de syst`emes lineaires comprenant N
termes, cela est alors equivalent `a resoudre linversion dune matrice et lon
retrouve un temps de calcul de lordre de N
3
.
9.4 Decomposi tion
LU
Les methodes precedentes necessitent de connatre `a lavance le
membre de gauche de lequat ion (9.1). Les methodes qui suivent consiste
`a reecrire la matrice A afin que la resolution du syst`eme dequati ons soit
executee plus facile- ment.
9.4.1 Pr inci pe
Nous allons montrer que toute matrice N N peut se decomposer de
la mani`ere suivante.
ou
`
A = L.U (9.11)
L est une matrice triangulaire inferieure et U une matrice triangulaire
superieure,
soit "

11
0 0 . . . 0

"

21

22
0 . . . . . . . . . . . . 0

"
. .
.
. .

L =
"
.
.
"
.
. . .

(9.12)
"
.
(N 1)(N 1)
0

N 1

N 2
. . . . . .
N N
et "

11

12

13
. . .
1N

"
0
22

23
. . . . . . . . . . . .
2N

"
. .
.
. .

9.4 Decomposition
LU
"
U =
"
.
.
"
.
. . .

(9.13)
"
. . .


. . .
(N 1)(N 1)

(N 1)N

0 0 . . . 0
N N
2

. .
B
.
. .
. .
.
@
.
En effectuant la multiplication matricielle de L par U , on obtient les relat ions
suivantes
i
a
ij
=
X

il

lj
i j (9.14)
l=1
j
a
ij
=
X

il

lj
i > j (9.15)
l=1
Ce syst`eme dequat ions lineaires donne N
2
equations et le nombre
dinconnues est 2

N (N +1)

. Ce syst`eme est donc surdetermine. On peut
donc choisir N
equations supplementaires afin dobtenir une et une seule solution. On fixe
donc la valeur de la diagonale de la matrice L
pour i [1, N ].

ii
= 1 (9.16)
Lalgorithme de Crout permet de calculer simplement les N
2
coefficients
restants, en utilisant les relations suivantes
i1

ij
= a
ij

X

ik

kj
i j (9.17)
k=1
1

ij
=
jj
(a
ij

j1
X
k=1

ik

kj
) i j + 1 (9.18)
Il faut noter que les sous-programmes creant cette decomposition sappuie
sur la recherche du meilleur pivot afin que la methode soit stable.
2
9.4.2 Resolut ion dun syst`eme lineaire
La resolution dun syst`eme lineaire devient tr`es simple en
introduisant le vecteur y.
A.x = L.U.x (9.20)
= L.(U x) = b (9.21)
Soit
L.y = b (9.22)
2
Sachant que le nombre dinconnues est devenu egale a` N
2
, on peut ecrire les deux
matrices sous la forme dune seule matrice de la forme
0

11

12

13
. . .
1N
1
B 21 22 23 . . . . . . . . . . . . 2N C
B
.
.
B
B
B
.
(N
. . .
1)( N
C
C
C
C
C
1)
0
A
(9.19)
N 1 N 2 . . . . . . N N
en se rappelant que les elements diagonaux de la matrice ont ete choisis egaux `a un.
Alg`ebre lin
eaire

U.x = y (9.23)
Chaque syst`eme peut etre resolu par une procedure de substitution.
y =
b
1
1

11
1
i1
X
(9.24)
y
i
=
ii
(b
i

j=1

ij
y
j
) (9.25)
(substitut ion `a partir du premier element car la matrice est triangulaire
in- ferieure). On obt ient la solution pour le vecteur x en utilisant
y
N
x
N
=
N N
(9.26)
1
x
i
=
ii
(y
i

N
X
j=i+1

ij
x
j
) (9.27)
car la matrice est triangulaire superieure.
Une fois effectuee la decomposition LU , le calcul du determinant dune
ma- trice devient tr`es simple. On sait que le determinant dun produit de
matrices est egale au produit des determinants. De plus pour une matrice
triangulaire, le determinant de la matrice est egal au produit des el
ements de sa diagonale. Comme les elements de la diagonale de L ont ete
choisis egaux `a 1, le determi- nant de cette matrice est donc egal `a 1, et
le determinant de A est donc egal
`a
N
det(A) =
Y

jj
(9.28)
j=1
9.5 Matrices creus es
9.5.1 Introduct ion
On appelle matrice creuse une matrice dont la plupart des elements sont
egaux `a zero. Si de plus, la structure des elements non nuls est simple, il
nest pas necessaire de reserver une quantite de memoire egale `a celle
de la matrice compl`ete. Des algorithmes specifiques permette nt de reduire
le temps de calcul de mani`ere considerable. Parmi les cas simples de
matrices creuses, citons les mat rices
tridiagonal es : les elements de matrice non nuls sont sur la diagonale
et de part et dautre de celle-ci sur les deux lignes adj acentes. On a a
ij
= 0
pour |i j| > 1,
diagonales par bande de largeur M : les elements de matrice tels que
|i j| > M sont nuls a
ij
= 0,
simplement ou doublement bordees : par rapport `a la definition prece-
dente, des elements non nuls supplementaires existent le long des
9.5 Matrices creuses
lignes ou colonnes du bord de la mat rice.
c
1
0 . . . 0
b
2
c
2
. . . 0
"
.
"
.
.
"
.

9.5.2 Matrices tridiagona les


Soit le syst`eme suivant
"
b
1
"
a
2
"
x1
"
y1

"
x
2
"
y
2

"
0
. . . .
"
"
"
"
. . . .

=
"
.
"
.

(9.29)
"
0 . . .
.
b
"
c
"
"
"

.
N 1 N 1


.

.

0 0 . . . . . . b
N N
x
N
y
N
Noter quavec cette notation a
1
et c
N
ne sont pas definis. Il y a un vaste de
choix de biblioth`eques disponibles pour calculer les solutions qui prennent un
temps de calcul proportionnel `a N . De mani`ere generale, on peut obtenir
aussi avoir un algorithme proportionnel `a N pour une matrice `a bandes. Le
prefacteur de lalgorithme est proportionnel `a M .
9.5.3 Formule de She rman-Mor ison
Supposons que lon ait une matrice A dont on a facilement calcule
linverse (cas dune matrice tridiagonal). Si on fait un petit changement dans A
en mod- ifiant par exemple un ou quelques elements de lensemble de la
matrice, peut-on calculer encore facilement linverse de cette nouvelle matrice ?
B = A + u v (9.30)
ou le symbole designe le produit exterieur. u v represente une matrice
dont lelement ij est le produit de la i`eme composante de u par la j`eme
composante de v.
La formule de Sherman-Morison donne linverse de B
B
1
= (1 + A
1
.u v)
1
.A
1
(9.31)
= (1 A
1
.u v + A
1
.u v.A
1
.u v . . .).A
1
(9.32)
= A
1
A
1
.u vA
1
(1 +
2
+ . . .) (9.33)
= A
1

(A
1
.u) (v.A
1
)
1 +
(9.34)
ou` = v.A
1
u. On a utilise lassociat ivite du produit exterieur et produit
interne.
Posons z = A
1
u et w = (A
1
)
T
v, on a = v.z et
B
1
=
A
1
z
w
1 +
(9.35)
9.6 Decomposi tion de Chol eski
Une matrice est definie positive symetrique (a
ij
= a
ji
) quand x, on a
x.A.x > 0 (9.36)
9.7 Conclusion
ik
L
quel que soit x. Il existe alors une matrice L triangulaire inferieure telle que
A = L.L
T
(9.37)
Les elements de matrice sont determines par les relations
i1
L
ii
= (a
ii

X
L
2
)
1/2
(9.38)
1
L
ji
=
ii
k=1
(a
ij

i1
X
k=1
L
ik
L
jk
) (9.39)
avec j [i + 1, N ]. Une fois cette construction realisee, on peut resoudre
un syst`eme lineaire simplement en utilisant la procedure de substitut ion pr
ecedem- ment detaillee dans la section 9.4.2.
9.7 Conclus ion
Avant de resoudre des syst`emes lineaires de grande dimension, il est
im- peratif de commencer par une analyse des proprietes de la matrice
afin de determiner la methode la plus adaptee afin dobtenir une
solution avec une precision correcte et pour un temps de calcul qui sera
minimal. Les differentes methodes presentees dans ce chapitre ne sont
quune introduction `a ce tr`es vaste sujet.
105
Chapitre 10
Analyse spectr ale
Contenu
10.1 Introduct ion . . . . . . . . . . . . . . . . . . . . . . . 105
10.2 Pro prietes des matrices . . . . . . . . . . . . . . .
. .
106
10.3 Methodes directes . . . . . . . . . . . . . . . . . . .
.
108
10.3.1 Methode de Jacobi . . . . . . . . . . . . . . . . . . . . 108
10.3.2 Reduction de Householder . . . . . . . . . . . . . . . . 110
10.3.3 Algorithme QL . . . . . . . . . . . . . . . . . . . . . . 112
10.3.4 Factorisation de Schur . . . . . . . . . . . . . . . . . . 113
10.4 Methode iterati ves . . . . . . . . . . . . . . . . . . . . 114
10.4.1 Methodes des puissances . . . . . . . . . . . . . . . . . 114
10.4.2 Methode de Lanczos . . . . . . . . . . . . . . . . . . . 115
10.1 Introducti on
Ce chapitre est consacre aux operat ions que lon peut realiser sur des
ma- trices. Plus specifiquement, nous allons nous interesser `a la d
eterminat ion des valeurs propres et/ou vecteurs propres correspondants. Tout
dabord, quelques rappels utiles pour la suite de ce chapitre : soit une matrice
carree A de dimen- sion N , on appelle un vecteur propre x associe `a la
valeur propre , un vecteur qui sat isfait la relat ion
A.x = x (10.1)
Si x est un vecteur propre, pour tout reel = 0, x est aussi un vecteur
propre avec la meme valeur propre .
Les valeurs propres dune matrice peuvent etre determinees comme les
racines du polynome caracteristique de degre N
det(A .1) = 0 (10.2)
ou` 1 designe la matrice identite.
Compte tenu du fait que dans C, tout polynome de degre N a N racines,
la mat rice A poss`ede N valeurs propres complexes.
Analyse spectrale
106
Quand une racine du polynome carac teristique est multiple, on dit que
la valeur propre est degeneree, et la dimension de lespace associe `a
cette valeur propre est superieure ou egale `a deux.
La determinat ion des valeurs propres dune matrice `a partir de
lequat ion caracteristique nest pas efficace sur le plan numerique. Des m
ethodes plus adap- tees sont exposees dans la suite de ce chapitre.
Si une matrice poss`ede une valeur propre nulle, la matrice est dite singuli`ere.
Une matrice est symetrique si elle est egale `a sa transposee
A = A
T
(10.3)
a
ij
= a
ji
i, j (10.4)
Une matrice est hermitienne ou auto-adjointe si elle est egale au
complexe conjugue de sa transposee.
A = A

(10.5)
Une matrice est orthogonale si son inverse est egale `a sa transposee
A.A
T
= A
T
.A = 1 (10.6)
Une matrice est unitaire si sa matrice adjointe est egale `a son inverse
A.A

= A

.A = 1 (10.7)
Pour les matrices `a coefficients reels, il y a identite de definition entre
mat rice
symetrique et Hermitienne, entre matrice orthogonale et unitaire.
Une matrice est dite normale si elle commute avec son adjointe.
10.2 Propr ietes des ma trices
Les valeurs propres dune matrice Hermitienne sont toutes reelles. Parmi
les matrices Hermitiennes tr`es utilisees en Physique, il vient `a lesprit la
represen- tation matricielle de loperateur de Schrodinger en mecanique
quantique
1
Un corollaire de la propriete precedente est que les valeurs propres
dune mat rice reelle symetrique sont elles aussi toutes reelles.
Les vecteurs propres dune matrice normale ne possedant que des
valeurs propres non degenerees forment une base dun espace vectoriel
de dimension N . Pour une matrice normale avec des valeurs propres degen
erees, les vecteurs propres correspondant `a une valeur propre degener
ee peuvent etre remplaces par une combinaison lineaire de ceux-ci.
Pour une matrice quelconque, lensemble des vecteurs propres ne constituent
pas necessairement une base dun espace de dimension N .
Pour une matrice non normale, les vecteurs propres ne sont pas orthogonaux.
On appelle vecteur `a droite les vecteurs tels que
A.x
R
=

i x
R
(10.8)
i i
1
La representation de cet operateur corres pond en general a` une matrice de
10.2 Proprietes des
mat rices
107
dimension infinie, mais nous ne considerons ici que les syst`emes ou la representation
matricielle est possible dans un espace de dimension finie.
R
X
1
ou`
i
est la i`eme valeur propre. De mani`ere similaire, on appelle vecteurs propres
`a gauche, les vecteurs tels que
x
L L
i
.A =
i
x
i
(10.9)
Le transpose du vecteur `a gauche de A est le vecteur propre `a droite
de la transposee de la meme matrice. Si la matrice est symetrique, les
vecteurs propres
`a gauche sont les transposes des vecteurs propres `a droite
2
.
Si la matrice est Hermitienne, les vecteurs propres `a gauche sont les
trans- poses des vecteurs propres conjugues `a droite.
Dans le cas dune matrice non normale, on definit la matrice X
R
comme
la matrice constituee de colonnes formees par les vecteurs `a droite. On
introduit la mat rice X
L
formee par les lignes des vecteurs `a gauche. On
obtient par definition que
de meme on
a
A.X
R
= X
R
.diag(
1
, . . . ,
n
) (10.10)
X
L
.A = diag(
1
, . . . ,
n
).X
L
(10.11)
En multipliant lequation (10.10) par X
L
et lequat ion (10.11) par X
R
, on
ob- tient
X
L
.X
R
.diag(
1
, . . . ,
n
) = diag(
1
, . . . ,
n
)X
L
.X
R
(10.12)
ce qui montre que la matrice diagonale formee par les valeurs propres de
A commute avec le produit X
L
.X
R
. Sachant que les seules matrices qui
commut ent avec une matrice diagonale constituee delements differents
sont elles-memes diagonales, on en deduit que chaque vecteur `a gauche est
orthogonal `a chaque vecteur `a droite et reciproquement. En normal isant
les vecteurs `a droite et `agauche, on peut obtenir que la matrice X
L
.X
R
soit egale `a lidentite.
Dans le cas ou` lensemble des vecteurs propres ne constitue une base com-
pl`ete, il est toujours possible de completer cet ensemble afin davoir une
matrice telle que X
L
.X
R
= 1.
Si la matrice A est inversible, on obt ient en multipliant lequat ion (10.10)
par X
1
que
R
.A.X
R
= diag(
1
, . . . ,
n
) (10.13)
Nous avons alors construit une matrice de transformation similaire de A
Rappelons la propriete suivante : soit B une matrice telle que
B = P
1
.A.P (10.14)
ou` P est une matrice inversible. On a
det(B 1) = det(P
1
.A.P .1) (10.15)
= det(P
1
.(A .1)P ) (10.16)
= det(A .1) (10.17)
2
Puisque le determinant dune matrice et de sa transposee sont les memes, les
valeurs propres de ces deux matrices sont identiques.
0 0 . . . . . . . . . . . .
1 0 . . . . . . . . . . . .
. . . c . . . . . . s . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . 1 . . . . . .
. . . . . . . . . . . . . . . . . .
. . . s . . . . . . c . . .
. . . . . . . . . . . . . . . 1
. . . . . . . . . . . . . . . . . .
0
0 0
"
"
"
0
"
0

0
0
0
Ainsi, on a montre que lon peut construire une matrice de
transformat ion similaire ou` la matrice A devient diagonale dans cette
nouvelle base.
Pour une matrice reelle symetrique, la matrice de passage est une
matr ice orthogonale.
La strategie generale pour determiner les valeurs propres dune matrice
con- siste `a construire une suite de transformati ons de similarite jusqu`a
lobtention dune mat rice diagonale, ou plus simplement jusqu`a lobt ention
dune matrice tridiagonale `a partir de laquelle il est possible de determiner
assez facilement les valeurs propres.
Pour realiser ces transformat ions, deux grandes classes de methodes
sont disponibles : les methodes directes et les methodes iterat ives.
Les premi`eres consistent `a effectuer une suite de transformations
similaires et ne sappliquent quaux matrices de taille relati vement modeste, car
le temps de calcul crot comme le cube de la dimension lineaire de la
matrice.
Pour les matrices de grande taille et generalement creuses, les m
ethodes iterat ives sont plus adaptees. Dans la mesure ou` la plupart du
temps, le spectre complet dune tr`es grande matrice nest pas recherchee,
mais seulement une partie, les methodes iterati ves peuvent realiser plus
efficacement cette tache. Nous allons voir dans la suite de ce chapitre
quelques algorithmes de base, tout en ayant `a lesprit quil existe une tr`es
vaste litterature sur ce sujet, et pour un probl`eme particulier, il est n
ecessaire de commencer par analyser precisement le type de matrice dont
on souhaite obtenir le spectre, afin de choisir la methode la plus adaptee
pour resoudre ce probl`eme.
10.3 Meth odes di rect es
10.3.1 Met hode de Jacobi
La methode de Jacobi revient `a effectuer une suite de transformat ions
simi- laires orthogonales. Chaque transformat ion est une simple rotation
planaire qui permet dannuler un element de la matrice A initial.
La rotation elementaire P
pq
est donne par la mat rice
"
1
"
0
"
"
"
"
P
pq
=
"
0
"
0
"
0

0
0
0

(10.18)

1
avec la condition que
Soit la matrice A
0
telle que
pq
c
2
+ s
2
= 1.
(10.19)
A
0
= P
T
.A.P
pq

(10.20)
Analyse spectrale
0
0
2
a
0
pq
2 2
pq
0
0
0
0
En nota nt les coefficients de la matrice a
ij
, on obtient apr`es calculs que
a
rp
= ca
rp
sa
rq
(10.21)
a
rq
= ca
rq
+ sa
rp
(10.22)
a
0 2 2
pp
= c a
pp
+ s a
qq
2csa
pq
(10.23)
a
0 2 2
qq
= s a
pp
+ c a
qq
+ 2csa
pq
(10.24)
avec r = p et r = q.
pq
= (c
2
s )a
pq
+ cs(a
pp
a
qq
) (10.25)
Si on annule le terme a
0
, en introduisant langle de rotation , (c = cos(),
s = sin()) on a le rapport

=
c s
(10.26)
2sc
= cot(2) (10.27)
=
a
qq

a
pp
a
pq
Si on appelle t = s/c, on obtient en ut ilisant lequat ion
(10.26)
(10.28)
t
2
+ 2t 1 = 0 (10.29)
La plus petite des racines correspond `a un angle de rotation inferieur `a /4
et donne la methode la plus stable numeriquement. Cette racine
3
peut
sexprimer sous la forme
4
t =
sgn()
|| +

2
+ 1
(10.30)
En utilisant que c
2
+ s
2
= 1

on obt ient pour c que


1
c =
1 + t
2
(
10.31)
et on a immediatement s = tc. En imposant que le terme a
0
sannule, on a
finalement les relations suivantes
a
pp
= a
pp
ta
pq
(10.32)
a
qq
= a
qq
+ ta
pq
(10.33)
a
rp
= a
rp
s(a
rq
+ a
rp
) (10.34)
a
rq
= a
rq
+ s(a
rp
a
rq
) (10.35)
avec defini
par
=
s
1 + c
(10.36)
3
Pour eviter les depassements de capacite de lordinateur, on choisit t = 1/2
4
Noter que la fonction sgn que lon definit dans lequation (10.29) vaut soit +1 soit
1. Cette fonction est generalement intrinsique a` beaucoup de langages, mais produit
aussi la valeur 0 dans certains langages. Il faut donc sassurer que cett e fonction est
correctement implementee dans le langage informatique que lon utilise.
En calculant la somme S
S =
X
|a
rs
|
2
(10.37)
r=s
on peut obtenir une estimation de la convergence de la methode. Pour une
transformat ion similaire elementaire, on a
S
0
= S 2|a
pq
|
2
(10.38)
Ainsi la suite des transformati ons conduit `a faire decrotre la contribut ion
des
elements non diagonaux. Comme la transformat ion est orthogonale, la
somme des carres des elements de la matrice est conservee, ce qui
revient `a ce que la somme des carres de la diagonale augmente de ce qui
a ete perdu par les
elements non diagonaux. Ainsi formellement, on peut choisir les elements
de la mat rice A dans nimporte quel ordre et on obtient une methode qui
converge vers une mat rice diagonale. Au terme de cette procedure, on a
D = V
T
.A.V (10.39)
ou` D est une matrice diagonale contenant les differentes valeurs propres
et V
est une matrice contenant les vecteurs propres correspondants.
10.3.2 Reduct ion de
Householder
La methode precedente est tr`es couteuse en temps de calcul. Pour r
eduire celui-ci, la procedure de Householder se propose de transformer une
matrice symetrique en une matrice tridiagonale par une serie de
transformat ions or- thogonales suivantes.
Une matrice de Householder est definie par la relation suivante
P = 1 2w.w
T
(10.40)
ou` w est un vecteur reel normalise, w
T
.w = |w|
2
= 1.
Verifions que la matrice P est une matrice orthogonale
P
2
= (1 2w.w
T
).(1 2w.w
T
) (10.41)
= 1 4w.w
T
+ 4w.(w
T
.w).w
T
(10.42)
= 1 (10.43)
Cela implique que P = P
1
. En ut ilisant la definition de P , on verifie
facilement que P
T
= P , et on a donc bien construit une transformat ion
orthogonale.
Nous allons maintenant appliquer `a P le vecteur x constitue de la
premi`ere colonne de A. Pour cela, on exprime la matrice P sous la forme
suivante
u.u
T
P = 1 (10.44)
H
avec H = |u|
2
/2. Si on choisit le vecteur u tel que
u = x |x|e
1
(10.45)
"
"
0
0
0
"
.
0
"
"
"

.

ou` e
1
est le vecteur colonne unitaire tel que seule la premi`ere composante
est non nulle et egale `a 1. On obt ient facilement la valeur de H
H = 2(|x
2
| |x|x
1
) (10.46)
En appliquant P `a
x
u
T
P.x =x
H
.(x |x|e
1
)
.x (10.47)
2u.(|x|
2

|x|x
1 )
=x
2 x 2 x x
(10.48)
| |
2
| |
1
=x u (10.49)
= |x|e
1
(10.50)
Cela montre que la matrice P annule tous les elements du vecteur x hormis
le premier.
La strategie pour construire les matrices de Householder est la suivante :
on choisit un vecteur x constitue des n 1 derniers elements de la premi`ere
colonne pour construire la matrice P
1
. En consequence, on obtient la structure
suivante pour P
1
"
1 0 0 . . . . . . 0

"
0

"
"
P
1 =

"
0

"
. P
(n1)

(10.51)
"
1

"

0
En appliquant la transformat ion orthogonale `a la matrice A, on obtient
A
0
=P.A.P (10.52)
"
a
11
k 0 . . . . . . 0

"
k
"
"
=
"
0

(10.53) "
"
"
"

0
ou` le nombre k est au signe pr`es la norme du vecteur (a
21
, . . . , a
n1
)
T
.
On choisit la seconde matrice de Householder avec un vecteur x qui constitu
e avec les (n 2) derniers elements de la seconde colonne
"
1 0 0 . . . . . . 0

"
0 1 0 . . . . . . 0

"
0 0
P
1 =

"
0 0

(10.54)
. . P
(n2)

"
.

"
2

"
0 0

0 0
La tridiagonali sati on de la partie superieure de la matrice precedente est pr
eservee, on construit ainsi colonne par colonne une tridiagonal isat ion de la
matrice A. La procedure est compl`ete apr`es (n 2) transformat ions similaires
de Householder.
Pratiqueme nt, pour eviter la multiplication de matrices, tr`es couteuse num
erique-
ment, on peut exprimer le produit P.A.P en introduisant la notation suivante
p
=
A.u
H
(10.55)
En consequence, la premi`ere multiplicat ion matricielle peut etre ecrite comme
u.u
T
A.P = A.(1 ) (10.56)
H
de meme pour la
seconde
= A p.u
T
(10.57)
avec
A
0
= P.A.P = A p.u
T
u.p
T
+ 2K u.u
T
(10.58)
T
K =
u .p
(10.59)
En posant
2H
q = p K u (10.60)
on a la matrice A
0
qui sexprime alors simplement
A
0
= A q.u
T
u.q
T
(10.61)
10.3.3 Algorithme QL
En utilisant une suite de transformations de Householder, on peut
ecrire tout matrice reelle sous la forme
A = Q.R (10.62)
ou` Q est une matrice orthogonale et R une matrice triangulaire superieure.
Pour obtenir une telle decomposition, les matrices de Householder sont
construites dans ce cas de mani`ere `a ce que la premi`ere colonne ne
poss`ede que le premier
element non nul une fois la transformat ion effectuee, pour la deuxi`eme
colonne, on choisit le vecteur de la matrice de Householder pour que tous les el
ements de la mat rice transformee soient nuls sous la diagonale et ainsi de
suite jusqu`a for- mer une mat rice triangulaire superieure. Le nombre de
matrices de Householder
pour obtenir ce resultat est egal `a (n
1).
De mani`ere analogue, on peut montrer quil existe une decomposition de la
forme
A = Q.L (10.63)
. ou` Q est une matrice orthogonale et L une matrice triangulaire inferieure.
Les transformat ions de Householder correspondantes consistent `a annuler,
colonne
par colonne, les elements de la matrice transformee qui sont situes au
dessus de la diagonale.
Si on definit la matrice A
0
comme
A
0
= L.Q (10.64)
Puisque Q est orthogonal, on en deduit de lequat ion (10.63) que
L = Q
1
.A (10.65)
ce qui donne
A
0
= Q
T
.A.Q (10.66)
ce qui montre que A
0
est une transformat ion orthogonale de A.
Pour des raisons de minimisation derreurs darrondi, il est preferable
du- tiliser la decomposition QL au lieu de la decomposition QR.
Lalgorithme QL est defini par la suite suivante
A
s
= Q
s
.L
s
(10.67)
A
s+1
= L
s
.Q
s
(10.68)
La methode repose sur les bases suivantes : (i) Si A a des valeurs propres
toutes distinctes de valeur absolue |
i
|, alors A
s
tend vers une matrice trian-
gulaire inferieure quand s . Les valeurs propres apparaissent sur la diag-
onale par valeur absolue croissante (ii) Si A a une valeur propre degener
ee de multiplicite p,quand s , A
s
tend vers une matrice triangulaire inf
erieure, exceptee pour un bloc dordre p correspondant `a la valeur propre
degeneree. Pour une mat rice quelconque, une iteration a un cout de
calcul proportionnel
`a n
3
, mais pour une matrice tridiagonal e, ce cout est lineaire avec n. On
peut montrer que la convergence depend de la difference entre deux valeurs
propres successives. Quand deux valeurs propres sont trop proches, il est
quand meme possible dameliorer la convergence de lalgorithme en d
eplacant ces valeurs propres successives.
10.3.4 Factorisation de Schur
La factorizat ion de Schur consiste `a reecrire une matrice carree A
sous la forme suivante
Si la matrice A est complexe
A = Z T Z

(10.69)
ou` Z est unitaire et T est une matrice triangulaire superieure.
Si la matrice A est reelle
A = Z T Z
T
(10.70)
ou` Z est orthogonale et T est une matrice quasi-triangulaire sup
erieure, ce qui signifie que la diagonale est constituee soit de blocs 1
1 soit de blocs 2 2.
Les colonnes de Z sont appelees les vecteurs de Schur. Les valeurs propres
de A apparaissent sur la diagonale de T ; les valeurs propres complexes conjugu
ees dune matrice A reelle correspondent aux blocs 2x2 de la diagonale.
Lalgorithme utilisee dans la biblioth`eque LAPACK, on commence par
trans- former la matrice A en la transformant en une matrice de Hessenberg,
qui est une matrice triangulaire superieure bordee une ligne delements
nuls sous la diagonale.
Si la matrice A est complexe
A = QH Q

(10.71)
ou` Q est unitaire et H est une matrice de Hessenberg.
Si la matrice A est reelle
A = QT Q
T
(10.72)
ou` Q est orthogonale et H est une matrice de Hessenberg.
Dans une deuxi`eme etape, on transforme la matrice de Hessenberg en une
ma- trice de Schur.
10.4 Meth ode iteratives
Ces methodes sont principalement appliquees `a des matrices de grande
taille et largement creuses. Les calculs croissent dans ce cas lineairement
avec n. Pour toute methode iterat ive, il convient de sassurer que la
convergence est suffisamment rapide pour que le temps de calcul ne soit pas
consomme sans que la recherche dune solut ion ne soit reellement effectuee.
10.4.1 Met hodes des pui ssances
Le principe de cette methode est tr`es simple, car il repose sur le fait
quen appliquant un grand nombre de fois la matrice sur un vecteur initial
quelconque, les vecteurs successifs vont prendre une direction qui se rapproche
du vecteur propre de la plus grande valeur propre (en valeur absolue). Le
principe iterat if de cette methode est la suivante : soit x
0
un vecteur initial
quelconque, et A la matrice dont on cherche `a determiner la plus grande
valeur propre. On effectue loperat ion suivante
x
1
= A.x
0
(10.73)
Si on designe comme langle entre ces deux vecteurs, on a
cos() =
x
1
.x
0
|x
1
|
.|x
0
|
(10.74)
Si x
0
nest pas perpendiculaire au vecteur recherche (ce qui est rarement
le cas pour un vecteur choisi au depart aleatoirement), le cosinus de langle
entre x
0
et x
1
est different de zero. En appliquant `a nouveau la matrice
A sur le vecteur x
1
on cree un vecteur x
2
et on calcule langle entre x
1
et
x
2
qui est inferieur au precedent en valeur absolue. On continue jusqu`a ce
que langle entre deux vecteurs successifs devienne plus petit quune nombre
choisi initialement.
Analyse spectrale
0
1
On en deduit alors le vecteur propre recherche et donne par x
n
, ainsi
que la valeur propre correspondante. La convergence de cette methode
varie comme (
1
/
2
) ce qui peut devenir assez lent quand les valeurs
propres deviennent quasi-degenerees. Cet te methode nest pas tr`es
efficace, mais poss`ede le merite de secrire rapidement.
10.4.2 Met hode de
Lancz os
La methode de Lanczos consiste `a la fois `a calculer les puissances
successives de A, en sinspirant de la methode precedente, mais de
mani`ere bien plus effi- cace en construisant un ensemble de vecteurs
orthogonaux. Par simplicite, nous allons voir la methode pour des matrices
hermitiennes, mais la methode peut
etre etendue pour des matrices plus generales, en particulier quand les
vecteurs
`a gauche diff`erent des vecteurs `a
droite.
Soit un vecteur de depart normal ise u
0
: ce vecteur est convenablement
choisi cest `a dire que sa projection sur la base de la valeur propre `a d
eterminer est non nulle. On construit les vecteurs successifs de la base dite de
Krylov `a partir de la relat ion
ou
`

2
u
1
= A.u
0

1
u
0
(10.75)

2
et
1
sont des constantes determinees de la mani`ere suivante :
1
est
choisi de mani`ere `a ce que le vecteur u
1
soit orthogonal au vecteur u
0

1
= u
T
.A.u
0
(10.76)
et
2
est determine de mani`ere a` ce que le vecteur u
1
soit normalise.
q

2 =
u
T
.A
2
.u0

2
(10.77)
0 1
Pour le vecteur suivant u
2
, on utilise la relation :

3
u
2
= A.u
1

2
u
1

2
u
0
(10.78)
On note tout dabord quavec cette construction, le vecteur u
2
est orthogonal au
vecteur u
0
. De mani`ere similaire, on impose que u
2
soit un vecteur
orthogonal
`a u
1
ce qui conduit `a la relat ion

2
= u
T
.A.u
1
(10.79)
et la normalisation de u
2
est imposee en choisissant
3
comme
q

3 =
u
T
.A
2
.u1

2


2 (
10.80)
1 2
10.4 Methode it
erat ives
Par iterat ion, on obtient pour le i`eme vecteur

i+1
u
i
= A.u
i1

i
u
i1

i
u
i2
(10.81)
On verifie facilement que tous les vecteurs u
j
avec j < i 2 sont
orthogo- naux avec le vecteur u
i+1
en raison de la construction dans un
sous espace
i1
u
T

2
0 . . . . . . . . .

3
0 . . . . . .

4
0 . . .
. . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . 0
n1

n1
. . . . . . . . . 0
n
0
"
"
"
0
0
0

orthonor me sur ses vecteurs. Les valeurs


i
et
i+1
sont determinees par
les relations suivantes

i
=u
T
.A.u
i+1
(10.82)

i+1
=
q
2
i 1
2
i
i1
.A
.u

(10.83)
Dans cette base, la matrice A
0
est tridiagonal e et est donnee
"

1
"

2
"
"
A
0
=
"
0
"
0

0
0
0

n
(10.84)
Il est possible dutiliser alors une methode de type QL pour obtenir
rapidement les valeurs propres de la matrice A
0
, cest `a dire aussi la matrice
A.
Quelques remarques : en construisant progressivement une base de vecteurs
de plus en plus grande, on voit que la valeur propre recherchee peut etre estim
ee en utilisant les sous espaces successifs. On peut donc arreter literat ion
quand la difference entre deux estimations successives de la valeur propre est
devenue suffisamment petite.
Dans le cas ou` la matrice A est une representat ion tronquee dun op
erat eur dont la base propre est infinie (par exemple, un operat eur de
Schroringer), le procede iteratif conduit progressivement `a des valeurs
de
i
de plus en en plus petites. On peut considerer que la base de Krylov
est compl`ete quand
n
est devenu inferieure en valeur absolue `a une
valeur choisie `a lavance
(generalement 10
12
).
117
Chapitre 11
Equations integrales
Contenu
11.1 Introduct ion . . . . . . . . . . . . . . . . . . . . . . . 117
11.2 Equation de Fredholm . . . . . . . . . . . . . . . . . 117
11.2.1 Equation de premi`ere esp`ece . . . . . . . . . . . . . . 117
11.2.2 Equation de seconde esp`ece . . . . . . . . . . . . . . . 118
11.3 Equation de Volterra . . . . . . . . . . . . . . . . . . 119
11.3.1 Equation de premi`ere esp`ece . . . . . . . . . . . . . . 119
11.3.2 Equation de seconde esp`ece . . . . . . . . . . . . . . . 119
11.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . 119
11.1 Introducti on
Les equat ions integrales sont a priori moins simples `a resoudre que les
equations algebriques ou les equat ions differentielles. Nous allons voir
dans ce chapitre que pour des equations integrales lineaires, une fois realis
ee la discreti- sat ion de ces equations, on se ram`ene au probl`eme de la
recherche de solutions dun syst`eme lineaire que nous avons vu chapitre 6.
11.2 Equation de Fredhol m
11.2.1 Equation de pre mi`ere
esp`ece
Lequat ion de Fredholm inhomog`ene de premi`ere esp`ece est definie
par la relat ion suivante
Z
b
K (t, s)f (s)ds = g(t) (11.1)
a
ou` f (t) est la fonction inconnue que lon souhaite determiner. g(t) est le
terme de source et K (t, s) est appele le noyau.
En nota nt g
i
= g(t
i
), K
ij
= K (s
i
, t
j
) et f
j
= f (t
j
)
ou`
i est un indice
118
variant de 1 `a N et j un indice variant de 1 `a M (M peut etre different de N ).
Equations int
egrales
Lequation (11.1) se reecrit alors comme
M
X
K
ij
f
j
= g
i
(11.2)
j=1
Soit encore sous une forme mat ricielle
K.f = g (11.3)
Formellement, si le noyau K nest pas singulier, la solution existe, est unique
et est donnee par la relation
f = K
1
.g (11.4)
11.2.2 Equation de seconde esp`ece
Lequat ion de Fredholm inhomog`ene de deuxi`eme esp`ece est definie
par la relat ion suivante
f (t) =
Z
b
K (t, s)f (s)ds + g(t) (11.5)
a
ou` f (t) est la fonction inconnue que lon souhaite determiner. g(t) est le terme
de source, K (t, s) est appele le noyau et est un scalaire introduit par
commodite pour la suite de cette equation.
Suivant le meme principe que celui defini ci-dessus, une fois discr
etisee, lequat ion (11.5) se reexprime comme
M
f
i
=
X
K
ij
f
j
+ g
i
(11.6)
j=1
Soit encore sous une forme mat ricielle
(K 1).f = g (11.7)
Si la fonction g est nulle, le probl`eme se ram`ene `a la determinati on des
valeurs
propres de la matrice K , et on parle dequation de Fredholm homog`ene.
Dans le cas ou` g est different de zero, la solution existe et est unique si
nest pas lune des valeurs propres du noyau, sinon la matrice `a inverser K
.1 devient singuli`ere. Si cette derni`ere est inversible, on a formellement la
solution comme
f = (.1 K )
1
.g (11.8)
La resolution numerique des equat ions de Fredholm homog`ene de
premi`ere
esp`ece est generalement delicat e car le noyau correspond souvent `a
Equations int
egrales
une ma- trice presque non inversible (mal conditionnee), cest-`a-dire avec
un determi- nant voisin de zero. Correlat ivement, si est suffisament
different de zero, la solution des equations de Fredholm de seconde
esp`ece est relat ivement simple
`a
obtenir.
11.3 Equation de Volterra
11.3 Equation de Volterra
Les equat ions de Volterra sont des cas particuliers de ceux de Fredholm
dans lesquelles le noyau K est tel que
K (t, s) = 0 pour s > t (11.9)
11.3.1 Equation de pre mi`ere esp`ece
Lequat ion de Volterra homog`ene de premi`ere esp`ece est definie par la
rela- tion suivante
g(t) =
Z
t
K (t, s)f (s)ds (11.10)
a
ou` f (t) est la fonction inconnue que lon souhaite determiner. g(t) est le
terme de source et K (t, s) est appele le noyau.
La reecriture matricielle de lequat ion de Volterra est identique formellement
`a celle de Fredholm, mais avec la particularite que la matrice associee au
noyau K est une matrice triangulaire inferieure. Ce type dequat ions lin
eaires, comme nous lavons vu au chapitre 6, peut etre resolu par une m
ethode de substitut ion. Alors que les equat ions de Fredholm de premi`ere
esp`ece sont generalement mal conditionnees, les equat ions de Volterra ne
le sont pas.
11.3.2 Equation de seconde
esp`ece
De mani`ere similaire, lequati on de Volterra de premi`ere esp`ece
inhomog`ene secrit comme
f (t) =
Z
t
K (t, s)f (s)ds + g(t) (11.11)
a
De mani`ere identique, la representation matricielle de lequat ion de Volterra
est identique `a celle correspondante de Fredholm, seule la structure du
noyau K est differente, puisque comme pour toutes les equat ions de Volterra
lineaires, la matrice K triangulaire inferieure.
11.4 Concl usion
Lexistence de structure de noyaux presque singuliers necessite dut iliser
des methodes plus complexes qui depassent largement le cadre de ce cours
intro- ductif aux methodes numeriques.
Equations int
egrales
120
121
Annexe A
Coordo nnees hypersp herique s
Il convient de distinguer le cas pair du cas impair pour le syst`eme de
co- ordonnees. Les calculs anal ytiques et numeriques sont plus simples dans
le cas impai r, car en particulier le calcul de la transformee de Fourier dune
fonction
`a symetrie spherique se ram`ene au calcul dune transformee de Fourier
`a une dimension sur laxe reel positif.
Considerons tout dabord le cas ou` n est impair : A n dimensions, on d
efinit les coordonnees hyperspheriques de la mani`ere suivante
x
1
= sin(
1
) sin(
2
) sin(
3
) . . . sin(
n3
) sin(
n2
)
sin(
n1
) x
2
= sin(
1
) sin(
2
) sin(
3
) . . . sin(
n3
)
sin(
n2
) cos(
n1
) x
3
= sin(
1
) sin(
2
) sin(
3
) . . .
sin(
n3
) cos(
n2
)
x
4
= sin(
1
) sin(
2
) sin(
3
) . . .
cos(
n3
)
. . .
x
n1
= sin(
1
) cos(
2
)
x
n
= cos(
1
) (A.1)
ou` les variables
i
varient de 0 a` pour j compris entre 1 et n 2, la variable

n1
v
arie entre 0 et 2, et la variable est positive ou nulle.
Pour n pair, on definit les coordonnees hyperspheriques de la mani`ere suiv-
ante
x
1
= sin(
1
) sin(
2
) sin(
3
) . . . sin(
n3
) sin(
n2
)
sin(
n1
) x
2
= sin(
1
) sin(
2
) sin(
3
) . . . sin(
n3
)
sin(
n2
) cos(
n1
) x
3
= sin(
1
) sin(
2
) sin(
3
) . . .
sin(
n3
) cos(
n2
)
x
4
= sin(
1
) sin(
2
) sin(
3
) . . . cos(
n3
)
cos(
n2
)
. . .
x
n1
= sin(
2
) cos(
1
)
x
n
= cos(
2
) cos(
1
) (A.2)
122
On verifie facilement que quel que soit n
x
i
(A.3)
Coordonnees hypersph
eriques
122
X
x
2

pour toute valeur de i. De plus, on a


n
i
=
2
(A.4)
i=1
Pour evaluer une integrale `a n dimensions, il est necessaire de calculer le
Jaco- bien de la transformat ion des coordonnees cartesiennes aux coordonn
ees hyper- spheriques pour n impai r
J =
(x
1
x
2
.
. . x
n
)
(
1

2
. . .
n
)
=
n1


sin(
1
) sin(
2
) . . . sin(
n1
) cos(
1
) . . . sin(
n1
) . . . sin(
1
) . . . cos(
n1
)


sin(
1
) sin(
2
) . . . cos(
n1
cos(
1
) . . . cos(
n1
) . . . sin(
1
) . . .
sin(
n1
)

. . . . . . . . . . . .
cos(
1
) sin(
1
) 0 0
(A.5)
Par recurrence, on montre que le jacobien J se reexprime sous la forme
n2
J =
n1
Y
sin
n1j
(
j
)
=
j=1
0
n2
Y
sin(
n
j=1
1
j
))
j
(A.6)
On peut verifier que la formule convient aussi pour n pair .
Quand lintegrant est une fonction qui ne depend que de , on peut int
egrer sur tous les angles et le calcul se ram`ene `a celui dune integrale
simple sur laxe reel positif. Par exemple on peut calculer le volume dune
hypersph`ere de rayon a (qui correspond `a un integrant egal `a 1)
V
n
=
Z
a
n2
Z

n1
d
Y
(sin(
j
))
n1j
d
j
Z
2
d
n1
0
n/ 2
a
n
=
j=1
0 0
(n/2 + 1)
2

n/ 2
a
n

pour n pair
=
l
(n/ 2)!

(n1)/2

(2a)
n
((n 1)/2)!
(A.7)
pour n impai r
n!
Lelement de surface de lhypersph`ere de rayon a est donne par
n2
dS
n
= a
n1
Y
sin
n1i
(
i
)d
i
(A.8)
i=1
On peut en deduire la surface dune hypersph`ere dans un espace `a n dimensions.
dV
n
n
n/ 2
a
n1
S
n
= =
da (n/2 + 1)!
2
n
n/ 2
a
n1

Coordonnees hypersph
eriques
123
pour n pair
=
l
(n/ 2)!
2n
(n1)/2
(2a)
n1
((n
1)/2)!

(n 1)!
pour n impai r
(A.9)
Annexe B
Les bi bli ot h`eques BLAS et
Lapack
Contenu
B.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . 123
B.2 Terminologie . . . . . . . . . . . . . . . . . . . . . . . 124
B.1 Introduct ion
La biblioth`eque BLAS (Basic Linear Algebra Subprograms) est un
bib- lioth`eque qui realise les operat ions dalg`ebre lineaire de bas
niveau. Elle est disponible en Fortran et en C par lintermediaire de la
biblioth`eque GSL, par exemple. Ces operat ions sont classees par ordre de
difficulte croissante :
1. operati ons vectorielles
2. operati ons mat rices-
vecteurs
y x + y (B.1)
y Ax + y (B.2)
3. operati ons mat rices-
mat rices
C AB + C (B.3)
LAPACK dont le nom vient de Linear Algebra PACKage est une biblio-
th`eque ecrite en fortran 77 et qui comprend un ensemble de sous-
programmes pour resoudre les probl`emes suivants : syst`eme dequat ions lin
eaires : probl`emes aux valeurs propres. Diverses factorisations matricielles
sont disponibles comme la decomposition LU, QR Cholesky, SVD, Schur et
Schur generalisee. Les ma- trices considerees sont des mat rices soit pleines
soit `a bande. Le cas des matrices creuses nest pas specifiquement traite. Les
sous-programmes sont fournis pour des probl`emes dans lesquelles les matrices
sont soit reelles, soit complexes, en simple ou en double precision.
Les biblioth`eques BLAS et
Lapack
124
La biblioth`eque LAPACK sappuie sur des appels `a des sous-programmes
de plus bas niveau qui sont ceux du BLAS. Cela permet une meilleure
optimisat ion car des biblioth`eques BLAS specifiques existent pour chaque
type de processeur et utilisent leurs caracteristiques. En labsence de
biblioth`eque BLAS opt imisee, il est possible de disposer de la biblioth`eque
BLAS de base disponible sur le site de netlib[4].
La version installee sur les stations de travail de lecole doctorale est
la derni`ere version disponible (version 3.0) qui date de 2000. Elle est prevue
pour des programmes Fortran. Une version C de Lapack (clapack) est
disponible sur le site de netlib, mais nest pas installee par defaut sur les
stations.
B.2 Terminologi e
Une terminologie mnemot echnique a ete choisie pour retrouver
facilement les noms des sous-programmes `a appeler. Le principe est le
meme pour Lapack et le BLAS.
Les sous-programmes ont un suffixe qui indique le type dobjets sur lesquels
on effectue les operat ions.
S pour type REAL
D pour type DOUBLE PRECISION
C pour type COMPLEX
Z pour type COMPLEX*16
1
Pour le BLAS de niveau 2, 3 et Lapack, un groupe de deux lettres designe
le type de matrices que consid`ere le sous-
programme.
GE pour une matrice generale
SY pour une matrice symetrique
HE pour une matrice hermitienne
TR pour une matrice triangulaire
GB pour une matrice `a bande generale
SB pour une matrice symetrique `a bande
HB pour une matrice hermitienne `a bande
TB pour une matrice triangulaire `a bande
Pour la recherche du nom precis dun sous-programme, il existe un
petit index referencant (disponible sur le site netlib ou sur les stations de
travail) de tous les sous-programmes avec la liste des arguments `a fournir. Il
existe aussi un site internet tr`es utile qui propose un moyen de rechercher le
sous-programme adapte `a partir de la selection de la tache `a effectuer.
Ladresse de ce site est http ://www .c s. col or ado. e du / lapack/dr ivers.html
1
Pour le Blas de Niveau 2, il y a un ensemble de sous-programmes pour des calculs
Les biblioth`eques BLAS et
Lapack
125
en precision etendue. Les prefixes sont ES, ED, EC, EZ
126
Annexe C
La bibl ioth`eque GSL
Contenu
C.1 Introducti on . . . . . . . . . . . . . . . . . . . . . . . 125
C.2 Sous programmes . . . . . . . . . . . . . . . . . . . . 126
C.2.1 BLAS . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
C.2.2 fonctions simples . . . . . . . . . . . . . . . . . . . . . 126
C.1 Introduct ion
Parmi les nombreuses biblioth`eques mat hemat iques que lon peut
utiliser pour resoudre des probl`emes numeriques, il existe une version
evolut ive basee sur le concept de logiciel libre qui sappelle la GSL (acronyme
de Gnu Scientific Library). La version actuelle est une version stable 1.7.
Cette biblioth`eque est
ecrite en C et est installee sur les stations de travail de lecole doctorale
(avec la version 1.6-2), ce qui permet `a tout utilisat eur den disposer
pleinement.
Cette biblioth`eque offre des sous-programmes pour les probl`emes suivants :
Nombres complexes Racines de polynomes
Fonctions speciales Vecteurs et Mat rices
Permutati ons Combinatoi re
Tri BLAS
Alg`ebre lineaire FFT
Valeurs propres Generat eurs de nombres al
eat oires
Histogrammes Stati stiques
Integrat ion de Monte Carlo Equations differentielles
Recuit simule Differentiat ion numerique
Interpolat ion Series accelerat rices
Approximations de Chebyshev Recherche de racines
Transformees de Hankel
discr`etes
Moindre carre
Minimisati on Constantes physiques
La diversite des probl`emes numeriques traites par cette biblioth`eque
127
rend tr`es difficile une presentat ion rapide. Le manuel proprement dit comprend
actuelle-
La biblioth`eque
GSL
126
ment plus de 450 pages ! Le but de cet appendice est donc de donner quelques
cles pour une utilisation aussi simple que possible de cette biblioth`eque et
par effet dapprentissage dautres biblioth`eques dont les noms de sous-
programmes sont generalement moins eloquents.
Les fichiers dentetes necessaires `a la compilation dun programme
sont places dans le repertoire /usr/include/gs l.
Pour que les execut ables generes soient les plus petits possibles, les
fichiers dentetes sont tr`es nombreux (206 dans la version 1.1.1), et leur
nom corre- spondent `a une classe de sous-programes que lon souhaite utilises
selon la r`egle suivante :
Le nom commence toujours par le prefixe gsl . (Moyen simple
didentifi- cat ion par rapport `a dautres biblioth`eques qui seraient `a
utiliser dans le meme programme).
La seconde partie correspond `a la classe de probl`eme. Par exemple sf
cor- respond `a un fonction speciale, matrix `a un probl`eme sur les
mat rices,...
La troisi`eme correspond au probl`eme specifique. Par exemple, gsl sf
expint.h est le fichier pour les fonctions exponentielles integrales, gsl sf
bessel.h aux fonctions de bessel, ...
Si lon veut disposer dune classe de fonctions plus directement au lieu
de charger un `a un les fichiers dentetes, on peut utiliser le fichier
qui regroupe. Pour lexemple precedent, on peut utiliser gsl sf.h qui
contient les definitions de toutes les fonctions speciales.
C.2 Sous pro gr ammes
La Liste des fonctions disponibles est la suivante
C.2.1 BLAS
Les fonctions du BLAS ecrites. Elles realisent les trois niveaux qui sont
les suivants :
1. operati ons vectorielles
2. operati ons mat rices-
vecteurs
y = x + y (C.1)
y = Ax + y (C.2)
3. operati ons mat rices-mat rices
C = AB + C (C.3)
C.2.2 fonctions simple s
Les fonctions simples avec une grande precision
gsl acosh, gsl asinh, gsl atanh, gsl expm1, gsl log1p
Annexe D
Les logiciels scientifiques de r
esolut ion analytique et
numerique
D.1 Maple et Ma thema tica
Deux logiciels commerciaux dominent le domaine de la resolution
analy- tique : Maple et Mathematica. Maple est historiquement un logiciel
provenant du domaine universitaire et developpe principalement dans un
premier temps `alUniversite de Waterloo (Canada). Steven Wolfram a ete
le creat eur de Math- ematica et a cree la societe qui porte son nom. Les
possibilite de chaque logiciel sont dans une large mesure tr`es comparables.
La version actuelle de Maple est la version 9.5, et celle de Mathematica est
la version 5.1. La difference de numerotati on nimplique nullement une diff
erence de performance. Au del`a de la vocation premi`ere de la resolut ion
exact e dequat ions, ces deux logiciels se sont enrichis au cours des annees
de modules de calcul numerique ainsi que de modules graphiques offrant ainsi
une exploitat ion des resultat s `a travers un seul logiciel. Pour des probl`emes
necessitant une puissance de calcul importante, il est possible de transformer
les resultats analytiques obt enus dans une feuille de calcul en langage C
(ou Fortran) ce qui permet alors dutiliser des biblio- th`eques de programme
(comme GSL ou LAPACK) pour obtenir un resultat plus rapidement.
Ces logiciels poss`edent chacun un site Web tr`es interessant, que je
recom- mande vivement daller consulter[7, 8].
D.2 Ma tlab, Scilab et Ma thca d
Matlab est un logiciel commercial permetta nt de resoudre num
eriquement des probl`emes mat hemat iques et physiques varies. La version
actuelle est la 7. Ce logiciel peut etre enrichi de modules specifiques. On
peut consulter le site de Mathlab pour voir un apercu des possibilites[9].
Scilab est un logiciel libre developpe par lINRIA[10] et est pour
simplifier un clone de Mathlab. Les modules disponibles sous Scilab sont les
suivants :
Les logiciels scientifiques de resolut ion anal ytique et num
erique
128
Graphiques 2-D and 3-D et animat ion
Alg`ebre lineaire et matrices creuses
Polynomes et fonctions rat ionnelles
Simulation : ODE solveur and DAE solveur
Scicos : modelisat eur et simulateur de syst`emes dynamiques
Controle classique et robuste, optimisat ion LMI
Optimization differentielle et non differentielle
Traiteme nt du signal
Metanet : graphes et reseaux
Scilab parall`ele avec PVM
Stati stiques
Interface avec Maple, MuPAD
Interface avec Tck/Tk
Mathcad[11] est un logiciel commercial permetta nt aussi de resoudre num
erique- ment des probl`emes mat hemat iques et physiques varies. Ses possibiblit
es graphiques ont fait la reput at ion de ce produit. Le site web dispose `a la
fois dinforma- tions concernant ce produit, mais aussi des informations sur des
mat hemati ques fondamentales[12].
Les logiciels scientifiques vont tr`es probablement continuer `a se d
evelopper dans les prochaines annees. Ils permette nt `a travers un
ensemble de macro-
instructions de faire appel a` des biblioth`eques de programmes qui ont ete
validees et opt imisees selon larchitecture informatique disponible (`a noter
que les logiciels cites ci-dessus sont tous multiplat eformes). Cela permet `a un
plus grand nombre dutilisat eurs de disposer dout ils numeriques puissants et dx
eviter des etapes fastidieuses de codage. Il reste neanmoins une fonction
humaine es- sentielle concernant le choix des algorithmes pour la resolut ion
numerique et lobjet essentiel de ce cours est une aide `a la decision.
Bibl iogra phie
[1] W. H. Press, S.A. Teukolsky, W.T. Vetterling, B.P. Flanner y, Numerical
Recipes in C, Cambridge University Press (1992).
[2] http ://s ources.redhat. com/gsl /
[3] http ://w ww. ne tlib .or g/lap a c k /
[4] http ://w ww. ne tlib .or g/bl as/
[5] http :// beige.ucs.indiana. edu/B673/
[6] http ://d m a w ww. ep fl. c h/r ap paz.m osai c/i ndex.html
[7] http ://w ww. map lesof t.com
[8] http ://w ww. w ol fr am. c om
[9] http ://w ww. mat h w or ks .com/
[10] http ://s cilabsoft.inria.fr/
[11] http ://w ww. mat h sof t.c om/
[12] http ://w ww. mat h sof t.c om/m ath res our ce s/
BIBLIOGRAPHIE
130
131
Table des mati`eres
1 Integrati on et sommes discr`etes 3
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Les methodes de Cotes . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.1 Trap`eze . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.2 Simpson . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3 Methode de Romberg . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4 Methodes de Gauss . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.5 Methode de Gauss-Kronr od et methodes adaptati ves . . . . . . . 9
1.6 Integrales multiples . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2 Fonctions speciales et evaluatio n de fonctions 13
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Fonctions transcendantes simples . . . . . . . . . . . . . . . . . . 14
2.3 Fonction Gamma . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3.1 Definition et proprietes . . . . . . .
. . . . . . . . . . . . 14
2.3.2 Fonctions reliees : , B . . . . . . . . . . . . . . . . . . . 16
2.4 Fonctions de Bessel . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.5 Fonctions Hypergeometriques . . . . . . . . . . . . . . . . . . . . 20
2.5.1 Fonction Hypergeometrique Gaussienne . . . . . . . . . . 20
2.5.2 Fonctions Hypergeometriques generalisees . . . . . . . . .
20
2.6 Fonction erreur, exponentielle integrale . . . . . . . . . . . . . . . 21
2.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3 Inter polati on de fonctions 23
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2 Fonctions `a une variable . . . . . . . . . . . . . . . . . . . . . . . 24
3.2.1 Algorithme de Neville . . . . . . . . . . . . . . . . . . . . 24
3.2.2 Polynomes de Chebyshev . . . . . . . . . . . . . . . . . . 25
3.2.3 Methodes de lissage (Spline) . . . . . . . . . . . . . . . . 26
3.2.4 Approximants de Pade . . . . . . . . . . . . . . . . . . . . 28
3.2.5 Algorithme de Remez . . . . . . . . . . . . . . . . . . . . 30
3.3 Fonctions `a plusieurs variables . . . . . . . . . . . . . . . . . . . 30
3.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 30
3.3.2 Interpolat ions bilineaire et bicubiques . . . . . . . . . . . 31
132
3.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
TABLE DES
MATIE
`
RES
132
6.3.1 Equation de diffusion . . . . . . . . . . . . . . . . . . . . 56
6.3.2 Equation de Langevin . . . . . . . . . . . . . . . . . . . . 57
Calcul dIto et equat ions differentielles stochast iques . . . . . . .
58 6.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 58
6.4.2 Calcul differentiel stochast ique . . . . . . . . . . . . . . . 59
6.4.3 Processus dOrst ein-Uhlenbeck . . . . . . . . . . . . . . . 60
6.4.4 Mod`ele de Black-Scholes . . .
.
. . . . . . . . . . . . . . . 61
4 Racines dequati ons 33
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
4.2 Dichotomie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.3 Methode de Ridder . . . . . . . . . . . . . . . . . . . . . . . . . . 35
4.3.1 Methode de la position fausse . . . . . . . . . . . . . . . . 35
4.3.2 Methode de Ridder . . . . . . . . . . . . . . . . . . . . . . 36
4.4 Methode de Brent . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.5 Newton-Raphson . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
4.6 Racines de Polynomes . . . . . . . . . . . . . . . . . . . . . . . . 38
4.6.1 Reduction polynomiale
.
. . . . . . . . . . . . . . . . . . . 38
4.6.2 Methode de Laguerre . . . . . . . . . . . . . . . . . . . . 39
5 Equations di ffere ntiel les 41
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.2 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.3 Equations differentielles speciales . . . . . . . . . . . . . . . . .
42
5.3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 42
5.3.2 Equations du premier ordre . . . . . . . . . . . . . . . . . 43
5.3.3 Equation differentielles du second ordre . . . . . . . . . . 44
5.3.4 Equation de Bessel . . . . . . . . . . . . . . . . . . . . . . 45
5.3.5 Equation differentielle erreur . . . . . . . . . . . . . . . . 45
5.3.6 Equation differentielle dHermite . . . . . . . . . . . . . . 45
5.4 Methodes dintegrat ion `a pas separe . . . . . . . . . . . . . . . .
45
5.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 45
5.4.2 Methode dEuler . . . . . . . . . . . . . . . . . . . . . . . 46
5.4.3 Methode RK explicites `a un point . . . . . . . . . . . . .
47
5.4.4 Methodes RK implicites `a un point . . . . . . . . . . . . .
47
5.4.5 Methodes RK explicites `a 2 points intermediaires . . . . .
47
5.4.6 Methodes RK explicites `a 3 points intermediaires . . . . .
48
5.4.7 Formule generale des methodes RK explicites . . . . . . .
48
5.5 Methode dintegrat ion `a pas variables . . . . .
. . . . . . . . . . 49
5.5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 49
5.6 Methodes de Runge-Kut ta embarquees . . . . . . . . . . . . . .
49
5.7 Methode de Bulirsh-Stoer . . . . . .
.
. . . . . . . . . . . . . . . 50
5.8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
6 Equations differe ntiell es stochastiques 53
6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
6.2 Variables aleat oires et processus stochast iques . . . . . . . . . . . 54
6.3 Processus de Wiener, bruit blanc . . . . . . . . . . . . . . . . . . 56
TABLE DES
MATIE
`
RES
133
6.4
134
TABLE DES
MATIE
`
RES
6.4.5 Transformee de Lamperti . . . . . . . . . . . . . . . . . . 62
6.5 Methodes numeriques . . . . . . .
. . . . . . . . . . . . . . . . . 63
6.5.1 Introdut ion . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6.5.2 Schema dEuler . . . . . . . . . . . . . . . . . . . . . . . . 64
6.5.3 Schema de Milstein . . . . . . . . . . . . . . . . . . . . . . 64
6.5.4 Runge-Kutta . . . . . . . . . . . . . . . . . . . . . . . . . 65
6.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
7 Transformee de Fourier rapide et algorithmes de tri 67
7.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
7.2 Proprietes . . . . . . . . . . . . . . . . . .
.
. . . . . . . . . . . . 68
7.3 Discretisati on de la transformee de Fourier . . . . . . . . . . . . 70
7.3.1 E

chantillonage . . . . . . . . . . .
.
. . . . . . . . . . . . 70
7.3.2 Transformee de Fourier discr`ete . .
.
. . . . . . . . . . . . 71
7.4 Transformee de Fourier rapide . . . . . . .
.
. . . . . . . . . . . . 72
7.5 Algorithmes de tri . . . . . . . . . . . . . . . . . . . . . . . . . . 74
7.5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 74
7.5.2 Methode dinsertion . . . . . . . . . . . . . . . . . . . . . 74
7.5.3 Tri `a bulles . . . .
.
. . . . . . . . . . . . . . . . . . . . . 75
7.5.4 Tri rapide . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
8 Equations aux derivees partielles 77
8.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
8.2 Methode de la caracteristique . . . . . . . . . . . . . . . . . . . . 78
8.2.1 Equation du premier ordre lineaire et quasi-lineaire . . . . 78
8.2.2 Surface solution . . . . . . . . . . . . . . . . . . . . . . . . 78
8.2.3 Exemple . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
8.3 Classification des EPDL du second ordre . . . . . . . . . . . . . . 81
8.4 Equations avec conditions aux fronti`eres . . . . . . . . . . . . . . 84
8.4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 84
8.4.2 Differences finies . . . . . . . . . . . . . . . . . . . . . . . 84
8.4.3 Methodes matricielles . . . . . . . . . . . . . . . . . . . . 85
8.4.4 Methodes de relaxation . . . . . . . . . . . . . . . . . . . 85
8.4.5 Methodes de Fourier . . . . . . . . . . . . . . . . . . . . . 85
8.5 Equations avec conditions initiales . . . . . . . . . . . . . . . . . 87
8.5.1 Equations `a flux conservatif . . . . . . . . . . . . . . . . . 87
8.5.2 Une approche nave . . . . . . . . . . . . . . . . . . . . . 88
8.5.3 Crit`ere de Stabilite de Von Neumann . . . . . . . . . . . . 89
8.5.4 Methode de Lax . . . . . . . . . . . . . . . . . . . . . . . 90
8.5.5 Methode de Crank-Ni cholson . . . . . . . . . . . . . . . . 91
8.5.6 Methode `a contre-vent . . . . . . . . . . . . . . . . . . . 92
8.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
9 Al g`ebre lineai re 95
9.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
9.2
E

limination de Gauss-Jordan . . . . . . . . . . . . . . . . . . . . 97
9.2.1 Rappels sur les matrices . . . . . . . . . . . . . . . . . . . 97
9.2.2 Methode sans pivot . . . . . . . . . . . . . . . . . . . . . 97
9.2.3 Methode avec pivot . . . . . . . . . . . . . . . . . . . . . 98
E

limnation gaussienne avec substitut ion . . . . . . . . . . . . . . 98
A Coordonnees hyper spheriques 121
B Les biblioth`eques BLAS et Lap ack 123
9.3
9.4 Decomposition LU . . . . . . . . . . . . . . . . . . . . . . . . . . 99
9.4.1 Principe . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
9.4.2 Resolution dun syst`eme lineaire . . . . . . . . . . . . . . 100
9.5 Matrices creuses . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
9.5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 101
9.5.2 Matrices tridiagonal es . . . . . . . . . . . . . . . . . . . . 102
9.5.3 Formule de Sherman-Morison . . . . . . . . . . . . . . . . 102
9.6 Decomposition de Choleski . . . . . . . . . . . . . . . . . . . . . 102
9.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
10 Analyse spectrale 105
10.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
10.2 Proprietes des matrices . . . . . . . . . . . . . . . . . . . . . . . 106
10.3 Methodes directes . . . . . . . . . . . . . . . . . . . . . . . . . . 108
10.3.1 Methode de Jacobi . . . . . . . . . . . . . . . . . . . . . . 108
10.3.2 Reduction de Householder . . . . . . . . . . . . . . . . . . 110
10.3.3 Algorithme QL . . . . . . . . . . . . . . . . . . . . . . . . 112
10.3.4 Factorisation de Schur . . . . . . . . . . . . . . . . . . . . 113
10.4 Methode iterat ives . . . . . . . . . . . . . . . . . . . . . . . . . . 114
10.4.1 Methodes des puissances . . . . . . . . . . . . . . . . . . . 114
10.4.2 Methode de Lanczos . . . . . . . . . . . . . . . . . . . . . 115
11 Equations integrales 117
11.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
11.2 Equation de Fredholm . . . . . . . . . . . . . . . . . . . . . . . . 117
11.2.1 Equation de premi`ere
esp`ece
. . . . . . . . . . . . . . . . 117
11.2.2 Equation de seconde esp`ece
.
. . . . . . . . . . . . . . . . 118
11.3 Equation de Volterra . . . . . . . . . . . . . . . . . . . . . . . . . 119
11.3.1 Equation de premi`ere
esp`ece
. . . . . . . . . . . . . . . . 119
11.3.2 Equation de seconde esp`ece
.
. . . . . . . . . . . . . . . . 119
11.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
B.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
B.2 Terminologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
C La biblioth`eque
GSL
125
C.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
C.2 Sous programmes . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
C.2.1 BLAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
C.2.2 fonctions simples . . . . . . . . . . . . . . . . . . . . . . . 126
D Les logiciels scie ntifiques de resolution analytique et numerique127
D.1 Maple et Mathematica . . . . . . . . . . . . . . . . . . . . . . . . 127
D.2 Matlab, Scilab et Mathcad . . . . . . . . . . . . . . . . . . . . . . 127

You might also like