[Gmsh] Q-Morph algorithm on parametric space: questions related to the c++ code.

Christophe Geuzaine cgeuzaine at ulg.ac.be
Wed Mar 9 09:05:08 CET 2011


Hello Jean-Baptiste,

I think the easiest would be to integrate your code right after the 
triangulation, so that you have directly access to the parametric 
coordinates of the vertices.

Have a look e.g. at the optimization & recombination routines in 
Mesh/meshGFaceOptimize.cpp. You could then call your own code at the end 
of the meshGenerator() routine in Mesh/meshGFace.cpp

Don't hesitate to ping us if you need help while implementing!

Christophe


On 07/03/11 09:57, Jean_Baptiste Faes wrote:
>
> Hi David,
>
> Thanks a lot for your answer.
>
> Yes, I know the recombine command. But it is not an advancing front method providing well-aligned rows of quadrilaterals parallel to the boundary of the domain (see Int. J. Numer. Meth. Engng. 44, 1317—1340 (1999)).
>
> That is the reason why I have implemented this small code I would like to link to gmsh. But there is something my code is not (yet) able to do: meshing of arbitrarily curved surfaces. I thus would like (if possible) to make use of the parametric space defined in gmsh.
>
> I would be gratefull if you could forward my mail to some of your C++ developpers, in order to have a better understanding of which part of the code I should modify to this end.
>
> Very best regards,
> JB FAES
>
>
>> Hi Jean-Baptiste,
>>
>> not a direct answer, but have you read this (username:
>> gmsh, password: gmsh)  ?
>>
>> https://geuz.org/trac/gmsh/wiki/BlossomQuad
>>
>> and others related pages ? ( https://geuz.org/trac/gmsh )
>>
>> Regards,
>>
>> Dave
>>
>> --
>> David Colignon, Ph.D.
>> Collaborateur Logistique du F.R.S.-FNRS
>> CÉCI - Consortium des Équipements de Calcul Intensif
>> ACE - Applied&  Computational Electromagnetics
>> Institut Montefiore B28
>> Université de Liège
>> 4000 Liège - BELGIQUE
>> Tél: +32 (0)4 366 37 32
>> Fax: +32 (0)4 366 29 10
>> WWW:    http://hpc.montefiore.ulg.ac.be/
>> Agenda: http://www.google.com/calendar/embed?src=david.colignon%40gmail.com
>>
>> On 06/03/11 17:31, Jean_Baptiste Faes wrote:
>>> Dear gmsh developper's team,
>>>
>>> I am Jean-Baptiste FAES, quantum physicist. Since some
>> months, I am interested in computational fluid dynamics. I
>> thus learned about it and tried to do some test cases in
>> fluid-flow modeling. In most of my applications I make use
>> of your software "gmsh", because it is very convenient to
>> use.
>>>
>>> I discovered during my studies that hexahedral mesh
>> offers the best support for CFD calculations using finite
>> volume method. Unfortunately, gmsh doesn't offer yet an
>> unstructured hexaedral mesh generator. I thus decided to do
>> my own one, based on the H-Morph algorithm. My aim is to
>> incorporate it in gmsh, but I faced some problems to
>> understand your C++ code. I thus was wondering if you could
>> help me on one or two points.
>>>
>>> I am currently working on Q-Morph algorithm. My
>> computer code uses as input an stl file that is output from
>> a triangulated surface meshed with gmsh. You can see in
>> attached file some examples of 2D surfaces meshed with gmsh,
>> and then converted to quad with my program (and visualized
>> with gmsh in geo format). It works quite well for plane
>> surfaces, or surfaces with small curvature. Now I would like
>> to take advantage of the parametric coordinates used in
>> gmsh. Indeed, if I could apply the Q-Morph algorithm
>> directly on the parametric 2D space used in gmsh, I suppose
>> that I would be able to mesh every type of surface.
>>>
>>> My first question is thus the following: Where in your
>> code can I extract the parametric mesh ? I found that some
>> 'writeMSH' routines have an argument 'saveParametric',
>> but I'm not sure the variables '_u' and '_v' correspond to
>> the 2D-parametric coordinates.
>>>
>>> My second question is: once I have transformed the
>> triangular mesh into a quad mesh, how can I put this mesh in
>> gmsh in such a way it is recognized as a 3D surface mesh
>> that will be further used for volume meshing ?
>>>
>>> I thank you very much for your attention.
>>>
>>> Best regards,
>>> JB FAES
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> gmsh mailing list
>>> gmsh at geuz.org
>>> http://www.geuz.org/mailman/listinfo/gmsh
>>
>>
>
>
>
>
> _______________________________________________
> gmsh mailing list
> gmsh at geuz.org
> http://www.geuz.org/mailman/listinfo/gmsh


-- 
Prof. Christophe Geuzaine
University of Liege, Electrical Engineering and Computer Science
http://www.montefiore.ulg.ac.be/~geuzaine