Continuous Time Fourier Transform of a signal matrix
Mostrar comentarios más antiguos
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.
Respuesta aceptada
Más respuestas (3)
Wayne King
el 28 de Jul. de 2012
Editada: Wayne King
el 28 de Jul. de 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 comentario
Anubhav Rohatgi
el 28 de Jul. de 2012
Editada: Anubhav Rohatgi
el 28 de Jul. de 2012
Anubhav Rohatgi
el 28 de Ag. de 2012
0 votos
Juhi Maraskole
el 16 de Sept. de 2020
0 votos
x(t) = e-AT
Categorías
Más información sobre Fourier Analysis and Filtering en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!