[Gmsh] Different threshold fields around one attractor

Christophe Geuzaine cgeuzaine at ulg.ac.be
Tue Aug 26 21:10:31 CEST 2008


Moritz Nadler wrote:
> Hallo,
> 
> I still do not know how to do it. Maybe my question was badly 
> formulated, so I retry:
> 
> What I want is a mesh density around a an area that goes like this:
> 
> 
> Mesh density
> ^
> | ----------------
> |                 \
> |                  \
> |                   \
> |                    -----------
> |                               \
> |                                \
> |                                 \
> |                                  -------------
> |
> |                 ^ DistMin 1
> |                     ^ DistMax 1
> |                               ^ DistMin 2
> |                                  ^ DistMax 2
> _________________________________________________> Distance from attractor
> 
> This is what I tried to get it:
> 
> Field[2] = Threshold;
> Field[2].IField = 1;
> Field[2].LcMin = 0.001;
> Field[2].LcMax = 0.005;
> Field[2].DistMin = 0.05;
> Field[2].DistMax = 0.2;
> 
> Field[3] = Attractor;
> Field[3].NodesList = {5};
> 
> Field[4] = Threshold;
> Field[4].IField = 3;
> Field[4].LcMin = 0.005;
> Field[4].LcMax = 0.1;
> Field[4].DistMin = 0.3;
> Field[4].DistMax = 0.5;
> 
> Field[5] = Min;
> Field[5].FieldsList = {2,4};
> 
> Background Field = 5;
> 
> But it does not work. It creates only ONE area with higher density 
> around the point 5.
> 
> What do have have to do to make it work?
> 

Hi Moritz - You take the minimum of all fields with Field[5]. So you 
will never see the 0.1 max char length from Field[4] (since you impose a 
smaller one, 0.005, outside Field[2].DistMax).

Just change

Field[2].LcMax = 0.005;

into

Field[2].LcMax = 0.1;




> 
> 
> thanks it advance and
> 
> kind regards
> 
> Moritz Nadler
> 
> 
> Moritz Nadler wrote:
>> Hallo,
>>
>> I want to have 2 threshold fields around one attractor so I get get
>> one area with very fine mesh directly around the attractor point
>> from the attractor point to the DistMin value of the inner threshold 
>> field.
>> Then a linear mesh density gradient from the DistMin to DistMax value 
>> of the first threshold field where at DistMax the mesh density of the 
>> second threshold field is reached and stays until the DistMin value of 
>> the second threshold is reached
>> And then a linear density gradient from DistMin to DistMax of the 
>> second threshold field.
>>
>> What I thourght is the obvous way to do this did not work:
>>
>> Field[1] = Attractor;
>> Field[1].NodesList = {5};
>>
>> Field[2] = Threshold;
>> Field[2].IField = 1;
>> Field[2].LcMin = 0.001;
>> Field[2].LcMax = 0.005;
>> Field[2].DistMin = 0.05;
>> Field[2].DistMax = 0.2;
>>
>> Field[3] = Attractor;
>> Field[3].NodesList = {5};
>>
>> Field[4] = Threshold;
>> Field[4].IField = 3;
>> Field[4].LcMin = 0.005;
>> Field[4].LcMax = 0.1;
>> Field[4].DistMin = 0.3;
>> Field[4].DistMax = 0.5;
>>
>> Field[5] = Min;
>> Field[5].FieldsList = {2,4};
>>
>> Background Field = 5;
>>
>> Because only when both threshold fields have the same LcMax value I 
>> get 2 circles around the attractor point. If I use the above posted 
>> values the general mesh denstiy is way to high and there is only one 
>> circle in the middle.
>>
>> Does anybody know what the right gmsh semantics for my problem are?
>>
>>
>> kind regards
>>
>>
>> Moritz
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> gmsh mailing list
>> gmsh at geuz.org
>> http://www.geuz.org/mailman/listinfo/gmsh
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> gmsh mailing list
> gmsh at geuz.org
> http://www.geuz.org/mailman/listinfo/gmsh


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