clear // // paramètres de l’acquisition // nombre de points, fenetre d'observation c=15;N=256; Tobs=33.33e-3 ; A=1 ; Fs1=(c*60)+30;Fs2=(c+2)*60-30 Te=Tobs/N; Fe=1/Te; // paramètre de l’échelle analogique : nombre de points Na=16*N; // définition du vecteur temps et du vecteur fréquence normalisé à N ta=N*Te/Na*(0 :Na-1) ; ka=N/Na*(0 : Na-1) ; fa=Fe/N*ka;fa=fa-Fe/2; // définition du signal temporel 'analogique' sa= A*sin(2*%pi*Fs1*ta)+A*sin(2*%pi*Fs2*ta); // échelle des temps et fréquence numérique tn=Te*(0:N-1) ; kn=(0 :N-1) ; fn=Fe/N*kn;fn=fn-Fe/2; // échantillonnage du signal temporel sn=A*sin(2*%pi*Fs1*tn)+A*sin(2*%pi*Fs2*tn); // FFT Sfn=abs(fft(sn,-1)); Sfnshift=fftshift(Sfn); //courbes theoriques freq analogique Sfa1=A*Tobs*sinc (%pi*(fa-Fs1)*Tobs)+A*Tobs*sinc (%pi*(fa+Fs1)*Tobs); Sfa2=A*Tobs*sinc (%pi*(fa-Fs2)*Tobs)+A*Tobs*sinc (%pi*(fa+Fs2)*Tobs); // précision sur l’échelle des fréquences des points affichables pts=zeros(1, N) ; // // affichage xset("window", 0) ; clf(0) ; xset ("font size", 4) ; xsetech([ 0, 0, 1, 1/3]);//sous-fenêtre est définie par wrect=[x,y,w,h] ici haut gauche + pleine largeur et 1/2 hauteur => demi-fenetre haute plot2d(ta, real(sa), style=0,rect=[0, 0, 1.2*N/Fe, 1.1*A], style=0) ; // Les échelles sont fixées par rect =[xmin,ymin,xmax,ymax] plot2d3(tn,real(sn)) ; xtitle("signal analogique et échantillons temporels" ,"temps(s)", "amplitude (V)") ; xsetech([ 0, 1/3, 1, 1/3]) ; plot2d(fa, abs(Sfa1)*Fe/2,style=0, rect=[-Fe/2, 0, Fe/2, max(abs(Sfa1)*Fe/2)]) ; plot2d(fa, abs(Sfa2)*Fe/2,style=0, rect=[-Fe/2, 0, Fe/2, max(abs(Sfa2)*Fe/2)]) ; plot2d3(fn, Sfnshift) ; //plot2d(fn, pts, style=-3) ; xtitle("transformée de Fourier théorique et calculée","frequence", "amplitude(V.s)") ; xsetech([ 0, 2/3, 1, 1/3]) ; //plot2d(fa, Sfa,style=0, rect=[-Fe/2, 0, Fe/2, 0.02]) ; plot2d3(kn, Sfn,rect=[0, 0, N, max(Sfn)])) ; //plot2d(fn, pts, style=-3) ;