2eme année , mathématiques
Analyse numérique 1
TP: 3- Polynôme de Lagrange
Exemple :
Soit la fonction f(x) = 1 – sin( x2 ), le but de ce TP est de présenter la technique de Lagrange
Pour interpoler la fonction f aux points :
X0 = -1 , X1 = - 0.3 , X2 = 0 , X3 = 0.4 , X4 = 0,6 , X5 = 0.75 , X6 = 1 .
Définition: l’interpolation de Lagrange est définit par :
Pl (z) = ∑𝑛𝑖=0 𝑓 (𝑥ᵢ) lᵢ(z)
Où
z − xj
li (z) = ∏𝑛𝑗=0 , j≠i
xi − xj
Questions :
Ecrire un programme en langage C qui fait le suivant :
1) Initialisation des variables
2) Lecture d’un variable réel z
3) Calculer la valeur de Pl au point z
4) Afficher la valeur d’erreur commise au point z choisi.
Algorithme :
#include <iostream>
#include <math.h>
int main(int argc, char** argv) {
float x[7]={-1,-0.3,0,0.4,0.6,0.75,1},y[7];
int i,j;
for(i=0;i<7;i++){
y[i]=1-sin(x[i]*x[i]);
float z,e;
printf("element z:");
scanf("%f",&z);
float pl=0;
float l[7];
for (i=0;i<7;i++){
l[i]=1;
for(j=0;j<7;j++){
if(j!=i){
l[i]=l[i]*((z-x[j])/(x[i]-x[j]));
pl=pl+(y[i]*l[i]);
printf("pl=%f\n",pl);
e=abs(pl-(1-sin(z*z)));
printf("erreur de calcul est :%f\n",e);
return 0;