# [FieldTrip] Coherence in FieldTrip and mscohere in Matlab

Clara A. Scholl clara.scholl at gmail.com
Thu Mar 28 14:12:39 CET 2013

```Dear Andrei,

Thank you for guiding me through my point of confusion, I really
clarifies the situation for me.

Thanks,
Clara

On Wed, Mar 27, 2013 at 9:36 PM, Andrei Medvedev <am236 at georgetown.edu> wrote:
> Dear Clara,
>
> As previously discussed, coherence, indeed, FUNDAMENTALLY requires to be
> calculated over several trials, and this maxim does not depend on the way
> you calculate it. Because, conceptually, coherence is a measure of phase
> STABILITY in time i.e., how much it changes from trial to trial. If you have
> just one trial, you cannot say how stable the phase relationship between
> two signals is: one trial gives you just one measurement of phase difference
> (at least, if you use a window-based spectral analysis such as FFT, wavelet,
> tapers etc; the alternative methods based on instantaneous phase such as
> Hilbert transform are beyond this discussion at this point). And this is why
> your manual estimate of coherence on a single trial gives you 1: it should
> be this way because the cross-spectrum over one trial normalized by the
> auto-spectra of two signals IDENTICALLY equals 1 (you can simply check it
> with the formula).
>
> Why then does the Matlab mscohere give you values less than 1 even for one
> trial? It is just because all Matlab spectral functions split your one trial
> into several sub-segments BY DEFAULT. To check this, you need to take a full
> control of mscohere (not to use the default values) and explicitly say what
> windows to use.
>
> As an example, you can take two random variables x and y 1000 points long
> assuming fsample=1000 (1 sec trial). Then calculate coh by two different
> calls of mscohere:
>
> 1) Coh = mscohere(x,y,1000,0,1000,1000); - forcefully take the whole trial
> without splitting it into smaller parts by default;
>
> 2) Coh = mscohere(x,y,500,0,500,1000); - splitting this one trial into two
> sub-trials 500 points each without overlap.
>
> And see what happens.
>
> Best,
> Andrei.
>
>
>
> On 3/27/2013 3:30 PM, Clara A. Scholl wrote:
>>
>> Dear FieldTrip Community,
>>
>> I'd like to better understand the requirement that the calculation of
>> coherence be averaged over>  1 trials, a topic previously discussed on
>> the FieldTrip discussion site (e.g.
>>
>> http://mailman.science.ru.nl/pipermail/fieldtrip/2012-November/005923.html).
>>
>> I worked through the calculation of coherence for n=1 trials at two
>> distinct channels manually (dividing the cross-spectrum by the mean of
>> the power spectra), and indeed the value resolves to 1 as others have
>> previously said it would (where the power spectra and cross spectrum
>> were estimated with the multitaper method).  However, I'm still
>> confused because the Matlab function mscohere returns coherence values
>> between 0 and 1 (less than 1) at each calculated frequency for an
>> input of two single time series X and Y, e.g. two single time courses
>> (from the same trial) at two distinct channels.
>>
>> I suspect this may be related to the method for estimating the
>> power/cross spectral density in mscohere (Welch's averaged modified
>> periodogram method) because if I estimate the cross-spectrum and power
>> spectra in FieldTrip with cfg.method = 'mtmwelch_old' (a deprecated
>> option), then the coherence estimates are between 0 and 1 (not 1).
>> be 1 using the multitaper method but not using Welch's method?
>>
>> I'd like to understand if coherence is fundamentally required to be
>> estimated over multiple trials (at two distinct channels), or if the
>> requirement for multiple trials is related to the method of
>> calculating the spectra, and if so why that is the case.
>>
>> Thanks immensely,
>> Clara
>> _______________________________________________
>> fieldtrip mailing list
>> fieldtrip at donders.ru.nl
>> http://mailman.science.ru.nl/mailman/listinfo/fieldtrip
>
>
> _______________________________________________
> fieldtrip mailing list
> fieldtrip at donders.ru.nl
> http://mailman.science.ru.nl/mailman/listinfo/fieldtrip

```