MATLAB Answers

Traian Preda

mscohere function window calculation

Asked by Traian Preda
on 30 Jan 2013


I am trying to figure out, how I can choose the window, noverlap and nfft for using the mscohere function to obtain the coherence between two time series. The two time series has 5459 samples. Running an FFT I oserved that the highest frequency of the spectra is 0 and the lowest one 44 Hz. If you have any suggestions please let me know.





No products are associated with this question.

2 Answers

Answer by Wayne King
on 30 Jan 2013

I think you may have mistated the highest frequency. "The highest frequency is 0"

Did you mean to say the lowest is 0 and the highest if 44 Hz?

At any rate, you need to know the sampling frequency of your data. You want to set your window long enough to get at least a few periods of the lowest frequency you're interested in. So let's say you really are interested in coherence at 5 Hz at the lowest. Then for a sampling frequency of 1 kHz, 5 Hz is 200 samples, so I would set the window length to 600 samples and overlap them by 50%, just to start with.


Answer by Edinburgh
on 31 Jan 2013

Thank you Wayne for your answer. Just to make clear I understood your answer. You divided the sampling frequency by the frequency of interest (in this case:5 Hz) in order to obtain the number of sample / frequency of interest. After that, you multiplied that value by 2 or 3 to obtain window length (in this case:600 samples). My question is: does that means that, window = hanning(600), noverlap = [], and nfft = 600?



Wayne King
on 31 Jan 2013

Yes, that's correct.

to: Wayne King

Can you please give some more detais about what means the noverlap and the nfft and how I need to choose the sampling frequency (in your case you select 1kHz)

Thank you

Join the 15-year community celebration.

Play games and win prizes!

Learn more
Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!