[Gmsh] 1D high-order meshing
Martin Vymazal
martin.vymazal at vki.ac.be
Sat May 9 18:46:08 CEST 2015
Hello John,
thank you for the link to your mesh generator and for the hint regarding mesh
quality. I will certainly take a look at the git repo.
I'm working with a method different from DG at this moment, but I agree with
you: optimized node placement is necessary in order to have a stable solver.
For p = 6 and higher, my simulations are not stable with equidistant node
spacing (not even for scalar advection). The way I deal with the problem is
inside the solver as you desribed: I load a curved gmsh mesh and prior to the
actual simulation, I move the nodes to an optimized configuration in reference
space, then I project back to the physical space using the original nodes for
coordinate interpolation within each element. Maybe this is not optimal as you
say, but for lack of time and better tools this is what I've been using so
far.
I work with 'warpblend' node distribution (Tim Warburton: 'An explicit
construction of interpolation nodes on the simplex'), for which there is an
algorithm applicable to any element order.
I'm sorry for sending another copy of this email to your private mail account.
My mistake.
Martin
On Saturday, May 09, 2015 12:11:36 PM John Moore wrote:
> I ran the case using the latest stable release. To me, it seems that the
> p=7 mesh is fine. The fact that the nodes are clustered a little oddly
> should not significantly effect the quality of the element. GMSH indicates
> that the minimum element quality measure is 0.46, which is not too bad.
>
> If you would like better quality elements, you can use the -ho_min
> parameter command line parameter. I used -ho_min 0.9, and got a mesh where
> the minimum mesh quality was > 0.9, which is really quite a good.
>
> Just an observation from using high-order methods: for p > ~ 5, optimized
> node spacing should really be used to obtain the full benefit of high order
> methods. GMSH currently only supports equi-spaced nodes. You can generate
> optimal node locations yourself based on the equispaced GMSH nodes, but
> this may not result in high quality elements. The optimization really needs
> to be done using whatever node interpolations you want to end up using.
>
> That being said, I have written a high-order mesh generator that can
> generate and optimize high order elements using either interpolation type
> and also insert boundary layers. It reads in a linear GMSH mesh and an
> OpenCascade compatible geometry file, and writes out a high order GMSH
> mesh. The caveat is it requires the geometry to be represented as a step or
> brep entity (i.e. cannot use GMSH's internal geometry representations).
>
> If you are interested in using it, I'd be happy to help you out. Here's a
> link to the source (note, I need to update the repository. Currently it
> doesn't compile):
>
> https://github.com/johnmoore4/MeshOpt
> <https://github.com/johnmoore4/MeshOpt>
>
> Regards,
> John