[Gmsh] subdividing an edge of a transfinite surface

Dr Colin J. Cotter colin.cotter at imperial.ac.uk
Tue May 11 15:08:47 CEST 2010


Dear Gmsh,
	I am running an aerodynamics problem which requires different boundary
conditions to be applied on different segments of one side of a box. I
tried to make a mesh using transfinite surface, but received the error
that the surface cannot be meshed using the transfinite algorithm. Have
I done something stupid, or is what I want not possible?

I've included the .geo file to the bottom of this email.

best wishes
--Colin

lc = 0.05;
p1 = newp; Point(p1) = {0.0, 0.0, 0, lc};
p2 = newp; Point(p2) = {0.5, 0.0, 0, lc};
p3 = newp; Point(p3) = {1.0, 0.0, 0, lc};
p4 = newp; Point(p4) = {1.5, 0.0, 0, lc};
p5 = newp; Point(p5) = {2.0, 0.0, 0, lc};
p6 = newp; Point(p6) = {2.0, 1.0, 0, lc};
p7 = newp; Point(p7) = {0.0,1.0,0,lc};

l1 = newl; Line(l1) = {p1, p2};
l2 = newl; Line(l2) = {p2, p3};
l3 = newl; Line(l3) = {p3, p4};
l4 = newl; Line(l4) = {p4, p5};
l5 = newl; Line(l5) = {p5, p6};
l6 = newl; Line(l6) = {p6, p7};
l7 = newl; Line(l7) = {p7, p1};

Line Loop(1) = {l1,l2,l3,l4,l5,l6,l7};
Plane Surface(1) = {1};

Transfinite Line{l1} = 6;
Transfinite Line{l2} = 6;
Transfinite Line{l3} = 6;
Transfinite Line{l4} = 6;
Transfinite Line{l5} = 6;
Transfinite Line{l6} = 24;
Transfinite Line{l7} = 6;

Transfinite Surface{1} = {p1,p5,p6,p7};

Mesh.Smoothing = 100;