-
Notifications
You must be signed in to change notification settings - Fork 0
feat: Perform all mesh-doctor checks at once #100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Perform all mesh-doctor checks at once #100
Conversation
… mesh-doctor available features.
…(make them unique across all actions)
paloma-martinez
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for this work, it will be very useful.
Could you separate the different checks in the log ? It is a bit crowded, the different sections would appear more clearly with just an additional line break for example
dkachuma
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I haven't actually tried this but it looks good.
|
The log modification looks good to me. I agree with the removal of expensive checks from default behaviour, but I find the term
|
|
@paloma-martinez Thank you for the feedback. |
…e + TODO reimplement test
dkachuma
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good
…eters used when doing checks
Closes #94
The goal of this PR is to create 2 new features called all_checks and main_checks that will be able to call every mesh-doctor feature already implemented that only performed "quality" checking of the mesh such as collocated_nodes, element_volumes.
The current list of all "checks" available is the following:
[ collocated_nodes, element_volumes, non_conformal, self_intersecting_elements, supported_elements ].
So now, using this following line:
mesh-doctor -i mesh_to_analyze.vtu all_checksIs equivalent (currently) to performing these checks successively:
mesh-doctor -i mesh_to_analyze.vtu collocated_nodesmesh-doctor -i mesh_to_analyze.vtu element_volumesmesh-doctor -i mesh_to_analyze.vtu non_conformalmesh-doctor -i mesh_to_analyze.vtu self_intersecting_elementsmesh-doctor -i mesh_to_analyze.vtu supported_elementsIf you want to only perform the fastest checks, using this following line:
mesh-doctor -i mesh_to_analyze.vtu main_checksIs equivalent (currently) to performing these checks successively:
mesh-doctor -i mesh_to_analyze.vtu collocated_nodesmesh-doctor -i mesh_to_analyze.vtu element_volumesmesh-doctor -i mesh_to_analyze.vtu self_intersecting_elementsThe 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 loggingas now been replaced by the internal logging system configured in geos-utils which closes Improve mesh_doctor logging #41 .Add all parameters used as output in log.
Automatic documentation for mesh-doctor instead of hard-coded command line bash.Update documentation.