feat: Perform all mesh-doctor checks at once #100
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #94
The goal of this PR is to create a new feature called all_checks that will be able to call every mesh-doctor already implemented that only performed "quality" checking of the mesh such as collocated_nodes, element_volumes.
So now, using this following line:
mesh-doctor -i mesh_to_analyze.vtu all_checks
Is equivalent to performing these checks successively:
mesh-doctor -i mesh_to_analyze.vtu collocated_nodes
mesh-doctor -i mesh_to_analyze.vtu element_volumes
mesh-doctor -i mesh_to_analyze.vtu non_conformal
mesh-doctor -i mesh_to_analyze.vtu self_intersecting_elements
mesh-doctor -i mesh_to_analyze.vtu supported_elements
The code was designed in a way to allow any new future "check" action to be easily added.
Major changes
While creating this PR, it felt appropriate to rename the folder "checks" by "actions" which is less ambiguous regarding the capabilities of mesh-doctor which can also perform operations on the mesh. The name "all_checks" makes now more sense.
Previously, most of the "check" actions did not have default parameters to use them which is now the case + every one of their argparse keyword is now unique amongst all features. You cannot encounter two times the keyword "tolerance" in the "check" actions.
import logging
as now been replaced by the internal logging system configured in geos-utils.Automatic documentation for mesh-doctor instead of hard-coded command line bash.Update documentation.