# [Gmsh] GMSH: 3D boundary layer

 Register Blogs Members List Search Today's Posts Mark Forums Read January 26, 2015, 09:51 GMSH: 3D boundary layer #1 New Member   Wouter Join Date: May 2014 Posts: 26 Rep Power: 11 Dear all, I am trying to create a 3D mesh of a flat plate with an structured part for the boundary layer. This is the code which I am using: Code: ```//Including Boudnary layer rsf = 1; plate_width = 0.05; plate_length = 0.1; Angle = 3 * Pi/180; bl_th = 3e-3; n_pl = 300; n_pw = 150; prog = 1.1; n = 40; elem_bl = 1e-2; elem_far = 5e-2; //Geomtrie Point(1) = {0,0,0,elem_bl}; //circle point for farfield conditions Point(100) = {0,0, plate_width/2, elem_bl}; Point(101) = {0,0,0, elem_bl}; Point(102) = {plate_length, 0, plate_width/2, elem_bl}; Point(103) = {plate_length, 0, 0, elem_bl}; Point(104) = {plate_length/2, -plate_length*Tan(Angle), plate_width/2, elem_bl}; Point(105) = {plate_length/2, -plate_length*Tan(Angle), 0, elem_bl}; Point(106) = {plate_length, -plate_length*Tan(Angle), plate_width/2, elem_bl}; Point(107) = {plate_length, -plate_length*Tan(Angle), 0, elem_bl}; Line(100) = {100,101}; Line(101) = {100,102}; Line(102) = {101,103}; Line(103) = {102,103}; Line(104) = {100,104}; Line(105) = {101,105}; Line(106) = {105,107}; Line(107) = {104,106}; Line(108) = {106,107}; Line(109) = {103,107}; Line(110) = {106,102}; Line(111) = {105,104}; Line Loop(100) = {100, 102, -103, -101}; Line Loop(101) = {101, -110, -107, -104}; Line Loop(102) = {103, 109, -108, 110}; Line Loop(103) = {102, 109, -106, -105}; Line Loop(104) = {100, 105, 111,-104}; Line Loop(105) = {111, 107, 108, -106}; Plane Surface(100) = {100}; Plane Surface(101) = {101}; Plane Surface(102) = {102}; Plane Surface(103) = {103}; Plane Surface(104) = {104}; Plane Surface(105) = {105}; //boundary layer Point(300) = {0, bl_th, plate_width/2, elem_bl}; Point(301) = {0, bl_th, 0, elem_bl}; Point(302) = {plate_length, bl_th, plate_width/2, elem_bl}; Point(303) = {plate_length, bl_th, 0, elem_bl}; Line(310) = {300,100}; Line(311) = {101,301}; Line(312) = {301,300}; Line(313) = {300,302}; Line(314) = {302,102}; Line(315) = {302,303}; Line(316) = {303,103}; Line(317) = {303,301}; Line Loop(300) = {100,311,312,310}; Line Loop(301) = {310,101,-314,-313}; Line Loop(302) = {103,-316,-315,314}; Line Loop(303) = {102,-316,317,-311}; Line Loop(304) = {312,313,315,317}; Plane Surface(300) = {300}; Plane Surface(301) = {301}; Plane Surface(302) = {302}; Plane Surface(303) = {303}; Plane Surface(304) = {304}; Transfinite Line{101,102} = n_pl; Transfinite Line{100,103} = n_pw; Transfinite Surface(100); Recombine Surface(100); Transfinite Line{313,317} = n_pl; Transfinite Line{312,315} = n_pw; Transfinite Surface(304); Recombine Surface(304); Transfinite Line{311,-310} = n Using Progression prog; Transfinite Line{312,100} = n_pw; Transfinite Surface(300); Recombine Surface(300); Transfinite Line{-314,-310} = n Using Progression prog; Transfinite Line{313,101} = n_pl; Transfinite Surface(301); Recombine Surface(301); Transfinite Line{-314,-316} = n Using Progression prog; Transfinite Line{315,103} = n_pw; Transfinite Surface(302); Recombine Surface(302); Transfinite Line{311,-316} = n Using Progression prog; Transfinite Line{317,102} = n_pl; Transfinite Surface(303); Recombine Surface(303); Surface Loop(1) = {300,301,302,304,101,102,104,105}; Surface Loop(300) = {100,304,300,301,302,303}; //farfield Point(20) = {-rsf, 0, 0, elem_far}; Point(21) = {0, rsf, 0, elem_far}; Point(22) = {rsf , 0, 0, elem_far}; Point(23) = {0, -rsf, 0, elem_far}; Point(24) = {0 , 0, rsf, elem_far}; Circle(21) = {20,1,21}; Circle(22) = {21,1,22}; Circle(23) = {22,1,23}; Circle(24) = {23,1,20}; Circle(25) = {20,1,24}; Circle(26) = {24,1,22}; Circle(29) = {24,1,21}; Circle(32) = {23,1,24}; Line Loop(21) = {-21,25,29}; Ruled Surface(21) = {21}; Line Loop(22) = {26,-22,-29}; Ruled Surface(22) = {22}; Line Loop(23) = {21,22,23,24}; Plane Surface(23) = {23,103,303}; Line Loop(25) = {26, 23, 32}; Ruled Surface(25) = {25}; Line Loop(26) = {25, -32, 24}; Ruled Surface(26) = {26}; Surface Loop(2) = {21,22,23,25,26}; Volume(1) = {2,1}; Volume(300) = {300}; Physical Volume(1) = {1,300}; Physical Surface("farfield") = {21,22,23,24,25,26,27,28}; Physical Surface("ns") = {100,101,102,104,105}; Physical Surface("sym") = {23};``` However when I "run" this code in GMSH I get the error: "Error: Cannot build pyramids on non manifold faces". Is there something wrong in my code, or is GMSH not capable of generating a structured and unstructured mesh in 3D? Thank you for your help!   January 26, 2015, 10:45 #2 Senior Member   Alexey Matveichev Join Date: Aug 2011 Location: Nancy, France Posts: 1,930 Rep Power: 38  Hi, Second link in Google search "can not build pyramids on non manifold surfaces" http://www.geuz.org/pipermail/gmsh/2013/008232.html And follow-up by Christophe Geuzaine http://www.geuz.org/pipermail/gmsh/2013/008323.html   February 4, 2015, 07:41 #3 New Member   Wouter Join Date: May 2014 Posts: 26 Rep Power: 11 Thank you for your reply. I didn't understand the tutorial (and that it contained the answer), I will look into it. I will post my final .geo file if i succeed.  Tags boundary layer, gmsh, structured, unstructured Thread Tools Search this Thread Show Printable Version Email this Page Search this Thread: Advanced Search Display Modes Linear Mode Switch to Hybrid Mode Switch to Threaded Mode Posting Rules You may not post new threads You may not post replies You may not post attachments You may not edit your posts BB code is On Smilies are On [IMG] code is On HTML code is OffTrackbacks are Off Pingbacks are On Refbacks are On Forum Rules Similar Threads Thread Thread Starter Forum Replies Last Post [snappyHexMesh] snappyHexMesh Boundary Layer at Corner panpanzhong OpenFOAM Meshing & Mesh Conversion 5 July 3, 2018 06:53 tomm450 Mesh Generation & Pre-Processing 0 February 10, 2018 06:34 karmavatar CFX 20 March 20, 2016 09:44 Madhatter92 CFX 12 January 12, 2016 05:39 sunilpatil CFX 8 April 26, 2013 08:00

All times are GMT -4. The time now is 08:10. 