mne.simulation.simulate_sparse_stc(src, n_dipoles, times, data_fun=<function <lambda>>, labels=None, random_state=None, location='random', subject=None, subjects_dir=None, surf='sphere')[source]

Generate sparse (n_dipoles) sources time courses from data_fun.

This function randomly selects n_dipoles vertices in the whole cortex or one single vertex (randomly in or in the center of) each label if labels is not None. It uses data_fun to generate waveforms for each vertex.

srcinstance of SourceSpaces

The source space.


Number of dipoles to simulate.


Time array.


Function to generate the waveforms. The default is a 100 nAm, 10 Hz sinusoid as 1e-7 * np.sin(20 * pi * t). The function should take as input the array of time samples in seconds and return an array of the same length containing the time courses.

labelsNone | list of Label

The labels. The default is None, otherwise its size must be n_dipoles.

random_stateNone | int | instance of RandomState

If random_state is an int, it will be used as a seed for RandomState. If None, the seed will be obtained from the operating system (see RandomState for details). Default is None.


The label location to choose. Can be ‘random’ (default) or ‘center’ to use mne.Label.center_of_mass(). Note that for ‘center’ mode the label values are used as weights.

New in version 0.13.

subjectstr | None

The subject the label is defined for. Only used with location='center'.

New in version 0.13.

subjects_dirstr | None

The path to the freesurfer subjects reconstructions. It corresponds to Freesurfer environment variable SUBJECTS_DIR.

New in version 0.13.


The surface to use for Euclidean distance center of mass finding. The default here is “sphere”, which finds the center of mass on the spherical surface to help avoid potential issues with cortical folding.

New in version 0.13.


The generated source time courses.


New in version 0.10.0.

Examples using mne.simulation.simulate_sparse_stc