From frequency to time domain

1 visualizzazione (ultimi 30 giorni)
Nicolò Monaco
Nicolò Monaco il 17 Feb 2022
Commentato: Jon il 18 Feb 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.

Risposta accettata

Jon
Jon il 17 Feb 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 Commenti
Nicolò Monaco
Nicolò Monaco il 18 Feb 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 il 18 Feb 2022
Glad that you were able to make progress

Accedi per commentare.

Più risposte (0)

Prodotti


Release

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by