bonjour
je me suis inscrit a un cour en ligne de traitement du signal et je bloque des le premier exercice a cause en tre du faite que je ne maitrise pas octave
bonjour
je commence des cours en ligne qui neccesite l'utilisation mathlab/ octave
j'ai donc installer octave mais j'ai des erreurs et je ne sais pas trop comment y faire face
serait t'il posible que l'on m'explique les point bloquant du programme suivant
les lignes que j'aiCode:function [err,t,f,x,p]=intlag(n) % %Etant donne un entier n et une fonction continue f, %le programme interpole la fonction f par un polynome p %de degre n aux points d interpolation t(1),t(2),...,t(n),t(n+1). %parametres: entree : n % sortie : err : erreur max entre la fonction f et l interpolant p % t : (n+1) vecteur contenant les points d interpolation % f : (n+1) vecteur contenant les valeurs de la fonction f % aux points d interpolation % x : vecteur contenant 1001 points uniformement distribues % sur [-1,1] % p : vecteur contenant les valeurs du polynome p au point x(i) % % %initialisation des vecteurs t et f % for i=1:n+1 t(i)=-1+(2.*(i-1))/n; f(i)=funct(t(i)); end % %calcul de la valeur du polynome d interpolation au point x(i) % m=1000; err=0; for i=1:m+1 x(i)=-1+(2.*(i-1))/m; p(i)=0; for j=1:n+1 p(i) = p(i) + f(j) * phi(j,n,t(j),x); end err = max(err,abs(p(i)-funct(x(i)))); end end %calcul de phi_j (la j_ieme fonction de la base de Lagrange) function basis = phi(j,n,xx,t) basis=1; for k=1:n+1 if k ~= j basis = basis * (t-t(k))/(t(j)-t(k)); end end end %fonction a interpoler function f = funct(xx) f = sin(t); end
pour être plus clair le premier lancement me dissais
error: 'n' undefined near ...
j'en ai deduit qu'il me manquais le parramettre et j'ai donc fait
intlag 2
mais maintenant j'ai
error: 't' undefined near
j'ai relu un peu le code et j'ai essayer avec
intlag 20(44)
et j'ai
error: intlag : operator /: nonconformant arguments (op1 is 1x1 , op2 is 1x6)
error : called from intlag at line 19 column
j'en conclue que j'ai sans doute encore un problême de parrametre mais je n'arrive pas vraiment a comprendre ce qu'il faut faire
l'ennoncer de la question dit
bref je ne sais pas si c'est clair pour quelqu'un mais j'aimerais bien commencer a comprendrecompléter et tester avec matlab/octave, puis répondre au questions ci-dessous. Pour lancer le calcul taper :
[err,t,f,x,p]=intlag(5);
dans la fenêtre matlab (ou octave). Les résultats pourront ensuite être visualisés en tapant :
plot(t,f,'o',x,p);
PS :les ligne que j'ai completé sont les ligne 31 , 41 et 47 (remplacement des ???? par une des proposition
merci d'avance pour votre aide j'en profiterais pour en faire partager les autres utilisateur qui sont dans la même galere et qui n'ont pas de réponse sur le forum du cour
-----