[Gmsh] Hybrid mesh and combine triangles in quadrilaterals
Fabian
f.braennstroem at gmx.de
Sun Nov 9 18:25:18 CET 2008
Hi Christophe,
Christophe Geuzaine wrote:
> Fabian wrote:
>
>> Hi Christophe,
>>
>> thanks a lot!
>>
>> Actually, it seems that I wasted a lot of time to create a hex mesh for
>> a room airflow setup with a jet just in the middle of one wall.
>> I attached my approach. It looks like, that I could have done it a lot
>> easier and with much less transfinite surfaces/volumnes using 'Extrude'.
>> Though, do you think that it could be a problem to expand the inlet
>> section just like in my attached approach using extrude? The middle
>> section should expand, whereas the other part of the room would become
>> smaller in the x-direction...
>>
>
> Hi Fabian - Unfortunately no... But I don't think it would be too
> complicated to add such a feature(?)
>
> In the meantime we've added an automatic way to compute the corners of
> the transfinite interpolation for surfaces. (You can now just use
> "Transfinite Surface{1,2,3,4};" if the surfaces 1...4 are simple
> surfaces that only have 3 or 4 bounding vertices. For more complicated
> surfaces you'll still need to specify the corners by hand. Idem for
> volumes.). The patch should be available in tomorrow's nightly build.
>
>
Nice feature! Are there any plans for the volume with simple ones? Would
be great :-)
Regards!
Fabian
>
>> Regards!
>> Fabian
>>
>>
>> Christophe Geuzaine wrote:
>>
>>> Fabian wrote:
>>>
>>>
>>>> Hi Christophe,
>>>>
>>>> Christophe Geuzaine wrote:
>>>>
>>>>
>>>>> Fabian wrote:
>>>>>
>>>>>
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> I just saw the geometry and wonder, if there is a chance to extrude
>>>>>> the
>>>>>>
>>>>> sure: cf. attached file.
>>>>>
>>>>>
>>>> Oh, thanks! Am I able to declare any progression or bump to the
>>>> extrude volume as well? Would be great.
>>>>
>>>>
>>>>
>>> You can specify the number of elements and the relative height of each
>>> extruded layer. For example:
>>>
>>> Extrude {0, 0, 1} {
>>> Surface{9, 1};
>>> Layers{{1,1,1,1,1,1}, {0.05,0.15,0.5,0.85,0.95,1}};
>>> Recombine;
>>> }
>>>
>>> You could thus generate a progression with something like this:
>>>
>>> n = 6;
>>> r = 2;
>>> a = (r - 1) / (r^n - 1);
>>> one[0] = 1;
>>> layer[0] = a;
>>> For i In {1:n-1}
>>> one[i] = 1;
>>> layer[i] = layer[i-1] + a * r^i;
>>> EndFor
>>> Extrude {0, 0, 1} { Surface{9, 1}; Layers{one[], layer[]}; Recombine; }
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>> Fabian
>>>>
>>>>
>>>>
>>>>
>>>>>
>>>>>
>>>>>
>>>>>> surfaces and create a transfinite volume?
>>>>>> It's probably not working due to more than six surfaces building
>>>>>> the volumen!? Would be nice, if this would work, though...
>>>>>>
>>>>>> Fabian
>>>>>>
>>>>>> Christophe Geuzaine wrote:
>>>>>>
>>>>>>
>>>>>>> Durufle Marc wrote:
>>>>>>>
>>>>>>>
>>>>>>>> Hi,
>>>>>>>> I have two questions :
>>>>>>>>
>>>>>>>> 1- How do you create hybrid meshes in 2-D (quad-dominant with a
>>>>>>>> few triangles) ?
>>>>>>>> Until now, I am using the Recombine option, but often I get
>>>>>>>> non-convex quadrilaterals.
>>>>>>>> In the picture attached to this message, you can see that two
>>>>>>>> elements (in black) are non-convex
>>>>>>>> quads and that's a problem ... So, often I change the
>>>>>>>> characterisc length in the hope that I will have only
>>>>>>>> fine quadrilaterals. Is it possible to require that all
>>>>>>>> quadrilaterals are convex ?
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>> Yes. In your file you use
>>>>>>>
>>>>>>> Recombine Surface {1,s0[0]} = 100;
>>>>>>>
>>>>>>> which means that you allow quads with angles between 90-100 and
>>>>>>> 90+100 degrees (which does not make sense).
>>>>>>>
>>>>>>> Use
>>>>>>>
>>>>>>> Recombine Surface {1,s0[0]} = 45;
>>>>>>>
>>>>>>> instead, which will allow angles between 90-45=45 and 90+45=135
>>>>>>> degrees. (45 is the default if you don't specify anything, i.e.,
>>>>>>> with just "Recombine Surface {1,s0[0]}".)
>>>>>>>
>>>>>>> We are working on an automatic full quad algorithm, but it's not
>>>>>>> ready yet. In the meantime for simple geometries you could also
>>>>>>> use Transfinite meshes to generate a full quad mesh (see attached
>>>>>>> file).
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> 2- In 3-D, when I try "Recombine Volume", it doesn't work. So,
>>>>>>>> how is it possible with gmsh
>>>>>>>> to create 3-D hexahedral-dominant meshes (with some tets,
>>>>>>>> pyramids and wedges) ?
>>>>>>>>
>>>>>>>>
>>>>>>> Non. Your only choices for generating hex/prism/pyramid meshes are
>>>>>>> extruded (see "Extrude Surface") or transfinite (see "Transfinite
>>>>>>> Volume") grids.
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>> Thank you for your help.
>>>>>>>>
>>>>>>>> PS : I am using gmsh 2.24
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> ------------------------------------------------------------------------
>>>>>>>>
>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> 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
>>>>>>>
>>>>>>>
>>>>>> _______________________________________________
>>>>>> gmsh mailing list
>>>>>> gmsh at geuz.org
>>>>>> http://www.geuz.org/mailman/listinfo/gmsh
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>
>
>