

cl1 = 1;

Point(1) = {1, 0, 0, cl1};
Point(2) = {0, 1, 0, cl1};
Point(3) = {-1, 0, 0, cl1};
Point(4) = {0, -1, 0, cl1};
Point(5) = {0, 0, 0, cl1};

Circle(1) = {1,5,2};
Circle(2) = {2,5,3};
Circle(3) = {3,5,4};
Circle(4) = {4,5,1};

Line(5) = {2, 5};
Line(6) = {5, 4};

Line Loop(11) = {1, 5, 6, 4};
Line Loop(12) = {2, 3, -6, -5};

Plane Surface(201) = {11};
Plane Surface(202) = {12};

Recombine Surface{201};

// http://gmsh.info/doc/texinfo/gmsh.html#t3_002egeo
num1[] = Extrude {0,0,1} { Surface{201, 202}; Layers{1}; Recombine;};
num2[] = Extrude {0,0,-1} { Surface{202}; Layers{1};};


Physical Volume("Elements", 600) = {num1[1], num2[1]};

Physical Point   ("Points A", 301) = {1, 4};
Physical Point   ("Points B", 302) = {5};
Physical Line    ("Ligne A", 401) = {1, 2};
Physical Line    ("Ligne B", 402) = {5, 6};
Physical Surface ("Surface A", 501) = {201};
Physical Surface ("Surface B", 502) = {201, 202};
Physical Surface ("Surface C", 503) = {202, num2[0], num2[2], num2[3], num2[4], num2[5]};

Physical Volume("Volume A", 601) = {num1[1]};
Physical Volume("Volume B", 602) = {num2[1]};
Physical Volume("Volume C", 603) = {num1[1], num2[1]};

Mesh.ElementOrder = 2;
Mesh.SecondOrderIncomplete=1;
