-
Notifications
You must be signed in to change notification settings - Fork 13
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
177 additions
and
6 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,93 @@ | ||
nelemx = 2; | ||
nelemy = 2; | ||
nelemz = 1; | ||
|
||
xmin = -5000; | ||
xmax = 5000; | ||
ymin = 0; | ||
ymax = 10000; | ||
gridsize = (xmax-xmin) / nelemx; | ||
|
||
Point(1) = {xmin, ymin, gridsize}; | ||
Point(2) = {xmax, ymin, gridsize}; | ||
Point(3) = {xmax, ymax, gridsize}; | ||
Point(4) = {xmin, ymax, gridsize}; | ||
|
||
Line(1) = {1, 2}; | ||
Line(2) = {2, 3}; | ||
Line(3) = {3, 4}; | ||
Line(4) = {4, 1}; | ||
|
||
|
||
npx = nelemx + 1; | ||
npy = nelemy + 1; | ||
|
||
//Horizontal sides | ||
Transfinite Line {1, 3} = npx; //Ceil((xmax-xmin)/gridsize) Using Progression 1; | ||
//Vertical sides | ||
Transfinite Line {4, -2} = npy Using Progression 1.0; | ||
|
||
|
||
Line Loop(11) = {4, 1, 2, 3}; | ||
Plane Surface(12) = {11}; | ||
|
||
Transfinite Surface {12}; | ||
Recombine Surface {12}; | ||
|
||
|
||
//------------------------------------------------------------------------------- | ||
//Boundary tagging | ||
//------------------------------------------------------------------------------- | ||
// At this level, Gmsh knows everything to display the rectangular surface 1 and | ||
// to mesh it. An optional step is needed if we want to group elementary | ||
// geometrical entities into more meaningful groups, e.g. to define some | ||
// mathematical ("domain", "boundary"), functional ("left wing", "fuselage") or | ||
// material ("steel", "carbon") properties. | ||
// | ||
// Such groups are called "Physical Groups" in Gmsh. By default, if physical | ||
// groups are defined, Gmsh will export in output files only mesh elements that | ||
// belong to at least one physical group. (To force Gmsh to save all elements, | ||
// whether they belong to physical groups or not, set `Mesh.SaveAll=1;', or | ||
// specify `-save_all' on the command line.) Physical groups are also identified | ||
// by tags, i.e. strictly positive integers, that should be unique per dimension | ||
// (0D, 1D, 2D or 3D). Physical groups can also be given names. | ||
// | ||
// Here we define a physical curve that groups the left, bottom and right curves | ||
// in a single group (with prescribed tag 5); and a physical surface with name | ||
// "My surface" (with an automatic tag) containing the geometrical surface 1: | ||
// | ||
Physical Point("boundary", 1) = {1, 2, 3, 4}; | ||
Physical Curve("free_slip", 2) = {1, 2, 3, 4}; | ||
Physical Surface("domain") = {1}; | ||
|
||
// | ||
// You can save the mesh in older | ||
// versions of the MSH format: | ||
// | ||
// - In the GUI: open `File->Export', enter your `filename.msh' and then pick | ||
// the version in the dropdown menu. | ||
// - On the command line: use the `-format' option (e.g. `gmsh file.geo -format | ||
// msh2 -2'). | ||
// - In a `.geo' script: add `Mesh.MshFileVersion = x.y;' for any version | ||
// number `x.y'. | ||
// - As an alternative method, you can also not specify the format explicitly, | ||
// and just choose a filename with the `.msh2' or `.msh4' extension. | ||
|
||
// Note that starting with Gmsh 3.0, models can be built using other geometry | ||
// kernels than the default built-in kernel. By specifying | ||
// | ||
// SetFactory("OpenCASCADE"); | ||
// | ||
// any subsequent command in the `.geo' file would be handled by the OpenCASCADE | ||
// geometry kernel instead of the built-in kernel. Different geometry kernels | ||
// have different features. With OpenCASCADE, instead of defining the surface by | ||
// successively defining 4 points, 4 curves and 1 curve loop, one can define the | ||
// rectangular surface directly with | ||
// | ||
// Rectangle(2) = {.2, 0, 0, .1, .3}; | ||
// | ||
// The underlying curves and points could be accessed with the `Boundary' or | ||
// `CombinedBoundary' operators. | ||
// | ||
// See e.g. `t16.geo', `t18.geo', `t19.geo' or `t20.geo' for complete examples | ||
// based on OpenCASCADE, and `demos/boolean' for more. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,79 @@ | ||
$MeshFormat | ||
4.1 0 8 | ||
$EndMeshFormat | ||
$PhysicalNames | ||
3 | ||
0 1 "boundary" | ||
1 2 "free_slip" | ||
2 3 "domain" | ||
$EndPhysicalNames | ||
$Entities | ||
4 4 1 0 | ||
1 -5000 0 5000 1 1 | ||
2 5000 0 5000 1 1 | ||
3 5000 10000 5000 1 1 | ||
4 -5000 10000 5000 1 1 | ||
1 -5000 0 5000 5000 0 5000 1 2 2 1 -2 | ||
2 5000 0 5000 5000 10000 5000 1 2 2 2 -3 | ||
3 -5000 10000 5000 5000 10000 5000 1 2 2 3 -4 | ||
4 -5000 0 5000 -5000 10000 5000 1 2 2 4 -1 | ||
12 -5000 0 5000 5000 10000 5000 0 4 4 1 2 3 | ||
$EndEntities | ||
$Nodes | ||
9 9 1 9 | ||
0 1 0 1 | ||
1 | ||
-5000 0 5000 | ||
0 2 0 1 | ||
2 | ||
5000 0 5000 | ||
0 3 0 1 | ||
3 | ||
5000 10000 5000 | ||
0 4 0 1 | ||
4 | ||
-5000 10000 5000 | ||
1 1 1 1 | ||
5 | ||
-8.792085282038897e-09 0 5000 0.4999999999991208 | ||
1 2 1 1 | ||
6 | ||
5000 4999.999999993852 5000 0.4999999999993852 | ||
1 3 1 1 | ||
7 | ||
8.792085282038897e-09 10000 5000 0.4999999999991208 | ||
1 4 1 1 | ||
8 | ||
-5000 5000.000000014197 5000 0.4999999999985802 | ||
2 12 1 1 | ||
9 | ||
0 5000.000000004025 5000 5000.000000004025 0 | ||
$EndNodes | ||
$Elements | ||
9 16 1 16 | ||
0 1 15 1 | ||
1 1 | ||
0 2 15 1 | ||
2 2 | ||
0 3 15 1 | ||
3 3 | ||
0 4 15 1 | ||
4 4 | ||
1 1 1 2 | ||
5 1 5 | ||
6 5 2 | ||
1 2 1 2 | ||
7 2 6 | ||
8 6 3 | ||
1 3 1 2 | ||
9 3 7 | ||
10 7 4 | ||
1 4 1 2 | ||
11 4 8 | ||
12 8 1 | ||
2 12 3 4 | ||
13 4 8 9 7 | ||
14 7 9 6 3 | ||
15 8 1 5 9 | ||
16 9 5 2 6 | ||
$EndElements |