-
Notifications
You must be signed in to change notification settings - Fork 292
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
Improve support for 2d meshes embedded in 3d space #4064
base: devel
Are you sure you want to change the base?
Conversation
John (@jwpeterson), Roy (@roystgnr), do we have support for transforming vector functions/solutions (Lagrange, Hierarchical, Monomial) after a mesh transformation? For instance, |
I don't know the answer to your question for sure, but I fear it's probably "no". If I understand correctly, you are asking about mapping a vector solution from an initial mesh to a stretched/translated version of that same mesh? |
Yep, or rotated for instance. Because that's the same map we'd need if solving 1d/2d problems in a higher dimensional space. If each dof maps to a vector function, then I can transform that function the same way I transformed the mesh. |
74cbc69
to
7593ef4
Compare
To answer myself above, I'm now convinced the proper and natural way of supporting Lagrange-like vector FEs embedded in higher dimensional spaces is to change So, I suggest we try to converge on a compromise here. It'll be a bit bizarre perhaps, having better support for ND/RT than classical FEs, but it's still a pure addition, with no loss in current functionality. Thoughts? |
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'm still terrified of what happens when we have a curved but not C1 2D manifold in 3D space, but for cases where we're only caring about continuity between coplanar elements this looks great
To be fair: I'm not talking about this PR in particular, I'm talking about a mistake that's easy to make in general that I'd love to protect against somehow but can't figure out how to. In KellyErrorEstimator we have the exact problem I'm worried about: instead of using the normal vectors on both sides of a face to compute flux jumps, we use the normal vectors on one side and just assume that the normals on the opposite side are their negative. I'll see if I can cook up a unit test that demonstrates that for that case. |
No description provided.