Transfinite of a Volume
I am trying to mesh a box that contains a small rectangle on one face so I can tag it with a marker. I am interested in obtaining a transfinite mesh with that geometry:
The rectangle is the one in the middle of the front face, the other lines in that face are just auxiliary lines I used to get a Transfinite Mesh. When trying to make a Transfinite Volume, I get the error Error : Transfinite algorithm only available for 5- and 6-face volumes
. What are my options? The only requirement is that I can tag that small rectangle in the front face and that the mesh is structured. Here it is my script:
//+
size = 0.1;
// Bigger box
p0 = newp;
Point(p0) = {0.0, 0.0, 0.0};
p1 = newp;
Point(p1) = {0.0, 1.0, 0.0};
p2 = newp;
Point(p2) = {0.0, 1.0, 1.0};
p3 = newp;
Point(p3) = {0.0, 0.0, 1.0};
p4 = newp;
Point(p4) = {2.0, 0.0, 0.0};
p5 = newp;
Point(p5) = {2.0, 1.0, 0.0};
p6 = newp;
Point(p6) = {2.0, 1.0, 1.0};
p7 = newp;
Point(p7) = {2.0, 0.0, 1.0};
// Rectangle for Neumann
p8 = newp;
Point(p8) = {2.0, 0.4, 0.0};
p9 = newp;
Point(p9) = {2.0, 0.6, 0.0};
p10 = newp;
Point(p10) = {2.0, 0.4, 1.0};
p11 = newp;
Point(p11) = {2.0, 0.6, 1.0};
// Points for the Transfininite mesh
p12 = newp;
Point(p12) = {2.0, 0.0, 0.4};
p13 = newp;
Point(p13) = {2.0, 0.0, 0.6};
p14 = newp;
Point(p14) = {2.0, 1.0, 0.4};
p15 = newp;
Point(p15) = {2.0, 1.0, 0.6};
p16 = newp;
Point(p16) = {2.0, 0.4, 0.4};
p17 = newp;
Point(p17) = {2.0, 0.4, 0.6};
p18 = newp;
Point(p18) = {2.0, 0.6, 0.6};
p19 = newp;
Point(p19) = {2.0, 0.6, 0.4};
//+
Line(1) = {3, 7};
//+
Line(2) = {7, 12};
//+
Line(3) = {12, 11};
//+
Line(4) = {11, 8};
//+
Line(5) = {8, 4};
//+
Line(6) = {4, 3};
//+
Line(7) = {3, 2};
//+
Line(8) = {2, 1};
//+
Line(9) = {1, 4};
//+
Line(10) = {2, 6};
//+
Line(11) = {6, 15};
//+
Line(12) = {15, 16};
//+
Line(13) = {16, 7};
//+
Line(14) = {1, 5};
//+
Line(15) = {5, 9};
//+
Line(16) = {9, 10};
//+
Line(17) = {10, 6};
//+
Line(18) = {8, 14};
//+
Line(19) = {14, 13};
//+
Line(20) = {13, 5};
//+
Line(21) = {13, 17};
//+
Line(22) = {17, 9};
//+
Line(23) = {20, 20};
//+
Line(24) = {10, 20};
//+
Line(25) = {20, 19};
//+
Line(26) = {19, 12};
//+
Line(27) = {11, 18};
//+
Line(28) = {18, 14};
//+
Line(29) = {18, 19};
//+
Line(30) = {17, 20};
//+
Line(31) = {15, 20};
//+
Line(32) = {19, 16};
//+
Line(33) = {18, 17};
//+
Curve Loop(1) = {9, 6, 7, 8};
//+
Plane Surface(1) = {1};
//+
Curve Loop(2) = {1, 2, 3, 4, 5, 6};
//+
Plane Surface(2) = {2};
//+
Curve Loop(3) = {14, -20, -19, -18, 5, -9};
//+
Plane Surface(3) = {3};
//+
Curve Loop(4) = {8, 14, 15, 16, 17, -10};
//+
Plane Surface(4) = {4};
//+
Curve Loop(5) = {13, -1, 7, 10, 11, 12};
//+
Plane Surface(5) = {5};
//+
Curve Loop(6) = {26, -2, -13, -32};
//+
Plane Surface(6) = {6};
//+
Curve Loop(7) = {31, 25, 32, -12};
//+
Plane Surface(7) = {7};
//+
Curve Loop(8) = {11, 31, -24, 17};
//+
Plane Surface(8) = {8};
//+
Curve Loop(9) = {22, 16, 24, -30};
//+
Plane Surface(9) = {9};
//+
Curve Loop(10) = {30, 25, -29, 33};
//+
Plane Surface(10) = {10};
//+
Curve Loop(11) = {26, 3, 27, 29};
//+
Plane Surface(11) = {11};
//+
Curve Loop(12) = {21, -33, 28, 19};
//+
Plane Surface(12) = {12};
//+
Curve Loop(13) = {20, 15, -22, -21};
//+
Plane Surface(13) = {13};
//+
Curve Loop(14) = {28, -18, -4, 27};
//+
Plane Surface(14) = {14};
//+
Transfinite Surface {1} = {3, 2, 1, 4};
//+
Transfinite Surface {2} = {3, 4, 8, 7};
//+
Transfinite Surface {3} = {1, 4, 8, 5};
//+
Transfinite Surface {5} = {2, 3, 7, 6};
//+
Transfinite Surface {4} = {1, 2, 6, 5};
//+
Transfinite Curve {6, 7, 9, 8} = 11 Using Progression 1;
//+
Transfinite Curve {1, 10, 14, 5} = 21 Using Progression 1;
//+
Transfinite Curve {13, 26, 27, 4, 18, 20, 22, 15, 24, 17, 11, 31, 32, 2, 28, 21} = 5 Using Progression 1;
//+
Transfinite Curve {12, 25, 29, 33, 30, 16, 3, 19} = 3 Using Progression 1;
//+
Transfinite Surface {6} = {12, 7, 16, 19};
//+
Transfinite Surface {7} = {19, 16, 15, 20};
//+
Transfinite Surface {8} = {20, 15, 6, 10};
//+
Transfinite Surface {11} = {11, 12, 19, 18};
//+
Transfinite Surface {10} = {18, 19, 20, 17};
//+
Transfinite Surface {9} = {17, 20, 10, 9};
//+
Transfinite Surface {14} = {8, 11, 18, 14};
//+
Transfinite Surface {12} = {14, 18, 17, 13};
//+
Transfinite Surface {13} = {13, 17, 9, 5};
//+
Surface Loop(1) = {2, 5, 6, 11, 14, 12, 13, 3, 4, 1, 9, 8, 7, 10};
//+
Volume(1) = {1};
//+
Transfinite Volume{1} = {4, 3, 7, 8, 1, 2, 6, 5};
Thanks