If you are using Gmsh to create more complex grids and are using "Physical groups" to mark different boundary segments, you can normally access these inside your definition of the `neumann` function (solution dependent von Neumann boundaries) in your problem file by using something like the following:
where `gridData_` should be a `GridData` instance and a member of your problem class. (Add the grid data as argument in your problem constructor, it can be obtained via the grid manager: `gridManager.getGridData()`.)
Additionally, you have to specify to use boundary segments and domain markers in your `params.input` file:
```ini
[Grid]
File=mygrid.msh
DomainMarkers=1
BoundarySegments=1
```
Unfortunately `ALUGrid` uses boundary flags differently, therefore you have to adapt your `FVGridGeometry` to use the class `BoundarySegmentIndexFlag` instead of the normal `BoundaryFlag` class.
This can be done in your property settings, where you need to add the following:
```c++
#include<dumux/common/boundaryflag.hh>
namespaceProperties{
// other property settings
...
// custom grid geometry traits that enable you to use another boundary flag class