diff --git a/benchmarks/hex/cube.geo b/benchmarks/hex/cube.geo new file mode 100644 index 0000000000000000000000000000000000000000..83c4c1299c884c8cc31d38e610553e13f87a9a85 --- /dev/null +++ b/benchmarks/hex/cube.geo @@ -0,0 +1,43 @@ +//Mesh.Algorithm = 8; //8 = delquad or 9= 2D R-tree +//Mesh.Algorithm3D = 9; // 3D R-tree +//Mesh.Recombine3DAll = 1; + +c1 = 0.125; +c2 = 0.25; +Point(1) = {1, 1, -1, c1}; +Point(2) = {-1, 1, -1, c1}; +Point(3) = {-1, -1, -1, c1}; +Point(4) = {1, -1, -1, c1}; +Point(5) = {1, 1, 1, c2}; +Point(6) = {-1, 1, 1, c2}; +Point(7) = {1, -1, 1, c2}; +Point(8) = {-1, -1, 1, c2}; +Line(1) = {7, 5}; +Line(2) = {5, 6}; +Line(3) = {6, 8}; +Line(4) = {8, 7}; +Line(5) = {7, 4}; +Line(6) = {4, 1}; +Line(7) = {1, 5}; +Line(8) = {1, 2}; +Line(9) = {2, 6}; +Line(10) = {8, 3}; +Line(11) = {3, 2}; +Line(12) = {3, 4}; +Line Loop(13) = {1, -7, -6, -5}; +Plane Surface(14) = {13}; +Line Loop(15) = {8, 9, -2, -7}; +Plane Surface(16) = {15}; +Line Loop(17) = {11, 9, 3, 10}; +Plane Surface(18) = {17}; +Line Loop(19) = {4, 5, -12, -10}; +Plane Surface(20) = {19}; +Line Loop(21) = {12, 6, 8, -11}; +Plane Surface(22) = {21}; +Line Loop(23) = {1, 2, 3, 4}; +Plane Surface(24) = {23}; +Surface Loop(25) = {14, 24, 16, 22, 20, 18}; +Volume(26) = {25}; + +//Recombine Volume {26}; + diff --git a/benchmarks/hex/quartCyl.geo b/benchmarks/hex/quartCyl.geo new file mode 100644 index 0000000000000000000000000000000000000000..e97cd43e6c40b796158baa1f6efeffb0fa0f161b --- /dev/null +++ b/benchmarks/hex/quartCyl.geo @@ -0,0 +1,54 @@ +Mesh.Algorithm = 8; //8 = delquad or 9= 2D R-tree +Mesh.Algorithm3D = 9; // 3D R-tree +Mesh.Recombine3DAll = 1; +Mesh.Lloyd = 10; + +c1 = 0.1; +c2 = 0.05; +Point(1) = {0, 0, 0.5, c2}; +Point(2) = {0, 0, -0.5, c2}; +Point(3) = {0, 1, -0.5, c1}; +Point(4) = {0, 1, 0.5, c1}; +Point(5) = {-1, 0, 0.5, c1}; +Point(6) = {-1, 0, -0.5, c1}; +Point(7) = {-0.5, 0, 0.5, c2}; +Point(8) = {-0.5, 0, -0.5, c2}; +Point(9) = {0, 0.5, -0.5, c2}; +Point(10) = {0, 0.5, 0.5, c2}; +Circle(1) = {7, 1, 10}; +Circle(2) = {8, 2, 9}; +Circle(3) = {5, 1, 4}; +Circle(4) = {6, 2, 3}; +Line(5) = {10, 4}; +Line(6) = {3, 9}; +Line(7) = {9, 10}; +Line(8) = {4, 3}; +Line(9) = {7, 5}; +Line(10) = {6, 8}; +Line(11) = {6, 5}; +Line(12) = {8, 7}; +Line Loop(13) = {5, -3, -9, 1}; +Plane Surface(14) = {13}; +Line Loop(15) = {6, -2, -10, 4}; +Plane Surface(16) = {15}; +Line Loop(17) = {7, 5, 8, 6}; +Plane Surface(18) = {17}; +Line Loop(19) = {12, 9, -11, 10}; +Plane Surface(20) = {19}; +Line Loop(21) = {1, -7, -2, 12}; +Ruled Surface(22) = {21}; +Line Loop(23) = {8, -4, 11, 3}; +Ruled Surface(24) = {23}; + +Mesh.RemeshParametrization=1; //(0) harmonic (1) conformal +Mesh.RemeshAlgorithm=0; //(0) nosplit (1) automatic (2) split metis +Compound Surface(114)={14}; +Compound Surface(116)={16}; +Compound Surface(118)={18}; +Compound Surface(120)={20}; +Compound Surface(122)={22}; +Compound Surface(124)={24}; + +Surface Loop(25) = {114, 116, 122, 120, 118, 124}; +Volume(26) = {25}; +Physical Volume(126)={26}; \ No newline at end of file diff --git a/benchmarks/hex/twoHoles.geo b/benchmarks/hex/twoHoles.geo new file mode 100644 index 0000000000000000000000000000000000000000..c263af5ca007365548fe43c2cff5388de9df5884 --- /dev/null +++ b/benchmarks/hex/twoHoles.geo @@ -0,0 +1,76 @@ +// original model from Zaqueu Ernesto da Silva (zaqueu at les.ufpb.br) +// rewritten by CG +Mesh.Algorithm = 8; //8 = delquad or 9= 2D R-tree +Mesh.Algorithm3D = 9; // 3D R-tree +Mesh.Recombine3DAll = 1; + +lc = 1; +e = 6; // thickness +w = 30; // width +r = 15; // interior radius +c = 37.5; // half length +h = 8.75; // hole center dist +rh = 4; // home radius + +Point(1) = {0, w, 0, lc}; +Point(2) = {c-w/2, w, 0, lc}; +Point(3) = {0, w, e, lc}; +Point(4) = {c-Sqrt((r+e)^2-e^2), w, e, lc}; +Point(5) = {c, w, w/2, lc}; +Point(6) = {c, w, w/2+e, lc}; +Point(7) = {c, w, 0, lc}; +Line(1) = {1,2}; +Line(2) = {3,4}; +Line(3) = {1,3}; +Circle(4) = {2,7,5}; +Circle(5) = {4,7,6}; +Symmetry {1,0,0,-c} { Duplicata { Line{1:5}; } } +Line Loop(11) = {4,-9,-6,8,7,10,-5,-2,-3,1}; +Plane Surface(12) = {11}; +v[] = Extrude {0,-w,0}{ Surface{12}; }; +Delete { Volume{v[1]}; } +Delete { Surface{55,63,43,35}; } + +Point(100) = {h, w/2, 0, lc}; +Point(101) = {h+rh, w/2, 0, lc}; +Point(102) = {h-rh, w/2, 0, lc}; +Point(103) = {h, w/2+rh, 0, lc}; +Point(104) = {h, w/2-rh, 0, lc}; +Circle(65) = {101,100,103}; +Circle(66) = {103,100,102}; +Circle(67) = {102,100,104}; +Circle(68) = {104,100,101}; +Extrude {0,0,e}{ Line{65:68}; } +Symmetry {1,0,0,-c} { Duplicata { Surface{72,76,80,84}; } } + +Line Loop(104) = {2,50,21,-54}; +Line Loop(105) = {73,77,81,69}; +Plane Surface(106) = {104,105}; +Line Loop(107) = {23,-25,-1,58}; +Line Loop(108) = {65,66,67,68}; +Plane Surface(109) = {107,108}; +Line Loop(110) = {7,42,-18,-38}; +Line Loop(111) = {103,98,93,88}; +Plane Surface(112) = {110,111}; +Line Loop(113) = {16,-34,6,30}; +Line Loop(114) = {101,86,91,96}; +Plane Surface(115) = {113,114}; + +//DEBUT DES AJOUTS +//Compound Surface(172)={72}; +//Compound Surface(176)={76}; +//Compound Surface(180)={80}; +//Compound Surface(184)={84}; + +//Compound Surface(185)={85}; +//Compound Surface(190)={90}; +//Compound Surface(195)={95}; +//Compound Surface(1100)={100}; +//FIN DES AJOUTS + +Surface Loop(116) = {47,-12,27,31,-115,64,39,112,85,90,95,100,51,-106,59,-109,-84,-72,-76,-80}; +Volume(117) = {116}; + +//DEBUT DES AJOUTS +//Physical Volume(1117) = {117}; +//FIN DES AJOUTS