[MATLAB] Pb: Symétrie spectre et noms fichier
Résolu/Fermé
Newenda
Messages postés
75
Date d'inscription
lundi 1 décembre 2008
Statut
Membre
Dernière intervention
26 avril 2021
-
23 mars 2009 à 10:10
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 - 24 mars 2009 à 14:07
Sacabouffe Messages postés 9427 Date d'inscription dimanche 19 août 2007 Statut Membre Dernière intervention 29 mai 2009 - 24 mars 2009 à 14:07
A voir également:
- [MATLAB] Pb: Symétrie spectre et noms fichier
- Dérivée matlab - Forum Matlab
- Courbe de tendance matlab ✓ - Forum Matlab
- Esperance matlab - Forum Matlab
- Interpolation de lagrange matlab ✓ - Forum Matlab
- Courbe de tendance - Forum Excel
3 réponses
Sacabouffe
Messages postés
9427
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
29 mai 2009
1 835
24 mars 2009 à 03:19
24 mars 2009 à 03:19
Salut
C'est comme d'habitude, si t'es habitué à travailler en analyse du signal, tu fais avec les dft et t'exploites ça avec la fréquence centrale que t'obtiens, soit t'essaies de te ramener à quelque chose de plus... ben je sais pas, de plus visuel peut-être... et tu centres tout. Les dft, c'est ni plus ni moins des ft mais y a quand même des différences. Alors soit tu bidouilles avec fftshift, soit tu fais le calcul à la main.
Si tu veux centrer le tout, tu peux faire un truc de ce genre-là :
Ciao
C'est comme d'habitude, si t'es habitué à travailler en analyse du signal, tu fais avec les dft et t'exploites ça avec la fréquence centrale que t'obtiens, soit t'essaies de te ramener à quelque chose de plus... ben je sais pas, de plus visuel peut-être... et tu centres tout. Les dft, c'est ni plus ni moins des ft mais y a quand même des différences. Alors soit tu bidouilles avec fftshift, soit tu fais le calcul à la main.
Si tu veux centrer le tout, tu peux faire un truc de ce genre-là :
%Plage fréquence fmax = 10000; %Temps d'enregistrement d'un événement tmax = 0.500; %Nombre de points N=5000; %Doit être égal à %N=f_ech*tmax; %Axe fréquence freq=linspace(0,fmax/2-fmax/(2*N),N); %Pareil que %freq=-fmax/2+fmax/(2*N)+fmax/N*(0:N-1); %Axe de temps t=linspace(0,tmax/2-tmax/(2*N),N); %Pareil que %t=-tmax/2+tmax/(2*N)+tmax/N*(0:N-1); %blablabla... voie1_fft=-T/N*exp(-1i*pi*(N/2-1/(2*N)))*... exp(1i*pi*(1-1/N)*(0:N-1)).*... fft(voie1.*exp(1i*pi*(1-1/N)*(0:N-1))); %blablabla...Pour nommer les figures par le nom du fichier correspondant, tu mets ça dans le code :
name_figure=A(p).name; deb=find(name_figure=='\',1,'last')+1; fin=find(name_figure=='.',1,'last')-1; name_figure=name_figure(deb:fin);Rajoute le .txt si t'en as envie.
Ciao
Newenda
Messages postés
75
Date d'inscription
lundi 1 décembre 2008
Statut
Membre
Dernière intervention
26 avril 2021
24
24 mars 2009 à 13:56
24 mars 2009 à 13:56
Yep merci !
Bon finalement j'ai fait ça (la commande que l'on trouve direct dans la doc fft..)
NFFT = 2^nextpow2(N);
voie1_fft = fft(voie1,NFFT)/N;
freq = fmax/2*linspace(0,1,NFFT/2+1);
plot(freq,2*abs(voie1_fft(1:NFFT/2+1))/4,'r');
a+
Bon finalement j'ai fait ça (la commande que l'on trouve direct dans la doc fft..)
NFFT = 2^nextpow2(N);
voie1_fft = fft(voie1,NFFT)/N;
freq = fmax/2*linspace(0,1,NFFT/2+1);
plot(freq,2*abs(voie1_fft(1:NFFT/2+1))/4,'r');
a+
Sacabouffe
Messages postés
9427
Date d'inscription
dimanche 19 août 2007
Statut
Membre
Dernière intervention
29 mai 2009
1 835
24 mars 2009 à 14:07
24 mars 2009 à 14:07
Vi, si tu veux pas centrer le spectre, ça va aussi... :-D
De rien ;-)
Ciao
De rien ;-)
Ciao