[Gmsh] sphere hack
William F Mitchell
william.mitchell at nist.gov
Fri Apr 6 14:40:55 CEST 2012
I am using Gmsh to generate an initial coarse mesh for my adaptive finite
element code, PHAML (http://math.nist.gov/phaml). For this I need to determine
which, if any, boundary pieces (surfaces) contain each grid point. When using a
sphere as the domain (based on gmsh-source/demos/sphere.geo) my code was not
identifying points on the interior of a surface piece as being on the piece.
While trying to find out what was wrong I encountered a 2008 post that says
"there is a hack in the interpolation code to check if all the bounding curves
are circle arcs with the same center... in which case we consider that the patch
is on a sphere", because the transfinite interpolation does not represent a
sphere exactly. I guess this is an "undocumented feature". So what was going
wrong in my code is that I compared a point on the transfinite interpolation
surface to a mesh point that was actually on the sphere and found they were not
equal, and concluded the mesh point was not on that boundary piece.
I can deal with this, but I have two questions.
It looks to me like the hack essentially takes the line between the center of
the circle arcs and the transfinite interpolation point, and moves the point to
the intersection of that line and the sphere. Am I correct in that assessment?
Is there a way to tell Gmsh to not apply the hack? If not, why not?
Thanks,
Bill
--
William F. Mitchell
Applied and Computational Mathematics Division
National Institute of Standards and Technology
william.mitchell at nist.gov http://math.nist.gov/~WMitchell