[Gmsh] Periodic surfaces not working for second-order elements in gmsh4
Hulsen, M.A.
M.A.Hulsen at tue.nl
Fri Nov 23 18:07:14 CET 2018
Hi,
The following geo file is not working correctly with gmsh -3 -order 2 (I am using 4.0.5) whereas it used to work in gmsh3.0.6.
ox = 0.0;
oy = 0.0;
oz = 0.0;
lx = 4.0;
ly = 4.0;
lz = 4.0;
dx_box = 0.6;
Point(1) = {ox, oy, oz, dx_box};
Point(2) = {ox+lx, oy, oz, dx_box};
Point(3) = {ox+lx, oy, oz+lz, dx_box};
Point(4) = {ox, oy, oz+lz, dx_box};
Point(5) = {ox, oy+ly, oz, dx_box};
Point(6) = {ox+lx, oy+ly, oz, dx_box};
Point(7) = {ox+lx, oy+ly, oz+lz, dx_box};
Point(8) = {ox, oy+ly, oz+lz, dx_box};
For i In {1:8}
Physical Point(i) = i;
EndFor
Line(1) = {1, 2};
Line(2) = {2, 3};
Line(3) = {3, 4};
Line(4) = {4, 1};
Line(5) = {3, 7};
Line(6) = {7, 6};
Line(7) = {6, 2};
Line(8) = {1, 5};
Line(9) = {5, 8};
Line(10) = {8, 4};
Line(11) = {8, 7};
Line(12) = {6, 5};
Line Loop(1) = {1, 2, 3, 4};
Line Loop(2) = {2, 5, 6, 7};
Line Loop(3) = {12, 9, 11, 6};
Line Loop(4) = {4, 8, 9, 10};
Line Loop(5) = {3, -10, 11, -5};
Line Loop(6) = {1, -7, 12, -8};
For i In {1:6}
Plane Surface(i) = {i};
Physical Surface(i) = i;
EndFor
Periodic Surface 2{2,5,6,7} = 4{-4,-10,-9,-8};
Periodic Surface 6{1,-7,12,-8} = 5{-3,5,-11,10};
Periodic Surface 3{12,9,11,6}= 1{-1,-4,-3,-2};
surf_loop[0] = newsl;
Surface Loop(surf_loop[0]) = {1, 2, 3, 4, 5, 6};
Volume(1) = {surf_loop[]} ;
Physical Volume(1) = {1};
Replacing the line loops with:
Line Loop(1) = {-1,-4,-3,-2};
Line Loop(2) = {2, 5, 6, 7};
Line Loop(3) = {12, 9, 11, 6};
Line Loop(4) = {-4,-10,-9,-8};
Line Loop(5) = {-3,5,-11,10};
Line Loop(6) = {1, -7, 12, -8};
and the periodic surfaces with:
Periodic Surface {2} = {4} Translate{lx,0,0};
Periodic Surface {3} = {1} Translate{0,ly,0};
Periodic Surface {5} = {6} Translate{0,0,lz};
works both in gmsh3 and gmsh4. So I do have a workaround, but incompatibilities between 3 and 4 can lead to users avoiding the new version.
Martien Hulsen
More information about the gmsh
mailing list