From frequency to time domain

1 visualización (últimos 30 días)
Nicolò Monaco
Nicolò Monaco el 17 de Feb. de 2022
Comentada: Jon el 18 de Feb. de 2022
I have the function S, representing the sea elevation spectrum in frequency domain.
S= 300x365 , being the spectra for 365 days in 300 frequency timestep.
I want to translate the function to time domain, simulating S for every second in a day (86400s).
How can I implement this?
thank you in advance.

Respuesta aceptada

Jon
Jon el 17 de Feb. de 2022
If I understand what you are asking for correctly I am assuming that your matrix S has the fft of the original time domain data.
I think you could then recover it and interpolate to get data for every second in the day using:
% make time vector for original spacing (300 samples per day)
t = linspace(0,86400-1,300);
% recover time domain signal
X = ifft(S);
% interpolate intermediate values
tq = 0:86400-1;
Xq = interp1(t,X,tq)
  3 comentarios
Nicolò Monaco
Nicolò Monaco el 18 de Feb. de 2022
Thank you for your answer. My problem was that the spectrum is not directly derived by an fft but you provide me a feasible solution.
Jon
Jon el 18 de Feb. de 2022
Glad that you were able to make progress

Iniciar sesión para comentar.

Más respuestas (0)

Productos


Versión

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by