mne.chpi.compute_chpi_locs(info, chpi_amplitudes, t_step_max=1.0, too_close='raise', adjust_dig=False, verbose=None)[source]

Compute locations of each cHPI coils over time.

infoinstance of Info

The measurement information.


The time-varying cHPI coil amplitudes, with entries “times”, “proj”, and “slopes”. Typically obtained by mne.chpi.compute_chpi_amplitudes().


Maximum time step to use.


How to handle HPI positions too close to the sensors, can be ‘raise’ (default), ‘warning’, or ‘info’.


If True, adjust the digitization locations used for fitting based on the positions localized at the start of the file.

verbosebool, str, int, or None

If not None, override default verbose level (see mne.verbose() and Logging documentation for more).


The time-varying cHPI coils locations, with entries “times”, “rrs”, “moments”, and “gofs”.


This function is designed to take the output of mne.chpi.compute_chpi_amplitudes() and:

  1. Get HPI coil locations (as digitized in info['dig']) in head coords.

  2. If the amplitudes are 98% correlated with last position (and Δt < t_step_max), skip fitting.

  3. Fit magnetic dipoles using the amplitudes for each coil frequency.

The number of fitted points n_pos will depend on the velocity of head movements as well as t_step_max (and t_step_min from mne.chpi.compute_chpi_amplitudes()).

In “auto” mode, t_window will be set to the longer of:

  1. Five cycles of the lowest HPI frequency.

    Ensures that the frequency estimate is stable.

  2. The reciprocal of the smallest difference between HPI frequencies.

    Ensures that neighboring frequencies can be disambiguated.

New in version 0.20.