Skip to main content

PhaseLagIndex

Namespace: CONNECTIVITYLIB  ·  Library: Connectivity Library

Python equivalent

mne_connectivity.spectral_connectivity_epochs (method='pli') in MNE-Python.

#include <connectivity/phaselagindex.h>

class CONNECTIVITYLIB::PhaseLagIndex

Computes the Phase Lag Index of Stam, Nolte & Daffertshofer (2007).

For every channel pair the estimator averages sign(Im(S_{xy}(f))) across DPSS-tapered trial spectra and returns the magnitude of that average. Zero-lag mixing (volume conduction, common reference) yields sign = 0 and is rejected; consistently lagged or leading interactions yield magnitudes close to 1. The per-trial accumulation is parallelised over trials via QtConcurrent and reduced under a single QMutex.

Phase Lag Index estimator (Stam et al. 2007); rejects zero-lag volume-conduction mixing.

src/examples/ex_connectivity_metrics/main.cpp
Network pli = PhaseLagIndex::calculate(settings);
pli.setFrequencyRange(8.0f, 12.0f);

Inheritance​


Public Methods​

PhaseLagIndex()​

Constructs a PhaseLagIndex object.


Static Methods​

calculate(connectivitySettings)​

Calculates the PLI between the rows of the data matrix.

Parameters:

Returns:

  • Network — The connectivity information in form of a network structure.

Example​

Used in examples​

ex_connectivity_metrics​

Connectivity metrics on synthetic data with a known coupling.

src/examples/ex_connectivity_metrics/main.cpp, line 206
Network pli = PhaseLagIndex::calculate(settings);
pli.setFrequencyRange(8.0f, 12.0f);
Network wpli = WeightedPhaseLagIndex::calculate(settings);
wpli.setFrequencyRange(8.0f, 12.0f);
Network uspli = UnbiasedSquaredPhaseLagIndex::calculate(settings);
uspli.setFrequencyRange(8.0f, 12.0f);
Network dswpli = DebiasedSquaredWeightedPhaseLagIndex::calculate(settings);
dswpli.setFrequencyRange(8.0f, 12.0f);

Authors of this file​