Custom 5-layer BEM

  • MNE-Python version: 0.23
  • operating system: WSL2 Ubuntu 18.04

Hello All,

I am interested in creating a more detailed BEM to do source localization with SEEG. There is evidence that adding CSF, gray matter and white matter conductivities could greatly improve localization for depth electrodes (where as you might not care for scalp EEG). From reading the forum posts (e.g. Customized head/forward model - #2 by system, it seems the way to do this is with MNE-Openmeeg. Specifically modifying to add the following domains:

Gray matter (cortex and deep)
White matter

I will bring in my own surface files for these regions - any great ideas of best way to generate? I have a 5TT image from FSL, so maybe use FreeSurfer’s mri2surf?

My main question is what difficulties do you expect?

  1. Will the rest of the pipeline to create the forward/inverse solution be ok with this custom BEM?

  2. There will be multiple enclosed sub domains for each tissue type (e.g. cortex and deep gray, different ventricles), will this be a problem?

  3. Anything else I should be aware of?

Bonus question: what inverse method do people think I should use for SEEG? dSPM doesn’t seem to localize my 5mA stimulation pulses too well (concerning), and the LORETA algorithms localize the stimulation very well, but do appear very smoothed as is known to be a problem. Any thoughts would be great.

Thank you,

hi Graham,

yes mne-python natively only supports 3 layers for EEG. OpenMEEG could do this but mne-openmeeg is really alpha stage so no promise that you will succeed in this direction.

but if you manage please keep us posted !


Hi Alex,

I appreciate the fast response! Totally understand it is alpha, just want to get a proof-of-concept up and running.

Any insights into questions #2 and ‘Bonus’ above?


If you have all nested surfaces it should not be a problem for OpenMEEG.

For Bonus, make sure your surfaces don’t intersect and that they are at least a couple of millimeters apart.