mne.time_frequency.dpss_windows

mne.time_frequency.dpss_windows(N, half_nbw, Kmax, low_bias=True, interp_from=None, interp_kind='linear')[source]

Compute Discrete Prolate Spheroidal Sequences.

Will give of orders [0,Kmax-1] for a given frequency-spacing multiple NW and sequence length N.

Note

Copied from NiTime.

Parameters:
N : int

Sequence length

half_nbw : float, unitless

Standardized half bandwidth corresponding to 2 * half_bw = BW*f0 = BW*N/dt but with dt taken as 1

Kmax : int

Number of DPSS windows to return is Kmax (orders 0 through Kmax-1)

low_bias : Bool

Keep only tapers with eigenvalues > 0.9

interp_from : int (optional)

The dpss can be calculated using interpolation from a set of dpss with the same NW and Kmax, but shorter N. This is the length of this shorter set of dpss windows.

interp_kind : str (optional)

This input variable is passed to scipy.interpolate.interp1d and specifies the kind of interpolation as a string (‘linear’, ‘nearest’, ‘zero’, ‘slinear’, ‘quadratic, ‘cubic’) or as an integer specifying the order of the spline interpolator to use.

Returns:
v, e : tuple,

v is an array of DPSS windows shaped (Kmax, N) e are the eigenvalues

Notes

Tridiagonal form of DPSS calculation from:

Slepian, D. Prolate spheroidal wave functions, Fourier analysis, and uncertainty V: The discrete case. Bell System Technical Journal, Volume 57 (1978), 1371430