discrete fourier
Afficher commentaires plus anciens
Dear all, I need to find the fourier transform of a signal. My problem is that I don't have the analytic expression of it but a file with the datas (displayed in two columns one for the time the other for the signal). I have already extracted the datas with the importdata command and I now need to get the fourier transform graph (my sample time is constant). Any help would be highly appreciated. Thanks in advance. Ingrid
Réponses (4)
Sean de Wolski
le 15 Juil 2011
doc fft %?
Ingrid
le 15 Juil 2011
0 votes
1 commentaire
Sean de Wolski
le 15 Juil 2011
The FFT is the discrete fourier transform - no analytical solution is required.
fft(rand(10,1))
Harsha Vardhan Rao Avunoori
le 15 Juil 2011
Hello Ingrid,
Did you try reading all the contents of your file into a cell variable and then perform fft on it ?
Something like this.
x = load('your file');
y = fft(x);
Not sure this will help you but try this.
Ingrid
le 15 Juil 2011
0 votes
5 commentaires
Sean de Wolski
le 15 Juil 2011
So extract the components from the structure
doc struct
for info on how to do that. Also, edit your original question or use comments instead of writing new answers.
Ingrid
le 15 Juil 2011
Sean de Wolski
le 15 Juil 2011
Is the time monotonically increasing?
Walter Roberson
le 15 Juil 2011
To use fft() the times would have to be strictly increasing by a constant interval. MATLAB does not supply a routine for irregularly spaced discrete fft, but I seem to recall there are some File Exchange contributions for it. Unfortunately at the moment I do not recall the proper name for this calculation.
Sean de Wolski
le 15 Juil 2011
but a simple interp1 could hopefully do the trick :)
Catégories
En savoir plus sur Discrete Fourier and Cosine Transforms dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!