function [J]=fct_fft_rapide_optim(a,SensFFT,Longueur) Y=a; // a : Ligne de l'image Apair=a; // Matrice des pixels de position paire Aimpair=a; // Matrice des pixels de position impaire Ypair=a; Yimpair=a; TailleApair=0; TailleAimpair=0; // Longueur de l'image n=Longueur; if n==1 then J=a; else wn=exp(SensFFT*2*%i*%pi/n); w=1; for i=1:n if modulo(i,2)==0 then // pair Apair(i/2)=a(i); else // impair Aimpair((i+1)/2)=a(i); end; end; Ypair=fct_fft_rapide_optim(Apair,SensFFT,n/2); Yimpair=fct_fft_rapide_optim(Aimpair,SensFFT,n/2); // réassemblage des tableaux for k=1:(n/2) Y(k)=Ypair(k)+w*Yimpair(k); Y(k+n/2)=Ypair(k)-(w*Yimpair(k)); w=w*wn; end; J=Y; end