On Tue, Apr 12, 2016 at 7:27 AM, Roy Stogner <royst...@ices.utexas.edu>
wrote:

>
> On Tue, 12 Apr 2016, Torquil Macdonald Sørensen wrote:
>
> I'm trying to use MeshTools::Modification::distort together with TET10.
>> However, after this operation the mesh seems to no longer be
>> tetrahedral
>>
>
> Well, technically it's tetrahedral, it's just that all the tetrahedra
> now have quadratic rather than linear sides.
>
> and I'm suspecting that this is the reason I'm getting a
>> lot of negative jacobian problems.
>>
>
> If you use a large enough distortion, you can get negative Jacobians
> on any mesh, but the definition of "large enough" does get much, much
> looser on second-order geometric elements.
>
> Is there a way in libmesh to distort
>> a TET10 mesh while preserving the tetrahedral property?
>>
>
> If you don't have an EquationSystems attached to the mesh yet, you can
> use all_first_order() to get TET4, distort that, then
> all_second_order() to get TET10 again.
>
> If you do have an EquationSystems attached, then you can't drop nodes
> without losing dof numbering data.  The best you can do is loop over
> your elements, loop over the second-order nodes (i.e. skip the
> vertices), then on each use n_second_order_adjacent_vertices() and
> second_order_adjacent_vertex() to find the neighbors, and finally set
> the second-order node to the average of its neighbors' locations.
>
> If you have to do that, and you want to make it a new method in
> MeshModification, we'd love a patch.
>

Although Torquil already fixed his problem, I think an extra flag passed to
MeshTools::Modification::distort() that would move second-order nodes to
the average of relevant surrounding vertices would be a worthwhile addition.

It's a bit annoying to add yet another default boolean flag to the
interface, but for this one I think it's worth it...

-- 
John
------------------------------------------------------------------------------
Find and fix application performance issues faster with Applications Manager
Applications Manager provides deep performance insights into multiple tiers of
your business applications. It resolves application problems quickly and
reduces your MTTR. Get your free trial!
https://ad.doubleclick.net/ddm/clk/302982198;130105516;z
_______________________________________________
Libmesh-users mailing list
Libmesh-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to