[Gmsh] Question about mesh refinement with stating of characteristic lengths

Christophe Geuzaine cgeuzaine at ulg.ac.be
Mon Jul 21 20:19:47 CEST 2008


Moritz Nadler wrote:
> Hallo,
> 
> I played a bit around the field commands which I still do not really understand
> (and the manual does not say much about them), but I am not satisfied with my
> results.
> 
> How can I get soother changes in the element density where the fields are connected.
> I thought of something where you can state the length of a gradual change in the 
> element density between the density of one entity and its neighbour.
> 
> I fist thought the .DistMax statement is something like that but it seems to be 
> ignored in general.
> .DistMin determines the size of a Field but DistMax does not do anything.
> 

It does... The threshold field works like this:

LcMax -                         /------------------
                               /
                             /
                           /
LcMin -o----------------/
        |                |       |
     Attractor       DistMin   DistMax

At the moment the variation between LcMin and LcMax is always linear. It 
might be nice to code other variations (power, log, ...): have a look at 
Mesh/Field.cpp if you want to do that.

Here's an example:

// linear grading of charact lengths, from lc1 (near the attractor
// points) to lc2 (at a distance >= r away from the attractor points)

lc1 = 0.001;
lc2 = 0.1;
r = 0.5;

Point(1) = {0,0,0,lc2};
Point(2) = {1,0,0,lc2};
Point(3) = {1,1,0,lc2};
Point(4) = {0,1,0,lc2};
Line(1) = {3,2};
Line(2) = {2,1};
Line(3) = {1,4};
Line(4) = {4,3};
Line Loop(5) = {1,2,3,4};
Plane Surface(6) = {5};

Point(10) = {0.3,0.5,0};
Point(11) = {0.35,0.5,0};

Field[1] = Attractor;
Field[1].NodesList = {10,11};

Field[2] = Threshold;
Field[2].IField = 1;
Field[2].LcMin = lc1;
Field[2].LcMax = lc2;
Field[2].DistMin = lc1;
Field[2].DistMax = r;

Background Field = 2;




-- 
Prof. Christophe Geuzaine
University of Liege, Electrical Engineering and Computer Science
http://www.montefiore.ulg.ac.be/~geuzaine