constructMeshesFromGeometry tool can't find elements inside the bulk mesh domain
Description
The constructMeshesFromGeometry tool from the OGS utilities can't find (and therefore can't extract) lines or surfaces that are not completely part of the bulk mesh boundary.
Steps to Reproduce the Problem
- (get mesh from .geo file using gmsh)
your_ogspaths/bin/constructMeshesFromGeometry -m domain.vtu -g geometry.gml
Expected behavior: [What you expected to happen]
3 extracted .vtu files for the entities (2 points, 1 line) specified in the .gml file
Actual behavior: [What actually happened]
Only meshes for the points are generated. No mesh of the line
warning for the line mesh: [warning] The created mesh 'line' hasn't any nodes or elements and thus it isn't written to file.
For still faulty behaviour without a warning see V2 files. (the points are both on the domain boundary, so those parts of the line are extracted, but the middle part is missing.) See the extracted line mesh in other program e.g. Paraview, DataExplorer, ...
Possible reason
/ogs_source/MeshGeoToolsLib/ConstructMeshesFromGeometries.cpp
line 111-117 says that it uses the boundary_element_searcher for finding the elements. Maybe that is why it can't find them inside the domain
Specifications
- Version: 6.4.3-1021-g79e7014b
- Platform: Linux Ubuntu
your_ogspaths/bin/constructMeshesFromGeometry -m constructmeshesfromgeometry_bug.vtu -g constructmeshesfromgeometry_bug.gml
constructmeshesfromgeometry_bug.vtu
constructmeshesfromgeometry_bug.gml
constructmeshesfromgeometry_bug_V2.gml