[Gmsh] Create a Boundary Layer around a blade

Javier de la Sierra jawisr at gmail.com
Sat May 16 15:42:32 CEST 2015


Hi again,
I finally could mesh my 2D airfoil with boundary layer. I was trying to 
mesh it selecting only the surfaces to apply the BL field. After selecting 
also all the edges and points in surfaces boundaries it meshes is ok. I 
attach the files because it could be usefull for other users (whitcomb2). 
This is the result in 2D mesh.


If anyone can answer general questions about BL field I asked in my 
previous message I would be really thankful because I don't understand very 
well the field working. 

Now, I am trying to mesh a 3D wing with a winglet but I have problems since 
gmsh is not able to mesh the surfaces. I attach the files ("ala.stp" and 
"ala.geo") and a image of the weird mesh.
As seen in the first picture the BL seems ok, at least in 2D.


However the rest of the mesh is not good:
   
I attach also the step and geo files of the wing so anyone can help me.
Thanks for your help!!

El viernes, 15 de mayo de 2015, 14:08:20 (UTC+2), Javier de la Sierra 
escribió:
>
> Hi Alexander,
> I know it has been a while since your last answer, but I have to try.
> I need to create a boundary layer arround a wing imported in STEP. I try 
> with Boundary Layer Field but I can't make it work. Could you make your 
> boundary layer? Can you explain to me how this field works? A general 
> explanation of size fields would be really helpful. 
> I attach my code so you can take a look.
>
> Please take into account that my wing is shaped by surfaces 5 and 6 
> (intrados and extrados). Since I want to run a 2D case the wing is placed 
> between two planes.
>
> //Boundary Layer
> Field[2] = BoundaryLayer;
> Field[2].Quads = 0;
> Field[2].hfar = 1;
> Field[2].hwall_n = 1;
> Field[2].hwall_t = 2;
> Field[2].thickness = 10;
> Field[2].FacesList = {5, 6};
> Field[2].AnisoMax = 1000000;
> Field[2].IntersectMetrics = 1;
> Background Field = 2; 
>
> I don't even know how big must be hwall and hfar parameters. If my chord 
> is 1000 mm, how large should these parameters be if I want a 10 mm BL? I 
> know boundary layer depends on y+, I just want to know if these parameters 
> are mm, m or some kind of ratio.
> And finally I'd like to know how "Background Field" works. If I set my 
> Boundary Layer field [2] as background, the whole mesh is refined with the 
> same size (tetra). If I set another field as background, the boundary layer 
> field is not noticed. 
>
> Thank you very much and I hope you can help me,
>
> El domingo, 9 de febrero de 2014, 15:04:26 (UTC+1), Alexander Tismer 
> escribió:
>>
>> Dear Christophe, 
>>
>> many thanks for your help. 
>>
>> If I try to create the layer by extrusion I get an error: 
>>
>> "Impossible to extrude entity 8 (of type 306)" 
>>
>> As I mentioned in the first post I create my geometry using my 
>> own-written subclasses of GFace, GVertex and GEdge. 
>> Is it necessary to code the extrusion-function for my own geometry entity 
>> types? 
>>
>> After spending some hours to the gmsh code and to the manual I figured 
>> out another way. I used a BoundaryLayer field. 
>>
>> Field[1] = BoundaryLayer; 
>> Field[1].FacesList = {1,3,8,9}; 
>> Field[1].hfar = .5; 
>> Field[1].hwall_n = .5; 
>> Field[1].hwall_t = .5; 
>> Field[1].thickness = 10.; 
>> Field[1].ratio = 1.1; 
>> Field[1].Quads = 0; 
>> Field[1].IntersectMetrics = 1; 
>> BoundaryLayer Field = 1; 
>>
>> Using the mentioned field I get a mesh with a boundary layer. The mesh 
>> looks nice, but if I convert it by using "gmshToFoam" and check it with 
>> "checkMesh" I get some errors. The mesh fails the open boundary check. 
>>
>> ***Boundary openness (-0.00152301 -0.000276836 -0.00087618) possible hole 
>> in boundary description. 
>>  ***Open cells found, max cell openness: 1, number of open cells 21 
>>
>> The boundary layer looks very fine. Please find attached two pictures. 
>>
>> If I don't create a boundary layer then my mesh is ok (according to 
>> checkMesh). But openfoam runs into problems with the periodic patches 
>> (cyclicAMI). I figured out that it is possible to set a master surface to a 
>> surface and gmsh copies the mesh from the master surface. I try to do that 
>> with my own function: 
>>
>> void gmshVolume::setPeriodicPairOfFaces( GModel *gm, int const 
>> numFaceMaster, std::vector<int> const & EdgeListMaster,int const 
>> numFaceSlave, std::vector<int> const & EdgeListSlave) const { 
>>                  
>> int NEdges=EdgeListMaster.size(); 
>> GFace *gf = gm->getFaceByTag(abs(numFaceSlave)); 
>> gf->setMeshMaster(numFaceMaster); 
>>         for (int i = 0; i < NEdges; i++){ 
>>                 gf->edgeCounterparts[EdgeListSlave[i]] = 
>> EdgeListMaster[i]; 
>>                 GEdge *ges = gm->getEdgeByTag(abs(EdgeListSlave[i])); 
>>                 ges->setMeshMaster(EdgeListMaster[i]); 
>>         } 
>> } 
>>
>> Gmsh tries to mesh but ends with 
>>
>> Error   : Only rotations or translations can be currently taken into 
>> account for periodic faces: face 2 not meshed 
>>
>> Isn't it enough to set the master edges to edgeCounterparts on the slave 
>> surface? Because I'm sure that my two surfaces are axially symmetric. 
>>
>> Thanks 
>> Alex 
>>
>>
>>
>>
>>
>> -----Ursprüngliche Nachricht----- 
>> Von: Christophe Geuzaine [mailto:cgeu... at ulg.ac.be] 
>> Gesendet: Freitag, 7. Februar 2014 19:12 
>> An: Alexander Tismer 
>> Cc: gm... at geuz.org 
>> Betreff: Re: [Gmsh] Create a Boundary Layer around a blade 
>>
>>
>> On 07 Feb 2014, at 19:10, Christophe Geuzaine <cgeu... at ulg.ac.be> wrote: 
>>
>> > 
>> > On 06 Feb 2014, at 10:05, Alexander Tismer <
>> alexande... at ihs.uni-stuttgart.de> wrote: 
>> > 
>> >> Hello, 
>> >> 
>> >> I try to create a boundary layer around a blade of a hydraulic turbine 
>> with gmsh. 
>> >> 
>> >> According to the paper “Gmsh: a three-dimensional finite element mesh 
>> generator with built-in pre- and post-processing facilities” (page 18-19) 
>> gmsh is able to create such a layer from a set of source surfaces. For me 
>> it is not really clear how to do it. 
>> >> Has anybody an example geo file? 
>> >> Furthermore I want to do that with my own written subclasses of GEdge, 
>> GFace and GVertex using gmsh as a library. Is this also possible? Currently 
>> I created a 3-d mesh of my channel using my own written classes 
>> successfully. However I’m in trouble with the boundary layer creation 
>> around the blade, hub and shroud. 
>> >> 
>> > 
>> > Dear Alexander, 
>> > 
>> > The feature mentioned in the paper can be accessed by simply using the 
>> "Extrude" command (see the attached example). 
>>
>> With the attachment: 
>>
>>
>> > This creates actual geometrical entities for the layer. A more 
>> "classical" boundary layer mesh generator (which does not create new 
>> entities, but simply extrudes a layer inside the volume) is also under 
>> development, but it's not documented yet. 
>> > 
>> > Christophe 
>> > 
>> >> Any help is really appreciated. 
>> >> 
>> >> Many Thanks 
>> >> Alex 
>> >> _______________________________________________ 
>> >> gmsh mailing list 
>> >> gm... 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 
>> > 
>> > 
>> > 
>>
>> -- 
>> Prof. Christophe Geuzaine 
>> University of Liege, Electrical Engineering and Computer Science 
>> http://www.montefiore.ulg.ac.be/~geuzaine 
>>
>>
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.geuz.org/pipermail/gmsh/attachments/20150516/3d337aec/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: whitcomb2.geo
Type: application/octet-stream
Size: 608 bytes
Desc: not available
URL: <http://www.geuz.org/pipermail/gmsh/attachments/20150516/3d337aec/attachment-0002.geo>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: whitcomb2.stp
Type: application/octet-stream
Size: 66762 bytes
Desc: not available
URL: <http://www.geuz.org/pipermail/gmsh/attachments/20150516/3d337aec/attachment-0002.stp>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ala.geo
Type: application/octet-stream
Size: 818 bytes
Desc: not available
URL: <http://www.geuz.org/pipermail/gmsh/attachments/20150516/3d337aec/attachment-0003.geo>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ala.stp
Type: application/octet-stream
Size: 1274747 bytes
Desc: not available
URL: <http://www.geuz.org/pipermail/gmsh/attachments/20150516/3d337aec/attachment-0003.stp>