Bonjour,
Voici le script, inspiré de http://www.cmi.univ-mrs.fr/~torresan/CFN/cours
Lors de la reconstitution (synthese) avec un petit nombre de coefficients, le résultat n'est pas exactement celui des courbes attendues (sinusoides de plus en plus simple pour des coefficients de moins en moins nombreux).
(J'essaie d'éviter les poignées FFT et IFFT toutes faites et je n'ai pas mes bouquins à portée de main )
Est-ce que c'est du aux arrondis numériques ou je fais une erreur ?
Merci
%%%%%%%%%%%%%%%%%%%%%%%
N = 512; M = zeros(N,N);MI=M;
for k = 1:N
for n = 1:N
M(k,n) = exp(-2*i*pi*(k-1)*(n-1)/N);
MI(k,n)= exp(2*i*pi*(k-1)*(n-1)/N);
end;
end;
% fonction carree
u = zeros(512,1);
for k=0:3
u((64*2*k+1):64*(2*k+1))=1;
end;
u=u+1; % pour eviter de tronquer les valeurs<0 avec abs()
subplot(2,2,1); plot(u);title('Fct carree');
subplot(2,2,2); uchap=M*u;plot(abs(uchap));
title('transformee de Fourier');
subplot(2,2,3);plot(abs(MI*uch ap/N)-1);
title('Reconstitution avec tous les coefficients');
subplot(2,2,4);K=250;
bb=[ones((N-K)/2,1);zeros(K,1);ones((N-K)/2,1)];
%uchaptronq=uchap;uchaptronq(f ind(abs(uchap)>K))=0;
uchaptronq=bb.*uchap;
plot(abs(MI*uchaptronq/N)-1);
-----