Vous êtes sur la page 1sur 30

Chapitre 1

Interpolation Polynômiale

Département de Mathématiques et Informatique

Université Moulay Ismail - Meknès

2018/2019

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 1/1


Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 2/1
Introduction Exemple d’interpolation

L’approximation d’une fonction donnée par une autre, plus simple, est
un outil très efficace et répandu dans les mathématiques appliquées.
En particulier, la fonction f sera approchée par un polynôme pn .
Applications
visualisation de résultats de calculs : pour des valeurs données
d’une fonction f aux points xi , nous voulons tracer cette fonction
sur l’intervalle [a, b]: f (x) ' pn (x), ∀x ∈ [a, b]
dérivation numérique: afin de calculer la dérivée d’une fonction f :
f 0 (x) ' pn0 (x)
intégration numérique : afin de calculer l’intégrale d’un fonction f :
Rb Rb
a f (x)dx ' a pn (x)dx
résolution numérique des équations différentielles : dans les
méthodes spectrales, la solution d’une équation est approchée
par un polynôme; dans la méthode d’éléments finis, la solution est
approchée par une fonction polynômiale par morceaux.
...
Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 3/1
Introduction Exemple d’interpolation

On cherche à déterminer le polynôme de degré 3

p3 (x) = a0 + a1 x + a2 x 2 + a3 x 3 (1)

passant par les points (−2, 10), (−1, 4), (1, 6) et (2, 3).

10

3
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 4/1


Introduction Exemple d’interpolation

Les ai peuvent être déterminés par la résolution du système linéaire :


    
1 −2 4 −8 a0 10
 1 −1 1 −1   a1   4 
 1 1 1 1   a2  =  6 
     (2)
1 2 4 8 a3 3

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 5/1


Introduction Exemple d’interpolation

La solution de ce système peut être obtenue de la façon suivante :

y = [10;4;6;3];
V= [1,-2,4,-8;1,-1,1,-1;1,1,1,1;1,2,4,8];
a = V \y;

10

3
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 6/1


Introduction Position du problème

On se donne le tableau de données suivant:

i xi yi
0 x0 y0
1 x1 y1
. . .
. . .
. . .
n xn yn

Définition
On cherche un polynôme Pn de degré au plus n (Pn ∈ Rn [X ]) tel que
Pn (xi ) = yi , pour i = 0, ..., n.

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 7/1


Introduction Existence

Soit Pn ∈ Rn [X ] alors Pn (t) = a0 + a1 t + ... + an t n et donc Pn (xi ) = yi ,


pour i = 0, ..., n si et seulement si:

a0 + a1 x0 + . . . + an x0n =y0


a0 + a1 x1 + . . . + an x1n =y1



 . . . . . . . . . . . . . . . . . . . . . . .=. . .
a0 + a1 xn + ... + an xnn =yn

On obtient un système d’équations linéaires dont le vecteur inconnu


est (a0 , ..., an ).

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 8/1


Introduction Existence

Le système précédent s’écrit sous forme matricielle sous la forme :


   
 a0 y
1 x0 x0 . . . x0    0 
2 n

1 x1 x 2 . . . x n  a1  y1 
1 1  a 
2  =  y2 
  
 .. .. .. ..  
. . . . . . .   ..  
  .. 
.  .
1 xn xn2 . . . xnn
an yn

On obtient un système d’équations linéaires dont la matrice est la


matrice de Vandermonde et dont le vecteur inconnu est (a0 , . . . , an ).
 
1
t 
 
 2
Pn (t) = (a0 , a1 , a2 , . . . , an ) t 
 .. 
.
tn

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 9/1


Introduction Théorème d’existence

Déterminant de Vandermonde
Le déterminant de Vandermonde vérifie:
1 x0 x 2 . . . x n

0 0
1 x1 x 2 . . . x n
1 1
Y
= (xj − xi )

.. .. . .
.. . . . ..

. .
0≤i<j≤n
1 xn x 2 . . . x n
n n

Théorème
Une condition nécessaire et suffisante pour qu’il existe un et un seul
polynôme Pn ∈ Rn [X ] tel que Pn (xi ) = yi , pour i = 0, . . . , n est que
toutes les abscisses soient distinctes

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 10 / 1


Introduction Unicité

On suppose que Pn (xi ) = Qn (xi ) = yi , pour i = 0, . . . , n ,


Pn − Qn ∈ Rn [X ],
(Pn − Qn )(xi ) = 0, pour i = 0, . . . , n,
Pn − Qn est un polynôme de degré au plus n qui admet n + 1
racines
conclusion : Pn = Qn .

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 11 / 1


Polynôme d’interpolation dans la base de Lagrange

Nous avons obtenu:


 
1
t 
 
 2
Pn (t) = (a0 , a1 , a2 , . . . , an ) t 
 .. 
.
tn

avec    
a0 −1 y0
1 x0 x02 x0n

a1  ...  y1 
  1 x1 x 2 ... x1n   
a2   1   y2 
  =  .. .. .
. .  
 ..   . .
. . . . . ..   .. 
.
1 xn xn2 . . . xnn
an yn

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 12 / 1


Polynôme d’interpolation dans la base de Lagrange

En transposant la dernière équation, on obtient:


 −1
1 1 1 ... 1
 x0 x1 x2 . . . xn 
(a0 , a1 , a2 , . . . , an ) = (y0 , y1 , y2 , . . . , yn )  .
 
.. .. .. 
 .. . . ... . 
x0n x1n x2n . . . xnn

et donc:
 
 −1 1
1 1 1 ... 1 t 
 x0 x1 x2 . . . xn   
t 2 
Pn (t) = (y0 , y1 , y2 , . . . , yn )  .
 
.. .. .. 
 ..
 
. . ... .   .. 
.
x0 x1 x2n
n n . . . xnn
tn

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 13 / 1


Polynôme d’interpolation dans la base de Lagrange

Le polynôme d’interpolation peut donc s’écrire:


 
L0 (t)
L1 (t)
 
Pn (t) = (y0 , y1 , y2 , . . . , yn ) L2 (t)
 
 .. 
 . 
Ln (t)

avec    
 L (t) 1
... 1  0   

1 1 1
 x0 x1 x2 . . . xn   1  t 
L (t)
 L2 (t) t 2 
= 

 .. .. .. . 
. . . . . . ..   ..   .. 
 .  .
x0n x1n x2n . . . xnn
Ln (t) tn

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 14 / 1


Polynôme d’interpolation dans la base de Lagrange

Propriétés


 L0 (t) + L1 (t) + . . . + Ln (t) =1
x0 L0 (t) + x1 L1 (t) + . . . + xn Ln (t)=t


 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .=. . .
 n
x0 L1 (t) + x1n L1 (t) + ... + xnn Ln (t)=t n

Formules explicites pour i = 0, 1, . . . , n


n
Y t − xj
Li (t) =
xi − xj
j=0
j6=i

1 si i =k
Li (xk ) = δi,k =
0 sinon

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 15 / 1


Polynôme d’interpolation dans la base de Lagrange

Théorème
{L0 , L1 , . . . , Ln } est une base de Rn [X ]

Polynôme d’interpolation dans la base de Lagrange


n n n
X X Y t − xj
Pn (t) = yi Li (t) = yi
xi − xj
i=0 i=0 j=0
j6=i

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 16 / 1


Polynôme d’interpolation dans la base de Lagrange Formule barycentrique de Lagrange

Définition
Soit π le polynôme de degré n + 1 tel que:

π(t) = (t − x0 )(t − x1 ) . . . (t − xn )

Il est clair que:


n
π(t) − π(xi ) Y
πi (t) = = (t − xj )
t − xi
j=0
j6=i

et que πi (xi ) = π 0 (xi ). On en déduit que:

π(t)
Li (t) =
(t − xi )πi (xi )

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 17 / 1


Polynôme d’interpolation dans la base de Lagrange Formule barycentrique de Lagrange

Décomposition en éléments simples


X λ n (n)
1 i
=
π(t) t − xi
i=0

(n) 1
On remarque que λi = πi (xi ) , ce qui donne:

Formule barycentrique
(n)
n
Pn λ
i=0 yi t−xi
i
X π(t)
Pn (t) = yi =
(t − xi )πi (xi ) Pn λ(n) i
i=0 i=0 t−xi

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 18 / 1


Polynôme d’interpolation dans la base de Lagrange Formule barycentrique de Lagrange

Algorithme
Entrées:
(xi , yi )0≤i≤n représentant les points d’interpolation
le point t en lequel on veut évaluer le polynôme d’interpolation
Sortie: Pn (t)
P=0
pour i=0,. . . ,n faire
L=1
pour j=0,. . . ,i-1 faire
L = L ∗ (t − xj )/(xi − xj )
fin du pour
pour j=i+1,. . . ,n faire
L = L ∗ (t − xj )/(xi − xj )
fin du pour
P = P + yi ∗ L
fin du pour
Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 19 / 1
Polynôme d’interpolation dans la base de Newton

Théorème
Qi−1
Posons N0 (t) = 1 et Ni (t) = Ni−1 (t)(t − xi−1 ) = j=0 (t − xj ), alors
{N0 , N1 , . . . , Nn } est une base de Rn [X ].

Polynôme d’interpolation dans la base de Newton


n
X
Pn (t) = [x0 , . . . , xi ]Ni (t)
i=0

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 20 / 1


Polynôme d’interpolation dans la base de Newton Différences divisées

Définition
On appelle différence divisée:
d’ordre zero la quantité : [xi ] = yi
yj −yi
d’ordre un la quantité : [xi , xj ] = xj −xi
d’ordre k − 1 :
[xi2 , . . . , xik ] − [xi1 , . . . , xik −1 ]
[xi1 , . . . , xik ] =
xik − xi1

Propriétés
k
X yi
[x0 , . . . , xk ] = Qk
i=0 j=0 (xi − xj )
j6=i

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 21 / 1


Polynôme d’interpolation dans la base de Newton Différences divisées

Différences divisées
x0 y0
x1 y1 [x0 , x1 ]
x2 y2 [x1 , x2 ] [x0 , x1 , x2 ]
.. .. .. ..
. . . .
xn yn [xn−1 , xn ] [xn−2 , xn−1 , xn ] . . . ... ... [x0 , x1 , . . . , xn ]

Pi (xj ) = yj ; pour j = 0, . . . , i

Polynôme d’interpolation de Newton


P0 (x) = [x0 ] = y0
P1 (x) = [x0 ] + (x − x0 )[x0 , x1 ]
...
Pn (x) = [x0 ] + (x − x0 )[x0 , x1 ] + (x − x0 )(x − x1)[x0 , x1 , x2 ] + . . . +
(x − x0 ) . . . (x − xn−1 [x0 , x1 , . . . , xn ]
Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 22 / 1
Polynôme d’interpolation dans la base de Newton Différences divisées

Algorithme de Newton
Entrées:
(xi , yi )0≤i≤n représentant les points d’interpolation
le point t en lequel on veut évaluer le polynôme d’interpolation
Sortie: Pn (t)
P = f [x0 ] = f (x0 )
T=1
pour j=1,. . . ,n faire
T = T ∗ (t − xj−1 )
calcul des différence divisées d’ordre j
pour i=j,. . . ,n faire
D(i, j) dénote f [xi−j , . . . , xi ]
D(i, j) = D(i,j−1)−D(i−1,j−1)
x −x i i−j+1

fin du pour
P = P + T ∗ D(j, j)
fin du pour

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 23 / 1


Expression de l’erreur

Théorème
Soit f une fonction de classe C n+1 [a, b] avec a = mink xk et
b = maxk xk et Pn le polynôme interpolant f en n + 1 points x0 , . . . , xn
appartenant à [a, b] et yi = f (xi ). Alors
∃ξt ∈ [min(t, mink xk ), max(t, maxk xk )] tel que :
n
f (n+1) (ξt ) Y
En (t) = f (t) − Pn (t) = (t − xi )
(n + 1)!
i=0
π(x)
Preuve: On pose F (x) = f (x) − Pn (x) − π(t) (f (t) − Pn (t))

Théorème de Cauchy
n
Y
En (t) = f (t) − Pn (t) = [x0 , . . . , xn , t] (t − xi )
i=0

Preuve: Considérer le polynôme d’interpolation de Newton aux points


x0 , . . . , xn et t.
Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 24 / 1
Expression de l’erreur

Stabilité et convergence du polynôme de Lagrange


Le polynôme d’interpolation de Lagrange de f associé aux nœuds
(xi )i=0,...,n est donné par pn (x) = ni=0 f (xi )li (x) où li (x) désigne le
P
polynôme de base de Lagrange. Si on remplace les valeurs f (xi ) par
des valeurs approchées f˜i (par exemple due aux erreurs dans les
mesures expérimentales ou aux erreurs d’arrondi) on aura une erreur
sur le polynôme d’interpolation
n
X
kpn − p˜n k∞ = k (f (xi ) − f̃i )li (x)k∞ ≤ Λn max |f (xi ) − f̃i |
i=0,...,n
i=0
Pn
avec Λn = kλn (x)k∞ , et λn (x) = i=0 |li (x)|.

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 25 / 1


Expression de l’erreur

La constante Λn , qui ne dépend que de n, de [a, b] et des points xi est


appelée constante de Lebesgue et joue le rôle d’une constante de
stabilité pour l’interpolation. On peut montrer en plus le théorème
suivant
Théorème de majoration de l’erreur d’interpolation
Soit f ∈ C([a, b]) et pn ∈ Pn son polynôme d’interpolation associé aux
nœuds x0 , . . . , xn . Alors on a:

kEn k∞ = kf − pn k∞ ≤ (1 + Λn )En∗ (f ), avec En∗ (f ) = inf kf − qk


q∈Pn

On remarque que Λn ne dépend que des nœuds xi tandis que En∗ ne


dépend que de f . le théorème de Weierstrass montre que pour toute
fonction f ∈ C([a, b]) on a limn→∞ En∗ (f ) = 0. Par ailleurs, si Λ¯n désigne
l’infimum des constantes de Lebesgue pour tous les choix possibles
des nœuds xi ni=0 à n fixé. On peut montrer que Λn ≡ π2 log(n), c.à.d.
limn→∞ Λn = ∞.
Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 26 / 1
Expression de l’erreur

majoration de l’erreur: nœuds équidistants


Soit f une fonction de classe C n+1 [a, b] avec a = mink xk = x0 et
b = maxk xk = xn et Pn le polynôme interpolant f en n + 1 abscisses
équidistantes x0 , . . . , xn appartenant à [a, b] et yi = f (xi ). Alors :

1 b − a n+1
max |f (t) − Pn (t)| ≤ ( ) max |f (n+1) (t)|
x∈[a,b] 4(n + 1) n t∈[a,b]

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 27 / 1


Expression de l’erreur

Il est important de remarquer que pour une fonction f ∈ C([a, b])


donnée, le choix des nœuds d’interpolation est crucial. En effet, le
polynôme d’interpolation pn peut ne pas converger uniformément vers
f , pour n → ∞. L’interpolation de Lagrange peut devenir très instable
pour de grandes valeurs de n.
La figure suivante montre le phénomène de Runge, il s’agit de
1
l’interpolation de Lagrange de la fonction f (x) = 1+x 2 avec −5 ≤ x ≤ 5
, soit avec des nœuds équidistants, soit avec les nœuds de Chebyshev
xi = a+b b−a 2i+1
2 + 2 cos( 2n+2 π), i = 0, . . . , n.

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 28 / 1


Expression de l’erreur

Phénomène de Runge
1
fonction f

points équidistants
0.8
points de Tchebyshev

0.6

0.4

0.2

-0.2
-5 -4 -3 -2 -1 0 1 2 3 4 5

Il est particulièrement évident que dans ce cas (fonction régulière) le


polynôme d’interpolation avec nœuds équidistants ne converge pas
uniformément vers f , par contre le choix des points de Chebyshev
mène à la convergence uniforme.

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 29 / 1


Expression de l’erreur

Fonctions Matlab/Octave
En Matlab/Octave on peut calculer les polynômes d’interpolation en
utilisant les commandes polyfit et polyval.
1 p = polyfit(x,y,n) calcule les coefficients du polynôme de degré n
qui interpole les valeurs y aux points x.
2 px = polyval(p,t) calcule les valeurs px d’un polynôme de degré n,
dont les n + 1 coefficients sont memorisés dans le vecteur p, au
point t, c’est-à-dire :

px = p1 t n + ... + pn t + pn+1

Abdelkader FASSI FIHRI (ENSAM-Meknès) CMN 30 / 1