- MNE version: 1.6.0
- operating system: e.g. macOS 13
Hello,
I’m using mne to perform the forward computation. I’m following this mne tutorial. Using mne data and running the standard mne pipeline (see code at the end of this post)
While running mne.make_bem_solution
I get the following log message:
(Note that to make the 3-layer bem model I’m using the default conductivity values).
IP approach required...
Matrix coefficients (homog)...
inner skull (2562) -> inner skull (2562) ...
Inverting the coefficient matrix (homog)...
Modify the original solution to incorporate IP approach...
Combining...
Scaling...
I’m trying to understand what is the IP approach.
From the mne source code it seems that if:
conductivity skull/conductivity skin <= 0.1
the IP approach is required. This then leads to skipping the skull surface and computing the _fwd_bem_lin_pot_coeff
for the skin surface.
The questions are:
- Is what I have described above correct? and if yes why are we skipping the skull layer?
- What is the reason for the 0.1 threshold?
I have pasted here below the code that I’m running.
import mne
from mne.datasets import sample
data_path = sample.data_path()
# the raw file containing the channel location + types
sample_dir = data_path / "MEG" / "sample"
raw_fname = sample_dir / "sample_audvis_raw.fif"
# The paths to Freesurfer reconstructions
subjects_dir = data_path / "subjects"
subject = "sample"
# The transformation file obtained by coregistration
trans = sample_dir / "sample_audvis_raw-trans.fif"
# Setup source space
src = mne.setup_source_space(
subject, spacing="oct4",
add_dist="patch",
subjects_dir=subjects_dir
)
# Make bem model
conductivity = (0.3, 0.006, 0.3) # for three layers
model = mne.make_bem_model(
subject="sample",
ico=4,
conductivity=conductivity,
subjects_dir=subjects_dir
)
bem = mne.make_bem_solution(model)