From: Roy S. <roy...@ic...> - 2017-11-22 21:14:44
|
On Wed, 22 Nov 2017, Zack Vitoh wrote: > GmshIO gmsh_io(mesh); > gmsh_io.read("disk.vtu"); > > but--and I am not sure if this is possible--imposing additional nodes on > each element generated in the triangularization generated by gmsh with > nodes such that I have, say, Tri6 elements. You have Tri3 elements now? After the read calling mesh.all_second_order(); will turn them into Tri6 elements. > Is this possible through libmesh, or something I would I have to do > something in gmsh instead? I'm afraid if you have a disk then this is something you *should* do in gmsh instead if that's possible. By the time libMesh reads a first-order triangulation, curvature information has been discarded, and we don't try to reconstruct it, so you'll still get straight-sided elements rather than curved-sided elements. The only way to get the best second-order boundary geometry is to patch it up manually, looping over boundary nodes and "snapping" them to the curve where you know they should be. --- Roy |