On étudie ici l’interpolation polynomiale de type Lagrange. Étant données une suite de (n+1) points et une fonction f, on doit déterminer un polynôme de degré n qui interpole f aux points considérés.

Interpolation

Étant donné $(n+1)$ points:

\[\{(x_0,y_0),(x_1,y_1),\ldots,(x_n,y_n)\}\]

Les $(x_i)_{0 \leq i\leq n}$ sont appelés points d’interpolation.

Les $(y_i)_{0 \leq i\leq n}$ représentent les valeurs d’interpolation. Pour interpoler une fonction $f$, on définit ces valeurs d’interpolation comme suit:

\[y_i=f(x_i), \quad \forall i=0,\ldots,n\]

Polynôme d’interpolation de Lagrange

Le problème est alors de déterminer l’unique polynôme de degré $n$, $P_n$ qui satisfait

\[P_n(x_i)=f(x_i),\quad \forall i=0,\ldots,n.\]

Le polynôme qui satisfait cette égalité le polynôme d’interpolation de Lagrange

\[P_n(x)= \sum_{k=0}^n l_k(x)f(x_k)\]

où les $l_k$ sont des polynômes de degré $n$ qui forment une base de $\mathcal{P}_n$ \(l_k(x)= \prod_{i=0,\, i\neq k}^{n} \dfrac{x-x_i}{x_k-x_i}=\dfrac{x-x_0}{x_k-x_0} \cdots \dfrac{x-x_{k-1}}{x_k-x_{k-1}} \dfrac{x-x_{k+1}}{x_k-x_{k+1}} \cdots \dfrac{x-x_{n}}{x_k-x_{n}}\)

Propriétés du polynôme d’interpolation de Lagrange et de la base de Lagrange

  • Les polynômes $l_k$ vérifient la propriété suivante:
\[l_k(x_i) = \delta_{ki}=\left\{\begin{array}{ll} 1 & i=k \\ 0 & i\neq k \\ \end{array} \right.,\quad \forall i=0,\ldots,n.\]
  • Ils forment une base de l’espace $\mathcal{P}_n$ des polynômes de degré au plus $n$ \(\sum_{k=0}^n \alpha_k l_k(x)=0\)

en fixant: $x=x_i$, on obtient:

\[\sum_{k=0}^n \alpha_k l_k(x_i)=\sum_{k=0}^n \alpha_k \delta_{ki}=0\Longrightarrow\alpha_i=0\]

La famille $(l_k)_{0 \leq k\leq n}$ est libre. étant maximale, c’est une base de $\mathcal{P}_n$.

  • Enfin on voit clairement que:
\[P_n(x_i)=\sum_{k=0}^n l_k(x_i)f(x_k)=\sum_{k=0}^n\delta_{ki} f(x_k)=f(x_i)\]

Existence et unicité du polynôme d’interpolation de Lagrange

Existence. La preuve de l’existence est au-dessus, elle correspond exactement à la construction du polynôme d’interpolation de Lagrange relativement à la base $(l_k)_{0 \leq k\leq n}$ de $\mathcal{P}_n$.

Unicité. Considérons deux éléments $P_n$ et $Q_n$ de $\mathcal{P}_n$ qui vérifient

\[P_n(x_i)=Q_n(x_i)=f(x_i),\quad \forall i=0,\ldots,n.\]

Soit $R_n=(P_n-Q_n)\in \mathcal{P}_n$. Le polynôme $R_n$ admet $(n+1)$ racines qui sont exactement les $(x_i)_{0 \leq i\leq n}$ puisque

\[R_n(x_i)=P_n(x_i)-Q_n(x_i)=f(x_i)-f(x_i)=0,\quad \forall i=0,\ldots,n.\]

$R_n$ admet donc $(n+1)$ racines et $R_n\in \mathcal{P}_n$, donc

\[R_n=0 \Longrightarrow P_n=Q_n.\]

On a donc démontré l’existence et l’unicité du polynôme d’interpolation de Lagrange

Erreur d’interpolation de Lagrange

On suppose que $f\in \mathcal{C}^{n+1}([a,b])$ et $x\in[a,b]$. Soit $I$ le fermé défini par $I=[\min(x,x_0),\max(x,x_n)]$ (le plus petit fermé contenant $x$ et les $x_i$).

Théorème. \(\forall x\in [a,b],\quad \exists \xi \in I / f(x)-P_n(x)= \displaystyle\frac{f^{n+1}(\xi)}{(n+1)!} \displaystyle\prod_{i=0}^{n}(x-x_i)\)

Preuve.Il existe deux preuves possibles, celle vue dans [l’interpolation polynômiale de type Newton->article46] et la preuve suivante.

Pour $x=x_i$ le problème est réglé:

\[f(x)-P_n(x)=f(x_i)-P_n(x_i)=0\]

Supposons à présent que $x\neq x_i$ et définissons l’application $\Phi$ comme suit:

\[\Phi(x)=\displaystyle\frac{f(x)-P_n(x)}{\displaystyle\prod_{i=0}^{n}(x-x_i)}.\]

On définit ensuite l’application $g$:

\[g(x,t)=f(t)-P_n(t)-\displaystyle\prod_{i=0}^{n}(t-x_i)\Phi(x)\]

L’application $g(x,\cdot)$ est de classe $\mathcal{C}^{n+1}$ et s’annule aux $(n+2)$ points $x_0,x_1,\ldots,x_n,x$ de l’intervalle $I$. Par application successive du théorème de Rolle, $g^{(n+1)}(x,\cdot)$ s’annule en un point $\xi\in I$: \(g^{(n+1)}(x,\xi)=0\)

La dérivée $(n+1)$-ème de $g(x,\cdot)$ est facile à calculer:

\[g^{(n+1)}(x,t)=f^{(n+1)}(t)-(n+1)!\Phi(x)\]

En fixant $t=\xi$, on a:

\[g^{(n+1)}(x,\xi)=f^{(n+1)}(\xi)-(n+1)!\Phi(x)=0\]

d’où

\[\Phi(x)=\displaystyle\frac{f^{(n+1)}(\xi)}{(n+1)!}\]

et on conclut que

\[f(x)-P_n(x)= \displaystyle\frac{f^{n+1}(\xi)}{(n+1)!} \displaystyle\prod_{i=0}^{n}(x-x_i)\]

Corollaire. On suppose que $f\in \mathcal{C}^{n+1}([a,b])$ et $x\in[a,b]$.

\[\forall x\in [a,b],\quad |f(x)-P_n(x)|\leq \displaystyle\frac{\displaystyle|\prod_{i=0}^{n}(x-x_i)|}{(n+1)!}\sup_{x\in[a,b]}|f^{n+1} (x)|\]

ou encore

\[\forall x\in [a,b],\quad |f(x)-P_n(x)|\leq \displaystyle\frac{(b-a)^{n+1}}{(n+1)!}\sup_{x\in[a,b]}|f^{n+1} (x)|\]

Exemple de calcul de polynôme d’interpolation de Lagrange

Étant donné 3 points ${(0,1), (2,5),(4,17)}$. Nous allons déterminer le polynôme d’interpolation de Lagrange de degré 2 passant par ces points.

Calculons $l_0,l_1$ et $l_2$: \(l_0(x)=\displaystyle\frac{(x-2)(x-4)}{(0-2)(0-4)}=\displaystyle\frac{(x-2)(x-4)}{8}\)

\[l_1(x)=\displaystyle\frac{x(x-4)}{(2-0)(2-4)}=-\displaystyle\frac{x(x-4)}{4}\] \[l_2(x)=\displaystyle\frac{x(x-2)}{(4-0)(4-2)}=\displaystyle\frac{x(x-2)}{8}\]

Le polynôme d’interpolation de Lagrange est alors:

\[\begin{array}{rcl} P_2(x)&=&1l_0(x)+5l_1(x)+17l_2(x)\\ &=&1+x^2 \end{array}\]

Scilab: calcul de polynôme d’interpolation de Lagrange

La fonction Scilab lagrange.sci permet de déterminer le polynôme d’interpolation de Lagrange. $X$ contient les points d’interpolation et $Y$ les valeurs d’interpolation, $P$ est le polynôme d’interpolation de Lagrange.

lagrange.sci

function[P]=lagrange(X,Y)//X nodes,Y values;P is the numerical Lagrange polynomial interpolation
n=length(X);// n is the number of nodes. (n-1) is the degree
x=poly(0,"x");P=0;
for i=1:n, L=1;
  for j=[1:i-1,i+1:n] L=L*(x-X(j))/(X(i)-X(j));end
  P=P+L*Y(i); 
end
endfunction

On a alors:

-->X=[0;2;4]; Y=[1;5;17]; P=lagrange(X,Y)
 P = 1 + x^2