npts=12; h=0.1; r1=1.0; r2=2.0; h1=2*Pi*r1/(npts*10.0); h2=2*Pi*r2/(npts*5.0); For i In {1 : npts} theta = i * 2*Pi/npts; Point(i) = {r1 * Cos(theta), r1 * Sin(theta), 0.0, h1}; EndFor For i In {1 : npts} theta = i * 2*Pi/npts; Point(i+npts) = {r2 * Cos(theta), r2 * Sin(theta), 0.0, h2}; EndFor Point(2*npts+1) = {0.0, 0.0, 0.0, h1}; For i In {1 : npts} Line(i) = {i,i+npts}; EndFor For i In {1 : npts-1} Circle(npts+i) = {i,2*npts+1,i+1}; EndFor Circle(2*npts) = {npts,2*npts+1,1}; For i In {1 : npts-1} Circle(2*npts+i) = {npts+i,2*npts+1,npts+i+1}; EndFor Circle(3*npts) = {2*npts,2*npts+1,npts+1}; For i In {1 : npts-1} Curve Loop(i) = {i, 2*npts+i, -(i+1), -(npts+i)}; Plane Surface(i) = {i}; EndFor //+ Curve Loop(npts) = {npts, 3*npts, -1, -(2*npts)}; Plane Surface(npts) = {npts}; //+ Curve Loop(npts+1) = {17, 18, 19, 20, 21, 22, 23, 24, 13, 14, 15, 16}; Plane Surface(npts+1) = {npts+1};