[Gmsh] Trouble in 3d meshing from a surface in both directions with Netgen

Christophe Geuzaine cgeuzaine at ulg.ac.be
Thu Aug 28 19:33:57 CEST 2008


Hans Minnebo wrote:
> Hello,
> 
> I have found the problem.
> The transfinite surface 28 has to be oriented "Right" to solve the problem.
> I tried to change the orientation of this surface before trying the 
> "Right" orientation, but with no results.
> 

Indeed, you would have had to change the ordering in the definition of 
the transfinite surface.

(When possible, to define structured tetra grids, use Extrude instead of 
Transfnite: Extrude makes sure that the meshes will be conform; 
Transfinite Volume does not.)



> Yours,
> 
> Hans MINNEBO
> 
> Hans Minnebo wrote:
>> Hello,
>>
>> I am trying to mesh a cube, with a refined transfinite volume inside, 
>> I have four interface surfaces.
>> When using Netgen, I have the nodal continuity on the inner surfaces, 
>> but for one (n°28) I do not have the continuity of the elements.
>> Have you already encountered that kind of problem ? I tried versions 
>> 2.1.1 and 2.2.4.
>>
>> I join the geo, msh, picture and options.
>>
>> Yours,
>>
>> Hans MINNEBO
>> ------------------------------------------------------------------------
>>
>> // Gmsh Option File
>> //
>> // This file contains configuration options (preferences) that
>> // are loaded each time Gmsh is launched. You can create this
>> // file by hand, or let Gmsh generate it for you (with
>> // 'Tools->Options->Save as defaults'). This file can also be
>> // automatically saved every time you quit Gmsh if the option
>> // 'General.SaveOptions' is set.
>> //
>> General.MouseHoverMeshes = 1; // Enable mouse hover on meshes
>> General.Color.BackgroundGradient = {255,255,255}; // Background gradient color
>> Geometry.LineType = 1; // Display lines as solid color segments (0), 3D cylinders (1) or tapered cylinders (2)
>> Geometry.LineWidth = 1; // Display width of lines (in pixels)
>> Geometry.PointSelectSize = 4.1; // Display size of selected points (in pixels)
>> Geometry.PointSize = 2.8; // Display size of points (in pixels)
>> Geometry.Surfaces = 1; // Display geometry surfaces?
>> Geometry.SurfaceNumbers = 1; // Display surface numbers?
>> Mesh.Algorithm3D = 4; // 3D mesh algorithm (1=Tetgen+Delaunay, 4=Netgen)
>> Mesh.SurfaceFaces = 1; // Display faces of surface mesh?
>> Mesh.VolumeFaces = 1; // Display faces of volume mesh?
>> View.DisplacementFactor = 0.018150461; // Displacement amplification
>> View.IntervalsType = 3; // Type of interval display (1=iso, 2=continuous, 3=discrete, 4=numeric)
>> View.NbIso = 2; // Number of intervals
>> View.RangeType = 2; // Value scale range type (1=default, 2=custom, 3=per time step)
>> View.ShowScale = 0; // Show value scale?
>> View.VectorType = 5; // Vector display type (1=segment, 2=arrow, 3=pyramid, 4=3D arrow, 5=displacement)
>>   
>>
>> ------------------------------------------------------------------------
>>
>> ------------------------------------------------------------------------
>>
>> t1=0.2;
>> Point(1) = {-1,-1,-1,t1};
>> Point(2) = {-1,-1,1,t1};
>> Point(3) = {-1,1,1,t1};
>> Point(4) = {-1,1,-1,t1};
>> Point(5) = {1,-1,-1,t1};
>> Point(6) = {1,-1,1,t1};
>> Point(7) = {1,1,1,t1};
>> Point(8) = {1,1,-1,t1};
>> yref=0.2;
>> href=0.4;
>> t2=0.1;
>> Point(9) = {-1,-href,-href,t2};
>> Point(10) = {-1,-href,href,t2};
>> Point(11) = {-1,href+yref,href,t2};
>> Point(12) = {-1,href+yref,-href,t2};
>> Point(13) = {1,-href,-href,t2};
>> Point(14) = {1,-href,href,t2};
>> Point(15) = {1,href+yref,href,t2};
>> Point(16) = {1,href+yref,-href,t2};
>> Line(1) = {6,7};
>> Line(2) = {7,8};
>> Line(3) = {8,5};
>> Line(4) = {5,6};
>> Line(5) = {2,3};
>> Line(6) = {3,4};
>> Line(7) = {4,8};
>> Line(8) = {5,1};
>> Line(9) = {1,4};
>> Line(10) = {1,2};
>> Line(11) = {6,2};
>> Line(12) = {7,3};
>> Line(13) = {14,10};
>> Line(14) = {15,11};
>> Line(15) = {16,12};
>> Line(16) = {13,9};
>> Line(17) = {13,14};
>> Line(18) = {14,15};
>> Line(19) = {15,16};
>> Line(20) = {16,13};
>> Line(21) = {9,10};
>> Line(22) = {10,11};
>> Line(23) = {11,12};
>> Line(24) = {12,9};
>> Transfinite Line {17,19,21,23} = 10 Using Bump 2.0 ;//unchanged
>> Transfinite Line {18,20,22,24} = 10 Using Bump 3.0 ;
>> Transfinite Line {13,14,15,16} = 10 Using Progression 1.0 ;
>>
>> Line Loop(25) = {18,14,-22,-13};
>> Plane Surface(26) = {25};
>> Transfinite Surface {26} = {10,11,14,15} ;
>> Line Loop(27) = {19,15,-23,-14};
>> Plane Surface(28) = {27};
>> Transfinite Surface {28} = {11,12,15,16} ;
>> Line Loop(29) = {21,-13,-17,16};
>> Plane Surface(30) = {29};
>> Transfinite Surface {30} = {9,10,13,14} ;
>> Line Loop(31) = {24,21,22,23};
>> Plane Surface(32) = {31};
>> Transfinite Surface {32} = {9,10,11,12} ;
>> Line Loop(33) = {19,20,17,18};
>> Plane Surface(34) = {33};
>> Transfinite Surface {34} = {13,14,15,16} ;
>> Line Loop(35) = {15,24,-16,-20};
>> Plane Surface(36) = {35};
>> Transfinite Surface {36} = {9,12,13,16} ;
>> Line Loop(37) = {1,12,-5,-11};
>> Plane Surface(38) = {37};
>> Line Loop(39) = {10,-11,-4,8};
>> Plane Surface(40) = {39};
>> Line Loop(41) = {3,8,9,7};
>> Plane Surface(42) = {41};
>> Line Loop(43) = {2,-7,-6,-12};
>> Plane Surface(44) = {43};
>> Line Loop(45) = {3,4,1,2};
>> Plane Surface(46) = {45,33};
>> Line Loop(47) = {6,-9,10,5};
>> Plane Surface(48) = {47,31};
>> Physical Point(51) = {4};
>> Physical Point(52) = {8};
>> Physical Point(53) = {3};
>> Physical Surface(1) = {38};
>> Physical Surface(2) = {42};
>> Surface Loop(56) = {30,26,28,36,32,34};
>> Volume(57) = {56};
>> Transfinite Volume {57} = {9,10,11,12,13,14,15,16};
>> Surface Loop(58) = {48,44,46,42,40,38,26,28,36,30};
>> Volume(59) = {58};
>> Physical Volume(3) = {57,59};
>>   
> 
> 
> _______________________________________________
> 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