This commit is contained in:
2025-11-25 13:29:00 +08:00
parent 07736d3f92
commit 99bc4b2494
13 changed files with 296 additions and 0 deletions

76
gmsh/cube_tetra3d4.geo Normal file
View File

@@ -0,0 +1,76 @@
//+
Point(1) = {0, 0, 0, 0.1};
//+
Point(2) = {1, 0, 0, 0.1};
//+
Point(3) = {0, 1, 0, 0.1};
//+
Point(4) = {1, 1, 0, 0.1};
//+
Line(1) = {1, 2};
//+
Line(2) = {2, 4};
//+
Line(3) = {4, 3};
//+
Line(4) = {3, 1};
//+
Curve Loop(1) = {4, 1, 2, 3};
//+
Plane Surface(1) = {1};
//+
Extrude {0, 0, 1} {
Surface{1};
}
//+
Delete {
Surface{26};
}
//+
Delete {
Surface{26};
}
//+
Delete {
Volume{1};
}
//+
Delete {
Surface{26};
}
//+
Point(15) = {0.5, 0.5, 1.0, 0.1};
//+
Line(21) = {15, 10};
//+
Line(22) = {15, 14};
//+
Line(23) = {15, 5};
//+
Line(24) = {15, 6};
//+
Curve Loop(2) = {7, -21, 24};
//+
Surface(26) = {2};
//+
Curve Loop(3) = {21, 8, -22};
//+
Surface(27) = {3};
//+
Curve Loop(4) = {22, 9, -23};
//+
Surface(28) = {4};
//+
Curve Loop(5) = {23, 6, -24};
//+
Surface(29) = {5};
//+
Surface Loop(1) = {26, 17, 1, 13, 29, 28, 27, 21, 25};
//+
Volume(1) = {1};
//+
Physical Surface("top", 30) = {27};
//+
Physical Surface("bottom", 31) = {1};
//+
Physical Volume("body", 32) = {1};

112
gmsh/square_quad2d4.geo Normal file
View File

@@ -0,0 +1,112 @@
//+
Point(1) = {0, 0, 0, 0.02};
//+
Point(2) = {1, 0, 0, 0.02};
//+
Point(3) = {1, 1, 0, 0.01};
//+
Point(4) = {0.5, 1, 0, 0.01};
//+
Point(5) = {0, 1, 0, 0.02};
//+
Line(1) = {1, 2};
//+
Line(2) = {2, 3};
//+
Line(3) = {3, 4};
//+
Line(4) = {4, 5};
//+
Line(5) = {5, 1};
//+
Point(6) = {0.25, 0.25, 0, 0.05};
//+
Point(7) = {0.75, 0.25, 0, 0.02};
//+
Point(8) = {0.75, 0.75, 0, 0.02};
//+
Point(9) = {0.25, 0.75, 0, 0.02};
//+
Point(10) = {0.5, 0.5, 0, 0.01};
//+
Point(11) = {0.6, 0.5, 0, 0.01};
//+
Point(12) = {0.6, 0.6, 0, 0.01};
//+
Point(13) = {0.5, 0.6, 0, 0.01};
//+
Line(6) = {6, 7};
//+
Line(7) = {7, 8};
//+
Line(8) = {8, 9};
//+
Line(9) = {9, 6};
//+
Line(10) = {10, 11};
//+
Line(11) = {11, 12};
//+
Line(12) = {12, 13};
//+
Line(13) = {13, 10};
//+
Point(14) = {0.5, 0.9, 0.0, 0.1};
//+
Point(15) = {1.0, 0.95, 0.0, 0.01};
//+
Point(16) = {0.5, 0.95, 0.0, 0.01};
//+
Delete {
Curve{2};
}
//+
Delete {
Point{14};
}
//+
Line(14) = {2, 15};
//+
Line(15) = {15, 3};
//+
Line(16) = {15, 16};
//+
Line(17) = {16, 4};
//+
Curve Loop(1) = {16, 17, -3, -15};
//+
Plane Surface(1) = {1};
//+
Curve Loop(2) = {12, 13, 10, 11};
//+
Plane Surface(2) = {2};
//+
Curve Loop(3) = {8, 9, 6, 7};
//+
Plane Surface(3) = {2, 3};
//+
Curve Loop(4) = {4, 5, 1, 14, 16, 17};
//+
Plane Surface(4) = {3, 4};
//+
Physical Surface("area1", 18) = {2};
//+
Physical Surface("area2", 19) = {3};
//+
Physical Surface("area3", 20) = {4};
//+
Physical Surface("area4", 21) = {1};
//+
Physical Curve("left", 22) = {5};
//+
Physical Curve("right", 23) = {14, 15};
//+
Physical Curve("bottom", 24) = {1};
//+
Physical Curve("top_left", 25) = {4};
//+
Physical Curve("top_right", 26) = {3};
Mesh.RecombinationAlgorithm = 2; // 或 3尝试不同算法
Mesh.SubdivisionAlgorithm = 1; // 细分后全四边形

108
gmsh/square_tri2d3.geo Normal file
View File

@@ -0,0 +1,108 @@
//+
Point(1) = {0, 0, 0, 0.02};
//+
Point(2) = {1, 0, 0, 0.02};
//+
Point(3) = {1, 1, 0, 0.01};
//+
Point(4) = {0.5, 1, 0, 0.01};
//+
Point(5) = {0, 1, 0, 0.02};
//+
Line(1) = {1, 2};
//+
Line(2) = {2, 3};
//+
Line(3) = {3, 4};
//+
Line(4) = {4, 5};
//+
Line(5) = {5, 1};
//+
Point(6) = {0.25, 0.25, 0, 0.05};
//+
Point(7) = {0.75, 0.25, 0, 0.02};
//+
Point(8) = {0.75, 0.75, 0, 0.02};
//+
Point(9) = {0.25, 0.75, 0, 0.02};
//+
Point(10) = {0.5, 0.5, 0, 0.01};
//+
Point(11) = {0.6, 0.5, 0, 0.01};
//+
Point(12) = {0.6, 0.6, 0, 0.01};
//+
Point(13) = {0.5, 0.6, 0, 0.01};
//+
Line(6) = {6, 7};
//+
Line(7) = {7, 8};
//+
Line(8) = {8, 9};
//+
Line(9) = {9, 6};
//+
Line(10) = {10, 11};
//+
Line(11) = {11, 12};
//+
Line(12) = {12, 13};
//+
Line(13) = {13, 10};
//+
Point(14) = {0.5, 0.9, 0.0, 0.1};
//+
Point(15) = {1.0, 0.95, 0.0, 0.01};
//+
Point(16) = {0.5, 0.95, 0.0, 0.01};
//+
Delete {
Curve{2};
}
//+
Delete {
Point{14};
}
//+
Line(14) = {2, 15};
//+
Line(15) = {15, 3};
//+
Line(16) = {15, 16};
//+
Line(17) = {16, 4};
//+
Curve Loop(1) = {16, 17, -3, -15};
//+
Plane Surface(1) = {1};
//+
Curve Loop(2) = {12, 13, 10, 11};
//+
Plane Surface(2) = {2};
//+
Curve Loop(3) = {8, 9, 6, 7};
//+
Plane Surface(3) = {2, 3};
//+
Curve Loop(4) = {4, 5, 1, 14, 16, 17};
//+
Plane Surface(4) = {3, 4};
//+
Physical Surface("area1", 18) = {2};
//+
Physical Surface("area2", 19) = {3};
//+
Physical Surface("area3", 20) = {4};
//+
Physical Surface("area4", 21) = {1};
//+
Physical Curve("left", 22) = {5};
//+
Physical Curve("right", 23) = {14, 15};
//+
Physical Curve("bottom", 24) = {1};
//+
Physical Curve("top_left", 25) = {4};
//+
Physical Curve("top_right", 26) = {3};