sujet

(script de calcul du polynôme d'interpolation de Lagrange en t (valeur : p) ...
EXERCICE 1: après avoir consulté l'aide en ligne de l'instruction x_dialog (et en
 ...

Part of the document


TP n°2 AGREGATION 2004
INITIATION A SCILAB/MATLAB (Partie II)
Dans cette deuxième séance d'initiation, l'accent est mis sur la
réalisation du pré-traitement (entrée des données par une interface
utilisateur) et du post-traitement (sortie écrite ou graphique des
résultats) d'un programme Scilab ou Matlab. Le script Scilab (ou Matlab)
réalisé lors de la séance précédente calculant le polynôme d'interpolation
de Lagrange et rappelé ci dessous, sera repris et amélioré avec pour
objectif de le rendre plus convivial et pédagogique: a=2;b=3;n=7;
h=(b-a)/(n-1);x=[];y=[]; // initialisations
for i=1:n
x(i)=a+(i-1)*h;
y(i)=x(i)^4; // y=x^4 pour validation ulterieure
end
for i=1:n-1
for j=n:-1:i+1
y(j)=(y(j)-y(j-1))/(i*h);
end
end // algorithme des différences divisées
t=2.5;p=y(n);
for i=n-1:-1:1
p=p*(t-x(i))+y(i); // algorithme d'evaluation de Horner
end (script de calcul du polynôme d'interpolation de Lagrange en t (valeur : p)
passant par les n points (x(i),y(i)) equirépartis sur [a,b]).
1. Entrée de données Scilab offre à l'utilisateur la possibilité de rentrer facilement des
données de tout type (scalaire, matrice, chaîne de caractères) grâce à
l'instruction x_dialog permettant de créer une boîte de dialogue
interactive. EXERCICE 1: après avoir consulté l'aide en ligne de l'instruction x_dialog
(et en particulier testé un des exemples inclus), modifier le script
précédent afin de permettre à l'utilisateur de rentrer le nombre de points
d'interpolation et leur position pour une fonction donnée à interpoler (par
exemple 1/(1+x^2)).
2. Ecriture de résultats L'affichage de résultats s'effectue avec Scilab grâce aux
instructions write (écriture formatée dans un fichier ou dans la fenêtre
principale) ou disp (écriture non formatée dans la fenêtre principale). EXERCICE 2: reprendre à nouveau le script précédent pour permettre
d'afficher les coefficients du polynôme d'interpolation dans la base de
Newton (en l'occurence les y(i), i=1..n) ainsi que le temps de calcul du
programme (utiliser pour cela l'instruction timer).
3. Représentation graphique Scilab permet d'effectuer des représentations graphiques évoluées de
courbes, de surfaces, de lignes de niveau à partir de données matricielles.
Les instructions correspondantes (plot2d, plot3d, contour, etc...)
possèdent une syntaxe très proche (détaillée dans l'aide de plot2d). EXERCICE 3: après avoir consulté l'aide en ligne de l'instruction plot2d,
essayer de reproduire le dessin suivant : [pic]
EXERCICE 4: en prenant l'exemple de la fonction f(x)=1/(1+x^2) sur [-5,5],
achever l'écriture d'un programme lagrange.sci permettant d'illustrer le
phénomène de non convergence (dit de Runge) du polynôme de Lagrange vers la
fonction interpolée.
Traduction Matlab des instructions : fscanf à la place de xdialog
fprintf à la place de write (disp inchangé)
tic et toc à la place de timer
plot à la place de plot2d