Académique Documents
Professionnel Documents
Culture Documents
v
v
v
ix
x
x
xii
xiii
xiii
xiii
xiv
xiv
xv
xv
xvii
xix
xix
xix
xx
xxiii
xxiv
xxv
Chapitre 4. Interpolation
1. Introduction
2. Une methode directe basee sur la resolution dun systeme lineaire :
3. Une methode iterative : Methode de Lagrange
4. Interpolation Iteree de Newton-Cotes
5. Erreur dInterpolation polynomiale :
6. Interpolation dHermite
xxix
xxix
xxx
xxx
xxxiv
xxxv
xxxvi
xxxix
xxxix
xxxix
xliii
iii
CHAPITRE 1
Les approximations utilisees dependent a` la fois des contraintes physiques (espace memoire, vitesse de lhorloge...) et du choix des methodes retenues par le concepteur du programme .
Le but de ce chapitre est de prendre connaissance de limpact de ces contraintes et de ces choix methologiques.
Dans certains cas il doit e tre pris en compte dans lanalyse des resultats dont une utilisation erronee pourrait e tre
couteuse.
La premi`ere contrainte est que le syst`eme numerique de lordinateur est discret,
cest a` dire quil ne comporte quun nombre fini de nombres ;
Il en decoule que tous les calculs sont entaches derreurs.
2.1. Evaluation de lerreur. Rappelons dabord quelques notion de base ;
Si X est une quantite a` calculer et X la valeur calculee, on dit que :
Er = XX
Xr est lerreur relative,
Xr 6= 0. Xr est une valeur de reference pour X. En general ,on prend Xr = X.
Exemple :
Si X = 2.224 et X = 2.223
|XX | 0.001
4
alors , si on prend Xr = X , lerreur relative
Er = XX
Xr = |X| = 2.224 = 4 . 496 10
Cependant, si X est la valeur dune fonction F (t) avec a t b, on choisira parfois une valeur de reference
globale pour toutes les valeurs de t.
Exemple :
Si X = sin(t) avec 0 t
4,
on pourra prendre Xr =
2
2
= sup sin(t).
0t
4
En general , on ne connait pas le signe de lerreur de sorte que lon consid`ere les erreurs absolues et les erreurs
relatives absolues.
Les operations e lementaires propagent des erreurs.
Dans la pratique, on consid`ere que :
1) Lerreur absolue sur une somme est la somme des erreurs absolues.
2) Lerreur relative sur un produit ou un quotient est la somme des ereurs relatives.
On peut estimer leffet dune erreur E sur largument x dune fonction f (x) au moyen de la derivee de f (x).
En effet f (x + E) ' f (x) + Ef 0 (x)
Exemple :
Calculer la valeur de (11111111)2
La valeur fournie par une petite calculatrice a` cinq chiffres est 1, 2345x1014
Mais la reponse exacte est 123456787654321.
La machine a donc tronque le resultat a` 5 chiffres et lerreur absolue est de 6 109 .
vi
2.5. Les regles de base du mod`ele. Pour effectuer une operation sur deux nombres reels, on effectue loperation
sur leurs representations flottantes et on prend ensuite la representation flottante du resultat.
2.6. laddition flottante. x y = f l(f l(x) + f l(y))
2.7. la soustraction flottante. x y = f l(f l(x) f l(y))
2.8. la multiplication flottante. x y = f l(f l(x) f l(y))
2.9. la division flottante. x y = f l(f l(x)/f l(y))
Chaque operation intermediaire dans un calcul introduit une nouvelle erreur darrrondi ou de troncature.
Dans la pratique, il faudra se souvenir du fait que deux expressions algebriquement e quivalentes peuvent fournir
des resultats differents et que lordre des operations peut changer les resultats.
Pour laddition et la soustraction on ne peut effectuer ces 2 operations que si les exposants sont les memes. On
transforme le plus petit exposant et donc on ne respecte plus la regle voulant que le premier chiffre de la mantisse ne
soit pas nul.
2.10. Quelques remarques sur ce mod`ele : On constate une deviation importante par rapport aux lois habituelles de larithmetique.
x + (y + z) peut e tre different de (x + y) + z.
Exemple :
Pour 4 chiffres significatifs (s = 4) on a :
(1 + 0 .0005 ) + 0 .0005 = 1 .000
car
0 .1 10 1 +0 .5 . 10 3 = 0 .1 . 10 1 +0 .00005 . 10 1 = 0 .1 10 1 +0 .0000 . 10 1 = 0 .1 10 1
et
1 + (0 .0005 + 0 .0005 ) = 1 .001
Ainsi, laddition flottante nest pas associative .(TD :Sommation dune serie a` termes positifs)
On constate aussi que si y est tres petit par rapport a` x, laddition de x et y donnera seulement x.
Exemple :
Lequation 1 + x = 1 a x = 0 comme unique solution. Mais dans un syst`eme a` 10 chiffres significatifs, elle aura
une infinite de solutions (il suffit de prendre | x | 5 1011 )
La distributivite de la multiplication par rapport a` laddition.
Exemple :
Considerons loperation
122 (333 + 695 ) =
(122 333) + (122 695) =
125416
Si nous effectuons ces deux calculs en arithmetique a` 3 chiffres (s = 3) et arrondi, nous obtenons :
122 (333 + 695 ) =
f l(122) f l(1028) =
122 103 10 1 =
3
fl (125660 ) = 126 10
(122 333 ) + (122 695 ) =
f l(40626) + f l(84790) =
406 10 2 +848 10 2 =
2
fl (406 + 848 ) 10 =
2
fl (1254 10 ) =
125 103
Donc la distributivite de la multiplication par rapport a` laddition nest pas respectee en arithmetique flottante.
viii
On voit que pour x 20 les resultats obtenus sont depourvus de sens. Lexplication de ce phenom`ene est
30
la suivante : pour x = 30 les termes de la serie vont en croissant jusqu`a x30! = 8.1011 puis ils decroissent et
107
x
15
.
107! 9.19.10
Lerreur absolue sur le terme maximal est de 8.1011 .1015 = 8.104 . Ainsi le resultat obtenu pour S represente
uniquement laccumulation des erreurs darrondi sur les termes de plus grand module de developpement en serie.
La propagation des erreurs est un des principaux probl`emes en calcul numerique.
Considerons le cas dune somme :
Dans laddition, les erreurs absolues sadditionnent. Soit en effet 1 et 2 les erreurs absolues sur x1 et x2 .
On peut e crire :
(x1 1 ) + (x2 2 ) = (x1 + x2 ) (1 + 2 )
En arithmetique flottante, lerreur relative est a` peu pr`es constante et les erreurs absolues peuvent e tre approximativement explicites par :
1 =| x1 | , 2 =| x2 |
Si les nombres en presence ont le meme signe, lerreur relative reste la meme que celle quon avait x1 et x2 . En
effet
1 + 2
(| x1 | + | x2 |)
=
=
|x1 + x2 |
|x1 + x2 |
Si par contre les nombres sont de signes differents, lerreur relative peut e tre amplifiee de facon spectaculaire.
Dans la multiplication, les erreurs relatives sadditionnent.
En effet,soient x1 et x2 ,on a :
(x1 1 ).(x2 2 ) = x1 x2 x1 2 x2 1 1 2
Si de plus les erreurs secrivent
1 = |x1 |
2 = |x2 |
on a alors en negligeant certains termes :
|x1 2 x2 1 | 1
2
|(x1 1 ).(x2 2 ) x1 x2 |
=
= 2
|x1 x2 |
|x1 x2 |
x1
x2
Des formules e quivalentes peuvent donner des resultats differents ; on peut ameliorer le resultat en utilisant une
formule mathematique e quivalente necessitant des operations differentes.
ix
7001 et
7000.
2
7001 7000 = fl ((0 .83671979 0 .83666003 ) 10 ) = 0 .59760000 10 2
On peut obtenir un resultat plus precis en utilisant lidentite suivante :
x+ y
xy
x y= ( x y)
=
x+ y
x+ y
On obtient alors
1
1
=
= 0 .59759297 10 2
0.16733798
103
7001 + 7000
5. Instabilite numerique :
Si les erreurs introduites dans les e tapes intermediaires ont un effet negligeable sur le resultat final,on dira que
le calcul ou lalgorithme est numeriquement stable. Si des petits changements sur les donnees entrainent des petits
changements sur le resultat. Sinon , on dira que lalgorithme est numeriquement instable.
R 1 xn
dx
0 a+x
o`u a est une constante plus grande que 1, pour plusieurs valeurs de n. pour ce faire, nous allons exprimer In
recursivement, i.e. nous allons exprimer In en fonction de n et In1 .
x
xn1 (x + a a)
dx
a+x
0
Z 1 n1
Z 1
x
x n1 dx a
dx
=
a
+x
0
0
1
= aI n1
n
n1
X (a)i
+ (a)n I0
=
n
i
i=0
Z
In =
Comme
I0 = ln( 1+a
a )
On peut calculer In pour toutes les valeurs de n.
Mais lalgorithme est numeriquement instable car toute erreur dans le calcul deI0 = ln( 1+a
a ) va se propager.
En effet si on note par I0 la valeur approchee de I0 et si I0 = I0 + alors
In =
n1
X
i=0
n1
X
i=0
(a)i
n
+ (a) I0
ni
(a)i
n
+ (a) (I0 + )
ni
donc |In In | an .
5.2. Remarques : Il y a en fait differentes sources derreur. Nous pouvons les classer en 3 categories :
- les erreurs liees a` limprecision des mesures physiques ou au resultat dun calcul approche
- les erreurs liees a` lalgorithme utilise
- les erreurs de calcul liees a` la machine
En general, pour lobjet de notre cours, si le premier chapitre met laccent sur les erreurs liees a` la machine, nous
nous interresserons beaucoup plus aux erreurs liees aux methodes ou encore aux algorithmes utilises.
xi
1
1
1
100
1
4
+
1
81
10 1
P
.
2
i=1 i
1
9
1
+ ... 100
+ ... + 11
x1 =
b+ b2 4ac
2a
et x2 =
b b2 4ac
2a
1) Verifier que x1 + x2 = ab et x1 x2 = ac .
2) Utiliser ce resultat pour montrer que ces racines peuvent aussi secrire sous la forme
(2)
x1 =
2c
b+ b2 4ac
et x2 =
2c
b b2 4ac
x+y =2
x
+
1.01y = 2.01
x+y =2
x + 1.01y = 2.02
Que remarquez-vous ?
Exercice 6 : On cherche les racines de
p(x) = (x 1)(x 2)(x 10)
Elles sont e videntes.
Si on developpe ce polynome en une valeur approchee pour lune des racines par exemple 10.1
p(x) devient
p(x) = (x 10.1)(x2 + bx + c)
Calculer b et c .
En deduire les racines du polynomes du second degre. Que remarquez-vous ?
xii
CHAPITRE 2
(1) Si f (a) = 0 imprimer la solution est a. Si f (b) = 0 imprimer la solution est b, aller
(3) poser N = 1
(4) Tant que N N0 ,faire les e tapes 5 a` 8
(5) poser p =
a+b
2
(6) Si f (p) = 0 ou
ba
2
, imprimer p. Aller a` 10
(7) poser N = N + 1
(8) Si f (a) f (p) > 0,alors poser a = p, sinon poser b = p
(9) Imprimer apres N0 iterations lapproximation obtenue est p et lerreur maximale est
ba
2
(10) Fin
3. Methode de Newton-Raphson :
Le principe consiste a` construire une suite (xn )n , telle que xn+1 soit lintersection de la tangente a` la courbe de
f au point (xn , f (xn )) avec laxe horizontal.
On a :
A = (x0 , f (x0 )), B = (x1 , 0) axe(Ox)
A et B D : y = ax + b
donc
f (x0 ) = ax0 + b
0 = ax1 + b
a = f 0 (x0 )
0)
x1 = x0 ff0(x
(x0 )
BUT
Entrees : une approximation initiale p0
(la precision desiree)
N0 (le nombre maximum diterations)
Sortie : valeur approchee de p ou un message dechec
A LGORITHME 3.
(1) N = 1
f (p0 )
f 0 (p0 )
5. Algorithme de la secante :
BUT et Algorithme de la secante
Trouver une solution de f (x) = 0
Entrees : deux approximations initiales p0 et p1
(la precision desiree)
N0 (le nombre maximum diterations)
Sortie :la valeur approchee de p ou un message dechec
(1) poser N = 1, q0 = f (p0 ), q1 = f (p1 )
(2) Tant que N N0 + 1,faire les e tapes 3 a` 6
0)
(3) poser p = p1 q1 (pq11 p
q0
f (x)
).
f 0 (x)
Maintenant , si la fonction g(x) est continue et si lalgorithme converge (c.`a.d. pn p), on tire de pn+1 = g(pn )
que p satisfait lequation p = g(p) ; on dit que p est un point fixe de g.
BUT
trouver une solution de g(x) = x
Entrees : une approximation initiale p0
(la precision desiree)
N0 le nombre maximale diterations
Sortie : valeur approchee de p ou un message dechec
6.1. Convergence et ordre de convergence.
D E FINITION 4. Soit D une partie de R et F une application de D dans D. On dit que la fonction F est contractante si
x, y D , k [0, 1[ tel que
| F (x) F (y) | k | x y | .
k est le coefficient de contraction ou de Lipschitz de F.
T HEOR E` ME 5. Considerons le segment S = [p0 a, p0 + a] D; si F est contractante sur S et si | F (p0 )
p0 | (1 k) a, alors literation pn+1 = F (pn ) de point initial p0 , converge vers lunique point fixe p S de F.
T HEOR E` ME 6. Si F est differentiable au voisinage dun point fixe p et si | F 0 (p) |< 1 alors :
V voisinage de p tels que p0 V et pn+1 = F (pn ) converge vers p.
xv
xvi
Ecrire
un algorithme pour calculer
par la methode de Newton la racine k-i`eme dun nombre.
q
p
Ecrire
3 methodes iteratives pour la resolution de x3 x 1 =0 et verifier experimentalement leur convergence
avec x0 = 1, 5. Trouver a` 106 pr`es la racine comprise entre 1 et 2. Connaissant la valeur de cette racine, calculer
lordre de convergence de vos 3 methodes. Ce resultat coincide-t-il avec lexperience ?
Exercice 5
Resoudre x2 -1=0 en utilisant la methode de la secante avec x0 = 3 et x1 = 5/3. Quarrivera-t-il si on choisit et
x0 = 5/3 et x1 = 3 ? Expliquez.
Exercice 6
On consid`ere la fonction f (x) = x4 2x3 + 2x 1.
1) Calculer lordre de convergence de la methode de Newton pour la racine x = 1.
2) Etudier la convergence et lordre de la methode de points fixe suivante :
f (xn )
xn+1 = xn 3 0
, avec x0 pr`es de x = 1 racine de f.
f (xn )
xvii
CHAPITRE 3
5 2
4 1
1 2
2 1
3
3
= 1 et y =
1 5
2 4
1 2
2 1
6
3
=2
x + 2y = 5
x = 2y + 5
x = 2y + 5
2x + y = 4
2x + y = 4
2(2y + 5) + y = 4
x = 2y + 5
x = 2y + 5
x=1
3y = 6
y=2
y=2
3. Methode Gauss
Lidee de base consiste a` transformer (1) en un probl`eme que lon sait resoudre.
(1) Si la matrice A = D avec D une matrice diagonale, alors on sait resoudre (1).
(2) Si la matrice A = U (ou L) avec U (ou T ) triangulaire superieure ( ou inferieure) alors on sait resoudre (1).
Probl`eme : Comment tranformer une matrice en une matrice triangulaire inferieure ou superieure ?
Cas n = 3 :
AX = b secrit :
8
< a11 x1 + a12 x2 + a13 x3 = b1
a21 x1 + a22 x2 + a23 x3 = b2
:
a31 x1 + a32 x2 + a33 x3 = b3
la formeaugmentee
1
b1
a11 a12 a13
b2 A
(A b) = @ a21 a22 a23
b3
a31 a32 a33
6= 0, par e limination, on obtient :
0
1
a11 a12 a13
b1
0
0
0
a22 a23
b2 A
(A1 b1 ) = @ 0
0
a032 a033
b03
8
< a11 x1 + a12 x2 + a13 x3 = b1 (l1)
a21 x1 + a22 x2 + a23 x3 = b2 (l2 )
(1)
:
a31 x1 + a32 x2 + a33 x3 = b3 (l3 )
0
On suppose quea11
(1) Poser j = 1
(2) Tant que j n 1 faire
(3) Si ajj = 0 afficher pivot nul aller a` e tape 14, sinon
(4) Poser i = j + 1
(5) Tant que i n faire
(6) lij =
aij
ajj
x + y + 3t = 4
2x + y z + t = 1
3x y z + 2t = 3
>
>
:
x + 2y + 3z t = 4
qui secrit encore :
0
1
B 2
B
@ 3
1
1
1
1
2
0
1
1
3
10
3
x
B y
1 C
CB
2 A@ z
1
t
1
4
C B 1 C
C=B
C
A @ 3 A
4
1
6 0
6
4 0
0
1
1
4
3
0
1
1
3
3
5
7
2
.
.
.
.
3
4
7 7
7
15 5
8
1
1
0
0
0
1
3
0
3
5
13
13
.
.
.
.
3
4
7 7
7
13 5
13
1
6 0
6
4 0
0
Que lon peut e crire sous la forme :
8
>
>
<
x + y + 3t
y z 5t
3z + 13t
>
>
:
13t
Notons que letape j = 3 nous donnerait l43 = 0.
Nous avons maintenant un syst`eme triangulaire a` resoudre.
xxi
=
=
=
=
4
7
13
13
bn
ann
n
X
1
(bi
aij xj )
aii
j=i+1
2x + 6y + 10z
x + 3y + 3z
:
3x + 14y + 28z
0
2
@ 1
3
=
=
=
0
2
8
10
1 0
1
6 10
x
0
3
3 A@ y A = @ 2 A
14 28
z
8
0
1
0
1
0
2 6 10
0
2 6 10
0
2 6
@ 1 3
3
2 A @ 0 0 4
4 A@ 0 5
3 14 28 8
0 5 13 8
0 0
En utilisant la remonte on trouve :
8
4
z = 4
= 1
<
1
y = 5 (8 13 (1)) = 1
:
x = 12 (6 1 10 (1)) = 2
10
13
4
1
0
8 A
4
0
1
2
x =@ 2 A
1
a12
x
a11 2
a13
x
a11 3
b1
a11
(l10 )
Si on pose :
(l20 ) = (l2 ) a21 (l10 )
et
(l30 ) = (l3 ) a31 (l10 )
Alors (1) secrit
(2)
8
< x1 +
:
a12
13
x + aa11
x3
a11 2
0
0
a22 x2 + a23 x3
a032 x2 + a033 x3
b00
3
a00
33
xxii
1
= ab11
(l10 )
0
= b2 (l20 )
= b03 (l30 )
(2)
8
>
< x1 +
>
:
13
1
+ aa11
x3 = ab11
(l10 )
x2 + a0023 x3 = b002 (l200 )
b00
x3 = a003 (l3000 )
a12
x
a11 2
33
4. Factorisation LU
(k)
Supposons que dans lelimination de Gauss on nutilise aucune strategie de pivotage et que tous les pivots ak,k 6= 0.
Dans ce cas le passage de A(k) A(k+1) (1 k N 1) revient a` multiplier a` gauche la matrice A(k) par la matrice
N N :
0
1
1 0
0
B 0 1
C
0
B
C
B .. . .
.
.
..
.. C
B .
C
.
C
B
B .
C
(k)
ai,k
B .
C
(k)
0
1
0 C Avec li,k = (k)
E =B .
, pour k + 1 i N.
ak,k
B .
..
.. C
..
B .
C
B .
.
.
lk+1,k
. C
B
C
B .
.
.
.. C
.
..
..
.
@ ..
. . A
0
0 0
lN,k
0 1
La matrice A(N ) , qui est triangulaire superieure, est alors e gale a`
A(N ) = M A
avec M = E (N 1) E (N 2) ...E (1)
NQ
1
M est le produit de matrices triangulaires inferieures, donc M est aussi triangulaire inferieure, on a det(M ) =
det(E (i) ) =
i=1
0
B 0 1
C
0
B
C
B .. . .
.
.
.
..
.. C
..
C
B .
.
C
B
C
B .
.
B .
.
(k) 1
. 0 C
0
1
(E ) = B .
C
B .
.. C
..
..
..
B .
C
B .
. . C
.
.
lk+1,k
C
B
C
B .
..
..
..
@ ..
. 0 A
.
.
0
0 0
lN,k
0
..0 1
L = M 1 = (E (1) )1 (E (2) )1 .....(E (N 1) )1
0
1
0
0
B l2,1
1
0
B
B ..
..
..
..
B .
.
.
.
B
B .
..
B .
.
1
0
L=B .
B .
.
..
..
B .
.
B .
.
.
lk+1,k
.
B
B .
.
.
..
.
..
..
..
@ ..
.
lN,1
lN,k
lN,N 1 1
Exemple
0 :
1
5
2
1
6 2 A = A(1)
A=@ 5
4
2
1
0
1
0
1
1
0 0
5
2
1
E (1) = @ 1 1 0 A ; A(2) = @ 0 8 1 A
4
9
0 1
0 18
5
5 1
0 5
1
0
1 0 0
5
2
1
E (2) = @ 0 1 0 A ; A(3) = @ 0 8 1 A = U
9
9
0 20
1
0
0
4
xxiii
1
C
C
C
C
C
C
C
C
C
C
C
C
C
A
1
L=@ 1
4
5
0
1
9
20
1
0
0 A et A = LU
1
T HEOR E` ME 8. Soit A = (ai,j )1i,jN une matrice carree dordre N telle que les N sous-matrices de A :
0
1
a11 a1k
.
.
B .
.. C
B .
C
B
C,1 k N
C
B .
.
.. A
@ ..
ak1 akk
soient inversibles,
alors il existe une matrice triangulaire inferieure L = (lij )1iN ;1jN , avec
lii = 1 (1 i N ), et une matrice triangulaire superieure U telles que A = LU.
De plus cette factorisation est unique.
Si A = LU on peut resoudre : Ax = b en resolvant
(1) Lz = b
(2) U x = z
(2) Lz = b
(3) U x = z
(1) Ax = b
5x
=
7
>
2
3
4
>
:
x1 + x2 + 3x4 =
4
1
5. Mesure des erreurs
Lutilisation dun calculateur pour implanter les algorithmes e tudies conduira inevitablement a` des erreurs. Pour mesurer
celles-ci, nous devons mesurer la distance entre le vecteur representant la solution exacte x = (x1 , ..., xn ) et le vecteur x
=
(
x1 , ..., x
n ) representant la solution approchee. Nous pouvons, pour ce faire, utiliser la longueur usuelle de Rn i.e. :
n
X
1
kxk2 = {
x2i } 2
1
xxiv
10
B 7
B
@ 8
7
7
8
6
5
8
6
10
9
10
x1
7
B x2
5 C
CB
9 A @ x3
x4
10
1
32
C B 23 C
C
C=B
A @ 33 A
31
1
Remarque :
Si on Pose e(k) = x(k) x , pour k = 0, 1, ...
Comme x = Bx + c et x(k+1) = Bx(k) + c,on a
e(k) = Bx(k1) Bx = Be(k1) = ... = B k e(0)
lim x(k) = x lim e(k) = 0 lim B k e(0) = 0
k+
k+
k+
Donc
La methode iterative (3) est convergente si
lim B k v = 0, v
k+
ce qui e quivaut a`
lim ||B k v|| = 0, v
k+
6.2. Methode de Jacobi, de Gauss-Seidel. Ces methodes sont des cas particuliers de la methode suivante :
A = M N avec M inversible et assez simple. On aurait alors :
Ax = b M x = N x + b
x = M 1 N x + M 1 b
x = Bx + c,
avec B = M 1 N et c = M 1 b.
6.2.1. Methode de Jacobi : En posant A = D (E + F ),
M = D est la diagonale de A et N = E + F .
Ax = b Dx = (E + F )x + b.
On suppose que D est inversible, cest a` dire aii 6= 0, 1 i N.
La matrice
J = D1 (E + F ) = IN D1 A
est appeleela matrice de Jacobi.
x(0) donne,
(k+1)
(k+1)
A chaque e tape, on calcule les N composantes x1
, .., xN
(k+1)
Dx
= (E + F )x(k) + b, k 0
8
(k+1)
(k)
(k)
>
a1,1 x1
=
a1,2 x2 ... a1,N xN + b1
>
>
(k+1)
(k)
(k)
(k)
>
< a2,2 x2
= a21 x1 a2,3 x3 ... a2,N xN + b2
du vecteur x(k+1) :
..
>
>
.
>
>
:
(k+1)
(k) (k)
(k)
(k)
aN,N xN
= aN,1 x1 ... aN,N 1 xN 1 + bN
6.2.2. Methode de Gauss-Seidel. M est la partie triangulaire inferieure de A : M = D E et N = F.
On pourrait ameliorer la methode precedente en utilisant les quantites dej`a calculees, on calcule successivent les N composantes
(k+1)
(k+1)
, .., xN
du vecteur x(k+1) :
x1
8
(k)
(k)
(k+1)
>
=
a1,2 x2 ... a1,N xN + b1
a1,1 x1
>
>
>
< a2,2 x2(k+1) = a21 x1(k+1) a2,3 x3(k) ... a2,N x(k)
N + b2
..
>
>
.
>
>
:
(k+1)
(k+1)
(k+1)
. .. aN,N 1 xN 1 + bN
= aN,1 x1
aN,N xN
qui revient a` e crire :
Dx(k+1) = Ex(k+1) + F x(k) + b
ou encore
(D E)x(k+1) = F x(k) + b
m
x(k+1) = (D E)1 F x(k) + (D E)1 b
L1 = (D E)1 F est la matrice de Gauss-Seidel.
Elle est inversible si aii 6= 0, 1 i N.
Exemples : Etude de la convergence des methodes de Jacobi et de Gauss-Seidel dans le cas o`u la matrice du syst`eme lineaire
est :
0
1
4
1
0
4
1 A;
1- A1 = @ 1
0
1
4
Les deux 0
methodes convergent.
1
2 1 1
2- A2 = @ 1 2 1 A ;
1 1 2
la methode
de
Jacobi diverge
0
1 et La methode de Gauss-Seidel converge.
1 2 2
1 A.
3- A = @ 1 1
2 2
1
la methode de Jacobi converge et la methode de Gauss-Seidel diverge.
subsectionconvergence des methodes de Jacobi, de Gauss-Seidel
T HEOR E` ME 10. Soit A une matrice symetrique definie positve.
On suppose que
A = M N, avec M inversible.
Si la matrice symetrique
MT + N
xxvi
1
0
..
..
.
.
..
..
.
.
0
0
1
1- Pour tout u RN ,
uT Au = u21 + u2N +
C
0 C
C
C
1 A
2
N
P
(ui ui1 )2
i=2
> 0, si u 6= 0.
M T + N est definie positive = (M 1 N ) < 1.
xxvii
CHAPITRE 4
Interpolation
1. Introduction
Nous abordons dans ce chapitre un nouveau type de probl`eme, faisant intervenir la notion dapproximation dune fonction.
Exemples :
1) Dapres la Formule de Taylor a` lordre 5 de la fonction sin(x), on a :
x V ois(0), sin(x) ' x
x3
x5
x6
+
+ sin(6) ()
3!
5!
6!
(0.1)
= 9. 983 3 102
3!
5
(0.1)3
+ (0.1)
= 9. 983 3
3!
5!
2
Si N = 3, sin(0.1) = (0.1)
Si N = 5, sin(0.1) = 0.1
102
Avec le logiciel Maple on a : sin(0.1) = 9. 983 3 10
R1
2
2) Avec les cours danalyse I et II, on ne connait pas dexpression explicite de I = 0 ex dx
Cependant dapres :
R1
2
1
(1)
La formule du trap`eze I = 0 ex dx ' f (0)+f
= 1+e2 = 0.683 94
2
R 1 x2
1
dx ' 16 f (0) + 4f ( 12 ) + f (1) = 16 (1 + 4e 4 + e1 ) = 0.747 18
La formule de Simpson : I = 0 e
R 1 x2
Avec le Logiciel Maple, on a : 0 e
dx = 0.746 82
On ne connait pas a` ce niveau du cours lexpression explicite de lerreur.
La notion dapproximation dune fonction consiste a` remplacer un probl`eme donne par un probl`eme voisin.
La question fondamentale serais de savoir la qualite de cette approximation.
Remarque : En pratique la fonction f est connue explicitement, ou seulement par ses valeurs en quelques points.
La notion dinterpolation polynomiale est la facon la plus simple dobtenir une telle approximation.
Theor`eme : Soit f une fonction continue dans [a, b] IR, alors pour tout > 0 donne, il existe un polynome Pn de degre n
tel que
M ax |f (x) Pn (x)| <
x[a,b]
(1) Linterpolation polynomiale est un outil pour la construction des methodes dintegration numerique ou des methodes
dapproximation des e quations differentielles.
(2) Linterpolation par les fonctions splines est largement utilisee dans tous les programmes de dessin assiste par ordinateur,
conception assistee par ordinateur ou plus generalement de graphisme.
(3) Les series de Fourier et leur analogue discret, la transformation de Fourier discr`ete : Elles sont un moyen tr`es utile pour
lapproximation des fonctions periodiques.
Remarque :
Pour les e quations aux derivees partielles, la methode des e lements finis, un des outils de base de lingenierie moderne,
utilise de facon essentielle linterpolation multi-dimensionnelle
Une facon naturelle dapprocher les fonctions periodiques est dutiliser les polynomes trigonometrique.
Nous allons nous limiter a` lintroduction de linterpolation Polynomiale. Elle consiste a` determiner un polynome Pn (x) de
degre n qui puisse remplacer lors des applications la fonction f (x).
De plus, cest un outil efficace pour :
Calculer, pour x donne, une approximation de f (x) en calculant Pn (x)
Construire :
(1) des methodes dintegration numerique
xxix
Il existe plusieurs techniques pour calculer Pn (x). Les plus connues sont celles de Lagrange et de Newton-Cotes. Nous allons
en fait le faire de deux facons :
(1) Une methode directe basee sur la resolution dun systeme lineaire
(2) Une methode iterative due a` Lagrange.
(3) Une methode iterative dHermite.
Nous terminerons ce chapitre par :
(1) Une br`eve discution sur lerreur dinterpolation polynomiale
(2) Une br`eve description du principe de la methode iteree de Newton-Cotes
Ecrivons
explicitement Pn (xi ) = yi .
n1
+ ... + a1 xi + a0 = yi ,
an xn
i + an1 xi
i = 0, ..., n
xn
xn1
x0
0
0
n
B x1 xn1
x1
1
B
B .
.. . .
..
.
@ .
.
.
.
n1
xn
x
x
n
n
n
Matrice de type Vandermonde. Son determinant est
1
1
..
.
1
det =
10
CB
CB
CB
A@
an
an1
..
.
a0
C B
C B
C=B
A @
y0
y1
..
.
yn
1
C
C
C
A
(xi xj )
i<j
On a det 6= 0 si tous les xi sont distincts. On peut donc trouver un unique vecteur de coefficients (an , ..., a0 ) resolvant le
probl`eme.
3. Une methode iterative : Methode de Lagrange
3.1. Interpolation Lineaire : On consid`ere deux points (x0 , y0 ), (x1 , y1 ) avec :
x0 6= x1
y0 = f (x0 ) et y1 = f (x1 ).
Pour determiner le polynome P1 (x) = ax + b) qui passe par deux points distincts (x0 , y0 ), (x1 , y1 ) (x0 6= x1 ). On peut :
1) Resoudre le syst`eme dequations :
ax0 + b = y0
ax1 + b = y1
do`u
xxx
a
b
=
=
y0
(y1 y0 )
(x1 x0 )
x0 y1
ax0 = x1xy10 x
0
On a :
P1 (x) =
(y1 y0 )
x1 y0 x0 y1
x+(
)
(x1 x0 )
x1 x0
et
P1 (x0 ) = y0 et P1 (x1 ) = y1
2) Poser
x x1
x0 x1
x x0
L1 (x) =
x1 x0
L0 (x) =
On a :
Lk (xi ) =
0
1
si
si
i 6= k
i=k
Ainsi,
P1 (x) = y0 L0 (x) + y1 L1 (x)
(x x1 )
x x0
+ y1 (
)
(x0 x1 )
x1 x0
(y1 y0 )
x1 y0 x0 y1
=
x+(
)
(x1 x0 )
x1 x0
= y0
On a :
P1 (x0 ) = y0 et P1 (x1 ) = y1
car
Lk (xi ) =
0
1
si
si
i 6= k
i=k
Ces deux procedes determinent e videmment le meme polynome de degre 1 (la meme droite).
Si maintenant, on veut determiner le polynome de degre 2 qui passe par trois (3) points distincts alors :
i) la premi`ere expression de P1 (x) est inadequate (il faut refaire les calculs)
ii) la dexi`eme expression se prete assez facilement a` une generalisation par recurrence.
Exemple :
Determiner le polynome dinterpolation P1 (x) de degre 1 tel que
P1 (xi ) = f (xi ), i = 0, 1
avec yi = f (xi ) i = 0, 1 , (x0 , y0 ) = (0, 1), (x1 , y1 ) = (2, 5)
Dapres la methode de Lagrange,
P1 (x) = y0 L0 (x) + y1 L1 (x)
(x x1 )
x x0
+ y1 (
)
(x0 x1 )
x1 x0
(x 2)
(x 0)
=1
+5
(0 2)
(2 0)
(x 2)
(x)
=1
+5
= 2x + 1
(2)
(2)
= y0
xxxi
3.2. Interpolation parabolique. On considere trois points (x0 , y0 ), (x1 , y1 ) et (x2 , y2 ) avec :
x0 6= x1 ,et x0 6= x2 et x1 6= x2
y0 = f (x0 ), y1 = f (x1 ) et y2 = f (x2 ).
Pour determiner le polynome P2 (x) de degre 2, dequation y = ax2 +bx+c qui passe par trois points distincts (x0 , y0 ), (x1 , y1 )
et (x2 , y2 ), il suffit de poser :
(x x1 )(x x2 )
(x0 x1 )(x0 x2 )
(x x0 )(x x2 )
L1 (x) =
(x1 x0 )(x1 x2 )
(x x0 )(x x1 )
L2 (x) =
(x2 x0 )(x2 x1 )
L0 (x) =
On a :
Lk (xi ) =
0
1
si
si
i 6= k
i=k
Ainsi
P2 (x) = y0 L0 (x) + y1 L1 (x) + y2 L2 (x)
= y0
y1
(x x1 )(x x2 )
+
(x0 x1 )(x0 x2 )
(x x0 )(x x2 )
+
(x1 x0 )(x1 x2 )
y2
(x x0 )(x x1 )
(x2 x0 )(x2 x1 )
= x2 + 1
Remarque :
(1) Pour calculer P2 (x) ,on na pas utilise le polynome P1 (x) calcule dans lexemple precedent et pourtant on avait deux
points communs.
(2) Li (x), i = 0, 1, 2 sont des polynomes de degre 2 :
L0 (x) =
L1 (x) =
L2 (x) =
(x1)(x2)
= 12 (x 1) (x 2) = 12 x2
(1)(2)
(x)(x2)
= x (x 2) = x2 + 2x
(1)(1)
(x)(x1)
= 21 x (x 1) = 12 x2 12 x
(2)(1)
xxxii
32 x + 1
(x xj )
(xk xj )
Lk (x) =
j=0 j6=k
Lk (xi ) =
0
1
i 6= k
i=k
si
si
Donc
P (x) = y0 L0 (x) + y1 L1 (x) + ... + yn Ln (x) =
n
X
yk Lk (x)
k=0
i = 0, ..., n.
On suppose que f (x) = 3 x et que (x0 , y0 ) = (0, 0), (x1 , y1 ) = (1, 1) et (x2 , y2 ) = (8, 2)
1) Determiner le polynome P2 (x) dinterpolation polynomiale qui passent par les points (xi , yi )i=0,2
Dapres la methode de Lagrange,
P2 (x) = y0 L0 (x) + y1 L1 (x) + y2 L2 (x)
(x x1 )(x x2 )
(x0 x1 )(x0 x2 )
(x x0 )(x x2 )
(x x0 )(x x1 )
+ y1
+ y2
(x1 x0 )(x1 x2 )
(x2 x0 )(x2 x1 )
(x 1)(x 2)
(x 0)(x 8)
(x 0)(x 1)
=0
+1
+2
(0 1)(0 2)
(1 0)(1 8)
(8 0)(8 1)
x(x 8)
x(x 1)
3 2 31
P2 (x) = 1
+2
= x +
x
7
56
28
28
= y0
3
(8)2 + 31
8=2
On a bien P2 (0) = 0, P2 (1) = 1 et P2 (8) = 28
28
x
0.5
0.95
1
1.5
3
f (x)
0.793 7
0.983 05
1
1. 144 7
1. 442 2
3 2
P2 (x) = 28
x +
0.526 79
0.955 09
1
1. 419 6
33
= 2. 357 1
14
31
x
28
Remarque :
1) En pratique, on utilise linterpolation polynomiale avec des polynomes de degre n assez grand ou linterpolation polynomiale par morceaux. Ainsi dans lexemple precedent, il faut augmenter le nombre de points dinterpolations.
2) Si les valeurs yk sont des valeurs experimentales. Linterpolation polynomiale est une technique peu appropriee pour de
telles situations. Les polynomes de degre e leve sont sensibles a` la perturbation des donnees.
3) La methode de Lagrange sadapte mal au changement du nombre de points (xi , yi )i . On ne peut utiliser les coefficients de
Lagrange si on passe de n a` (n + 1) points.
xxxiii
4) Phenom`ene de RUNGE (fonction de Runge) : Linterpolation polynomiale ne fournit pas une bonne approximation de la
1
fonction f (x) = 1+25x
2 . Si on augmente le nombre de points dinterpolation le resultat devient plus mauvais.
4. Interpolation Iteree de Newton-Cotes
On choisit n + 1 points x0 , x1 , ..., xn .
On calcule y0 = f (x0 ), ..., yn = f (xn ) .
On cherche un polynome de degre n tel que Pn (xi ) = yi , i = 0, ..., n .
LInterpolation Iteree de Newton-Cotes est un procede iteratif qui permet de calculer le polynome dinterpolation Pn (x) de
degre n base sur (n + 1) points (xi , yi )i=0,n a` partir du polynome dinterpolation P(n1) (x) de degre (n 1) base sur n points
(xi , yi )i=0,(n1) , en posant :
Pn (x) = P(n1) (x) + C(x), n 1
avec
C(x) = an (x x0 )(x x1 )...(x x(n1) )
an =
n
X
k=0
f (xk )
(xk x0 )...(xk x(k1) )(xk x(k+1) )...(xk xn )
f [x, y]
f [x] f [y]
xy
on a
f (y)
f (x)
+
xy
yx
=
=
f [x, y] f [y, z]
xz
f (x)
f (y)
+
(x y) (x z)
(y x) (y z)
f (z)
(z x) (z y)
et plus generalement :
f [x1 , x2 , ..., xn ] =
n
X
i=1
f (xi )
n
Q
(xi xk )
k=1
k6=i
Remarque :
Les differences divisees sont independants de lordre des points.
Quel est le lien entre f (x) et les differences divisees ?
Soit x un point autre que les n + 1 points xi , i = 1, ..., n. On a
f [x, x0 ]
f (x)
f (x) f [x0 ]
x x0
d0 o`
u
f [x0 ] + (x x0 ) f [x, x0 ]
xxxiv
mais comme
f [x, x0 , x1 ] =
f [x, x0 ] f [x0 , x1 ]
x x1
alors
f (x) = f [x0 ] + (x x0 ) f [x0 , x1 ] (x x0 )(x x1 )f [x, x0 , x1 ]
en continuant ainsi de proche en proche on obtient :
f (x)
f [x0 ] + (x x0 ) f [x0 , x1 ]
on verifie que
f (x) = Pn (x) + L(x)f [x, x0 , ..., xn ]
o`u Pn (x) est un polynome de degre n tel que Pn (xi ) = f (xi ), pour i = 0, ..., n. Cest donc le polynome dinterpolation de
Lagrange, on lappelle le polynome de Newton.
5. Erreur dInterpolation polynomiale :
Lerreur commise lors dune interpolation est une question fondamentale en analyse numerique :
elle renseigne a` priori sur la nature de cette erreur
elle fournit des informations sur les termes qui y participent
elle permet davoir un ordre de grandeur de lerreur commise.
Theor`eme :
Soient f une fonction de classe C n+1 dans I et , (xi )i=0,n (n + 1) points distincts dans I avec x0 < x1 < ... < xn
Alors pour tout x [x0 , xn ] , il existe = (x) tel que
f (x) Pn (x) =
f (n+1) ()
f (n+1) ()
(x x0 )(x x1 )...(x xn ) =
L(x)
(n + 1)!
(n + 1)!
n
X
yk Lk (x)
k=0
Lk (x) =
n
Y
j=0 j6=k
(x xj )
(xk xj )
f (n+1) ()
L(x) = L(x).f [x, x0 , ..., xn ].
(n + 1)!
Exemple :
Determiner lerreur dinterpolation polynomiale dans le cas de linterpolation parabolique
On approche la fonction f (x) par la parabole passant par les points (x0 , y0 ) = (0, 1), (x1 , y1 ) = (1, 2) et (x2 , y2 ) = (2, 5).
Le polynome dinterpolation P2 (x) de degre 2 tel que P2 (xi ) = f (xi ), i = 0, 1 et 2
avec yi = f (xi ) i = 0, 1 et 2 , (x0 , y0 ) = (0, 1), (x1 , y1 ) = (1, 2) et (x2 , y2 ) = (2, 5)
Dapres la methode de Lagrange,
xxxv
(x 1)(x 2)
(x)(x 2)
(x)(x 1)
+2
+5
(1)(2)
(1)(1)
(2)(1)
= x2 + 1
Dapr`es le theor`eme precedent,
f (3) ()
(x x0 )(x x1 )(x x2 )
3!
(3)
f ()
x(x 1)(x 2)
=
3!
f (x) P2 (x) =
x(x 1)(x 2)
6
6.4 102 M.
|f (x) P2 (x)|
3 3
;
3
do`u 16 u(x ) =
1 3 3
6
3
3 3
3
3 3
1
2
= 0.0
3
li1 (x) = (x xi )
n
Q
s=0
s6=i
s 2
( xxx
) , i = 0, ..., n
i xs
et en posant
Li1 (x) = li1 (x), pour i = 0, ..., n,
0
Li0 (x) = li0 (x) li0 (xi)Li1 (x).
Soit f une fonction de classe C 2n+2 sur un intervalle I contenant les points deux a` deux distincts xi ; i = 0; ...; 2n + 1, ranges
dans lordre croissant. Alors pour tout x [x0 ; x2n+1 ] il existe (au moins) un reel x dans ce meme intervalle tel que :
(2n+1)
Concernant lerreur dinterpolation, on a lestimation f (x) H2n+1 (x) = f 2n+1!(x ) N (x), o`u x I(x; x0 , ..., xn ) et N est
le polynome de degre (2n+1) defini par 2n+1 (x) = (x x0 )2 (x x1 )2 ...(x xn )2 .
xxxvi
6.1.1. Interpolation dHermite : Exemple. Soit f une fonction de classe C 2 sur lintervalle I = [0 ; 1]. Soit H(x) un polynome
de degre 3 tel que :
H(0) = f (0)
H(1) = f (1)
H 0 (0) = f 0 (0)
H 0 (1) = f 0 (1)
Determinons H. En appliquant les formules , on trouve
H(x) = f (0)(1 x)2 (1 + 2x) + f (1)x2 (3 2x) + f 0 (0)x(1 x)2 + f 0 (1)x2 (x 1)
z i xi
w i yi
z 1 = x1
w 1 = y1
di =
wi+1 wi
zi+1 zi
ddi =
di+1 di
zi+2 zi
d1 = y10
z 2 = x1
w 2 = y1
d2 =
z 3 = x2
dd1 =
d2 d1
z3 z1
dd2 =
d3 d2
z4 z2
w3 w2
z3 z2
w 3 = y2
ddi+1 ddi
zi+3 zi
ddd1 =
d3 = y20
z 4 = x2
dddi =
w 4 = y2
xxxvii
dd2 dd1
z4 z1
CHAPITRE 5
Derivation et Integration
1. Introduction :
Si f est une fonction derivable sur [a, b], la derivee en c ]a, b[ est definie par :
f (c)
h
o`u f (c) = f (c + h) f (c)
f 0 (c) = lim
h0
Si f est une fonction continue sur [a, b], lintegrale de f sur [a, b] est definie par
Z b
f (x)dx = lim R(h)
h0
o`u R(h) =
n
X
f (a + kh).h
k=1
ba
.
n
sin x
ou
x
p
Il existe des fonctions simples comme
cos2 x + 3 sin2 x qui nont pas de primitive connue.
f peut-etre connue seulement en quelques points et sa formule est inconnue (exp : resultats experimentaux,...),
Comment peut-on integrer de telles fonctions entre a et b?
Si P (x) est une approximation de f dans lintervalle [a, b], nous nous proposons detudier les approximations :
f 0 (y) P 0 (y)
y [a, b]
et
b
Z
f (x)dx
P (x)dx.
a
2. Derivation.
2.1. Derivee premi`ere. La derivation numerique nous permet de trouver une estimation de la derivee ou de la pente dune
fonction, en utilisant seulement un ensemble discret de points. Soit f une fonction connue seulement par sa valeur en (n + 1) points
donnes xi i = 0, 1, ..., n distincts.
On suppose connue la valeur de la fonction en xi1 , xi et xi+1 ; on pose f (xi1 ) = yi1 , f (xi ) = yi et f (xi+1 ) = yi+1 .
Si on suppose que lespace entre deux points successifs est constant, donc on pose h = xi xi1 = xi+1 xi .
Alors les formules standarts en deux points sont :
Formule de difference progressive :
f 0 (xi )
f (xi+1 ) f (xi )
yi+1 yi
=
.
xi+1 xi
xi+1 xi
f 0 (xi )
f (xi ) f (xi1 )
yi yi1
=
.
xi xi1
xi xi1
f (xi+1 ) f (xi1 )
yi+1 yi1
=
.
xi+1 xi1
xi+1 xi1
Exemple :
Pour illustrer les trois formules, considerons les donnees suivantes :
(x0 , y0 ) = (1, 2); (x1 , y1 ) = (2, 4); (x2 , y2 ) = (3, 8); (x3 , y3 ) = (4, 16) et (x4 , y4 ) = (5, 32).
Nous voulons estimer la valeur de f 0 (x2 ).
xxxix
(1) Progressive :
(2) Regressive :
(3) Centrale :
f 0 (x)
0
f (x)
f 0 (x)
f (x3 )f (x2 )
x3 x2
f (x2 )f (x1 )
x2 x1
f (x3 )f (x1 )
x3 x1
= 8.
84
32
= 4.
164
42
= 6.
168
43
Les donnees ont e te calcule pour la fonction f (x) = 2x . f 0 (x) = 2x ln(2) et pour x = 3 f 0 (3) = 23 ln(2) = 5.544.
Remarque :
En utilisant la formule de Taylor :
f (x + h) = f (x) + hf 0 (x) +
h2 00
f ().
2
x x+h
Formule progressive :
h = xi+1 xi
f (xi+1 ) f (xi )
h
f 00 ()
h
2
xi xi+1
f 0 (xi ) =
f (xi ) f (xi1 )
h
+ f 00 ()
h
2
xi
f (xi ) =
xi1
La formule de difference centrale de la derivee en xi peut e tre trouvee en utilisant la formule de Taylor dordre 3 avec
h = xi+1 xi = xi xi1
h2 00
f (xi ) +
2
h2 00
f (xi1 ) = f (xi ) hf 0 (xi ) +
f (xi )
2
xi 1 xi+1 , xi1 2 xi
f (xi+1 ) = f (xi ) + hf 0 (xi ) +
h3 000
f (1 )
3!
h3 000
f (2 )
3!
si on suppose que f 000 est continue sur [xi1 , xi+1 ] on peut ecrire la formule suivante :
f (xi+1 ) f (xi1 )
h2 000
+
f ()
2h
6
xi+1
f 0 (xi ) =
xi1
2
lerreur est h6 f 000 () donc en O(h2 ). La formule de difference centrale peut aussi e tre trouvee a` partir du polynome dinterpolation
de Lagrange en 3 points.
On peut interpoler les donnees par un polynome au lieu dutiliser la droite, nous obtenons alors les formules de difference qui
utilisent plus de deux points. On suppose que le pas h est constant.
Formule de difference progressive utilisant trois points :
f (xi+2 ) + 4f (xi+1 ) 3f (xi )
xi+2 xi
Formule de difference regressive utilisant trois points :
f 0 (xi )
f 0 (xi )
2.2. Formule generale en trois points. La formule dapproximation en 3 points de la derivee premi`ere, basee sur le polynome
dinterpolation de Lagrange, nutilise pas des points e quidistants.
Etant donne trois points (x1 , y1 ); (x2 , y2 ) et (x3 , y3 ) avec x1 < x2 < x3 , la formule suivante permet dapprocher la derivee
en un point x [x1 , x3 ]. Les derivees aux points xi sont les suivantes :
2x1 x2 x3
y1 +
(x1 x2 )(x1 x3 )
x1 x3
x1 x2
y2 +
y3 ;
(x2 x1 )(x2 x3 )
(x3 x1 )(x3 x2 )
x2 x3
f 0 (x2 ) =
y1 +
(x1 x2 )(x1 x3 )
2x2 x1 x3
x2 x1
y2 +
y3 ;
(x2 x1 )(x2 x3 )
(x3 x1 )(x3 x2 )
x3 x2
f 0 (x3 ) =
y1 +
(x1 x2 )(x1 x3 )
x3 x1
2x3 x2 x1
y2 +
y3 ;
(x2 x1 )(x2 x3 )
(x3 x1 )(x3 x2 )
Le polynome de Lagrange est donnee par
f 0 (x1 ) =
Lapproximation de la derivee premi`ere est donnee par f 0 (x) P 0 (x), qui peut secrire
P 0 (x) = L01 (x)y1 + L02 (x)y2 + L03 (x)y3
o`u
2x x2 x3
(x1 x2 )(x1 x3 )
2x x1 x3
L02 (x) =
(x2 x1 )(x2 x3 )
2x x1 x2
L03 (x) =
(x3 x1 )(x3 x2 )
L01 (x) =
donc
f 0 (x) =
2x x2 x3
2x x1 x3
2x x1 x2
y1 +
y2 +
y3 .
(x1 x2 )(x1 x3 )
(x2 x1 )(x2 x3 )
(x3 x1 )(x3 x2 )
2.3. Derivees dordre superieur. Les formules de derivees dordre superieur, peuvent e tre trouvees a` partir des derivees du
polynome de Lagrange ou en utilisant les formules de Taylor.
Par exemple, e tant donne 3 points xi1 , xi , xi+1 e quidistants, la formule de la derivee seconde est donnee par :
1
f 00 (xi ) = 2 [f (xi+1 ) 2f (xi ) + f (xi1 )]
h
lerreur est en O(h2 ).
Derivee seconde a` partir du polynome de Taylor.
2
3
4
f (x + h) = f (x) + hf 0 (x) + h2 f 00 (x) + h3! f 000 (x) + h4! f (4) (1 )
2
3
4
f (x h) = f (x) hf 0 (x) + h2 f 00 (x) h3! f 000 (x) + h4! f (4) (2 )
x 1 x + h et x h 2 x.
f 00 (x) '
f (x + h) + f (x h) 2f (x)
h2
Pour obtenir les formules de la troisi`eme et la quatri`eme derivee, on prend une combinaison lineaire des developpement de
Taylor, pour f (x + 2h), f (x + h), f (x h) et f (x 2h).
La table suivante donne differentes formules centrales toutes en O(h2 ) :
1
f 0 (xi ) '
[f (xi+1 ) f (xi1 )]
2h
1
f 00 (xi ) ' 2 [f (xi+1 ) 2f (xi ) + f (xi1 )]
h
1
f 000 (xi ) '
[f (xi+2 ) 2f (xi+1 ) + 2f (xi1 ) f (xi2 )]
2h3
1
f (4) (xi ) ' 4 [f (xi+2 ) 4f (xi+1 ) + 6f (xi ) 4f (xi1 ) + f (xi2 )] .
h
En utilisant les polynomes dinterpolation de Lagrange les derivees dordre p sont calculees par :
n
X
f (p) ()
Ai ()f (xi )
i=0
o`u
(p)
Ai () = Li () p n
n
X
i=0
n
X
Ai ()xki = 0 0 k p 1
Ai ()xki = k(k 1)...(k p + 1)kp
p k n.
i=0
Remarque :
: La fomule est exacte pour les polynomes de degres n.
: Le syst`eme lineaire donnant les Ai () a un determinant de type Vandermonde different de zero si les xi sont distincts.
: Les Ai () sont independants de f et peuvent e tre calcules une fois pour toutes.
2.4. Etude de lerreur commise. Dapres le chapitre precedent, si f est connue en (n + 1) points xi , i = 0, ..., n alors
f (x) = Pn (x) + e(x), o`u e(x) est lerreur dinterpolation. En derivant on obtient
f 0 (x) = Pn0 (x) + e0 (x)
=
i=n
X
i=0
1
d
(n+1)
L(x).f
(x ) =
(L(x).f [x0 , ..., xn , x])
(n + 1)!
dx
1
1
d (n+1)
=
L0 (x).f (n+1) (x ) +
L(x).
f
(x )
(n + 1)!
(n + 1)!
dx
d
et e (x) =
dx
0
Remarque
Lerreur de derivation est nulle si f est un polynome de degre inferieur ou e gale a` n.
Si on prend pour x un point xi , le second terme de la derni`ere somme sannule, sinon il faut connatre
qui est difficile car la fonction x x e tant inconnue.
On peut donner une forme si f est n + 2 fois derivable en utilisant la notion de difference. En effet
d (n+1)
d
f
(x ) =
(f [x0 , ..., xn , x])
dx
dx
f [x0 , ..., xn , x + h] f [x0 , ..., xn , x]
= lim
h0
h
= lim f [x0 , ..., xn , x, x + h]
h0
= lim
h0 (n
1
f (n+2) (x,h ).
+ 2)!
d
dx
f (n+1) (x ) , ce
Rb
a
f (x)dx.
3.1. Formules fermees. On appelle ainsi les formules quand la fonction f est continue sur lintervalle [a, b].
Les points dinterpolation xi verifient a = x0 < x1 < ... < xn1 < xn = b.
La formule des rectangles est une formule dite a` un point x0 = a. Le polynome dinterpolation associe est P0 (x) = f (a) et
L(x) = x a pour tout x appartenant a` [a, b]. Do`u
I(f ) ' I(P0 ) = f (a)(b a).
Rb
Linterpretation graphique consiste donc a` remplacer a f (x)dx par laire du rectangle de base [a, b] et de hauteur f (a).
La formule des
a` 2 points : x0 = a et x1 = b. Le polynome de Lagrange associe a` ces deux points
trap`
ezes est une
formule
xa
est P1 (x) = f (a) xb
+
f
(b)
.Do`
u
ab
ba
b
Z
I(f ) ' I(P1 ) =
P1 (x)dx =
a
f (a) + f (b)
(b a).
2
L0 (x)dx =
,
(a x1 )(a b)
6
a
Z b
4(b a)
(x a)(x b)
,
L1 (x) =
L1 (x)dx =
(x1 a)(x1 b)
6
a
Z b
(x x1 )(x a)
(b a)
L2 (x) =
,
L2 (x)dx =
(b x1 )(b a)
6
a
On tire donc la formule suivante :
(b a)
a+b
I(f ) ' I(P2 ) =
f (a) + 4f (
) + f (b) .
6
2
On appelle ainsi les formules quand la fonction f est continue sur lintervalle ]a, b[. Les points dinterpolation xi verifient
a < x0 < x1 < ... < xn1 < xn < b.
Il en existe une infinite.
Une a` 1 points avec x0 = a+b
:
2
a+b
)
I(f ) ' (b a)f (
2
Cette formule est exacte pour tout polynome de degre 1.
et x1 = a+2b
:
Une a` 2 points avec x0 = 2a+b
3
3
ba
2a + b
2b + a
I(f ) '
f
+f
.
2
3
3
Cette formule est exacte pour tout polynome de degre 1.
Une a` 3 points avec x0 = 3a+b
et x1 = a+b
et x2 = 3b+a
:
4
2
4
ba
3a + b
a+b
a + 3b
I(f ) '
4f
+ 2f
2f
.
6
4
2
4
Cette formule est exacte pour tous les polynomes de degre 2.
3.2. Etude generale de lerreur commise. Estimer lerreur E(f ) = I(f ) I(Pn ) avec precision ? ?.
Si f est suffisamment derivable, on a
Z b
1
E(f ) = I(f Pn ) =
f (n+1) (x )L(x) dx.
(n + 1)!
a
Theor`eme : Supposons que E(f ) = 0 pour les polynomes de degre au plus n et que la fonction f C n+1 ([a, b]). On dit alors
que la methode est dordre n + 1. Si on pose Mn+1 = max | f (n+1) (x) |, Une premi`ere estimation de lerreur est
x[a,b]
| E(f ) |
1
Mn+1
(n + 1)!
xliii
| L(x) | dx.
a
Theor`eme : En plus des hypoth`eses du Th precedent, on suppose que le polynome L(x) ne change pas de signe sur [a, b], alors en
utilisant le Th de la moy`enne pour E(f ), on obtient
Z b
1
E(f ) =
f (n+1) ()
L(x)dx.
(n + 1)!
a
[a, b]
En utilisant ce dernier Theor`eme on peut estimer les erreurs des methodes vues ci-dessus.
Pour la formule du rectangle on a :
Z b
(b a)2
[a, b]
E(f ) = f 0 ()
(x a)dx = f 0 ()
2
a
cette methode est dordre 1.
Pour la formule du trap`eze on a :
E(f ) =
1 00
f ()
2
(x a)(x b)dx =
a
f 00 ()
(b a)3
12
5
f (4) () b a
,
90
2
Exemple :
R1
2
I = 0 ex dx, a = 0,
a+b
2
Z b
n1
X Z xk+1
I(f ) =
f (x)dx =
f (x)dx
a
n1
X
k=0
k=0
xk
f (xk ) + f (xk+1 )
2
h3 00
f (k ) ,
12
k=0
En appliquant le Th des valeurs intermediaires, on peut ree crire lerreur sous la forme
(b a) 00
nh3 00
f () =
f ()h2 .
12
12
Ceci nous donne la formule du trap`eze composee pour laquelle lapproximation est donnee par :
"
#
n1
X
h
Tn (f ) =
f (a) + 2
f (a + kh) + f (b)
2
E(f ) =
k=1
xliv
et lerreur par
(b a) 00
f ()h2 .
12
Supposons que n soit pair, groupant les intervalles 2 a` 2 et appliquant la formule de Simpson sur [xi , xi+2 ], on obtient
2
3
X
X
h4
n f (4) () 5
I(f ) =
h .
f (a) + 4
f (a + kh) + 2
f (a + kh) + f (b)5
3
2 90
ET (f ) =
k impair
k pair
Ceci nous conduit a` la formule de Simpson composee pour laquelle lapproximation est donnee par
2
3
X
X
h4
Sn (f ) =
f (a) + 4
f (a + kh) + 2
f (a + kh) + f (b)5
3
k impair
k pair
et lerreur par
ES(f ) = f (4) ()
(b a) 4
h .
180
R1
2
Exemple : Determiner 0 ex dx.
Si n designe le nombre des intervalles utilises.
n
2
4
8
16
32
Tn (f )
.73137
.74298
.74658
.74676
.74680
ET (f )
.015
3.84 103
9.58 104
1.39 104
5.98 105
Si nous desirons obtenir 6 decimales exactes, il nous faut determiner h tel que
max | f 00 () |
(1)
01
1
;
n
n2
2
h2
5 107 ,
12
1
1
max | f 00 () |
.
12 01
5 107
or f 00 (x) = ex (4x2 2) et f 000 (x) = ex 4x(3 2x2 ). Puisque f 000 (x) ne change pas de signe sur [0; 1] ,
106
,
3
n > 578.
Remarque Dans le choix de la precision demandee, il faut tenir compte des erreurs darrondi et de laccumutation des erreurs
xlv