|
[Sponsors] | |||||
|
|
|
#1 |
|
New Member
Wouter
Join Date: May 2014
Posts: 26
Rep Power: 13 ![]() |
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};
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! |
|
|
|
|
|
|
|
|
#2 |
|
Senior Member
|
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 |
|
|
|
|
|
|
|
|
#3 |
|
New Member
Wouter
Join Date: May 2014
Posts: 26
Rep Power: 13 ![]() |
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 |
| Display Modes | |
|
|
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 |
| GMSH Boundary layer randomly create cells inside surface | tomm450 | Mesh Generation & Pre-Processing | 0 | February 10, 2018 06:34 |
| Basic Nozzle-Expander Design | karmavatar | CFX | 20 | March 20, 2016 09:44 |
| Problem in setting Boundary Condition | Madhatter92 | CFX | 12 | January 12, 2016 05:39 |
| Error finding variable "THERMX" | sunilpatil | CFX | 8 | April 26, 2013 08:00 |