Adding features to `mesh_doctor`
Open
@alexbenedicto is already working on this.
Since Aug 5, 2024.
EPIC
EPIC - Mesh/mesh_doctor
type: feature
- Dominant language
- C++
- Stars
- 287
- Forks
- 109
- Avg merge
- 4d 41m
- Merged PRs (30d)
- 5
Description
Let's add new checks to mesh_doctor!
First batch of features done in https://github.com/GEOS-DEV/GEOS/issues/2274 :
- Check that all the elements of the mesh are supported (including that polyhedra can be converted into supported elements).
- Warn about "non-conformal" elements (in the sense that two close facing elements should not be shifted).
- Allow reordering of support nodes for the elements. A right-hand left-hand rule could be fixed easily.
- Checks that the polyhedra have their normals directed outwards. (not exposed through the CLI though)
More checkes:
- https://github.com/GEOS-DEV/GEOS/issues/2857
- Improve the
collocated_nodesfeature so it handles the fractures as well (the nodes aside the fracture are legitimately colocated, but it creates noise that prevents from finding real issue). - Check that the fractured mesh is consistent (collocated nodes are really collocated)
- Validate ranges of fields (e.g. density should be positive). Printing statistics for fields can be enough. Check for
NaN. Check for connection numbers (can be useful since some arrays have a maximum size based on number of connections.) - Build some mesh statistics (cell types, cell sizes, number of cells sharing the same node, etc.)
- Add a field manipulation feature that will (among other features) allow to grab one field from an output simulation into the input of another.
- Try to find holes in the mesh.
- Find isolated elements (unused points, disconnected cell...)
- Pre-split tags can be erroneous issues #3222 and https://github.com/GEOS-DEV/geosPythonPackages/issues/31#event-13511701210
Create a paraview plugin
- poc (see https://github.com/GEOS-DEV/GEOS/pull/2790)
- first release
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.