Vous êtes sur la page 1sur 5

Chapitre Analyse numérique COURS Yassine Hachaı̈chi

Interpolation polynômiale

Position du problème Etant donnés x0 < x1 < · · · < xn , n + 1 valeurs réelles, et (y0 , · · · , yn ) ∈ Rn+1 .
On veut construire un polynôme Pn ∈ Rn [X] dont la courbe passe par les points (xi , yi )0≤i≤n , c’est-à-dire, tel
que :
Pn (xi ) = yi , ∀i ∈ {0, · · · , n}

Exemples Soit x0 < x1 , deux valeurs réelles, et y0 , y1 ∈ R, on cherche la droite qui passe par les points,
(x0 , y0 ), (x1 , y1 ), l’équation de cette droite est :
y1 − y0
P1 (x) = (x − x0 ) + y0
x1 − x0
Soient x0 < · · · < xn ∈ R et f : [x0 , xn ] → R. On essaye de construire un polynôme d’approximation de f sur
l’intervalle [x0 , xn ].
On dit que Pn ∈ Rn [X] est le polynôme d’interpolation de f (au nœuds) en x0 , · · · , xn si et seulement si :

Pn (xi ) = f (xi ), ∀i ∈ {0, · · · , n}

1 Résolution matricielle (Vandermonde)


Soient x0 < x1 < · · · < xn , n + 1 valeurs réelles, et (y0 , · · · , yn ) ∈ Rn+1 .
∑n
Posons Pn (x) = ai xi , chercher a0 , · · · , an ∈ R tel que Pn (xi ) = yi , ∀i ∈ {0, · · · , n} équivaut à résoudre le
i=0
système :


 a0 + a1 x0 + a2 x20 + · · · + an xn0 = y0


 a0 + a1 x1 + a2 x21 + · · · + an xn1 = y1
 .. ..

 . .


a0 + a1 xn + a2 x2n + · · · + an xnn = yn
C’est un système de la forme V A = Y avec V (x0 , · · · , xn ) la matrice de Vandermonde :
 
1 x0 · · · xn0
 
 1 x1 · · · xn1 
V (x0 , · · · , xn ) = 
 .. .. .. .. 

 . . . . 
1 xn · · · xnn
Le déterminant de cette matrice est :

n−1 ∏
n ∏ ∏
n i−1
Det(V (x0 , · · · , xn )) = (xi − xj ) = (xi − xj )
j=1 i=j+1 i=2 j=1

Puisque x0 < x1 < · · · < xn , on a alors Det(V ) ̸= 0, d’où c’est un système de Cramer qui nous garantit
l’existence et l’unicité de AT = (a0 , · · · , an ) ∈ Rn+1 tel que V A = Y . AT = (a0 , · · · , an ) sont les coordonnées de
Pn dans la base canonique de Rn [X].

1
La résolution de système par une méthode directe (Pivot de Gauss, ou décomposition P A = LU ) est de l’ordre
de 32 n3 .

2 Méthode de Lagrange
On définit les polynômes d’interpolation de Lagrange aux point x0 < x1 < · · · < xn
∏ X − xi
Lk (x) = , k = 0, · · · , n
xk − xi
0≤i̸=k≤n

Cette famille de polynômes vérifie :


1. Pour tout k = 0, · · · , n, on a Deg(Lk ) = n.
2. Pour tout i, j = 0, · · · , n, on a Li (aj ) = δij = 0 si i ̸= j et = 1 si i = j.
3. (L0 , L1 , · · · , Ln ) est une base de Rn [X].
∑n
4. Le polynôme Pn (X) = yk Lk (X) ∈ Rn [X] vérifie : Pn (xi ) = yi , ∀i ∈ {0, · · · , n}
k=0

Ces propriétés se démontrent par un simple exercice.

Exemple. Donnez le polynôme de degré ≤ 2 tel que P (−1) = 2, P (0) = 1; P (1) = 2.


Vandermonde : Poser P (X) = a + bX + cX 2 , nous amène à résoudre le système :


 a−b+c = 2
a = 1


a+b+c = 2

dont les solutions sont : a = c = 1; b = 0 d’où P (X) = 1 + X 2 .


Lagrange : Soit la base de Lagrange associée à −1, 0, 1 :

X(X − 1) 1 (X + 1)(X − 1) (X + 1)X 1


L0 (x) = = (X 2 − X); L1 (X) = = 1 − X 2 ; L2 (X) = = (X 2 + X)
(−1) × (−2) 2 1 × (−1) 2×1 2

P (X) = 2L0 (X) + L1 (X) + 2L2 (X).


Remarque : Pour la méthode de Vandermonde, on a une base simple (canonique) et un calcul des coefficients,
par contre pour la méthode de Lagrange, on calcule la base (un peu long) et on a déjà les coordonnées qui sont
y 0 , · · · , yn .

Exemple. Soit f (x) = sin(πx). Donnez le polynôme d’interpolation de f au nœuds 0; 0.25; 0.5

L0 (x) = (4x − 1)(2x − 1); L1 (x) = −8x(2x − 1); L2 (x) = 2x(4x − 1)


√ √
P (x) = 0L0 (x) + 2
2 L1 (x) + 1L2 (x) = −4 2x(2x − 1) + 2x(4x − 1).
sin( π8 ) = 0.3827 et P ( π8 ) = 0.4053.

2
3 Méthode de Newton
On définit les polynômes de diférences divisées aux point x0 < x1 < · · · < xn ∈ R

D0 (X) = 1; Dk+1 (X) = (X − xi ) = (X − xk )Dk (X)
0≤i≤k

C’est à dire D0 (X) = 1; D1 (X) = X − x0 ; · · · ; Dn (X) = (X − x0 ) · · · (X − xn−1 )


(D0 , D1 , · · · , Dn ) forment une famille échelonnée (de degrés successifs) de polynômes de Rn [X] (elle est alors
libre), dont le cardinal est égal à la dimension de Rn [X] qui est n + 1 : C’est alors une base de Rn [X].

n
On a alors, pour tout polynôme P de Rn [X], P (X) = δk Dk (X).
k=0
Soit f : [x0 , xn ] → R, et Pn ∈ Rn [X] tel que Pn (xi ) = f (xi ), ∀i ∈ {0, · · · , n}.

n
∃δ0 , · · · , δn ∈ R, Pn (X) = δk Dk (X).
k=0
On définit récursivement les coefficients de différences divisées :

f [xi ] = f (xi )
f (xi+1 −f (xi )
f [xi xi+1 ] = xi+1 −xi
f [xi+1 ···xi+k ]−f [xi ···xi+k−1 ]
f [xi · · · xi+k ] = xi+k −xi

Théorème 1 Soient x0 < x1 < · · · < xn ∈ R, et soit f : [x0 , xn ] → R, et Pn ∈ Rn [X] tel que Pn (xi ) =

n
f (xi ), ∀i ∈ {0, · · · , n}. Alors Pn (X) = δk Dk (X) avec δk = f [x0 , · · · , xk ]
k=0

Pn (X) = f [x0 ] + f [x0 x1 ](X − x0 ) + f [x0 x1 x2 ](X − x0 )(X − x1 ) + · · · + f [x0 · · · xn ](X − x0 ) · · · (X − xn−1 )

Démonstration par récurrence : Pour n = 0, P0 ∈ R0 [X] tel que P0 (x0 ) = f (x0 ) =⇒ P0 (x) = f [x0 ].
Pour n = 1, P1 ∈ R1 [X] tel que P1 (x0 ) = f (x0 ) et P1 (x1 ) = f (x1 )

f (x1 ) − f (x0 )
P1 (x) = (x − x0 ) + f (x0 ) = δ1 D1 (X) + δ0
x1 − x0

Supposons vrai pour n, c’est-à-dire, n + 1 points.


∑n
Soit Pn (X) = k=0 f [x0 · · · xk ](X − x0 ) · · · (X − xk−1 ) qui interpole f en x0 < · · · < xn ; et soit Rn (X) =
∑n
k=0 f [x1 · · · xk+1 ](X − x1 ) · · · (X − xk ) qui interpole f en x1 < · · · < xn+1 .

On a :
Pn (x0 ) = f (x0 )

∀i = 1, · · · , n, Pn (xi ) = f (xi ) = Rn (xi )

Rn (xn+1 ) = f (xn+1 )

Soit Pn+1 (x) le polynôme de degré n + 1 qui interpole f en x0 < · · · < xn+1 .

∀i = 0, · · · , n; Pn+1 (xi ) = f (xi ) = Pn (xi ) =⇒ (Pn+1 − Pn )(xi ) = 0

Or Deg(Pn+1 − Pn ) ≤ n + 1, alors Dn+1 (X) = (X − x0 ) · · · (X − xn ) divise (Pn+1 − Pn ).

3
On conclut que (Pn+1 − Pn )(X) = λ(X − x0 ) · · · (X − xn ) pour λ ∈ R.
Par hypothèse de récurrence :

n
Pn+1 (X) = Pn (X) + λDn+1 (X) = f [x0 · · · xk ]Dk (X) + λDn+1 (X)
k=0

Dn+1 est unitaire, alors λ est le coefficient directeur de Pn+1 . On pose :


(X − x0 )Rn (X) − (X − xn+1 )Pn (X)
Qn+1 (X) = ∈ Rn+1 [X]
xn+1 − x0
Qn+1 (xi ) = f (xi ) pour tout i = 0, · · · , n + 1.
Par unicité du polynôme d’interpolation de f en x0 , · · · , xn+1 , on a Qn+1 = Pn+1 .
Le coefficient directeur de Pn+1 est le même que Qn+1 qui vaut :
Coef f Dir(Rn ) − Coef f Dir(Pn ) f [x1 · · · xn+1 ] − f [x0 · · · xn ]
λ= = = f [x0 · · · xn+1 ]
xn+1 − x0 xn+1 − x0
On écrit la table de Newton pour faire ce calcul :
x0 f [x0 ]
f [x0 x1 ]
x1 f [x1 ] f [x0 x1 x2 ]
f [x1 x2 ] f [x0 x1 x2 x3 ]
x2 f [x2 ] f [x1 x2 x3 ]
f [x2 x3 ]
x3 f [x3 ]

Exemple Soit f (x) = −x3 + 3x2 − 2.


1. Calculez P2 le polynôme d’interpolation de f aux nœuds 0, 1, 2 par les 3 méthodes du cours.
2. Calculez P3 le polynôme d’interpolation de f aux nœuds 0, 1, 2, 3
1. Vandermonde : Poser P (X) = a + bX + cX 2 , nous amène à résoudre le système :


 a = −2
a+b+c = 0


a + 2b + 4c = 2
dont les solutions sont : a = −2; b = 2; c = 0 d’où P2 (X) = −2 + 2X.
Lagrange : Soit la base de Lagrange associée à 0, 1, 2 :
(X − 1)(X − 2) X(X − 1)
L0 (x) = ; L1 (X) = −X(X − 2); L2 (X) =
2 2
P2 (X) = −2L0 (X) + 2L2 (X) = −2 + 2X.
Newton : La table de Newton correspondante est :
0 −2
2
1 0 0
2
2 2

4
P2 (X) = −2D0 (X) + 2D1 (X) + 0D2 (X) = −2 + 2X
2. La meileure façon de rajouter une valeur d’interpolation (sans reprendre le calcul) est la méthode de Newton :
0 −2
2
1 0 0
2 −1
2 2 −3
−4
3 −2
P3 (X) = −2D0 (X) + 2D1 (X) + 0D2 (X) − 1D3 (X) = f (X) par unicité du polynôme de degré ≤ 3 qui interpole
f en 4 points !

4 Estimation de l’erreur
Dans ce qui suit, on considère x0 < x1 < · · · < xn ∈ R et f : [x0 , xn ] → R de classe C n+1 . Soit alors Pn le
polynôme d’interpolation de f aux points x0 , · · · , xn .
On définit l’erreur d’interpolation au point x, la valeur : En (x) = |f (x) − Pn (x)|.

Lemme 4.1 Soit g de classe C n+1 ([x0 , xn ]) telle que :

g(x0 ) = g(x1 ) = · · · = g(xn ) = 0

Il existe alors y ∈ [x0 , xn ] tel que g (n) (y) = 0.


La démonstration est par récurrence en utilisant le théorème de Rolles.

Théorème 2 Soit x0 < x1 < · · · < xn ∈ R et f : [x0 , xn ] → R de classe C n+1 . Soit alors Pn le polynôme
d’interpolation de f aux points x0 , · · · , xn .

|f (n+1) (ζ)| ∏
n
∀x ∈ [x0 , xn ], ∃ζ ∈ [x0 , xn ], En (x) = |f (x) − Pn (x)| = |x − xi |
(n + 1)! i=0
max |f (n+1) (t)| ∏
n
On peut alors majorer cette valeur : En (x) ≤ (n+1)! |x − xi |
i=0

Remarque : Si f ∈ Rn [x] alors f (n+1) = 0, on conclut que f = Pn .


n
(t−xi )
Démonstration : Soit Πn (t) = i=0
(n+1)! . Soit x ∈ [x0 , xn ] fixé.
Πn (x) = 0 ⇐⇒ x ∈ {x0 , · · · , xn }, on a alors En (xi ) = 0.
Si Πn (x) ̸= 0 on a alors f (x) − Pn (x) = µΠn (x)
On pose g(t) = f (t) − Pn (t) − µΠn (x) qui est de classe C n+1 . On a g(x) = g(x0 ) = · · · = g(xn ) = 0.
Par le lemme ∃y ∈ [x0 , xn ], g (n+1) (y) = 0 = f (n+1) (y) − µ. On a alors µ = f (n+1) (y), et donc

f (x) − Pn (x) = f (n+1) (y)Πn (x)

Vous aimerez peut-être aussi