OpenMEEG BEM: WARNING: 239 dipole(s) outside the BEM layer "Brain"

Dear experts,

I am following this tutorial ( to do group analysis for volume source model (EEG data). However, when I am trying to compute head model for each subject with the option "MRI volume" and then "Use template grid for group analysis". It prompted to me:

WARNING: 239 dipole(s) outside the BEM layer "Brain".
The leadfield for these dipoles could be incorrect.

Does this message matter? What should I do to correct it?

Thank you!

The group grid includes dipoles everywhere inside the inner skull surface of the ICBM152 template. Once projected in the subject space, many points of the grid end up slightly outside of the inner skull surface of the subject. Which causes this error message.


OpenMEEG sometimes has numerical issues with source points that are too close to the boundaries (in this case the inner skull), and may cause abnormally high values at these points.
Check carefully the source results for each subject: if you observe abnormal values close to the surface, there are were maybe errors in the computation of the leadfield with OpenMEEG at these points.

One solution around this problem could be to explicitly reduce the size of the inner skull surface of the template, in order to remove the dipoles that are too close to the brain surface.

  • First update Brainstorm because I posted a commit allowing the steps below: Bugfix: Allow duplicating a surface in the default anatomy · brainstorm-tools/brainstorm3@9d77ba5 · GitHub
  • In the default anatomy folder: Duplicate the innerskull surface (CTRL+C / CTRL+V)
  • Rename the new surface: "innerskull_shrink"
  • Double-click on it to make it the default inner skull surface
  • Right-click on the innerskull_shrink > Align manually on > innerskull
  • Use the button to resize in all the directions (read the tooltips of the buttons in the toolbar) to shrink the orange surface by a few mm, then use the button "translation / Z" to center the new surface on the old one (shrinking exaggerated in the screen capture below, for the clarity of the illustration)
  • Click on OK in the toolbar to save the changes.
  • Apply the same transformation to all the other surfaces: NO
  • Right-click on the default cortex surface (text in green) > Remove interpolations
  • When creating the group grid, click on the Preview button in the window "Volume source grid", in the Surface tab add the display of the InnerSkull surface, you should not see any green points outside of the shrunk innerskull:
  • When using this template grid to compute the OpenMEEG BEM forward model, check that you don't see any point outside the inner skull surface (Preview button, then add the inner skull surface from the Surface tab). Note that the inner skull surface of the subject was not altered during this procedure, it was only a way to create a volume grid with no points too close to the skull.
  • And finally, with this new grid, you should not get any warning during the OpenMEEG computation.

@Alexandre Does this make sense?

Hi, Francois,

Thank you very much for the detailed explanation. Just one quick question: according to your solution, when we preview the volume source grid with InnerSkull surface, does the software load the original InnerSkull surface? or the shrunk InnerSkull surface? since we set the shrunk version to default.

It would display the default inner skull surface selected in the database (displayed in green)

Thank you very much! I have one last question: after computing source, I did PSD (Welch) estimation based on source data, and then projected those PSDs to group analysis. However, the matlab window prompted: Warning: This source file was not computed based on a template grid. Did I miss any step?


If you are using volume sources and want to do some group analysis at the source level, you need to use the same same grid for all the subjects: