非官方中文翻译 本页译自 MNE-Python 官方文档: 查看英文原文 ↗。 文档版权归 MNE Developers 所有(BSD-3-Clause)。

Brainstorm Elekta 体模数据集教程#

本教程逐步介绍如何导入并处理 Elekta-Neuromag 电流体模记录。

体模记录是使用能够产生已知磁信号的装置(体模)获得的测量数据,可用于验证和基准测试 MEG 系统的精度与分析方法。

本教程旨在展示如何通过比较估计偶极子位置与真实偶极子位置,利用体模记录评估源定位方法。

作为对比,请参阅 [ 1 ] 和原始 Brainstorm 教程。

# Authors: Eric Larson <larson.eric.d@gmail.com>
#          Carina Forster <carinaforster0611@gmail.com>
#
# License: BSD-3-Clause
# Copyright the MNE-Python contributors.
import matplotlib.pyplot as plt
import numpy as np
from scipy.signal import find_peaks

import mne
from mne import find_events, fit_dipole
from mne.datasets import fetch_phantom
from mne.datasets.brainstorm import bst_phantom_elekta
from mne.io import read_raw_fif

加载并准备数据#

该数据由 Elekta Neuromag VectorView 系统以 1000 Hz 采集,在 330 Hz 处进行低通滤波,包含三种电流幅度(20、200 和 2000 nAm)下的记录。此处加载中等幅度条件的数据。

# Load the data
data_path = bst_phantom_elekta.data_path(verbose=True)
raw_fname = data_path / "kojak_all_200nAm_pp_no_chpi_no_ms_raw.fif"
raw = read_raw_fif(raw_fname)

# Mark known bad channels
raw.info["bads"] = ["MEG1933", "MEG2421"]

# The first 32 events correspond to dipole activations
events = find_events(raw, "STI201")
Opening raw data file /home/circleci/mne_data/MNE-brainstorm-data/bst_phantom_elekta/kojak_all_200nAm_pp_no_chpi_no_ms_raw.fif...
    Read a total of 13 projection items:
        planar-0.0-115.0-PCA-01 (1 x 306)  idle
        planar-0.0-115.0-PCA-02 (1 x 306)  idle
        planar-0.0-115.0-PCA-03 (1 x 306)  idle
        planar-0.0-115.0-PCA-04 (1 x 306)  idle
        planar-0.0-115.0-PCA-05 (1 x 306)  idle
        axial-0.0-115.0-PCA-01 (1 x 306)  idle
        axial-0.0-115.0-PCA-02 (1 x 306)  idle
        axial-0.0-115.0-PCA-03 (1 x 306)  idle
        axial-0.0-115.0-PCA-04 (1 x 306)  idle
        axial-0.0-115.0-PCA-05 (1 x 306)  idle
        axial-0.0-115.0-PCA-06 (1 x 306)  idle
        axial-0.0-115.0-PCA-07 (1 x 306)  idle
        axial-0.0-115.0-PCA-08 (1 x 306)  idle
    Range : 47000 ... 437999 =     47.000 ...   437.999 secs
Ready.
Finding events on: STI201
645 events found on stim channel STI201
Event IDs: [   1    2    3    4    5    6    7    8    9   10   11   12   13   14
   15   16   17   18   19   20   21   22   23   24   25   26   27   28
   29   30   31   32  256  768 1792 3840 7936]

对数据分段并绘制诱发响应#

我们围绕偶极子事件对数据进行分段,并做基线校正。

# Epoch the data
bmax = -0.05
tmin, tmax = -0.1, 0.8
event_id = list(range(1, 33))
epochs = mne.Epochs(
    raw, events, event_id, tmin, tmax, baseline=(None, bmax), preload=False
)

# We drop the first and last event, it can contain dipole-switching artifacts
epochs_clean = epochs[1:-1]

# We select the first simulated dipole for visualisation purposes
epochs_firstdip = epochs_clean["1"]
Not setting metadata
640 matching events found
Setting baseline interval to [-0.1, -0.05] s
Applying baseline correction (mode: mean)
Created an SSP operator (subspace dimension = 13)
13 projection items activated

我们来看第一个干净偶极子的诱发响应。

可以看到,体模被设置为产生 20 Hz 的正弦电流爆发,其爆发包络以约 3 Hz 的频率重复。

epochs_firstdip.average().plot(time_unit="s")
Gradiometers (203 channels), Magnetometers (101 channels)

使用全局场功率(GFP)确定峰值激活#

GFP 是每个时间点上各传感器信号的标准差,可提供与参考无关的信号强度度量。

# Get the evoked signal of the first dipole
evoked_tmp = epochs_firstdip.average()

# Calculate GFP
gfp = np.std(evoked_tmp.data, axis=0)

# Restrict to first burst window
times = evoked_tmp.times
time_mask = (times > 0) & (times <= 0.05)

# Find the peak GFP indices
peaks, _ = find_peaks(gfp[time_mask])
peak_indices = np.where(time_mask)[0][peaks]

# Select the strongest peak
strongest_peak_idx = peak_indices[np.argmax(gfp[peak_indices])]
t_peak = times[strongest_peak_idx]
print(f"Strongest peak at {t_peak * 1000:.1f} ms")
Strongest peak at 37.0 ms

这里我们选择峰值幅度对应的时间点,并保存每个偶极子的诱发数据。

接下来,我们需要在基线窗口内计算噪声协方差,以捕获传感器噪声结构(详情请参阅“计算协方差矩阵”一节)。

cov = mne.compute_covariance(epochs_clean, tmax=bmax)
del epochs  # delete to save memory
Loading data for 19 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 20 events and 901 original time points ...
0 bad epochs dropped
Loading data for 19 events and 901 original time points ...
0 bad epochs dropped
    Created an SSP operator (subspace dimension = 13)
    Setting small MEG eigenvalues to zero (without PCA)
Reducing data rank from 304 -> 291
Estimating covariance using EMPIRICAL
Done.
Number of samples used : 32538
[done]

我们使用球形头几何模型,因为 Elekta 体模被设计为近似具有已知偶极子位置的球形导体。

subjects_dir = data_path
fetch_phantom("otaniemi", subjects_dir=subjects_dir)
sphere = mne.make_sphere_model(r0=(0.0, 0.0, 0.0), head_radius=0.08)
0 files missing from phantom_otaniemi.txt in /home/circleci/mne_data/MNE-brainstorm-data/bst_phantom_elekta

Equiv. model fitting -> RV = 0.00347813 %%
mu1 = 0.944815    lambda1 = 0.13694
mu2 = 0.667658    lambda2 = 0.683728
mu3 = -0.286487    lambda3 = -0.0102992
Set up EEG sphere model with scalp radius    80.0 mm

偶极子拟合#

最后,我们针对每个体模偶极子进行偶极子拟合,并将结果保存在列表中。

dip_all = []

for evoked in evokeds:
    dip, residual = fit_dipole(evoked, cov, sphere, n_jobs=1)
    dip_all.append(dip)
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted
BEM               : <ConductorModel | Sphere (3 layers): r0=[0.0, 0.0, 0.0] R=80 mm>
MRI transform     : identity
Sphere model      : origin at (   0.00    0.00    0.00) mm, rad =    0.1 mm
Guess grid        :   20.0 mm
Guess mindist     :    5.0 mm
Guess exclude     :   20.0 mm
Using normal MEG coil definitions.
Noise covariance  : <Covariance | kind : full, shape : (304, 304), range : [-1.8e-21, +2.2e-21], n_samples : 32537>

Coordinate transformation: MRI (surface RAS) -> head
    1.000000 0.000000 0.000000       0.00 mm
    0.000000 1.000000 0.000000       0.00 mm
    0.000000 0.000000 1.000000       0.00 mm
    0.000000 0.000000 0.000000       1.00
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
2 bad channels total
Read 304 MEG channels from info
105 coil definitions read
Coordinate transformation: MEG device -> head
    0.976295 -0.211976 0.043756       0.29 mm
    0.206488 0.972764 0.105326       0.57 mm
    -0.064891 -0.093794 0.993475       5.41 mm
    0.000000 0.000000 0.000000       1.00
MEG coil definitions created in head coordinates.
Decomposing the sensor noise covariance matrix...
    Created an SSP operator (subspace dimension = 13)
Computing rank from covariance with rank=None
    Using tolerance 5.7e-11 (2.2e-16 eps * 304 dim * 8.4e+02  max singular value)
    Estimated rank (mag + grad): 291
    MEG: rank 291 computed from 304 data channels with 13 projectors
    Setting small MEG eigenvalues to zero (without PCA)
    Created the whitener using a noise covariance matrix with rank 291 (13 small eigenvalues omitted)

---- Computing the forward solution for the guesses...
Making a spherical guess space with radius    72.0 mm...
Filtering (grid =     20 mm)...
Surface CM = (   0.0    0.0    0.0) mm
Surface fits inside a sphere with radius   72.0 mm
Surface extent:
    x =  -72.0 ...   72.0 mm
    y =  -72.0 ...   72.0 mm
    z =  -72.0 ...   72.0 mm
Grid extent:
    x =  -80.0 ...   80.0 mm
    y =  -80.0 ...   80.0 mm
    z =  -80.0 ...   80.0 mm
729 sources before omitting any.
178 sources after omitting infeasible sources not within 20.0 - 72.0 mm.
Source spaces are in MRI coordinates.
Checking that the sources are inside the surface and at least    5.0 mm away (will take a few...)
    8 source space point omitted because of the    5.0-mm distance limit.
170 sources remaining after excluding the sources outside the surface and less than    5.0 mm inside.
Go through all guess source locations...
[done 170 sources]
---- Fitted :     0.0 ms
Projections have already been applied. Setting proj attribute to True.
1 time points fitted

评估拟合优度#

偶极子对象会保存每个偶极子的拟合优度(GOF)。部分偶极子的 GOF 较低(< 60 %)。

gof = [dip.gof[0] for dip in dip_all]
colors = ["#E69F00" if val < 60 else "#0072B2" for val in gof]
plt.bar(event_id, gof, color=colors)
plt.xlabel("Phantom dipole estimation")
plt.ylabel("Goodness of fit (%)")
plt.show()
80 brainstorm phantom elekta

拟合优度较低的偶极子#

为什么有些偶极子的 GOF 较低?这里我们绘制 GOF 较低的偶极子的位置。

可以看到,GOF 较低的偶极子位于大脑深部,这或许可以解释其较低的 GOF。

# Get indices of low GOF dipoles
low_idx = [i for i, g in enumerate(gof) if g < 60]
low_event_ids = [event_id[i] for i in low_idx]

print("Low GOF dipoles:", low_event_ids)

# Let's plot the locations of the dipoles with low GOF.
low_dips = [dip_all[i] for i in low_idx]

subject = "phantom_otaniemi"
trans = mne.transforms.Transform("head", "mri", np.eye(4))

# Plot the position and the orientation of the dipoles with low GOF
fig = mne.viz.plot_alignment(
    evoked.info,
    trans,
    subject,
    bem=sphere,
    surfaces={"head-dense": 0.2},
    coord_frame="head",
    meg="helmet",
    show_axes=True,
    subjects_dir=subjects_dir,
)

fig = mne.viz.plot_dipole_locations(
    dipoles=low_dips, mode="arrow", subject=subject, color=(1.0, 0.2, 0.2), fig=fig
)
80 brainstorm phantom elekta
Low GOF dipoles: [4, 8, 28, 32]
Using lh.seghead for head surface.
Getting helmet for system 306m

比较估计偶极子与真实偶极子#

偶极子拟合结果与真实体模数据高度吻合,达到了亚厘米级精度(平均位置误差 2.4 mm)。

# We get the true dipole positions from the phantoms
actual_pos, actual_ori = mne.dipole.get_phantom_dipoles()
actual_amp = 100.0  # nAm

# Here we store the estimated dipoles
dip_pos = [dip.pos[0] for dip in dip_all]
dip_ori = [dip.ori[0] for dip in dip_all]
dip_amplitude = [dip.amplitude[0] for dip in dip_all]

fig, (ax1, ax2, ax3) = plt.subplots(
    nrows=3, ncols=1, figsize=(6, 7), layout="constrained"
)

# Here we calculate the euclidean distance between estimated and true positions.
# We multiply by 1000 to convert from meter to millimeter.
diffs = 1000 * np.sqrt(np.sum((dip_pos - actual_pos) ** 2, axis=-1))
print(f"mean(position error) = {np.mean(diffs):0.1f} mm")
ax1.bar(event_id, diffs)
ax1.set_xlabel("Dipole index")
ax1.set_ylabel("Loc. error (mm)")

# Next we calculate the angle between estimated and true orientation.
# We convert radians to degrees.
angles = np.rad2deg(np.arccos(np.abs(np.sum(dip_ori * actual_ori, axis=1))))
print(f"mean(angle error) = {np.mean(angles):0.1f}°")
ax2.bar(event_id, angles)
ax2.set_xlabel("Dipole index")
ax2.set_ylabel("Angle error (°)")

# Here we compare amplitudes by subtracting estimated from true amplitude.
amps = actual_amp - np.array(dip_amplitude) / 1e-9
print(f"mean(abs amplitude error) = {np.mean(np.abs(amps)):0.1f} nAm")
ax3.bar(event_id, amps)
ax3.set_xlabel("Dipole index")
ax3.set_ylabel("Amplitude error (nAm)")
80 brainstorm phantom elekta
mean(position error) = 2.4 mm
mean(angle error) = 2.6°
mean(abs amplitude error) = 16.8 nAm

可视化估计与真实偶极子位置#

可以看到,这些偶极子相互重叠,幅度大致相同,且指向同一方向。

actual_amp = np.ones(len(dip))  # fake amp, needed to create Dipole instance
actual_gof = np.ones(len(dip))  # fake goodness-of-fit (GOF)
# setup dipole objects for true and estimated dipoles
dip_true = mne.Dipole(dip.times, actual_pos, actual_amp, actual_ori, actual_gof)
dip_estimated = mne.Dipole(dip.times, dip_pos, dip_amplitude, dip_ori, actual_gof)

fig = mne.viz.plot_alignment(
    evoked.info,
    trans,
    subject,
    bem=sphere,
    surfaces={"head-dense": 0.2},
    coord_frame="head",
    meg="helmet",
    show_axes=True,
    subjects_dir=subjects_dir,
)

# Plot the position and the orientation of the true dipole in black
fig = mne.viz.plot_dipole_locations(
    dipoles=dip_true, mode="arrow", subject=subject, color=(0.0, 0.0, 0.0), fig=fig
)

# Plot the position and the orientation of the estimated dipole in green
fig = mne.viz.plot_dipole_locations(
    dipoles=dip_estimated, mode="arrow", subject=subject, color=(0.2, 1.0, 0.5), fig=fig
)
mne.viz.set_3d_view(figure=fig, azimuth=70, elevation=80, distance=0.5)
80 brainstorm phantom elekta
Using lh.seghead for head surface.
Getting helmet for system 306m

参考文献#

脚本总运行时间:(0 分 24.764 秒)

图库由 Sphinx-Gallery 生成