moose icon indicating copy to clipboard operation
moose copied to clipboard

Poly2TriMeshGenerator, upgraded and rebased

Open roystgnr opened this issue 2 years ago • 5 comments

Reason

This is now both sufficient and necessary to close #20192; Rocstar's stuff isn't going to be integrated in the near term, for sure.

Design

PolyLineMeshGenerator gives us the ability to specify arbitrary boundary loops, then Poly2TriMeshGenerator lets us triangulate boundaries specified by those loops (or by the boundary of some input 2D Mesh), with optional holes (that can either be left unfilled or can be stitched to the mesh defining them) defined by other input meshes, with various options for mesh and/or boundary refinement and for mesh smoothing.

Impact

This adds two new mesh generators, along with tests and documentation.

Along the way I added input file support for vector parameters, and fixed a typo in the doc I was using as an example for how to write MOOSE docs. DistributedMesh support for StitchedMeshGenerator is also in here.

This obsoletes #21303. The main changes since then are in the checklist there.

roystgnr avatar Aug 08 '22 19:08 roystgnr

Job Documentation on bac2360 wanted to post the following:

View the site here

This comment will be updated on new commits.

moosebuild avatar Aug 08 '22 23:08 moosebuild

Job Coverage on bac2360 wanted to post the following:

Framework coverage

03cebc #21800 bac236
Total Total +/- New
Rate 84.19% 84.21% +0.02% 94.17%
Hits 79087 79308 +221 226
Misses 14856 14870 +14 14

Diff coverage report

Full coverage report

Modules coverage

Coverage did not change

Full coverage reports

Reports

This comment will be updated on new commits.

moosebuild avatar Aug 09 '22 00:08 moosebuild

Job End user mac on 816b8b5 : invalidated by @milljm

Old packages were pulled by mistake

moosebuild avatar Aug 09 '22 13:08 moosebuild

Looks like this might be an real exodiff on Mac. I've been afraid of this potentially happening for a while, trying to avoid cases where there are multiple valid Delaunay triangulations of a test case, but looks like something of that sort caught up with me.

roystgnr avatar Aug 09 '22 19:08 roystgnr

lemme know when/if you want my eyes on this

GiudGiud avatar Sep 01 '22 23:09 GiudGiud

I'd appreciate that, thanks! I committed the responses to Logan's concerns last week, but he's a bit busy lately, and in any case the more eyes the better.

roystgnr avatar Sep 02 '22 13:09 roystgnr

... and apparently it needs more attention from my eyes too. I've now discovered that, just because a feature has test coverage for bugs in libMesh and has an interface here doesn't mean the interface doesn't have bugs. I'll fix that, and scan the code coverage misses for anything else important I'm not hitting.

roystgnr avatar Sep 02 '22 21:09 roystgnr

I was check the doc of this mesh generator and noticed this: Screen Shot 2022-09-02 at 5 10 33 PM There is a space before/after 2 in the name.

YaqiWang avatar Sep 02 '22 22:09 YaqiWang

There is a space before/after 2 in the name.

Right!

If you know anyone who can fix it, just about every number in https://mooseframework.inl.gov/source/index.html gets rendered with the same bug.

In this case, though, for reasons discussed in the previous PR, Poly2TriMeshGenerator shouldn't be the final name, it's just a placeholder until we have a final decision on something better. I'm currently leaning towards XYDelaunayGenerator, but open to other suggestions+opinions.

roystgnr avatar Sep 02 '22 22:09 roystgnr

So, @roystgnr this is indeed doing triangulation? I am very excited about this capability. What triangulator is this using?

YaqiWang avatar Sep 02 '22 22:09 YaqiWang

Poly2Tri does the initial triangulation; all the triangulation refinement code is my own ... and the result gets handed back to Poly2Tri before the user sees it, just in case I've made a mistake and come up with something non-Delaunay.

roystgnr avatar Sep 02 '22 22:09 roystgnr

Job Precheck on ca4e811 wanted to post the following:

Your code requires style changes.

A patch was auto generated and copied here
You can directly apply the patch by running, in the top level of your repository:

curl -s https://mooseframework.inl.gov/docs/PRs/21800/clang_format/style.patch | git apply -v

Alternatively, with your repository up to date and in the top level of your repository:

git clang-format 7e8e791a29c7fbfb347afee4b91998030b4278b4

moosebuild avatar Sep 13 '22 20:09 moosebuild