Closed DavidAKopriva closed 2 years ago
Merging #50 (aab55af) into main (4dd7d6e) will increase coverage by
0.36%
. The diff coverage is96.00%
.
@@ Coverage Diff @@
## main #50 +/- ##
==========================================
+ Coverage 67.63% 68.00% +0.36%
==========================================
Files 68 68
Lines 10266 10275 +9
==========================================
+ Hits 6943 6987 +44
+ Misses 3323 3288 -35
Flag | Coverage Δ | |
---|---|---|
unittests | 68.00% <96.00%> (+0.36%) |
:arrow_up: |
Flags with carried forward coverage won't be shown. Click here to find out more.
Impacted Files | Coverage Δ | |
---|---|---|
Source/Project/Model/SMModel.f90 | 75.72% <96.00%> (+0.26%) |
:arrow_up: |
Source/Mesh/MeshCleaner.f90 | 67.70% <0.00%> (+0.26%) |
:arrow_up: |
Source/Project/MeshProject.f90 | 71.58% <0.00%> (+0.26%) |
:arrow_up: |
Source/Mesh/BoundaryEdgeCleaning.f90 | 83.44% <0.00%> (+1.32%) |
:arrow_up: |
Source/IO/MeshOutputMethods.f90 | 87.43% <0.00%> (+17.48%) |
:arrow_up: |
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update 4dd7d6e...aab55af. Read the comment docs.
This PR eliminates one of the issues raised in Issue #49 , where the control file was malformed because inner curves were not defined within a CHAIN
block. Rather than supply an error message, I've simply removed that requirement, and a CHAIN
is needed only if multiple curves define an inner boundary. On the other hand, it doesn't hurt if a single curve is defined within a chain, so older control files are still valid.
This is a cool feature to add for HOHQMesh's capabilities. The ability to add elements around a "crack" could open a whole avenue of applications in wave propagation problems. I am worried that it may cause problems in some of the interactive mesh capabilities in HOHQMesh.jl. In particular, the check routines in src/Project/Project.jl
that control for a valid project model within modelCurvesAreOK
or modelChainIsOK
I believe rely on closed curves.
We can add a tutorial example for a kind of "open" inner boundary curve, but these checks and other tutorials would need to updated when this "crack" feature is added to the main branch of HOHQMesh.
This PR only addresses the issue of having to define all interior boundary curves as CHAIN
s. If a curve is not defined within a chain then a chain is now created for it automatically with the same name as the curve, and the curve must be closed by itself. Nothing has to be changed in the interactive tool, but a new addInnerBoundaryCurve
function could be added that takes only the curve name, and that then passes it on to the old routine by duplicating the name as the chain name. A bit of a hack, I guess.
Inner boundary curves no longer have to be enclosed in a CHAIN block. A chain is only needed if multiple curves are connected to define an inner boundary. If a single curve defines an inner boundary, simply use that in place of a chain. If multiple curves make up the boundary, include them in a CHAIN. This eliminates a legacy requirement, makes more sense, and eliminates a model error when a CHAIN block is forgotten in the control file.