Introduction aux méthodes numériques
Introduction aux méthodes numériques
Pascal Viot
Pascal Viot
Laboratoire de Physique Th´eorique des Liquides, Boˆıte
121, 4, Place Jussieu, 75252 Paris Cedex 05
Email : viot@[Link]
17 janvier 2003
Ce cours est une introduction aux m´ethodes d’analyse num´erique
tr`es lar- gement utilis´ees en physique afin de r´esoudre les ´equations alg
´ebriques ou dif- f´erentielles que l’on rencontre dans la mod´elisation de
ph´enom`enes physiques, chimiques ou biologiques.
Ce domaine particuli`erement vaste n´ecessite simultan´ement des
connais- sances math´ematiques, informatiques et physiques. De larges
classes de pro- bl`emes num´eriques sont abord´ees dans ces notes et
montrent la n´ecessit´e de bien caract´eriser les propri´et´es math
´ematiques du probl`eme consid´er´e afin de choisir la m´ethode num´erique
la mieux adapt´ee pour le traitement num´erique.
2
Chapitre 1
Int´egration et
sommes discr`etes
Contenu
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Les m´ethodes de Cˆotes . . . . . . . . . . . . . . . . . 4
1.2.1 Trap`eze ...................................................................................5
1.2.2 Simpson.....................................................................................5
1.3 M´ethode de Romberg . . . . . . . . . . . . . . . . . . 6
1.4 M´ethodes de Gauss . . . . . . . . . . . . . . . . . . . 6
1.5 Int´egrales multiples . . . . . . . . . . . . . . . . . . . 9
1.1 Introduction
Les sciences physiques se fixent l’objectif de pr´edire les ph´enom`enes `a
partir de la connaissance d’un nombre fini de grandeurs microscopiques
intervenant dans la mod´elisation. Celle-ci doit, dans un premier temps, d
´ecrire les faits exp´erimentaux observ´es et, dans un second temps,
permettre d’en pr´edire de nouveaux. La description des ph´enom`enes peut
ˆetre soit microscopique, soit ph´enom´enologique.
La mod´elisation se divise naturellement en trois ´etapes : une premi`ere
´etape consiste `a d´eterminer les param`etres microscopiques essentiels qui
interviennent pour d´ecrire le ph´enom`ene puis `a choisir le mod`ele adapt´e
pour d´ecrire le ph´e- nom`ene. La second ´etape consiste `a ´etablir les
´equations (tr`es souvent diff´eren- tielles) qui d´ecrivent le ph´enom`ene.
La troisi`eme ´etape consiste `a r´esoudre les
´equations pr´ec´edemment ´etablies afin de donner des r´eponses
quantitatives. Ces r´eponses permettent de valider ou d’invalider le mod`ele,
soit en comparant les pr´edictions avec l’exp´erience, soit en analysant la
coh´erence interne du mod`ele
`a travers ses pr´edictions.
Dans la situation la plus optimiste ou` il a ´et´e possible de r´ealiser les trois
´etapes pr´ec´edentes, l’obtention d’un r´esultat num´erique n´ecessite au
moins le calcul d’une int´egrale simple. Pour r´ealiser ce ’simple’ travail, il
3
existe bien souvent plusieurs m´ethodes et la taˆche principale consiste `a s
´electionner celle
4
Int´egration et sommes discr`etes
qui est la mieux adapt´ee pour satisfaire l’objectif. Ce principe est tr`es g
´en´eral et s’applique `a l’ensemble des probl`emes num´eriques que nous
allons aborder tout au long de ce cours. Ce cours a donc pour objectifs de
pr´esenter quelques algorithmes associ´es `a chacun des probl`emes rencontr
´es. Il existe des logiciels gratuits ou payants qui utilisent les m´ethodes
num´eriques que nous allons ren- contrer dans ce cours ; la connaissance de
ces m´ethodes est donc un pr´ealable pour choisir la mani`ere de r´esoudre
un probl`eme num´erique donn´e le plus effi- cacement possible.
Le cas typique d’une int´egrale d´efinie `a ´evaluer est
∫ b
a
I f (x)dx.
Comme l’´evaluation de la fonction f pour une infinit´e de points est
impossible, l’int´egration num´erique consiste `a remplacer l’int´egrale Eq.
(1.1) par une somme discr`ete sur un nombre fini de points.
N
Σ
IN = aif (xi) (1.2)
i=1
ou` ai et xi sont des variables que nous allons pr´eciser dans la suite. Pour
que l’´evaluation num´erique soit correcte, il est n´ecessaire d’imposer que
toute m´e- thode v´erifie que
lim IN = I (1.3)
N
→∞
ou` K est une constante finie. Cela revient `a supposer que la d´eriv´ee de la
fonction f n’est jamais singuli`ere sur le support [a, b].
4
donc ´evaluer l’int´egrale sur l’ensemble de l’intervalle [a, b].
5
1.2 Les m´ethodes de Coˆtes
Les m´ethodes les plus simples que l’on peut utiliser pour calculer une
int´e- grale simple sont celles ou` les abscisses sont choisies de mani`ere r
´eguli`erement espac´ees. Si on a N + 1 abscisses, on rep`ere celles-ci
simplement par la relation
xi = x0 + ih (1.5)
avec x0 = a, xN = b et h est appel´e le pas de l’int´egration. Pour
simplifier les notations, on pose
fi = f (xi) (1.6)
1.2.1 Trap`eze
La m´ethode des trap`ezes consiste `a approximer la fonction entre
deux abs- cisses successives par une droite, ce qui donne.
∫ xi+1
h 3 JJ
1.2.2 Simpson
La m´ethode de Simpson consiste `a remplacer la fonction par un
polynˆome de degr´e 2 sur un intervalle constitu´e de trois abscisses cons
´ecutives
∫ xi+2
f (x)dx 1 fi +4 fi+1 + 5 (4)
3 3 3 ).
1 +
x
Il se trouve que cette formule est exacte jusqu’`a des polynˆomes de degr´e
3 ce qui implique que l’erreur d´epende de h `a la puissance 5.
On peut aussi d´eterminer la formule `a 4 points qui est aussi exacte pour
les polynˆomes de degr´e 3. Cette formule s’appelle aussi Simpson 3/8 `a
cause des coefficients du d´eveloppement
∫ xi+3
3 9 9 3 5 (4)
f (x)dx fi + fi+1 + fi+2 + + ).
x 8 8 8 8
Sur un intervalle complet, en choisissant N pair, la m´ethode de
Simpson donne une estimation de l´int´egrale sur l´intervalle [a, b].
6
∫ h N/2−1
bf (x) = f + f + 2 Σ (2f2i−1 + f2i ) + O 1
(1.11)
0 N N
a 3 i=1 4
7
Int´egration et sommes discr`etes
8
espac´ees.
Soit W (x) une fonction strictement positive sur l´intervalle [a, b], appel
´ee fonction de poids, on choisit une suite de points xi telle que l’int´egrale
soit
9
1.4 M´ethodes de Gauss
b
∫ ΣN
W (x)f (x)dx = wifi (1.14)
a
i=1
p−1(x) = 0 (1.16)
p0(x) = 1 (1.17)
pi+1 (x) = (x − ai )pi (x) − bi pi−1 (x) (1.18)
< x p i |p i >
a i= < pi |pi > (1.19)
< x p i | p i− 1 >
b i =< pi−1 |pi−1 > (1.20)
(1.21)
Si l’on divise chaque polynˆome par < pi pi >1/2 , on obtient alors des
|
polynˆomes normalis´es.
Une propri´et´e fondamentale de ces polynˆomes ainsi construits est la
1
sui- vante : Le polynˆome pi a exactement j racines distinctes plac´ees sur
l’intervalle [a, b]. Chaque racine du polynˆome pi se trouve entre deux
racines cons´ecutives du polynˆome pi+1 .
1
Int´egration et sommes discr`etes
– Gauss-Hermite
La fonction de poids est W = exp( x2 ) sur la droite r´eelle. La
−
relation de r´ecurrence pour les polynˆomes d’Hermite est
– Gauss-Laguerre
La fonction de poids est W = xαe−x sur l’intervalle [0, + ∞[. La relation
de r´ecurrence pour les polynˆomes de Laguerre est
(i + 1)Lα = (−x + 2i + α + 1)Lα − (i + (1.26)
α)Lα
i+1 i i−1
– Gauss-Jacobi
La fonction de poids est W = (1 —x)α(1 + x)β sur l’intervalle ] 1, 1[.
La relation de r´ecurrence pour les polynˆomes de Jacobi est
(α,β) (α,β)
c(α,β)
iP = (di + eix)P − f iP (1.27)
i+1 i i−1
On peut utiliser des fonctions de poids qui sont int´egrables sur l´intervalle,
sans ˆetre n´ecessairement born´ees.
1
3
Attention, la formule 4.5.9 de la r´ef´erence[1] est incorrecte et doit ˆetre remlac´ee par
l’´equa- tion (1.22)
1
1.5 Int´egrales multiples
−
– Gauss-Chebyshev4 La fonction de poids est W = (1 − x2) 1/2 sur l’inter-
valle [−1, 1]. La relation de r´ecurrence pour les polynˆomes de
Chebyshev.
4
Pafnuty Lvovich Chebyshev (1821-1894) a un nom dont l´orthographe varie un peu selon
les langues, puisqu´il s’agit d´une traduction phon´etique. En Franc¸ais, son nom est g´en
1
´erale- ment orthographi´e Tchebytchev.
1
Int´egration et sommes discr`etes
1
Chapitre 2
Fonctions sp´eciales et
´evaluation de fonctions
Contenu
2.1 Introduction....................................................................... 11
2.2 Fonctions transcendantes simples..................................12
2.3 Fonction Gamma................................................................12
2.3.1 D´efinition et propri´et´es ...................................................12
2.3.2 Fonctions reli´ees : Ψ, B ......................................................14
2.4 Fonctions de Bessel...........................................................15
2.5 Fonctions Hyperg´eom´etriques ...........................................17
2.5.1 Fonction Hyperg´eom´etrique Gaussienne ........................17
2.5.2 Fonctions Hyperg´eom´etriques g´en´eralis´ees ...............18
2.6 Fonction erreur, exponentielle int´egrale .........................18
2.7 Conclusion.......................................................................... 20
2.1 Introduction
Les fonctions sp´eciales sont d´efinies de mani`ere assez impr´ecise,
puisqu’elles regroupent les fonctions que l’usage (ou la fr´equence d’utilisation)
a fini par as- socier `a un nom. Parmi ces fonctions, on trouve un grand
nombre de fonctions qui sont des solutions d’´equations diff´erentielles du
second ordre, sans que cette propri´et´e soit exclusive. Ces fonctions sont
toutefois tr`es utiles, car elles appa- raissent tr`es souvent, d`es que l’on
cherche `a r´esoudre des ´equations diff´erentielles du second ordre dont les
coefficients ne sont pas constants. Les fonctions sp´e- ciales sont disponibles
en programmation sous la forme de biblioth`eques. Elles sont aussi d´efinies
pour un grand nombre d’entre elles dans les logiciels de cal- cul symbolique
(Maple, Mathematica,...). Dans la suite de ce cours, nous allons d´efinir une
partie d’entre elles et d´ecrire les m´ethodes num´eriques utilis´ees dans les
biblioth`eques de programmes pour le calcul de ces fonctions.
1
Fonctions sp´eciales et ´evaluation de fonctions
Γ(n + 1) = n! (2.4)
1
polynˆomes et des exponentielles. La formule la plus pr´ecise est celle de
Lanczo`s. Ce d´evelop- pement est sp´ecifique `a la fonction Γ. La formule
qui s’inspire de la formule de
1
2.3 Fonction Gamma
20
15
ln(
10
0
0 2 4 6 8 10
x
Stirling bien connue pour la fonction factorielle n’est valable que pour Re(z) > 0
et est donn´ee par
1
z+
z+γ+
Γ(z + 1) 2
e−(z+γ+ 2 )
1
1
=
2
√ c1 c2 cN
× 2π c 0 + + +...+ +ϵ (2.6)
z+ z+ z+
ou` ϵ est le param`etre estimant l’erreur. Pour le choix particulier γ = 5,
−10
N = 6 et c0 tr`es voisin de 1, | on a ϵ < 2.10 .
Il est difficile de calculer la fonction Γ pour des valeurs de z un peu im-
portantes. Cela r´esulte de la croissance tr`es rapide de la fonction Γ. On
peut montrer que la fonction Γ croˆıt plus vite que toute exponentielle, comme de
ma- ni`ere analogue on montre que l’exponentielle croˆıt plus vite que tout
polynˆome. On dit parfois que la fonction Γ a une croissance super-
exponentielle.
Dans de nombreuses formules, la fonction Γ apparaˆıt `a la fois au num
´erateur et au d´enominateur d’une expression. Chacun des termes peut ˆetre
tr`es impor- tant, mais le rapport est souvent un nombre relativement modeste.
Pour calculer num´eriquement ce type d’expression, il est pr´ef´erable de
calculer ln(Γ(z)) (voir Fig. 2.1). Ainsi la fraction est alors l’exponentielle de
la diff´erence de deux logarithmes. Tous les nombres qui interviennent dans
2
ce calcul sont exponen- tiellement plus petits que ceux qui apparaissent dans
un calcul direct, on ´evite ainsi le d´epassement de capacit´e de l’ordinateur.
2
Fonctions sp´eciales et ´evaluation de fonctions
0.8 a=1
a=3
a=10
0.6
P(a
0.4
0.2
0
0 2 4 8 10 12 14
6 x
γ(a, x)
P (a, x) = Γ(a) (2.8)
2
2.4 Fonctions de Bessel
2
Fonctions sp´eciales et ´evaluation de fonctions
0.5
Y(x),J 0
-0.5
J0 J1 J2 J3 Y0 Y1 Y2 Y3
-1
-1.5
-2
0 2 4
x
6 8 10
ez
Iν(x) ' √ (2.19)
r 2πx
π −z
ν '
K (x) e (2.20)
2
2
Les fonctions de Hankel H1,ν and H2,ν sont appel´ees fonctions de Bessel de
2
2.5 Fonctions Hyperg´eom´etriques
4
I0 I1 I2 I3 K0 K1 K2 K3
3.5
2.5
K(x),I
1.5
0.5
0
0 2 4
x
F (a, b; c; z) ≡ 2F1(a, b, c;
z)
(2.25)
Γ(c) Σ∞ Γ(a + n)Γ(b + n)
=
zn Γ(a)Γ( Γ(c + n
n
Cette s´erie converge uniform´ement `a l’int´erieur du disque unit´e. D`es
que a, b ou c sont entiers, la fonction hyperg´eom´etrique peut se r´eduire
`a une fonction transcendante plus simple. Par exemple, 2F1(1, 1, 2; z) = −z−1
ln(1 − z)
∞
Σ (a1)k(a2)k
p
a1, a2, . . . , ap ; =k=0 1 k 2 k . . . (ap)k
q k xk (2.2
( ( ... 6)
ou` on a utilis´e la notation de
Pochhammer
π e (2.28)
0
erfc(x) = 1 − erf (x)
2 ∫∞
=√ e−t dt
2
(2.29)
π x
La fonction erf est aussi pr´esente dans toutes les biblioth`eques standard de
programmation.
La fonction exponentielle int´egrale Ei est d´efinie comme la valeur
principale de l´int´egrale suivante pour x > 0.
Ei(x) = − ∫ ∞ t
− dt (2.30)
−x t
∫x
et (2.31)
= −∞ t
2
Le d´eveloppement en s´erie de cette fonction donne
∞ n
Σx
Ei(x) = γ + ln(x) + (2.32)
n=1 nn!
2
2.6 Fonction erreur, exponentielle int´egrale
E1
E2
E3
3 E4
2
En
0
0 1 2 3 4
x
ex 1 Ei(x 1 +. (2.3
..
x
De mani`ere g´en´erale, on d´efinit les exponentielles int´egrales En (x) comme
∫ ∞ −zt
e
En(z) dt
La Figure 2.5 repr´esente les quatre premi`eres exponentielles int´egrales.
1
Le d´e- veloppement en s´erie de cette fonction donne
∞ n
Σ x
E 1(x) = −(γ + ln(x)) + (−1)n (2.35)
n
n
La fonction Ei (1, x) n´est d´efinie que pour des arguments r´eels : Pour x <
0, on a
Ei (x) = −Ei (1, −x) (2.36)
On peut noter que les exponentielles int´egrales En (x) sont reli´ees `a la
fonc- tion γ par la relation
En(x) = xn−1γ(1 − n, x) (2.37)
3
Fonctions sp´eciales et ´evaluation de fonctions
2.7 Conclusion
Cette introduction aux fonctions sp´eciales est tr`es loin d’ˆetre exhaustive
; il existe de nombreuses autres fonctions dites sp´eciales : les fonctions
elliptiques, les fonctions de Fresnel, les fonctions de Meier,. Le d
´eveloppement de biblio-
th`eques qui permettent de calculer les valeurs de ces fonctions est un
secteur tr`es actif et nous disposerons dans les ann´ees futures de
biblioth`eques encore plus performantes.
3
Chapitre 3
Racines d’´equations
Contenu
3.1 Introduction....................................................................... 21
3.2 Dichotomie.........................................................................22
3.3 M´ethode de Ridder .................................................................23
3.3.1 M´ethode de la position fausse ...........................................23
3.3.2 M´ethode de Ridder .............................................................24
3.4 M´ethode de Brent ...................................................................25
3.5 Newton-Raphson...............................................................25
3.6 Racines de Polynˆomes ............................................................26
3.6.1 R´eduction polynomiale .......................................................26
3.6.2 M´ethode de Laguerre ..........................................................27
3.1 Introduction
L’une des taˆches rencontr´ees fr´equemment lors d’un calcul est la
recherche de la racine d’une ´equation. Sans perte de g´en´eralit´e, on peut
toujours ´ecrire une ´equation ou` le membre de droite est ´egal `a z´ero,
f (x) = 0 (3.1)
f(x) = 0 (3.2)
3
de racines
3
Racines d’´equations
3.2 Dichotomie
Comme nous l’avons mentionn´e ci-dessus, la cl´e de la recherche de
racines d’´equations repose sur l’existence d’un encadrement pr´ealable de
cette racine. S’il existe un couple (a, b) tel que le produit f (a)f (b) < 0 et si la
fonction est continue, le th´eor`eme de la valeur interm´ediaire nous dit que
fonction s’annule au moins une fois `a l’int´erieur de cet intervalle.
La m´ethode de dichotomie est une m´ethode qui ne peut pas ´echouer,
mais sa rapidit´e de convergence n’est pas la meilleure en comparaison avec les
autres m´ethodes. L’id´ee de cette m´ethode est la suivante : soit une fonction f
monotone sur un intervalle [a0, b0] telle que f (a0)f (b0) < 0 , on sait alors qu’il
existe une et une seule racine comprise dans cet intervalle.
L´algorithme de la m´ethode de dichotomie est le suivante : tout
d’abord, on calcule f ( a0+b0 ).
2
– Si f ( a0 +b0 )f (a0 ) < 0, on d´efinit un nouvel encadrement de la racine
2
par le couple (a1, b1) tel que
a1 = a0 (3.3)
a0 + b0
b1 = . (3.4)
2
– Si f ( a0 +b0 )f (a0 ) > 0, alors on d´efinit un nouvel encadrement de la racine
2
par le couple (a1, b1) tel que
a0 + b0
a1 = (3.5)
2
b1 = b0. (3.6)
En it´erant cette m´ethode, on obtient une suite de couple (an , bn ) telle que
ϵn = bn − an v´erifie la relation
ϵn+1 ϵn
= 2 (3.7)
ou` ϵ0 = (b0 a0 )/2 Cela signifie que si l’on se fixe la tol´erance ϵ qui repr
−
´esente la pr´ecision `a laquelle on souhaite obtenir la racine, on a un nombre
d’it´erations
`a effectuer ´egal `a
n = ln2
3
ϵ
|b0 − a 0 |
(3.8)
3
3.3 M´ethode de Ridder
d
x=− (3.11)
c
b0f (a0) − a0f (b0)
= f (b ) − f (a ) (3.12)
0 0
soit encore
f (a0)
x = a0 − (b0 − a0) (3.13)
f (b )0 − f (a 0)
= b + (b f (b0)
—a) (3.14)
0 0 0
f (b0) − f (a0)
On reprend `a ce stade le principe de l’algorithme pr´ec´edent si f (x)f (a0 ) >
0 alors
La figure
sinon
3
a1 = x
b1 = b0
a1 = a0
b1 = x
3
Racines d’´equations
2
4
4
0
1
-2
x4 = x + (x −
sgn(f (a0) − f (b0))f (3.21)
a ) (x)
0 √
f (x)2 − f (a )f
0
(b )
0
Parmi les propri´et´es remarquables, notons que x4 est toujours situ´ee `a
l’in- t´erieur de l’intervalle [a0 , b0 ]. Si le produit f (x3 )f (x4 ) est n´egatif,
on prend l´intervalle [x3 , x4 ] comme nouvelle encadrement, sinon si on
3
consid`ere le pro- duit f (x1 )f (x4 ) ; si celui est n´egatif, le nouvel
encadrement est [x1 , x4 ], sinon on prend [x4 , x2 ]. On it`ere ensuite le proc´ed
´e.
3
3.4 M´ethode de Brent
(y − f (a))(y − f (b))c
x = (f (c) − f (a))(f (c) − f (b))
(y − f (b))(y − f (c))a (y − f (c))(y − f (a))b (3.22)
+ +
(f (a) − f (b))(f (a) − f (c)) (f (b) − f (c))(f (b) − f (a))
En choisissant y = 0, on peut ´ecrire l’´equation (3.22)
comme
x=b+ P (3.23)
Q
ou` P et Q sont donn´es par
3.5 Newton-Raphson
Toutes les m´ethodes pr´ec´edentes ne n´ecessitaient que la
connaissance de la fonction en diff´erents points de l’intervalle encadrant la
racine. Sous r´eserve que la variation de la fonction ne soit pas trop rapide,
seule une hypoth`ese de continuit´e est n´ecessaire.
La m´ethode de Newton-Raphson n´ecessite de plus que la fonction f
dont on cherche `a d´eterminer une racine, soit d´erivable au voisinage de
celle-ci.
Les it´erations successives de la m´ethode de Newton-Raphson sont bas´ees
sur le d´eveloppement limit´e de la fonction autour d’un point
4
JJ
f (x)
f (x + δ) = f (x) + f (x)δ +
J
δ2 + . . . (3.29)
2
4
Racines d’´equations
4
3.6 Racines de Polynˆomes
d ln(|Pn(x)|) Σ 1
− d = (x −
i 2 JJ
J
nP Pn (x
= −)
Pn(x)
(x)
Pn(x)
=H (3.40)
Soit la racine x1 `a d´eterminer, on suppose que la valeur de d´epart x est
situ´ee
`a une distance a de x1 et que l’ensemble des autres racines sont situ´ees
`a une distance suppos´ee identique et qui vaut b
x − x1 = a (3.41)
x − xi = b i ∈ [2, n] (3.42)
En ins´erant les ´equations (3.41) et (3.42) dans les ´equations (3.38),
(3.40), on en d´eduit respectivement les relations suivantes
1 n− 1
+ =G (3.43)
a b
1 n− 1
+ =H (3.44)
4
a2 b2
4
Racines d’´equations
4
Chapitre 4
Equations diff´erentielles
Contenu
4.1 Introduction....................................................................... 29
4.2 D´efinitions ...................................................................................30
4.3 M´ethodes d’int´egration `a pas s´epar´e ......................31
4.3.1 Introduction............................................................................31
4.3.2 M´ethode d’Euler ..................................................................32
4.3.3 M´ethode RK explicites `a un point ..................................32
4.3.4 M´ethodes RK implicites `a un point ................................33
4.3.5 M´ethodes RK explicites `a 2 points interm´ediaires .....33
4.3.6 M´ethodes RK explicites `a 3 points interm´ediaires .....33
4.3.7 Formule g´en´erale des m´ethodes RK explicites ...........34
4.4 M´ethode d’int´egration `a pas variables .......................34
4.4.1 Introduction............................................................................34
4.5 M´ethodes de Runge-Kutta “embarqu´ees” ....................35
4.6 M´ethode de Bulirsh-Stoer ....................................................36
4.7 Conclusion.......................................................................... 37
4.1 Introduction
La r´esolution num´erique d’´equations diff´erentielles est tr`es souvent
n´eces- saire, faute de l’existence de solutions analytiques. Le but de ce chapitre
est de montrer que la meilleure m´ethode, ou la plus efficace `a utiliser pour
obtenir une solution, n´ecessite de connaˆıtre la nature de l’´equation diff
´erentielle `a r´esoudre. Les m´ethodes les plus standards que nous allons pr
´esenter sont largement pr´e- sentes dans les logiciels de calcul comme Maple,
Matlab, Scilab, Octave, ou Mathematica, et surtout dans les biblioth`eques pour
la programmation (IMSL, NAG, GSL). Il est donc pr´ef´erable d’utiliser ces
biblioth`eques plutˆot que de r´e´ecrire un code peu performant et
probablement faux dans un premier temps.
4
Equations diff´erentielles
4.2 D´efinitions
Soit une fonction num´erique not´ee y(x) d´efinie sur un intervalle ferm´e
[a, b] de R et de classe Cp (continuˆment d´erivable d’ordre p). On appelle
´equation diff´erentielle d’ordre p une ´equation de la forme
y 1J = y 2
y 2J = y
3
...
ypJ = f (x, y, y1, y2, . . . yp) (4.4)
4
On appelle condition de Cauchy la condition initiale
y(a) = y0 (4.6)
4
4.3 M´ethodes d’int´egration `a pas s´epar´e
5
Equations diff´erentielles
h2 JJ
h
yk,1 = yk + f (xk, yk)
2α h
yk+1 = yk + h(1 − α)f (xk, yk) + αf (xk + , yk,1)
2α
5
y0 donn´e
avec α un nombre r´eel compris entre 0 et 1. Les valeurs de α couramment
utilis´ees sont α = 1, α = 1/2 et α = 3/4. Ces m´ethodes sont d’ordre 2.
5
4.3 M´ethodes d’int´egration `a pas s´epar´e
k 2h k h
y = y k+ 3f x + ,3y k
2h
yk+1 = yk , ) + 3f + ,y (4.20)
h 3
k,2
+ 4 f (x kyk xk
ou par
k h h
y = y k+ 2f x k+ 2, y k
k h h
y = y k+ 2f x k+ 2, y k
5
h h
yk+1 = yk , ) + 2f + , + 2f + , +f yk,3)
h k,1 k,2 k+1 ,
+ f (x yk xk y xk y (x
6 k 2 2
(4.22)
5
Equations diff´erentielles
Les coefficients sont d´etermin´es afin que l’ordre soit le plus ´elev´e
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 inf´erieure stricte, αij = 0 pour j
≥
i, on dit que la m´ethode est explicite. Si seule la partie triangulaire sup
´erieure est nulle, αij = 0 pour j > i, la m´ethode est dite implicite ; sinon elle
est totalement implicite.
Une repr´esentation en forme de tableau des ´equations (4.23) donne
γ1 γ2 ... γn
θ1 α1,1 α2,1α1,2 α2,2. . . α1,n α2,n
θ2 ... ... ...
... αn,1 αn,2 . . .
θn ...
αn,n
Avec cette repr´esentation, la m´ethode Runge-Kutta explicite `a deux
points qui est d’ordre 4 est repr´esent´ee par le tableau suivant
5
exacte `a x + 2h
5
4.5 M´ethodes de Runge-Kutta “embarqu´ees”
6
Σ
y1 = y(x) + γiKi + 0(h6) (4.27)
i=1
6
Σ ∗
y2 = y(x) + γi Ki + 0(h5 ) (4.28)
i=1
6
Σ ∗
∆= (γi − γi )Ki (4.29)
i=1
..∆ 1/5
h0 = . (4.3
∆ 1
Il est donc possible, pour une valeur de ∆0 donn´ee `a l’avance de
|
diminuer h0 pour obtenir une erreur plus faible ou d’augmenter h0 de
mani`ere raisonnable si ∆1 est inf´erieur en valeur absolue `a |∆0 |.
Une difficult´e apparaˆıt pour ce type de m´ethode quand on consid`ere un
sys- t`eme diff´erentiel `a plusieurs variables. L’estimation de l’erreur est alors
donn´ee `a priori par un vecteur. La g´en´eralisation de la proc´edure ´ebauch
´ee reste possible, mais nous ne d´etaillerons pas ce type de subtilit´e dans ce
5
chapitre.
5
Equations diff´erentielles
10
1
6
2
3
4
-2
5
fonctions d’erreur qui sont paires en pas d´int´egration.
6
4.7 Conclusion
4.7 Conclusion
Les m´ethodes expos´ees ci-dessus permettent d’obtenir une solution de
plus en plus pr´ecise pour des syst`emes diff´erentiels ou` le nombre de
fonctions n’est pas tr`es important. En simulation de Dynamique Mol
´eculaire, un crit`ere de qualit´e pour le choix d’une m´ethode est le
respect de la propri´et´e d’invariance par renversement du temps, qui est
une propri´et´e satisfaite pour les syst`emes hamiltoniens. Les algorithmes
satisfaisant cette propri´et´e sont appel´es symplec- tiques ; un exemple de ce
type d’algorithme est l´algorithme dit de Verlet dont le principe est d´ecrit
dans le cours Simulation num´erique en Physique Statis- tique.(http
://[Link])
6
Equations diff´erentielles
6
Chapitre 5
Contenu
5.1 Introduction....................................................................... 39
5.2 Propri´et´es ..................................................................................39
5.3 Discr´etisation de la transform´ee de Fourier ...............42
5.3.1 E´ chantillonage ......................................................................42
5.3.2 Transform´ee de Fourier discr`ete .....................................43
5.4 Transform´ee de Fourier rapide ...........................................44
5.1 Introduction
Largement utilis´ee en Physique, la transform´ee de Fourier d’une
fonction d´ependant d’une variable (par exemple du temps) est devenue si
naturelle que sa repr´esentation graphique est g´en´eralement aussi utile,
voire plus, que celle de la fonction elle-mˆeme. Apr`es un rappel des propri´et
´es ´el´ementaires et fonda- mentales des transform´ees de Fourier pour la r
´esolution de probl`emes math´ema- tiques, nous allons pr´esenter le principe
de la m´ethode num´erique de l’´evaluation de cette transform´ee. Plus sp
´ecifiquement, depuis pr`es de 40 ans est apparu un algorithme performant
pour le calcul de la transform´ee de Fourier dont le temps de calcul varie
essentiellement comme N ln2 (N ) ou` N est le nombre de points ou` la
fonction f a ´et´e ´evalu´ee. Par opposition `a une approche trop na¨ıve,
ou` le nombre d’op´erations croˆıt comme N 2 cette m´ethode a re¸cu le nom
de trans- form´ee de Fourier rapide (FFT, Fast Fourier Transform, en
anglais), que toute biblioth`eque math´ematique propose g´en´eralement `a
son catalogue.
5.2 Propri´et´es
Soit une fonction f d´efinie sur R, on appelle transform´ee de Fourier
de f , la fonction fˆ
∫
6
fˆ(ν) =
+∞
2πiνt
f dt (5.1)
(t)e
−∞
6
Transform´ee de Fourier rapide
fˆ(ω) = ∫ +∞
iωt
f dt (5.3)
(t)e
−∞
6
f (t)e −∞
dt (5.4)
∫ +∞
1 ˆf
−iωt
f1(t) = dω
−
6
5.2 Propri´et´es
dxδ(x − x0)e =e 0
(5.10)
−∞
et donc que
∫ +∞
dxδ(x)e 2πikx = 1 (5.11)
−∞
Par inversion de cette relation, on a la repr´esentation int´egrale de la distribution
δ
∫
δ(x) = +∞
dke −2πikx (5.12)
−∞
De mani`ere ´equivalente, on montre que
1
∫ +∞
δ(x) = dke −ikx (5.13)
2π −∞
La propri´et´e sans doute la plus importante concernant les transform´ees de
Fou- rier concerne la convolution. Soit deux fonctions f et g d´efinie sur C, on
d´efinit la convolution de f avec g not´ee f ∗ g comme
6
∫
+∞
( )( ) = ( ) ( ) (5.14)
f∗g t f τ g t − τ dτ
−∞
6
Transform´ee de Fourier rapide
Cf (t) = ∫
duf (u)f (t + u) (5.16)
+∞
−∞
6
+∞
Σ sin(2πνc(t − n∆))
f (t) = ∆ f (5.22)
n=−∞
n π(t − n∆)
7
5.3 Discr´etisation de la transform´ee de Fourier
Si la fonction f (t) est multipli´ee par la fonction e2πν1 t avec ν1 qui est
un multiple de 1/∆, les points ´echantillonn´es sont exactement les
mˆemes. Une cons´equence de cette propri´et´e est l’apparition du ph
´enom`ene de duplication (“aliasing” en anglais). Cela se manifeste de la
mani`ere suivante : supposons que la transform´ee de Fourier exacte d’une
fonction ait un spectre plus large que celui donn´e par l’intervalle de
Nyquist, le spectre situ´e `a droite se replie `a gauche et celui `a droite se
replie `a gauche.
7
Transform´ee de Fourier rapide
7
ou` F p repr´esente la ki`eme composante de Fourier pour les composantes
paireskde la fonction de d´epart et F i repr´esente la ki`eme composante de
Fourier pour k
7
5.4 Transform´ee de Fourier rapide
000 000
000
001 001
001
110 110
110
111 111
111
(a) (b)
iipip...ppi
F k
= fn (5.37)
7
Transform´ee de Fourier rapide
7
Chapitre 6
Alg`ebre lin´eaire
Contenu
6.1 Introduction....................................................................... 47
6.2 E´ limination de Gauss-Jordan ..............................................49
6.2.1 Rappels sur les matrices.......................................................49
6.2.2 M´ethode sans pivot .............................................................49
6.2.3 M´ethode avec pivot ............................................................50
6.3 E´ limination gaussienne avec substitution .......................50
6.4 D´ecomposition LU ...................................................................51
6.4.1 Principe...................................................................................51
6.4.2 R´esolution d’un syst`eme lin´eaire ...................................52
6.5 Matrices creuses.....................................................................53
6.5.1 Introduction............................................................................53
6.5.2 Matrices tridiagonales...........................................................54
6.5.3 Formule de Sherman-Morison..............................................54
6.6 D´ecomposition de Choleski ..................................................54
6.7 Conclusion.......................................................................... 55
6.1 Introduction
Les deux chapitres qui suivent concernent le traitement num´erique des
ma- trices Ce premier chapitre est consacr´e aux m´ethodes employ´ees pour r
´esoudre les quatre taˆches les plus fr´equemment rencontr´ees pour les
syst`emes lin´eaires. Par d´efinition, on peut ´ecrire celles-ci comme
A.x = b (6.1)
ou` A est une matrice M × N
a11 a12 ... a1N
a a22 ... a2N
21
A= . .. .
... (6.2)
.
..
. . . .
7
aM 1 aM 2 . . . aMN
7
Alg`ebre lin´eaire
b1 x1
b x
. .
b= . x= . (6.3)
. .
bN xM
7
1
Si N > M , les ´equations sont ind´ependantes entre elles et il n’y a pas de solution. Si
N < M , il y a une ind´etermination et il existe une infinit´e de solutions.
8
6.2 E´ limination de Gauss-Jordan
8
J J J
0 a 22 a 23 a 24
(6.5)
0 aJ aJ J
32 33 a 34
J J J
0 a 42 a 43 a 44
8
Alg`ebre lin´eaire
ou` les coefficients aJij s’expriment en fonction des coefficients ou` les coefficients
aij.
On multiplie alors la deuxi`eme ligne par 1/aJ22 , puis on soustrait aJ12
fois la deuxi`eme ligne `a la premi`ere ligne, aJ32 fois la deuxi`eme ligne `a
la troisi`eme ligne et ainsi de suite jusqu’`a la derni`ere ligne. La matrice
A a maintenant la
structure suivante
1 0 aJ1J3 aJ1J4
0 1 aJ2J J3 aJJ2JJ4 (6.6)
0 0 a 33 a 3 4
0 0 aJ4J3 aJ4J4
On it`ere le proc´ed´e jusqu’`a la derni`ere ligne et on obtient alors la
matrice identit´e. On peut obtenir alors facilement la solution du syst`eme
d’´equations.
8
J J J J
a 11 a 12 a 13 a 14
J J J
0 a 22 a 23 a 24 xx21 bJ1
J J (6.7)
. 0 b 20J a 133
x = b
a 34 3
J
3
8
6.4 D´ecomposition LU
6.4 D´ecomposition LU
Les m´ethodes pr´ec´edentes n´ecessitent de connaˆıtre `a l’avance le
membre de gauche de l’´equation (6.1). Les m´ethodes qui suivent consiste
`a r´e´ecrire la matrice A afin que la r´esolution du syst`eme d’´equations
soit ex´ecut´ee plus faci- lement.
6.4.1 Principe
Nous allons montrer que toute matrice N N peut se d´ecomposer de
×
la mani`ere suivante.
A = L.U (6.11)
ou` L est une matrice triangulaire inf´erieure et U une matrice triangulaire
sup´e- rieure, soit
α11 0 0 ... 0
α21 α22 .0 . . . . . . . . . . . . 0
. . . ... (6.12)
L . . .
.
αN1. αN2. . . .. α(N .−1)(N. . −1) αNN0
et
β11 β12 β13 ... β1N
0 β22 β. 23 . . . . . . . . . . . . β2N
. . ... (6.13)
.
U . . . .
. . . β β
0 0 . . . (N −1)(N0 −1) (N
8
Alg`ebre lin´eaire
αii = 1 (6.16)
pour i [1, N ].
∈
L’algorithme de Crout permet de calculer simplement les N 2 coefficients
restants, en utilisant les relations suivantes
i−1
Σ
βij = aij − αikβkj i≤j (6.17)
k=1
j−1
Σ
αij 1
= βjj (aij — αik βkj ) i≥j+1 (6.18)
k=1
Soit
L.y = b (6.22)
2
Sachant que le nombre d’inconnues est devenu ´egale a` N 2 , on peut ´ecrire les deux
matrices sous la forme d’une seule matrice de la forme
β11 β12 β13 ... β1N
α21 β22 β23........................................β2N
. . . .
. . . ... .
(6.19)
. . . β(N −1)(N −1) 0
αN 1 αN 2 ... ... βNN
8
en se rappelant que les ´el´ements diagonaux de la matrice α ont ´et´e choisis ´egaux a` un.
8
6.5 Matrices creuses
U.x = y (6.23)
Chaque syst`eme peut ˆetre r´esolu par une proc´edure de substitution.
b1
y1 = (6.24)
i−1
α11 Σ
1
yi = (bi — αij yj ) (6.25)
j=1
αii
yN
xN = βNN (6.26)
1
x= (y — N
i
βii
i βij xj ) (6.27)
Σ
j= i+
1
8
Alg`ebre lin´eaire
B =A+u⊗ v (6.30)
−1 −1 z⊗w
= (6.35)
B A 1+λ
9
x.A.x > 0 (6.36)
9
6.7 Conclusion
quel que soit x. Il existe alors une matrice L triangulaire inf´erieure telle que
A = [Link] (6.37)
6.7 Conclusion
Avant de r´esoudre des syst`emes lin´eaires de grande dimension, il est imp
´era- tif de commencer par une analyse des propri´et´es de la matrice afin de d
´eterminer la m´ethode la plus adapt´ee afin d’obtenir une solution avec
une pr´ecision cor- recte et pour un temps de calcul qui sera minimal. Les
diff´erentes m´ethodes pr´esent´ees dans ce chapitre ne sont qu’une
introduction `a ce tr`es vaste sujet.
9
Alg`ebre lin´eaire
9
Chapitre 7
Analyse spectrale
Contenu
7.1 Introduction....................................................................... 57
7.2 Propri´et´es des matrices .......................................................58
7.3 M´ethodes directes ....................................................................60
7.3.1 M´ethode de Jacobi ..............................................................60
7.3.2 R´eduction de Householder .................................................62
7.3.3 Algorithme QL...................................................................64
7.3.4 Factorisation de Schur...........................................................65
7.4 M´ethode it´eratives .................................................................66
7.4.1 M´ethodes des puissances ....................................................66
7.4.2 M´ethode de Lanczo`s .........................................................67
7.1 Introduction
Ce chapitre est consacr´e aux op´erations que l’on peut r´ealiser sur
des ma- trices. Plus sp´ecifiquement, nous allons nous int´eresser `a la d
´etermination des valeurs propres et/ou vecteurs propres correspondants.
Tout d’abord, quelques rappels utiles pour la suite de ce chapitre : soit une
matrice carr´ee A de dimen- sion N , on appelle un vecteur propre x associ´e
`a la valeur propre λ, un vecteur qui satisfait la relation
A.x = λx (7.1)
Si x est un vecteur propre, pour tout r´eel
0, αx est aussi un vecteur propre
α
avec la mˆeme valeur propre λ.
Les valeurs propres d’une matrice peuvent ˆetre d´etermin´ees comme
les ra- cines du polynˆome caract´eristique de degr´e N
9
7.2 Propri´et´es des matrices
ou` λi est la i`eme valeur propre. De mani`ere similaire, on appelle vecteurs propres
`a gauche, les vecteurs tels que
xL.A = λixL (7.9)
i i
ce qui montre que la matrice diagonale form´ee par les valeurs propres de
A commute avec le produit [Link]. Sachant que les seules matrices qui
commutent avec une matrice diagonale constitu´ee d’´el´ements diff´erents
sont elles-mˆemes diagonales, on en d´eduit que chaque vecteur `a gauche
est orthogonal a` chaque vecteur `a droite et r´eciproquement. En
normalisant les vecteurs `a droite et `a gauche, on peut obtenir que la
matrice XL .XR soit ´egale `a l’identit´e.
Dans le cas ou` l’ensemble des vecteurs propres ne constitue une base
com- pl`ete, il est toujours possible de compl´eter cet ensemble afin d’avoir une
matrice telle que [Link] = 1.
Si la matrice A est inversible, on obtient en multipliant l’´equation (7.10) par
−1
X que
R
X−[Link] = diag(λ1, . . . , λn) (7.13)
R
Nous avons alors construit une matrice de transformation similaire de A
Rappelons la propri´et´e suivante : soit B une matrice telle que
B = P −1.A.P (7.14)
9
valeurs propres de ces deux matrices sont identiques.
9
Analyse spectrale
9
Soit la matrice AJ telle que
AJ = P T .[Link] (7.20)
p
9
7.3 M´ethodes directes
avec r /= p et r /= q.
Si on annule le terme aJpq , en introduisant l’angle de rotation φ, (c = cos(φ),
s = sin(φ)) on a le rapport θ
c2 − s2
= (7.26)
θ 2sc
= cot(2φ) (7.27)
aqq − app
= apq (7.28)
t2 + 2tθ − 1 = 0 (7.29)
La plus petite des racines correspond `a un angle de rotation inf´erieur `a
π/4 et donne la m´ethode la plus stable num´eriquement. Cette racine3 peut
s’exprimer sous la forme
sgn(θ)
√ t= (7.30)
θ
| | + θ2 + 1
En utilisant que c + s = 1 on obtient pour c que
2 2
”
1
c= √ (7.31)
1 + t2
et on a imm´ediatement s = tc. En imposant que le terme aJpq s’annule, on a
finalement les relations suivantes
1
Analyse spectrale
SJ = S − 2|apq|2 (7.38)
D = V T .A.V (7.39)
ou` D est une matrice diagonale contenant les diff´erentes valeurs propres et V
est une matrice contenant les vecteurs propres correspondants.
P = 1 − [Link] (7.40)
u = x ∓ |x|e1 (7.45)
ou` e1 est le vecteur colonne unitaire tel que seule la premi`ere composante
est non nulle et ´egale `a 1. On obtient facilement la valeur de H
1
H = 2(|x2| ± |x|x1) (7.46)
1
7.3 M´ethodes directes
En appliquant P `a
x u
P.x =x − .(x ∓ |x|e 1)T .x (7.47)
H
=x − 2u.(|x|2 ∓ |x|x1)
2|x|2 ∓ 2|x|x (7.48)
1
=x − u (7.49)
= ± |x|e1 (7.50)
Cela montre que la matrice P annule tous les ´el´ements du vecteur x
hormis le premier.
La strat´egie pour construire les matrices de Householder est la suivante :
on choisit un vecteur x constitu´e des n 1 derniers ´el´ements de la premi`ere
−
colonne pour construire la matrice P1 . En cons´equence, on obtient la structure
suivante pour P1
1 0 0 ... ... 0
0
0
P1 = 0 (7.51)
(n−1)
.
. P1
0
0
1
Analyse spectrale
de mˆeme pour la
seconde
avec
uT .p
K= (7.59)
2H
En posant
q = p − Ku (7.60)
on a la matrice A qui s’exprime alors simplement
J
7.3.3 Algorithme QL
En utilisant une suite de transformations de Householder, on peut ´ecrire
tout matrice r´eelle sous la forme
A = Q.R (7.62)
1
au dessus de la diagonale.
1
7.3 M´ethodes directes
AJ = L.Q (7.64)
L = Q−1.A (7.65)
ce qui donne
AJ = QT .A.Q (7.66)
As = [Link] (7.67)
As+1 = [Link] (7.68)
A = ZTZ † (7.69)
1
Analyse spectrale
Les colonnes de Z sont appel´ees les vecteurs de Schur. Les valeurs propres
de A apparaissent sur la diagonale de T ; les valeurs propres complexes conjugu
´ees d’une matrice A r´eelle correspondent aux blocs 2x2 de la diagonale.
L’algorithme utilis´ee 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 sup´erieure bord´ee une ligne d’´el´em´ents
nuls sous la diagonale.
– Si la matrice A est complexe
A = QHQ† (7.71)
α1 = uT .A.u0 (7.76)
0
α2 = uT .A.u1 (7.79)
1
q
1 2
β3 = uT .A2.u1 − α2 − β2
1
Par it´eration, on obtient pour le i`eme vecteur
1
Analyse spectrale
α1
β2 β2 0 ... ... ... 0
0 α2 β 3 0 ... ... 0
A =
J
0 β 3 α3 β 4 0 ... 0 (7.84)
0 ... ... ... 0
... ... ... ... ... 0
n−1 αn−1 β
0 ... ... 0
β
0
... ... ... 0 βn α
Il est possible d´utiliser alors une m´ethode de type QL pour obtenir
rapidement les valeurs propres de la matrice AJ , c´est `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 recherch´ee peut ˆetre estim
´ee en utilisant les sous espaces successifs. On peut donc arrˆeter l´it
´eration quand la diff´erence entre deux estimations successives de la valeur
propre est devenue suffisamment petite.
Dans le cas ou` la matrice A est une repr´esentation tronqu´ee d´un op
´erateur dont la base propre est infinie (par exemple, un op´erateur de
Schro¨ringer), le proc´ed´e it´eratif conduit progressivement `a des valeurs
de βi de plus en en plus petites. On peut consid´erer que la base de
Krylov est compl`ete quand βn est devenu inf´erieure en valeur absolue `a
une valeur ϵ choisie `a l´avance (g´en´eralement 1012 ).
1
Chapitre 8
Equations int´egrales
Contenu
8.1 Introduction....................................................................... 69
8.2 Equation de Fredholm......................................................69
8.2.1 Equation de premi`ere esp`ece ............................................69
8.2.2 Equation de seconde esp`ece ................................................70
8.3 Equation de Volterra.........................................................71
8.3.1 Equation de premi`ere esp`ece ............................................71
8.3.2 Equation de seconde esp`ece ................................................71
8.4 Conclusion.......................................................................... 71
8.1 Introduction
Les ´equations int´egrales sont a priori moins simples `a r´esoudre que les
´equa- tions alg´ebriques ou les ´equations diff´erentielles. Nous allons voir
dans ce cha- pitre que pour des ´equations int´egrales lin´eaires, une fois r
´ealis´ee la discr´etisa- tion de ces ´equations, on se ram`ene au probl`eme
de la recherche de solutions d’un syst`eme lin´eaire que nous avons vu
chapitre 6.
ou` f (t) est la fonction inconnue que l’on souhaite d´eterminer. g(t) est le
terme de source et K(t, s) est appel´e le noyau.
En notant gi = g(ti ), Kij = K(si , tj ) et fj = f (tj ) ou` i est un indice
variant de 1 `a N et j un indice variant de 1 `a M (M peut ˆetre diff´erent de N ).
1
Equations int´egrales
M
Σ
Kijfj = gi (8.2)
j=1
K.f = g (8.3)
ou` f (t) est la fonction inconnue que l’on souhaite d´eterminer. g(t) est le terme
de source, K(t, s) est appel´e le noyau et λ est un scalaire introduit par
commodit´e pour la suite de cette ´equation.
Suivant le mˆeme principe que celui d´efini ci-dessus, une fois discr
´etis´ee, l’´equation (8.5) se r´eexprime comme
M
Σ
λfi = Kijfj + gi (8.6)
j=1
(K − λ1).f = −g (8.7)
1
suffisament diff´erent de z´ero, la solution des ´equations de Fredholm de
seconde esp`ece est relativement simple `a obtenir.
1
8.3 Equation de Volterra
8.4 Conclusion
L’existence de structure de noyaux presque singuliers n´ecessite d’utiliser
des m´ethodes plus complexes qui d´epassent largement le cadre de ce
cours intro- ductif aux m´ethodes num´eriques.
1
Equations int´egrales
1
Chapitre 9
Contenu
9.1 Introduction....................................................................... 73
9.2 Equations avec conditions aux fronti`eres .......................76
9.2.1 Introduction............................................................................76
9.2.2 Diff´erences finies ..................................................................76
9.2.3 M´ethodes matricielles ..........................................................77
9.2.4 M´ethodes de relaxation .......................................................77
9.2.5 M´ethodes de Fourier ...........................................................78
9.3 Equations avec conditions initiales.................................80
9.3.1 Equations `a flux conservatif ..............................................80
9.3.2 Une approche na¨ıve..............................................................81
9.3.3 Crit`ere de Stabilit´e de Von Neumann ............................81
9.3.4 M´ethode de Lax ...................................................................82
9.4 Conclusion.......................................................................... 83
9.1 Introduction
Les ´equations aux d´eriv´ees partielles interviennent dans de nombreux
do- maines de physique, qui comprennent les probl`emes de diffusion, les ph
´enom`enes de propagation, ainsi que le domaine de la m´ecanique des
fluides d´ecrite par les ´equations hydrodynamiques comme celles de Navier-
Stokes et l’´equation de Schr¨odinger d´ependante du temps pour la m
´ecanique quantique. Ces ´equations diff´erentielles n’ont g´en´eralement pas
de solutions analytiques et une r´esolution num´erique de ces ´equations est
alors n´ecessaire.
Une ´equation aux d´eriv´ees partielles est une relation liant une fonction
de n variables `a ses d´eriv´ees partielles. L’ordre de l’´equation est donn´e
par l’ordre le plus ´el´ev´e des d´eriv´ees partielles apparaissant dans
l’´equation. La forme g´en´erale d’une ´equation aux d´eriv´ees partielles lin
´eaires est
1
L[f (x)] = g(x) (9.1)
1
Equations aux d´eriv´ees partielles
4
Conditions
aux
limites
3
t
Conditions initiales
0
0 1 2 3 4 5 6 7 8 9
-
x
6
Conditions aux bords
y
3
0
0 1 2 3 4 5 6 7 8 9
- x
∂2u(x, t)
∂t2 = 2 ∂2u(x, t)
c (9.4)
∂x2
ou` u(x, t) peut designer´ une variable scalaire comme la densit´e locale
ρ(x, t) ou une variable vectorielle comme la vitesse locale v(x, t).
Equation parabolique. La diffusion de particules dans un milieu continu
ob´eit `a l’´equation suivante
∂ρ(x, t)
∂t = D ∂2ρ(x, t)
(9.5)
∂x2
ou` D est la constante de diffusion et ρ(x, t) la densit´e locale
instantan´ee des particules diffusantes.
Equation elliptique. En dimensions deux, le potentiel coulombien induit
par une densit´e de charges ´electriques satisfait l’´equation suivante
(avec des unit´es choisies de mani`ere appropri´ee)
−ρ(x, y) =
∂2V (x, y, t) ∂2V (x, y, t)
∂x2 + ∂y2 (9.6)
1
ou` ρ(x, y) est la densit´e locale de charge et V (x, y) le potentiel
´electrosta- tique `a d´eterminer.
1
Equations aux d´eriv´ees partielles
xi = x0 + j∆ j = 0, 1, ..., J (9.7)
yk = x0 + k∆ k = 0, 1, ..., K (9.8)
1
Vj+1,k + Vj−1,k − 2Vj,k Vj,k+1 + Vj,k−1 − 2Vj,k
+ = −ρ (9.9)
j
∆ ∆
1
9.2 Equations avec conditions aux fronti`eres
1
Les m´ethodes de relaxation reposent sur le sch´ema it´eratif suivant.
On d´e- compose la matrice A comme
A=E−F (9.14)
1
Equations aux d´eriv´ees partielles
1
9.2 Equations avec conditions aux fronti`eres
Condition de Dirichlet
Si on impose des conditions de Dirichlet aux bords du rectangle, c’est-a`-
dire u = 0 pour j = 0 et j = J et pour k = 0 et k = K, la transform´ee
de Fourier adapt´ee est alors celle en sinus.
Σ K−1
Σ L−1
2 πkm πln
Vkl = ˆV sin (9.22)
mn
KL m=0 n=0 K L
sin
Une expression similaire pour la fonction ρ peut ˆetre ´ecrite. Un calcul
simple montre que la relation (9.20) relie les composantes de Fourier en
sinus des deux fonctions. et la m´ethode de calcul donn´ee dans le
paragraphe pr´ec´edent s’applique `a nouveau `a condition de consid´erer
les transform´ees de Fourier en sinus.
Condition de Neumann
Si on impose des conditions de Neumann aux bords du rectangle, c’est-
a`- dire u = 0 pour j = 0 et j = J et pour k = 0 et k = K, la
∇
transform´ee de Fourier adapt´ee est alors celle en cosinus.
Σ K−1
Σ L−1
2 πkm πln
Vkl = ˆV cos (9.23)
KL K L
mncos
m=0 n=0
ainsi que pour la fonction ρ. A nouveau, les composantes de Fourier sont reli
´ees par la relation (9.20). Le mˆeme sch´ema donn´e ci-dessus s’applique
alors.
Conditions complexes
Ceci repr´esente le cas g´en´eral ou` par exemple la fonction u(x, y)
s’annule sur l’une des fronti`eres (j = 0), mais vaut u = f (y) sur la fronti`ere
oppos´ee (j = J). La m´ethode consiste alors `a ´ecrire que la solution de ce
probl`eme est la somme de deux contributions : celle de la solution de
l’´equation pour une condition de Dirichlet et celle de la solution qui est
nulle `a l’int´erieur du rectangle. En
´ecrivant la solution sous la forme
u = uJ + uB (9.24)
avec uB = 0 sauf uB = f `a la fronti`ere, on obtient
1
d’une seconde contri- bution nulle en dehors de la fronti`ere. En utilisant une
d´ecomposition analogue
`a celle introduite ci-dessus, cela revient `a r´esoudre le probl`eme de
Neumann en modifiant le terme de source.
1
Equations aux d´eriv´ees partielles
∂ 2v 2
∂t2 = c2 ∂ v (9.28)
∂x2
on introduit les fonctions auxiliaires r et s
∂v
r c (9.29)
= ∂x
∂v
s (9.30)
= ∂t
et l’´equation de propagation s’exprime alors par un ensemble de deux ´equations
aux d´eriv´ees partielles du premier ordre
∂r ∂s
=c (9.31)
∂t ∂x
∂s ∂r (9.32)
∂t = c ∂x
Si on consid`ere que r et s sont les deux composantes du vecteur u, l’´equation
de propagation est alors donn´ee par l’´equation (9.26) avec la relation
matricielle suivante
0 −v
F (u) = .u (9.33)
−v 0
Ainsi les ´equations `a flux conserv´e comprennent `a la fois les
´equations aux d´eriv´ees partielles paraboliques et hyperboliques.
Par souci de simplicit´e, nous allons consid´erer par la suite l’´equation `a
flux conservatif suivante
∂u ∂u (9.34)
= −c
∂ ∂
La solution de cette ´equation est bien ´evidemment connue u = f (x ct),
mais nous allons chercher `a construire une proc´edure num´erique − pour d
´eterminer la solution.
1
9.3 Equations avec conditions initiales
xj = x0 + j∆x j = 0, 1, . . . J (9.35)
tn = t0 + n∆t n = 0, 1, . . . N (9.36)
∂u .
un+1
j − un
= j
+ O(∆ )
∂
j
(9.37)
t
Mˆeme si la pr´ecision de. l’algorithme n’est pas tr`es importante, cela
permet d’exprimer la solution `a l’instant n + 1 uniquement en fonction de
l’instant n.
Pour int´egrer spatialement, on utilise un algorithme du second ordre
∂u
. = n n
j− 1
∂x j,n uj+1 —
. + O(∆x2) (9.38)
2
ce qui donne finalement
un+1 − un un − un
j j+1 j−1 (9.39)
= −c 2∆
∆t
soit encore x
n n
un+1 = un − c∆t uj+1 j−1
— (9.40)
j j
La d´etermination de u n+1
se fait en fonction des
2 trois points : u , u
n n
et un .
j j j−1
j+1
On parle de m´ethode explicite. Malheureusement, ce sch´ema tr`es simple
ne fonctionne pas en ce sens qu’il ne permet pas d’obtenir une solution correcte
de l’´equation aux d´eriv´ees partielles. En d’autres termes, on dit qu’il est
instable.
1
stable, il est n´ecessaire que les modes exponentiellement divergents
n’existent pas. Cela revient `a dire que l’algorithme est instable d`es qu’il
existe un vecteur d’onde k0 tel que
1
Equations aux d´eriv´ees partielles
5 5
(a) (b)
Instable Stable
4.5 4.5
4 4
3.5 3.5
3 3
t
t
2.5 2.5
2 2
1.5 1.5
1
1 2 3 4 5 6 7 8 1
x 1 2 3 4 5 6 7 8
x
1
un → (un
+ un ) (9.44)
j j
2 j
1
9.4 Conclusion
9.4 Conclusion
Les difficult´es des m´ethodes num´eriques pour la r´esolution des
´equations d´eriv´ees partielles ont des origines diverses : elles proviennent soit
des subtilit´es li´ees au choix de l´algorithme comme dans le cas des
´equations 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 suppl´ementaires apparaissent pour des ´equations aux d´eriv´ees
partielles non-lin´eaires (cas de l’hydrodynamique) ou` il est n´ecessaire
d’introduire des nouveaux crit`eres pour l’analyse de la stabilit´e des
algorithmes.
De tels d´eveloppements d´epassent largement le cadre de ce cours
introductif, mais cela illustre la grande complexit´e de ce sujet. En effet, Le
domaine de la r´esolution des ´equations aux d´eriv´ees partielles reste un
domaine tr`es actif de recherche en analyse num´erique, soulignant `a la
fois l’int´erˆet de nouvelles m´ethodes et la n´ecessite d’obtenir des m
´ethodes de plus en plus performantes.
1
Equations aux d´eriv´ees partielles
1
Annexe A
Coordonn´ees hypersph´eriques
−ρ ≤ xi ≤ ρ (A.3)
1
Coordonn´ees hypersph´eriques
πn/2an
Γ(n/2
= 1) +
pour pair
an
π n/2
(n/2)! n
= (n−1)/2 n (A.7)
π (2a) ((n − 1)/2)!
n! pour n impair
L’´el´ement de surface de l’hypersph`ere de rayon a est donn´e par
Yn−2
−
dSn = a n 1 sin − − (φi)dφi (A.8)
i=1 n 1 i
On peut en d´eduire la surface d’une hypersph`ere dans un espace `a n dimensions.
dVn
Sn = nπn/2an−1
da = Γ(n/2 + 1)!
pour n pair
n/2 an−1
nπ
(n/2)! (A.9)
= nπ
(n−1)/2
(2a)n−1(( n 1)/2)!
2
−
1
pour n impair
(n − 1)!
1
Annexe B
Contenu
B.1 Introduction....................................................................... 87
B.2 Terminologie...........................................................................88
B.1 Introduction
La biblioth`eque BLAS est un biblioth`eque qui r´ealise les op´erations
d’alg`ebre lin´eaire de bas niveau. Elle est disponible en Fortran et en C par
l’interm´ediaire de la biblioth`eque GSL, par exemple. Ces op´erations sont
class´ees par ordre de “difficult´e” croissante :
1. op´erations vectorielles
y = αx + y (B.1)
2. op´erations matrices-
vecteurs
y = αAx + βy (B.2)
3. op´erations matrices-matrices
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 r´esoudre les probl`emes suivants : syst`eme d’´equations lin
´eaires : probl`emes aux valeurs propres. Diverses factorisations matricielles
sont disponibles comme la d´ecomposition LU, QR Cholesky, SVD, Schur et
Schur generalis´ee. Les ma- trices consid´er´ees sont des matrices soit pleines
soit `a bande. Le cas des matrices creuses n’est pas sp´ecifiquement trait´e. Les
sous-programmes sont fournis pour des probl`emes dans lesquelles les
matrices sont soit r´eelles, soit complexes, en simple ou en double pr´ecision.
1
Les biblioth`eques BLAS et Lapack
B.2 Terminologie
Une terminologie mn´emotechnique a ´et´e choisie pour retrouver
“facilement” les noms des sous-programmes `a appeler. Le principe est le
mˆeme pour Lapack et le BLAS.
Les sous-programmes ont un suffixe qui indique le type d’objets sur
lesquels on effectue les op´erations.
– S pour type REAL
– D pour type DOUBLE PRECISION
– C pour type COMPLEX
– Z pour type COMPLEX*16
1
1
Pour le Blas de Niveau 2, il y a un ensemble de sous-programmes pour des calculs en pr
1
´ecision ´etendue. Les pr´efixes sont ES, ED, EC, EZ
1
Annexe C
La biblioth`eque GSL
Contenu
C.1 Introduction....................................................................... 90
C.2 Sous programmes...................................................................91
C.2.1 BLAS...................................................................................91
C.2.2 fonctions simples...................................................................92
C.2.3 interfaces entre GSL et le BLAS......................................92
C.2.4 Blocs.........................................................................................92
C.2.5 S´eries de Chebyshev. ...........................................................92
C.2.6 Combinatoire..........................................................................92
C.2.7 Complexes...............................................................................92
C.2.8 Hankel......................................................................................93
C.2.9 D´eriv´ees ...............................................................................93
C.2.10 Valeurs et vecteurs propres..................................................93
C.2.11 Transform´ees de Fourier ....................................................93
C.2.12 Ajustements............................................................................93
C.2.13 Histogrammes.........................................................................94
C.2.14 IEEE....................................................................................94
C.2.15 Int´egration ............................................................................94
C.2.16 Interpolation...........................................................................94
C.2.17 Alg`ebre lin´eaire ..................................................................95
C.2.18 Matrices...................................................................................95
C.2.19 Minimisation...........................................................................95
C.2.20 Monte Carlo............................................................................95
C.2.21 Ajustements non-lin´eaires ...................................................96
C.2.22 Equations diff´erentielles ......................................................96
C.2.23 Permutation............................................................................96
C.2.24 Polynˆomes .............................................................................97
C.2.25 Puissances...............................................................................97
C.2.26 Nombres al´eatoires ..............................................................97
C.2.27 Racines unidimensionnelles..................................................97
C.2.28 Fonctions sp´eciales ..............................................................98
C.2.29 Tris.........................................................................................100
C.2.30 Lissage...................................................................................100
1
La biblioth`eque GSL
C.2.31 Statistique.............................................................................100
C.2.32 Transform´ees de Levin .....................................................101
C.2.33 Vecteurs.................................................................................101
C.1 Introduction
Parmi les nombreuses biblioth`eques math´ematiques que l’on peut
utiliser pour r´esoudre des probl`emes num´eriques, il existe une version
´evolutive bas´ee sur le concept de logiciel libre qui s’appelle la GSL (acronyme
de Gnu Scientific Library). La version actuelle est une version stable 1.2.
Cette biblioth`eque est
´ecrite en C et est install´ee sur les stations de travail de l’´ecole doctorale
(avec la version 1.1.1), ce qui permet `a tout utilisateur d’en disposer
pleinement.
Cette biblioth`eque offre des sous-programmes pour les probl`emes suivants :
1
C.2 Sous programmes
C.2.1 BLAS
Les fonctions du BLAS ´ecrites. Elles r´ealisent les trois niveaux qui
sont les suivants :
1. op´erations vectorielles
y = αx + y (C.1)
2. op´erations matrices-
vecteurs
y = αAx + βy (C.2)
3. op´erations matrices-
matrices C = αAB + C (C.3)
cblas caxpy, cblas ccopy, cblas cdotc sub, cblas cdotu sub, cblas cgbmv, cblas cgemm,
cblas cgemv, cblas cgerc, cblas cgeru, cblas chbmv, cblas chemm, cblas chemv, cblas cher,
cblas cher2, cblas cher2k, cblas cherk, cblas chpmv, cblas chpr, cblas chpr2, cblas cscal,
cblas csscal, cblas cswap, cblas csymm, cblas csyr2k, cblas csyrk, cblas ctbmv, cblas ctbsv,
cblas ctpmv, cblas ctpsv, cblas ctrmm, cblas ctrmv, cblas ctrsm, cblas ctrsv, cblas dasum,
cblas daxpy, cblas dcopy, cblas ddot, cblas dgbmv, cblas dgemm, cblas dgemv, cblas dger,
cblas dnrm2, cblas drot, cblas drotg, cblas drotm, cblas drotmg, cblas dsbmv, cblas dscal,
cblas dsdot, cblas dspmv, cblas dspr, cblas dspr2, cblas dswap, cblas dsymm, cblas dsymv,
cblas dsyr, cblas dsyr2, cblas dsyr2k, cblas dsyrk, cblas dtbmv, cblas dtbsv, cblas dtpmv,
cblas dtpsv, cblas dtrmm, cblas dtrmv, cblas dtrsm, cblas dtrsv, cblas dzasum, cblas dznrm2,
cblas icamax, cblas idamax, cblas isamax, cblas izamax, cblas sasum, cblas saxpy, cblas scasum,
cblas scnrm2, cblas scopy, cblas sdot, cblas sdsdot, cblas sgbmv, cblas sgemm, cblas sgemv,
cblas sger, cblas snrm2, cblas srot, cblas srotg, cblas srotm, cblas srotmg, cblas ssbmv,
cblas sscal, cblas sspmv, cblas sspr, cblas sspr2, cblas sswap, cblas ssymm, cblas ssymv,
cblas ssyr, cblas ssyr2, cblas ssyr2k, cblas ssyrk, cblas stbmv, cblas stbsv, cblas stpmv,
cblas stpsv, cblas strmm, cblas strmv, cblas strsm, cblas strsv, cblas xerbla, cblas zaxpy,
cblas zcopy, cblas zdotc sub, cblas zdotu sub, cblas zdscal, cblas zgbmv, cblas zgemm,
cblas zgemv, cblas zgerc, cblas zgeru, cblas zhbmv, cblas zhemm, cblas zhemv, cblas zher,
cblas zher2, cblas zher2k, cblas zherk, cblas zhpmv, cblas zhpr, cblas zhpr2, cblas zscal,
cblas zswap, cblas zsymm, cblas zsyr2k, cblas zsyrk, cblas ztbmv, cblas ztbsv, cblas ztpmv,
cblas ztpsv, cblas ztrmm, cblas ztrmv, cblas ztrsm, cblas ztrsv
1
La biblioth`eque GSL
C.2.4 Blocs
Les fonctions pour les blocs de m´emoire , gsl block alloc, gsl block
calloc, gsl block fprintf, gsl block fread, gsl block free, gsl block fscanf, gsl block
fwrite
C.2.6 Combinatoire
gsl combination alloc, gsl combination calloc, gsl combination data, gsl combination fprintf,
gsl combination fread, gsl combination free , gsl combination fscanf, gsl combination fwrite,
gsl combination get, gsl combination init first, gsl combination init last, gsl combination k,
gsl combination n, gsl combination next, gsl combination prev , gsl combination valid
C.2.7 Complexes
Les fonctions d’op´erations sur les complexes gsl complex abs, gsl complex abs2,
gsl complex add, gsl complex add imag, gsl complex add real, gsl complex arccos,
1
gsl complex arccos real, gsl complex arccosh, gsl complex arccosh real, gsl complex arccot,
1
C.2 Sous programmes
gsl complex arccoth, gsl complex arccsc, gsl complex arccsc real, gsl complex arccsch,
gsl complex arcsec, gsl complex arcsec real, gsl complex arcsech, gsl complex arcsin ,
gsl complex arcsin real, gsl complex arcsinh, gsl complex arctan, gsl complex arctanh,
gsl complex arctanh real, gsl complex arg, gsl complex conjugate, gsl complex cos, gsl complex cosh,
gsl complex cot, gsl complex coth, gsl complex csc, gsl complex csch, gsl complex div,
gsl complex div imag, gsl complex div real, gsl complex exp, gsl complex inverse, gsl complex linalg LU invert,
gsl complex log, gsl complex log10, gsl complex log b, gsl complex logabs, gsl complex mul,
gsl complex mul imag, gsl complex mul real, gsl complex negative, gsl complex polar,
gsl complex pow, gsl complex pow real, gsl complex rect, gsl complex sec, gsl complex sech,
gsl complex sin, gsl complex sinh, gsl complex sqrt, gsl complex sqrt real, gsl complex sub,
gsl complex sub imag, gsl complex sub real, gsl complex tan, gsl complex tanh
C.2.8 Hankel
Les fonctions pour les transform´ees de Hankel
gsl dht alloc, gsl dht apply, gsl dht free, gsl dht init, gsl dht k sample, gsl dht new,
gsl dht x sample
C.2.9 D´eriv´ees
gsl diff backward, gsl diff central, gsl diff forward
C.2.12 Ajustements
gsl fit linear, gsl fit linear est, gsl fit mul, gsl fit mul est, gsl fit wlinear, gsl fit wmul
1
La biblioth`eque GSL
C.2.13 Histogrammes
gsl histogram2d accumulate, gsl histogram2d add, gsl histogram2d alloc, gsl histogram2d clone,
gsl histogram2d cov, gsl histogram2d div, gsl histogram2d equal bins p, gsl histogram2d find,
gsl histogram2d fprintf, gsl histogram2d fread , gsl histogram2d free, gsl histogram2d fscanf,
gsl histogram2d fwrite , gsl histogram2d get, gsl histogram2d get xrange, gsl histogram2d get yrange,
gsl histogram2d increment, gsl histogram2d max bin, gsl histogram2d max val, gsl histogram2d memcpy,
gsl histogram2d min bin, gsl histogram2d min val, gsl histogram2d mul, gsl histogram2d nx,
gsl histogram2d ny, gsl histogram2d pdf alloc, gsl histogram2d pdf free, gsl histogram2d pdf init,
gsl histogram2d pdf sample, gsl histogram2d reset, gsl histogram2d scale, gsl histogram2d set ranges,
gsl histogram2d set ranges uniform, gsl histogram2d shift, gsl histogram2d sub, gsl histogram2d sum,
gsl histogram2d xmax, gsl histogram2d xmean, gsl histogram2d xmin, gsl histogram2d xsigma,
gsl histogram2d ymax, gsl histogram2d ymean, gsl histogram2d ymin, gsl histogram2d ysigma,
gsl histogram accumulate, gsl histogram add, gsl histogram alloc, gsl histogram bins,
gsl histogram clone, gsl histogram div, gsl histogram equal bins p, gsl histogram find,
gsl histogram fprintf, gsl histogram fread, gsl histogram free, gsl histogram fscanf, gsl histogram fwrite,
gsl histogram get, gsl histogram get range, gsl histogram increment, gsl histogram max,
gsl histogram max bin, gsl histogram max val, gsl histogram mean, gsl histogram memcpy,
gsl histogram min, gsl histogram min bin, gsl histogram min val, gsl histogram mul,
gsl histogram pdf alloc, gsl histogram pdf free , gsl histogram pdf init, gsl histogram pdf sample,
gsl histogram reset, gsl histogram scale, gsl histogram set ranges, gsl histogram set ranges uniform,
gsl histogram shift, gsl histogram sigma, gsl histogram sub, gsl histogram sum
gsl hypot
C.2.14 IEEE
gsl ieee env setup, gsl ieee fprintf double, gsl ieee fprintf float, gsl ieee printf double,
gsl ieee printf float
C.2.15 Int´egration
gsl integration qag, gsl integration qagi, gsl integration qagil, gsl integration qagiu,
gsl integration qagp, gsl integration qags, gsl integration qawc, gsl integration qawf,
gsl integration qawo, gsl integration qawo table alloc, gsl integration qawo table free,
gsl integration qawo table set, gsl integration qawo table set length, gsl integration qaws,
gsl integration qaws table alloc, gsl integration qaws table free, gsl integration qaws table set,
gsl integration qng, gsl integration workspace alloc, gsl integration workspace free
C.2.16 Interpolation
gsl interp accel alloc, gsl interp accel find , gsl interp accel free, gsl interp
akima, gsl interp akima periodic, gsl interp alloc, gsl interp bsearch, gsl interp
cspline,
gsl interp cspline periodic, gsl interp eval, gsl interp eval deriv, gsl interp eval deriv2,
gsl interp eval deriv2 e, gsl interp eval deriv e, gsl interp eval e, gsl interp eval integ,
gsl interp eval integ e, gsl interp free, gsl interp init, gsl interp linear, gsl interp min size,
gsl interp name, gsl interp polynomial
1
gsl isinf, gsl isnan
1
C.2 Sous programmes
C.2.18 Matrices
gsl matrix add, gsl matrix add constant, gsl matrix alloc, gsl matrix calloc, gsl matrix column,
gsl matrix const column, gsl matrix const diagonal , gsl matrix const row, gsl matrix const subdiagonal,
gsl matrix const submatrix, gsl matrix const superdiagonal, gsl matrix const view array,
gsl matrix const view array with tda, gsl matrix const view vector, gsl matrix const view vector with tda,
gsl matrix diagonal, gsl matrix div elements, gsl matrix fprintf, gsl matrix fread, gsl matrix free,
gsl matrix fscanf, gsl matrix fwrite, gsl matrix get, gsl matrix get col, gsl matrix get row,
gsl matrix isnull, gsl matrix max, gsl matrix max index, gsl matrix memcpy, gsl matrix min,
gsl matrix min index, gsl matrix minmax, gsl matrix minmax index, gsl matrix mul elements,
gsl matrix ptr, gsl matrix ptr, gsl matrix row, gsl matrix scale, gsl matrix set, gsl matrix set all,
gsl matrix set col, gsl matrix set identity, gsl matrix set row, gsl matrix set zero, gsl matrix sub,
gsl matrix subdiagonal, gsl matrix submatrix, gsl matrix superdiagonal, gsl matrix swap,
gsl matrix swap columns, gsl matrix swap rowcol, gsl matrix swap rows, gsl matrix transpose,
gsl matrix transpose memcpy , gsl matrix view array, gsl matrix view array with tda,
gsl matrix view vector, gsl matrix view vector with tda
C.2.19 Minimisation
gsl min fminimizer alloc, gsl min fminimizer brent, gsl min fminimizer f lower, gsl min fminimizer f minimum,
gsl min fminimizer f upper, gsl min fminimizer free, gsl min fminimizer goldensection,
gsl min fminimizer iterate, gsl min fminimizer name, gsl min fminimizer set , gsl min fminimizer set with values,
gsl min fminimizer x lower, gsl min fminimizer x minimum, gsl min fminimizer x upper,
gsl min test interval
1
La biblioth`eque GSL
gsl monte vegas alloc, gsl monte vegas free, gsl monte vegas init , gsl monte vegas integrate
C.2.23 Permutation
gsl permutation alloc, gsl permutation calloc, gsl permutation canonical cycles, gsl permutation canonical to
gsl permutation data, gsl permutation fprintf, gsl permutation fread, gsl permutation free,
gsl permutation fscanf, gsl permutation fwrite, gsl permutation get, gsl permutation init,
gsl permutation inverse, gsl permutation inversions, gsl permutation linear cycles, gsl permutation linear to cano
gsl permutation memcpy, gsl permutation mul, gsl permutation next, gsl permutation prev,
gsl permutation reverse, gsl permutation size, gsl permutation swap, gsl permutation valid,
gsl permute, gsl permute inverse, gsl permute vector, gsl permute vector inverse
1
C.2 Sous programmes
C.2.24 Polynˆomes
gsl poly complex solve, gsl poly complex solve cubic, gsl poly complex solve quadratic,
gsl poly complex workspace alloc, gsl poly complex workspace free, gsl poly dd eval,
gsl poly dd init, gsl poly dd taylor, gsl poly eval, gsl poly solve cubic, gsl poly solve quadratic
C.2.25 Puissances
gsl pow 2, gsl pow 3, gsl pow 4, gsl pow 5, gsl pow 6, gsl pow 7, gsl pow 8, gsl pow 9,
gsl pow int
1
La biblioth`eque GSL
gsl root fdfsolver newton, gsl root fdfsolver root, gsl root fdfsolver secant, gsl root fdfsolver set,
gsl root fdfsolver steffenson, gsl root fsolver alloc, gsl root fsolver bisection, gsl root fsolver brent,
gsl root fsolver falsepos, gsl root fsolver free, gsl root fsolver iterate, gsl root fsolver name,
gsl root fsolver root, gsl root fsolver set, gsl root fsolver x lower, gsl root fsolver x upper,
gsl root test delta, gsl root test interval , gsl root test residual
gsl set error handler, gsl set error handler off
Divers
gsl sf angle restrict pos, gsl sf angle restrict pos e, gsl sf angle restrict symm,
gsl sf angle restrict symm e, gsl sf atanint, gsl sf atanint e
Bessel
gsl sf bessel I0, gsl sf bessel I0 e, gsl sf bessel I0 scaled, gsl sf bessel i0 scaled, gsl sf bessel I0 scaled e,
gsl sf bessel i0 scaled e, gsl sf bessel I1, gsl sf bessel I1 e, gsl sf bessel I1 scaled, gsl sf bessel i1 scaled,
gsl sf bessel I1 scaled e, gsl sf bessel i1 scaled e, gsl sf bessel i2 scaled, gsl sf bessel i2 scaled
e, gsl sf bessel il scaled, gsl sf bessel il scaled array, gsl sf bessel il scaled e, gsl sf bessel In,
gsl sf bessel In array, gsl sf bessel In e, gsl sf bessel In scaled, gsl sf bessel In scaled array,
gsl sf bessel In scaled e, gsl sf bessel Inu, gsl sf bessel Inu e, gsl sf bessel Inu scaled,
gsl sf bessel Inu scaled e, gsl sf bessel J0, gsl sf bessel j0, gsl sf bessel j0 e, gsl sf bessel J0 e,
gsl sf bessel J1, gsl sf bessel j1, gsl sf bessel J1 e, gsl sf bessel j1 e, gsl sf bessel j2 ,
gsl sf bessel j2 e, gsl sf bessel jl, gsl sf bessel jl array, gsl sf bessel jl e, gsl sf bessel jl steed array,
gsl sf bessel Jn, gsl sf bessel Jn array, gsl sf bessel Jn e, gsl sf bessel Jnu, gsl sf bessel Jnu e,
gsl sf bessel K0, gsl sf bessel K0 e, gsl sf bessel K0 scaled, gsl sf bessel k0 scaled,
gsl sf bessel K0 scaled e, gsl sf bessel k0 scaled e, gsl sf bessel K1, gsl sf bessel K1 e,
gsl sf bessel K1 scaled, gsl sf bessel k1 scaled, gsl sf bessel K1 scaled e, gsl sf bessel k1 scaled e,
gsl sf bessel k2 scaled, gsl sf bessel k2 scaled e, gsl sf bessel kl scaled, gsl sf bessel kl scaled array,
gsl sf bessel kl scaled e, gsl sf bessel Kn, gsl sf bessel Kn array, gsl sf bessel Kn e, gsl sf bessel Kn scaled,
gsl sf bessel Kn scaled array, gsl sf bessel Kn scaled e, gsl sf bessel Knu, gsl sf bessel Knu e,
gsl sf bessel Knu scaled, gsl sf bessel Knu scaled e, gsl sf bessel lnKnu, gsl sf bessel lnKnu e,
gsl sf bessel sequence Jnu e, gsl sf bessel y0, gsl sf bessel Y0, gsl sf bessel y0 e, gsl sf bessel Y0 e,
gsl sf bessel y1, gsl sf bessel Y1, gsl sf bessel Y1 e, gsl sf bessel y1 e, gsl sf bessel y2,
gsl sf bessel y2 e, gsl sf bessel yl, gsl sf bessel yl array, gsl sf bessel yl e, gsl sf bessel Yn,
gsl sf bessel Yn array, gsl sf bessel Yn e, gsl sf bessel Ynu, gsl sf bessel Ynu e, gsl sf bessel zero J0,
gsl sf bessel zero J0 e, gsl sf bessel zero J1, gsl sf bessel zero J1 e, gsl sf bessel zero Jnu,
gsl sf bessel zero Jnu e
1
C.2 Sous programmes
gsl sf beta, gsl sf beta e, gsl sf beta inc, gsl sf beta inc e, gsl sf Chi, gsl sf Chi e,
gsl sf choose, gsl sf choose e, gsl sf Ci, gsl sf Ci e, gsl sf clausen, gsl sf clausen e, gsl sf complex cos e,
gsl sf complex dilog e, gsl sf complex log e, gsl sf complex logsin e, gsl sf complex sin e,
gsl sf conicalP 0, gsl sf conicalP 0 e, gsl sf conicalP 1 , gsl sf conicalP 1 e, gsl sf conicalP cyl reg,
gsl sf conicalP cyl reg e, gsl sf conicalP half, gsl sf conicalP half e, gsl sf conicalP mhalf,
gsl sf conicalP mhalf e, gsl sf conicalP sph reg, gsl sf conicalP sph reg e, gsl sf cos,
gsl sf cos e, gsl sf cos err, gsl sf cos err e, gsl sf coulomb CL array , gsl sf coulomb CL e,
gsl sf coulomb wave F array, gsl sf coulomb wave FG array, gsl sf coulomb wave FG e,
gsl sf coulomb wave FGp array , gsl sf coulomb wave sphF array, gsl sf coupling 3j,
gsl sf coupling 3j e, gsl sf coupling 6j, gsl sf coupling 6j e, gsl sf coupling 9j, gsl sf coupling 9j e,
gsl sf dawson, gsl sf dawson e, gsl sf debye 1, gsl sf debye 1 e, gsl sf debye 2, gsl sf debye 2 e,
gsl sf debye 3, gsl sf debye 3 e, gsl sf debye 4, gsl sf debye 4 e, gsl sf dilog, gsl sf dilog e,
gsl sf doublefact, gsl sf doublefact e, gsl sf ellint D, gsl sf ellint D e, gsl sf ellint E,
gsl sf ellint E e, gsl sf ellint Ecomp, gsl sf ellint Ecomp e, gsl sf ellint F, gsl sf ellint F
e, gsl sf ellint Kcomp, gsl sf ellint Kcomp e, gsl sf ellint P, gsl sf ellint P e, gsl sf ellint
RC, gsl sf ellint RC e, gsl sf ellint RD, gsl sf ellint RD e, gsl sf ellint RF, gsl sf ellint RF
e,
gsl sf ellint RJ, gsl sf ellint RJ e, gsl sf elljac e, gsl sf erf, gsl sf erf e, gsl sf erf Q, gsl sf erf Q
e, gsl sf erf Z, gsl sf erf Z e, gsl sf erfc, gsl sf erfc e, gsl sf eta, gsl sf eta e, gsl sf eta int,
gsl sf eta int e, gsl sf exp, gsl sf exp e, gsl sf exp e10 e , gsl sf exp err e, gsl sf exp err e10 e,
gsl sf exp mult, gsl sf exp mult e, gsl sf exp mult e10 e, gsl sf exp mult err e, gsl sf exp mult err e10 e,
gsl sf expint 3, gsl sf expint 3 e, gsl sf expint E1, gsl sf expint E1 e, gsl sf expint E2,
gsl sf expint E2 e, gsl sf expint Ei, gsl sf expint Ei e, gsl sf expm1, gsl sf expm1 e,
gsl sf exprel, gsl sf exprel 2, gsl sf exprel 2 e, gsl sf exprel e, gsl sf exprel n, gsl sf exprel n e,
gsl sf fact, gsl sf fact e, gsl sf fermi dirac 0, gsl sf fermi dirac 0 e, gsl sf fermi dirac 1,
gsl sf fermi dirac 1 e, gsl sf fermi dirac 2, gsl sf fermi dirac 2 e, gsl sf fermi dirac 3half,
gsl sf fermi dirac 3half e, gsl sf fermi dirac half, gsl sf fermi dirac half e, gsl sf fermi dirac inc 0,
gsl sf fermi dirac inc 0 e, gsl sf fermi dirac int, gsl sf fermi dirac int e, gsl sf fermi dirac m1,
gsl sf fermi dirac m1 e, gsl sf fermi dirac mhalf, gsl sf fermi dirac mhalf e, gsl sf gamma,
gsl sf gamma e, gsl sf gamma inc P, gsl sf gamma inc P e, gsl sf gamma inc Q, gsl sf gamma inc Q e,
gsl sf gammainv , gsl sf gammainv e, gsl sf gammastar, gsl sf gammastar e, gsl sf gegenpoly 1,
gsl sf gegenpoly 1 e, gsl sf gegenpoly 2, gsl sf gegenpoly 2 e, gsl sf gegenpoly 3, gsl sf gegenpoly 3 e,
gsl sf gegenpoly array, gsl sf gegenpoly n, gsl sf gegenpoly n e, gsl sf hydrogenicR, gsl sf hydrogenicR 1,
gsl sf hydrogenicR 1 e, gsl sf hydrogenicR e, gsl sf hyperg 0F1, gsl sf hyperg 0F1 e,
gsl sf hyperg 1F1, gsl sf hyperg 1F1 e, gsl sf hyperg 1F1 int, gsl sf hyperg 1F1 int e,
gsl sf hyperg 2F0, gsl sf hyperg 2F0 e, gsl sf hyperg 2F1, gsl sf hyperg 2F1 conj, gsl sf hyperg 2F1 conj e,
gsl sf hyperg 2F1 conj renorm , gsl sf hyperg 2F1 conj renorm e, gsl sf hyperg 2F1 e,
gsl sf hyperg 2F1 renorm, gsl sf hyperg 2F1 renorm e, gsl sf hyperg U , gsl sf hyperg U e,
gsl sf hyperg U e10 e, gsl sf hyperg U int, gsl sf hyperg U int e, gsl sf hyperg U int e10 e,
gsl sf hypot, gsl sf hypot e, gsl sf hzeta, gsl sf hzeta e, gsl sf laguerre 1, gsl sf laguerre 1 e,
gsl sf laguerre 2, gsl sf laguerre 2 e, gsl sf laguerre 3 , gsl sf laguerre 3 e, gsl sf laguerre n,
gsl sf laguerre n e, gsl sf lambert W0, gsl sf lambert W0 e, gsl sf lambert Wm1, gsl sf lambert Wm1 e,
gsl sf legendre array size, gsl sf legendre H3d, gsl sf legendre H3d 0, gsl sf legendre H3d 0 e,
gsl sf legendre H3d 1, gsl sf legendre H3d 1 e, gsl sf legendre H3d array, gsl sf legendre H3d e,
gsl sf legendre P1, gsl sf legendre P1 e, gsl sf legendre P2, gsl sf legendre P2 e, gsl sf legendre P3,
1
gsl sf legendre P3 e, gsl sf legendre Pl, gsl sf legendre Pl array, gsl sf legendre Pl e,
1
La biblioth`eque GSL
gsl sf legendre Plm, gsl sf legendre Plm array, gsl sf legendre Plm e, gsl sf legendre Q0,
gsl sf legendre Q0 e, gsl sf legendre Q1, gsl sf legendre Q1 e, gsl sf legendre Ql, gsl sf legendre Ql e,
gsl sf legendre sphPlm, gsl sf legendre sphPlm array, gsl sf legendre sphPlm e, gsl sf lnbeta,
gsl sf lnbeta e, gsl sf lnchoose, gsl sf lnchoose e, gsl sf lncosh, gsl sf lncosh e, gsl sf lndoublefact,
gsl sf lndoublefact e, gsl sf lnfact, gsl sf lnfact e, gsl sf lngamma, gsl sf lngamma complex e,
gsl sf lngamma e, gsl sf lngamma sgn e, gsl sf lnpoch, gsl sf lnpoch e, gsl sf lnpoch sgn e,
gsl sf lnsinh, gsl sf lnsinh e, gsl sf log, gsl sf log 1plusx, gsl sf log 1plusx e, gsl sf log 1plusx mx,
gsl sf log 1plusx mx e, gsl sf log abs, gsl sf log abs e , gsl sf log e, gsl sf log erfc, gsl sf log erfc e,
gsl sf multiply e, gsl sf multiply err e, gsl sf poch, gsl sf poch e, gsl sf pochrel, gsl sf pochrel e,
gsl sf polar to rect, gsl sf pow int, gsl sf pow int e, gsl sf psi, gsl sf psi 1 int, gsl sf psi 1 int e,
gsl sf psi 1piy, gsl sf psi 1piy e, gsl sf psi e, gsl sf psi int, gsl sf psi int e, gsl sf psi n,
gsl sf psi n e, gsl sf rect to polar, gsl sf Shi, gsl sf Shi e, gsl sf Si, gsl sf Si e, gsl sf sin,
gsl sf sin e, gsl sf sin err, gsl sf sin err e, gsl sf sinc, gsl sf sinc e, gsl sf synchrotron 1,
gsl sf synchrotron 1 e, gsl sf synchrotron 2, gsl sf synchrotron 2 e, gsl sf taylorcoeff,
gsl sf taylorcoeff e, gsl sf transport 2, gsl sf transport 2 e, gsl sf transport 3, gsl sf transport 3 e,
gsl sf transport 4, gsl sf transport 4 e, gsl sf transport 5, gsl sf transport 5 e, gsl sf zeta,
gsl sf zeta e, gsl sf zeta int, gsl sf zeta int e,
gsl siman solve
C.2.29 Tris
gsl sort, gsl sort index, gsl sort largest, gsl sort largest index, gsl sort smallest, gsl sort smallest index,
gsl sort vector, gsl sort vector index, gsl sort vector largest, gsl sort vector largest index,
gsl sort vector smallest, gsl sort vector smallest index, gsl heapsort, gsl heapsort index
C.2.30 Lissage
gsl spline alloc, gsl spline eval, gsl spline eval deriv, gsl spline eval deriv2, gsl spline eval deriv2 e,
gsl spline eval deriv e, gsl spline eval e, gsl spline eval integ, gsl spline eval integ e,
gsl spline free, gsl spline init
C.2.31 Statistique
gsl stats absdev, gsl stats absdev m, gsl stats covariance, gsl stats covariance m,
gsl stats kurtosis, gsl stats kurtosis m sd, gsl stats lag1 autocorrelation ,
gsl stats lag1 autocorrelation m, gsl stats max, gsl stats max index, gsl stats mean,
gsl stats median from sorted data, gsl stats min, gsl stats min index, gsl stats minmax,
gsl stats minmax index,
gsl stats quantile from sorted data, gsl stats sd, gsl stats sd m, gsl stats sd with fixed mean,
gsl stats skew, gsl stats skew m sd, gsl stats variance, gsl stats variance m
, gsl stats variance with fixed mean, gsl stats wabsdev, gsl stats wabsdev m, gsl stats wkurtosis,
gsl stats wkurtosis m sd, gsl stats wmean, gsl stats wsd, gsl stats wsd m, gsl stats wsd with fixed mean,
gsl stats wskew, gsl stats wskew m sd, gsl stats wvariance, gsl stats wvariance m,
gsl stats wvariance with fixed mean
gsl strerror
1
C.2 Sous programmes
C.2.33 Vecteurs
gsl vector add, gsl vector add constant, gsl vector alloc, gsl vector calloc,
gsl vector complex const imag, gsl vector complex const real , gsl vector complex imag,
gsl vector complex real, gsl vector const subvector , gsl vector const subvector with stride,
gsl vector const view array, gsl vector const view array with stride, gsl vector div, gsl vector fprintf,
gsl vector fread, gsl vector free, gsl vector fscanf, gsl vector fwrite, gsl vector get, gsl vector isnull,
gsl vector max, gsl vector max index, gsl vector memcpy, gsl vector min, gsl vector min index,
gsl vector minmax, gsl vector minmax index, gsl vector mul, gsl vector ptr, gsl vector ptr,
gsl vector reverse, gsl vector scale, gsl vector set, gsl vector set all, gsl vector set basis,
gsl vector set zero, gsl vector sub, gsl vector subvector, gsl vector subvector with stride,
gsl vector swap, gsl vector swap elements, gsl vector view array gsl vector view array with stride
1
La biblioth`eque GSL
1
Bibliographie
1
BIBLIOGRAPHIE
1
Table des mati`eres
3 Racines d’´equations 21
3.1 Introduction..............................................................................................21
3.2 Dichotomie................................................................................................22
3.3 M´ethode de Ridder ................................................................................23
3.3.1 M´ethode de la position fausse ..................................................23
3.3.2 M´ethode de Ridder ....................................................................24
3.4 M´ethode de Brent ..................................................................................25
3.5 Newton-Raphson......................................................................................25
3.6 Racines de Polynˆomes ...........................................................................26
3.6.1 R´eduction polynomiale ..............................................................26
3.6.2 M´ethode de Laguerre ................................................................27
1
TABLE DES MATIE` RES
4 Equations diff´erentielles 29
4.1 Introduction..............................................................................................29
4.2 D´efinitions ...............................................................................................30
4.3 M´ethodes d’int´egration `a pas s´epar´e ...........................................31
4.3.1 Introduction..................................................................................31
4.3.2 M´ethode d’Euler ........................................................................32
4.3.3 M´ethode RK explicites `a un point ........................................32
4.3.4 M´ethodes RK implicites `a un point ......................................33
4.3.5 M´ethodes RK explicites `a 2 points interm´ediaires ............33
4.3.6 M´ethodes RK explicites `a 3 points interm´ediaires ............33
4.3.7 Formule g´en´erale des m´ethodes RK explicites ..................34
4.4 M´ethode d’int´egration `a pas variables ............................................34
4.4.1 Introduction..................................................................................34
4.5 M´ethodes de Runge-Kutta “embarqu´ees” .........................................35
4.6 M´ethode de Bulirsh-Stoer .....................................................................36
4.7 Conclusion.................................................................................................37
6 Alg`ebre lin´eaire 47
6.1 Introduction..............................................................................................47
6.2 E´ limination de Gauss-Jordan ...............................................................49
6.2.1 Rappels sur les matrices.............................................................49
6.2.2 M´ethode sans pivot ...................................................................49
6.2.3 M´ethode avec pivot ...................................................................50
6.3 E´ limination gaussienne avec substitution ...........................................50
6.4 D´ecomposition LU ..................................................................................51
6.4.1 Principe.........................................................................................51
6.4.2 R´esolution d’un syst`eme lin´eaire .........................................52
6.5 Matrices creuses.......................................................................................53
6.5.1 Introduction..................................................................................53
6.5.2 Matrices tridiagonales.................................................................54
6.5.3 Formule de Sherman-Morison...................................................54
6.6 D´ecomposition de Choleski ...................................................................54
6.7 Conclusion.................................................................................................55
7 Analyse spectrale 57
7.1 Introduction..............................................................................................57
7.2 Propri´et´es des matrices .......................................................................58
7.3 M´ethodes directes ...................................................................................60
7.3.1 M´ethode de Jacobi ....................................................................60
1
TABLE DES MATIE` RES
8 Equations int´egrales 69
8.1 Introduction..............................................................................................69
8.2 Equation de Fredholm.............................................................................69
8.2.1 Equation de premi`ere esp`ece ..................................................69
8.2.2 Equation de seconde esp`ece ......................................................70
8.3 Equation de Volterra................................................................................71
8.3.1 Equation de premi`ere esp`ece ..................................................71
8.3.2 Equation de seconde esp`ece ......................................................71
8.4 Conclusion.................................................................................................71
A Coordonn´ees hypersph´eriques 85
C La biblioth`eque GSL 89
C.1 Introduction..............................................................................................90
C.2 Sous programmes.....................................................................................91
C.2.1 BLAS......................................................................................... 91
C.2.2 fonctions simples.........................................................................92
C.2.3 interfaces entre GSL et le BLAS.................................................92
C.2.4 Blocs..............................................................................................92
C.2.5 S´eries de Chebyshev. .................................................................92
C.2.6 Combinatoire................................................................................92
1
TABLE DES MATIE` RES
C.2.7 Complexes.....................................................................................92
C.2.8 Hankel...........................................................................................93
C.2.9 D´eriv´ees ....................................................................................93
C.2.10 Valeurs et vecteurs propres.......................................................93
C.2.11 Transform´ees de Fourier ...........................................................93
C.2.12 Ajustements..................................................................................93
C.2.13 Histogrammes..............................................................................94
C.2.14 IEEE.......................................................................................... 94
C.2.15 Int´egration ..................................................................................94
C.2.16 Interpolation.................................................................................94
C.2.17 Alg`ebre lin´eaire ........................................................................95
C.2.18 Matrices.........................................................................................95
C.2.19 Minimisation.................................................................................95
C.2.20 Monte Carlo..................................................................................95
C.2.21 Ajustements non-lin´eaires .........................................................96
C.2.22 Equations diff´erentielles ............................................................96
C.2.23 Permutation..................................................................................96
C.2.24 Polynˆomes ...................................................................................97
C.2.25 Puissances.....................................................................................97
C.2.26 Nombres al´eatoires ....................................................................97
C.2.27 Racines unidimensionnelles.......................................................97
C.2.28 Fonctions sp´eciales ....................................................................98
C.2.29 Tris..............................................................................................100
C.2.30 Lissage.........................................................................................100
C.2.31 Statistique...................................................................................100
C.2.32 Transform´ees de Levin ............................................................101
C.2.33 Vecteurs......................................................................................101