Continuous Time Fourier Transform of a signal matrix
Ältere Kommentare anzeigen
I have a matrix of 100 rows and 2 columns. Column 1 consists of time signal at frequency 50Hz (0.02 0.04 0.06...) column 2 is signal whose fft is to be determined. I would like to have a function that determines the Fourier transform of the signal at the frequency determined by the 1st column of the matrix.
Akzeptierte Antwort
Weitere Antworten (3)
Wayne King
am 28 Jul. 2012
Bearbeitet: Wayne King
am 28 Jul. 2012
You stated in your original post that your matrix had an even number of elements, 100x2. In fact your matrix is 9079x2. You data also has a mean which is nonzero so that will make the 0 frequency component very large, it's better to remove the mean first.
x = data(:,2);
x = detrend(x,0);
len = length(x)
t = 0:0.02:(len*0.02)-0.02;
xdft = fft(x);
xdft = xdft(1:(length(xdft)+1)/2);
freq = 0:50/len:25;
plot(freq,abs(xdft))
xlabel('Hz'); ylabel('Magnitude')
1 Kommentar
Anubhav Rohatgi
am 28 Jul. 2012
Bearbeitet: Anubhav Rohatgi
am 28 Jul. 2012
Anubhav Rohatgi
am 28 Aug. 2012
0 Stimmen
Juhi Maraskole
am 16 Sep. 2020
0 Stimmen
x(t) = e-AT
Kategorien
Mehr zu Fast Fourier Transforms finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!