[Gmsh] incorrect char length (and a host of other problems)
Anthony Costa
acosta at vdov.net
Fri Feb 15 15:49:12 CET 2008
Well, you're certainly right about that! However, upon fixing those
errors (there were others later), I now get a bug report and seg fault
(though all other errors are now fixed). Attached is the output and
new file. At lower or higher mesh densities I get various other
errors, but it always ends in a seg fault.
Anthony
--
Info : Increasing process stack size (8192 kB < 16 MB)
Info : 'gmsh-nightly-20080208 -3 -optimize expansion-uniform.geo '
started on Fri Feb 15 09:46:17 2008
Info : Reading 'expansion-uniform.geo'
Info : Jacobian Range ( 1.00000E+22,-1.00000E+22)
Info : Read 'expansion-uniform.geo'
Info : Meshing 1D...
Info : Meshing curve 1 (Line)
Info : Meshing curve 2 (Line)
Info : Meshing curve 3 (Line)
Info : Meshing curve 4 (Line)
Info : Meshing curve 5 (Line)
Info : Meshing curve 6 (Line)
Info : Meshing curve 7 (Line)
Info : Meshing curve 8 (Line)
Info : Meshing curve 9 (Line)
Info : Meshing curve 10 (Line)
Info : Meshing curve 11 (Line)
Info : Meshing curve 12 (Line)
Info : Meshing curve 17 (Circle)
Info : Meshing curve 18 (Circle)
Info : Meshing curve 19 (Circle)
Info : Meshing curve 20 (Circle)
Info : Meshing curve 50 (Circle)
Info : Meshing curve 51 (Line)
Info : Meshing curve 52 (Line)
Info : Meshing curve 54 (Circle)
Info : Meshing curve 55 (Line)
Info : Meshing curve 58 (Circle)
Info : Meshing curve 59 (Line)
Info : Meshing curve 62 (Circle)
Info : Meshing curve 66 (Line)
Info : Meshing curve 67 (Circle)
Info : Meshing curve 68 (Circle)
Info : Meshing curve 69 (Circle)
Info : Meshing curve 70 (Circle)
Info : Mesh 1D complete (0.020001 s)
Info : Mesh
Info : Meshing 2D...
Info : Meshing surface 38 (Plane, MeshAdapt+Delaunay)
Fatal : Segmentation violation (invalid memory reference)
: ------------------------------------------------------
: You have discovered a bug in Gmsh! You may report it
: by e-mail (together with any helpful data permitting to
: reproduce it) to <gmsh at geuz.org>
debug!
Aborted (core dumped)
--
// conver to meters
ctm = 0.001;
// characteristic length
lc = 0.1*ctm;
// resolved length
rc = 0.1*ctm;
negx = 0*ctm;
negy = -50*ctm;
negz = -50*ctm;
posx = 250*ctm;
posy = 50*ctm;
posz = 50*ctm;
Point(1) = {negx,negy,negz,lc};
Point(2) = {posx,negy,negz,lc};
Point(3) = {posx,posy,negz,lc};
Point(4) = {negx,posy,negz,lc};
Point(5) = {negx,negy,posz,lc};
Point(6) = {posx,negy,posz,lc};
Point(7) = {posx,posy,posz,lc};
Point(8) = {negx,posy,posz,lc};
Line(1) = {4,3};
Line(2) = {3,7};
Line(3) = {7,8};
Line(4) = {8,4};
Line(5) = {4,1};
Line(6) = {1,5};
Line(7) = {5,8};
Line(8) = {5,6};
Line(9) = {6,2};
Line(10) = {2,1};
Line(11) = {2,3};
Line(12) = {7,6};
// center of sprayer
Point(20) = {0,0,0,rc};
// length of sprayer into the box
spraylength = 25*ctm;
// inner capillary diameter
incapdiameter = .25*ctm;
// outer capillary diameter
outcapdiameter = 1.5875*ctm;
// inner and outer spray points on box wall
Point(34) = {0,-0.5*outcapdiameter,0,rc};
Point(35) = {0,0.5*outcapdiameter,0,rc};
Point(36) = {0,0,-0.5*outcapdiameter,rc};
Point(37) = {0,0,0.5*outcapdiameter,rc};
// circle definitions
Circle(17) = {37,20,34};
Circle(18) = {34,20,36};
Circle(19) = {36,20,35};
Circle(20) = {35,20,37};
// major plane surfaces at sim boundaries
Line Loop(37) = {1,2,3,4};
Plane Surface(38) = {37};
Line Loop(39) = {1,-11,10,-5};
Plane Surface(40) = {39};
Line Loop(41) = {10,6,8,9};
Plane Surface(42) = {41};
Line Loop(43) = {7,-3,12,-8};
Plane Surface(44) = {43};
Line Loop(45) = {11,2,12,9};
Plane Surface(46) = {45};
Line Loop(47) = {4,5,6,7};
Line Loop(48) = {19,20,17,18};
Plane Surface(49) = {47,48};
// expansion of outer capillary region into box
Extrude {spraylength,0,0} {
Line{20,19,18,17};
Point{20};
}
// creation of inner capillary termination region
Point(80) = {spraylength,-0.5*incapdiameter,0,rc};
Point(81) = {spraylength,0.5*incapdiameter,0,rc};
Point(82) = {spraylength,0,-0.5*incapdiameter,rc};
Point(83) = {spraylength,0,0.5*incapdiameter,rc};
// circles in inner capillary termination region
Circle(67) = {81,39,83};
Circle(68) = {83,39,80};
Circle(69) = {80,39,82};
Circle(70) = {82,39,81};
// creation of outer and inner capillary regions with normal in
capillary extension direction
Line Loop(71) = {50,62,58,54};
Line Loop(72) = {67,68,69,70};
Plane Surface(73) = {71,72};
Plane Surface(74) = {72};
Surface Loop(75) = {44,49,38,40,46,42,61,57,53,65,73,74};
// the simulation volume
Volume(76) = {75};
On Fri, Feb 15, 2008 at 5:31 AM, David Colignon
<David.Colignon at ulg.ac.be> wrote:
> Hi Anthony,
>
> points 36 and 37 have 5 coordinates, and the 4th (for the characteristic length) is 0 !
>
> Cheers,
>
> Dave
>
>
> --
> David Colignon, Ph.D.
> ACE - Applied & Computational Electromagnetics
> Institut Montefiore B28
> Université de Liège
> 4000 Liège - BELGIQUE
> Tél: +32 (0)4 366 37 32
> Fax: +32 (0)4 366 29 10
> http://ace.montefiore.ulg.ac.be
>
>
>
>
> Anthony Costa wrote:
> > I am receiving an odd error message saying
> > Error : Incorrect char. length lc = 0: using default instead
> >
> > This is patently false in my mesh. The value is well defined and of
> > proper order.
> >
> > The mesh is a 3D box with a cylindrical capillary travelling through
> > the middle of the 3D box.
> >
> > After the returned errors, I get a series of other errors, which
> > eventually lead to the failure of the mesh compilation. This is true
> > at a variety of characteristic lengths. One of these is:
> > Error : 3 identical points in Qtest
> >
> > There is obviously something I have overlooked here. Any advice would
> > be much appreciated. GEO file attached. I am using a recent nightly
> > build: 20080208.
> >
> > Thanks!
> > Anthony
> >
> > ---
> >
> > // conver to meters
> > ctm = 0.001;
> >
> > // characteristic length
> > lc = 0.01*ctm;
> >
> > // resolved length
> > rc = 0.01*ctm;
> >
> > negx = 0*ctm;
> > negy = -50*ctm;
> > negz = -50*ctm;
> > posx = 250*ctm;
> > posy = 50*ctm;
> > posz = 50*ctm;
> >
> > Point(1) = {negx, negy, negz, lc};
> > Point(2) = {posx, negy, negz, lc};
> > Point(3) = {posx, posy, negz, lc};
> > Point(4) = {negx, posy, negz, lc};
> > Point(5) = {negx, negy, posz, lc};
> > Point(6) = {posx, negy, posz, lc};
> > Point(7) = {posx, posy, posz, lc};
> > Point(8) = {negx, posy, posz, lc};
> > Line(1) = {4,3};
> > Line(2) = {3,7};
> > Line(3) = {7,8};
> > Line(4) = {8,4};
> > Line(5) = {4,1};
> > Line(6) = {1,5};
> > Line(7) = {5,8};
> > Line(8) = {5,6};
> > Line(9) = {6,2};
> > Line(10) = {2,1};
> > Line(11) = {2,3};
> > Line(12) = {7,6};
> >
> > // center of sprayer
> > Point(20) = {0,0,0,rc};
> >
> > // length of sprayer into the box
> > spraylength = 25*ctm;
> >
> > // inner capillary diameter
> > incapdiameter = .25*ctm;
> >
> > // outer capillary diameter
> > outcapdiameter = 1.5875*ctm;
> >
> > // inner and outer spray points on box wall
> > Point(34) = {0,-0.5*outcapdiameter,0,rc};
> > Point(35) = {0,0.5*outcapdiameter,0,rc};
> > Point(36) = {0,0,-0.5*outcapdiameter,0,rc};
> > Point(37) = {0,0,0.5*outcapdiameter,0,rc};
> >
> > // circle definitions
> > Circle(17) = {37,20,34};
> > Circle(18) = {34,20,36};
> > Circle(19) = {36,20,35};
> > Circle(20) = {35,20,37};
> >
> > // major plane surfaces at sim boundaries
> > Line Loop(37) = {1,2,3,4};
> > Plane Surface(38) = {37};
> > Line Loop(39) = {1,-11,10,-5};
> > Plane Surface(40) = {39};
> > Line Loop(41) = {10,6,8,9};
> > Plane Surface(42) = {41};
> > Line Loop(43) = {7,-3,12,-8};
> > Plane Surface(44) = {43};
> > Line Loop(45) = {11,2,12,9};
> > Plane Surface(46) = {45};
> > Line Loop(47) = {4,5,6,7};
> > Line Loop(48) = {19,20,17,18};
> > Plane Surface(49) = {47,48};
> >
> > // expansion of outer capillary region into box
> > Extrude {spraylength,0,0} {
> > Line{20,19,18,17};
> > Point{20};
> > }
> >
> > // creation of inner capillary termination region
> > Point(80) = {spraylength,-(1/2)*incapdiameter,0,rc};
> > Point(81) = {spraylength,(1/2)*incapdiameter,0,rc};
> > Point(82) = {spraylength,0,-(1/2)*incapdiameter,0,rc};
> > Point(83) = {spraylength,0,(1/2)*incapdiameter,0,rc};
> >
> > // circles in inner capillary termination region
> > Circle(67) = {81,39,83};
> > Circle(68) = {83,39,80};
> > Circle(69) = {80,39,82};
> > Circle(70) = {82,39,81};
> >
> > // creation of outer and inner capillary regions with normal in
> > capillary extension direction
> > Line Loop(71) = {50,62,58,54};
> > Line Loop(72) = {67,68,69,70};
> > Plane Surface(73) = {71,72};
> > Plane Surface(74) = {72};
> > Surface Loop(75) = {44,49,38,40,46,42,61,57,53,65,73,74};
> >
> > // the simulation volume
> > Volume(76) = {75};
> >
>
--
Anthony B. Costa
Purdue University
Department of Chemistry
560 Oval Drive, #365
West Lafayette, IN 47907