Apprendre Maple Interpolation de Lagrange

 
  Page d'accueilPage d'accueil   RechercherRechercher   Forum de discussionForum de discussion   ContactContact   SommaireSommaire 
  Cours MapleCours Maple   Travaux dirigésTravaux dirigés   Thèmes d'activitésThèmes d'activités   Thèmes d'activitésMaplets
Ecran MapleEcran Maple  TéléchargementTéléchargement  BibliographieBibliographie  LiensLiens  

 

 

 

Page d'accueil   Thèmes d'activités   << Thème précédent   Thème suivant >>


Polynôme d'interpolation de Lagrange et polynômes de Tchebychev

Corrigé du thème

 

Soit n points de coordonnées ( x[1], y[1] ),...,( x[n], y[n] ).Le polynôme d'interpolation de Lagrange

relatif à ces points est l'unique polynôme P de degré n - 1 tel que , P(x[i]) = y[i] , pour tout i

de {1,2,. . , n }. Il est défini par

`P(x) ` = Sum(y[k]*L[k](x),k = 1 .. n)

L[k](x) = Product(x-x[i],i = 1 .. k-1)*Product(x-x[...

 

1° Ecrire une procédure Lagrange qui reçoit comme paramètres les deux listes

x= [ x[1] ,..., x[n] ] , y =[ y[1] ,..., y[n] ] , et le nom t de la variable , et qui retourne P(t) développé.

 

2° Soit f une fonction de IR dans IR . Ecrire une procédure Lagrangef qui reçoit

comme paramètres l'opérateur f , une liste x= [ x[1] ,..., x[n] ] , et le nom t de la variable, et

qui retourne P(t) P est le polynôme d'interpolation de Lagrange associé aux

points ( x[1] , f ( x[1] )), ... ,( x[n] , f ( x[n] )) . On a donc P ( x[i] )= f ( x[i] ) , pour tout i de {1,2,. . , n }.

 

3° On définit f : proc (x) options operator, arrow; 1/(1+x^2) end pro... . Représenter f et le polynôme d'interpolation de Lagrange

Lf associé aux points d'abscisses -1,0,1,2 .

 

4° On définit les polynômes de Tchebychev T[n] d'ordre n , n entier naturel , par :

T[n](x) = cos(n*arccos(x))/(2^(n-1))

Ecrire les polynômes de Tchebychev T[1] , T[2] , . . . , T[10] sous forme développée.

 

5° On travaille avec la fonction f définie au 3° :

Représenter sur un même graphique pour n =2,5,10 , la fonction f et les polynômes

d'interpolation de f associés lorsque l'on découpe l'intervalle [-5,5] en n intervalles de

même longueur. Que remarque-t-on aux extrémités de l'intervalle [-5,5] ?

 

6° On travaille avec la fonction f définie au 3° :

Représenter sur un même graphique pour n =2,5,10 , la fonction f et les polynômes

d'interpolation de f associés lorsque l'on prend pour abscisses x[k] (où k =0.. n ) , les

racines du polynôme de Tchebychev d'ordre n +1,multipliées par 5 :

x[k] = 5*cos(1/2*(2*k+1)*Pi/(n+1))

Que constate-t-on par rapport aux résultats obtenus au 5° ?

 


Corrigé:

Énoncé du thème

Question 1:

> Lagrange:=proc(x::list,y::list,t::name)

> local k,L,n,P,Q;

> P:=0:n:=nops(x):

> for k to n do

> Q:=simplify(product(t-x[i],i=1..n)/(t-x[k])):

> L[k]:=Q/subs(t=x[k],Q):

> P:=P+y[k]*L[k]:

> end do:

> expand(P);

> end proc;

Lagrange := proc (x::list, y::list, t::name) local ...
Lagrange := proc (x::list, y::list, t::name) local ...
Lagrange := proc (x::list, y::list, t::name) local ...
Lagrange := proc (x::list, y::list, t::name) local ...
Lagrange := proc (x::list, y::list, t::name) local ...
Lagrange := proc (x::list, y::list, t::name) local ...
Lagrange := proc (x::list, y::list, t::name) local ...
Lagrange := proc (x::list, y::list, t::name) local ...
Lagrange := proc (x::list, y::list, t::name) local ...


> Lagrange([4,0,-1,1,7],[7,2,2,8,1],x); # essai sur un exemple particulier

139/1008*x^4+2885/1008*x^2-185/126*x^3+563/126*x+2

 

Question 2:

 

> Lagrangef:=proc(f::operator,x::list,t::name)

> local k,y;

> y:=[seq(f(x[k]),k=1..nops(x))]:

> Lagrange(x,y,t);

> end proc;

Lagrangef := proc (f::operator, x::list, t::name) l...
Lagrangef := proc (f::operator, x::list, t::name) l...

 

Question 3:

> f:=x->1/(1+x^2):Lf:=unapply(Lagrangef(f,[-1,0,1,2],x),x);

Lf := proc (x) options operator, arrow; 1/5*x^3-1/2...

> plot({f(x),Lf(x)},x=-1.2..2.2);

[Maple Plot]

Question 4:

 

> for k to 10 do T[k]:=unapply(expand(cos(k*arccos(x))/2^(k-1)),x); end do;

T[1] := proc (x) options operator, arrow; x end pro...

T[2] := proc (x) options operator, arrow; x^2-1/2 e...

T[3] := proc (x) options operator, arrow; x^3-3/4*x...

T[4] := proc (x) options operator, arrow; x^4-x^2+1...

T[5] := proc (x) options operator, arrow; x^5-5/4*x...

T[6] := proc (x) options operator, arrow; x^6-3/2*x...

T[7] := proc (x) options operator, arrow; x^7-7/4*x...

T[8] := proc (x) options operator, arrow; x^8-2*x^6...

T[9] := proc (x) options operator, arrow; x^9-9/4*x...

T[10] := proc (x) options operator, arrow; x^10-5/2...

 

Question 5:

 

> e:={2,5,10}:

> for n in e do

> abscisses:=[seq(-5+10*k/n,k=0..n)]:

> Leq[n]:=unapply(Lagrangef(f,abscisses,x),x):

> end do:

> plot({f(x),seq((Leq[n])(x),n=e)},x=-5..5,title="f(x)=1/(1+x²) abscisses équidistantes pour n=2,5,10");

[Maple Plot]

 

On constate que l'on approche bien la courbe au centre de l'intervalle , par contre , aux

extrémités se produisent des oscillations parasites appelées effets de bord .

 

Question 6:

 

> e:={2,5,10}:

> for n in e do

> abscisses:=[seq(evalf(5*cos((2*k+1)*Pi/(2*(n+1)))),k=0..n)]:

> LTcheb[n]:=unapply(Lagrangef(f,abscisses,x),x):

> end do:

> plot({f(x),seq((LTcheb[n])(x),n=e)},x=-5..5,title="f(x)=1/(1+x²) abscisses de Tchebychev pour n=2,5,10");

[Maple Plot]

L' amélioration due au choix des abscisses de Tchebychev a un effet très sensible sur le problème des effets de bord .

 

 

 

 

haut de cette page

 

 


©  - Alain Le Stang - Navigation optimisée pour une résolution 1024 x 768.