[Gmsh] Problems with embedded crack

olivier jamond olivier.jamond at gmail.com
Tue Sep 21 09:17:10 CEST 2010


Hi,

I am a PhD student and I am working with evolving cracks in 
finite-elements modelization. I am dealing with a finite-elements patch 
located in the vicinity of the crack tip. Its mesh has to be regenerated 
at each step of the propagation in order to fit the crack. So I generate 
automatically a .geo files and call gmsh at each step of the 
propagation. Some time ago, I asked in this mailling list how to 
introduce cracks with gmsh. I had been advised to use the command 
"Line{x} In Surface{y}".

But in some cases, some elements do not respect this constraint and 
cross the line (with the 3 2D mesh algorithms), which is really 
problematic in my developments. Here is such a case:

Point(1) = {2.200000,5.000000,0};
Point(2) = {2.223310,4.711260,0};
Point(3) = {2.292634,4.429998,0};
Point(4) = {2.406179,4.163498,0};
Point(5) = {2.561003,3.918664,0};
Point(6) = {2.753096,3.701836,0};
Point(7) = {2.977483,3.518629,0};
Point(8) = {3.228353,3.373789,0};
Point(9) = {3.499209,3.271067,0};
Point(10) = {3.783034,3.213124,0};
Point(11) = {4.072479,3.201460,0};
Point(12) = {4.360046,3.236377,0};
Point(13) = {4.638289,3.316971,0};
Point(14) = {4.900000,3.441154,0};
Point(15) = {5.138402,3.605711,0};
Point(16) = {5.347319,3.806379,0};
Point(17) = {5.521342,4.037962,0};
Point(18) = {5.655963,4.294460,0};
Point(19) = {5.747695,4.569232,0};
Point(20) = {5.794163,4.855160,0};
Point(21) = {5.794163,5.144840,0};
Point(22) = {5.747695,5.430768,0};
Point(23) = {5.655963,5.705540,0};
Point(24) = {5.521342,5.962038,0};
Point(25) = {5.347319,6.193621,0};
Point(26) = {5.138402,6.394289,0};
Point(27) = {4.900000,6.558846,0};
Point(28) = {4.638289,6.683029,0};
Point(29) = {4.360046,6.763623,0};
Point(30) = {4.072479,6.798540,0};
Point(31) = {3.783034,6.786876,0};
Point(32) = {3.499209,6.728933,0};
Point(33) = {3.228353,6.626211,0};
Point(34) = {2.977483,6.481371,0};
Point(35) = {2.753096,6.298164,0};
Point(36) = {2.561003,6.081336,0};
Point(37) = {2.406179,5.836502,0};
Point(38) = {2.292634,5.570002,0};
Point(39) = {2.223310,5.288740,0};
Line(1) = {1,2};
Line(2) = {2,3};
Line(3) = {3,4};
Line(4) = {4,5};
Line(5) = {5,6};
Line(6) = {6,7};
Line(7) = {7,8};
Line(8) = {8,9};
Line(9) = {9,10};
Line(10) = {10,11};
Line(11) = {11,12};
Line(12) = {12,13};
Line(13) = {13,14};
Line(14) = {14,15};
Line(15) = {15,16};
Line(16) = {16,17};
Line(17) = {17,18};
Line(18) = {18,19};
Line(19) = {19,20};
Line(20) = {20,21};
Line(21) = {21,22};
Line(22) = {22,23};
Line(23) = {23,24};
Line(24) = {24,25};
Line(25) = {25,26};
Line(26) = {26,27};
Line(27) = {27,28};
Line(28) = {28,29};
Line(29) = {29,30};
Line(30) = {30,31};
Line(31) = {31,32};
Line(32) = {32,33};
Line(33) = {33,34};
Line(34) = {34,35};
Line(35) = {35,36};
Line(36) = {36,37};
Line(37) = {37,38};
Line(38) = {38,39};
Line(39) = {39,1};
Line Loop(40) = 
{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39};
Plane Surface(41) = {40};
//Recombine Surface{41};
Point(40) = {2.600000,5.000000,0};
Point(41) = {2.618130,4.775424,0};
Point(42) = {2.672049,4.556665,0};
Point(43) = {2.760362,4.349388,0};
Point(44) = {2.880780,4.158961,0};
Point(45) = {3.030186,3.990317,0};
Point(46) = {3.204709,3.847823,0};
Point(47) = {3.399830,3.735169,0};
Point(48) = {3.610496,3.655275,0};
Point(49) = {3.831249,3.610208,0};
Point(50) = {4.056372,3.601135,0};
Point(51) = {4.280036,3.628293,0};
Point(52) = {4.496447,3.690977,0};
Point(53) = {4.700000,3.787564,0};
Point(54) = {4.885424,3.915553,0};
Point(55) = {5.047915,4.071628,0};
Point(56) = {5.183266,4.251748,0};
Point(57) = {5.287971,4.451247,0};
Point(58) = {5.359319,4.664958,0};
Point(59) = {5.395460,4.887347,0};
Point(60) = {5.395460,5.112653,0};
Point(61) = {5.359319,5.335042,0};
Point(62) = {5.287971,5.548753,0};
Point(63) = {5.183266,5.748252,0};
Point(64) = {5.047915,5.928372,0};
Point(65) = {4.885424,6.084447,0};
Point(66) = {4.700000,6.212436,0};
Point(67) = {4.496447,6.309023,0};
Point(68) = {4.280036,6.371707,0};
Point(69) = {4.056372,6.398865,0};
Point(70) = {3.831249,6.389792,0};
Point(71) = {3.610496,6.344725,0};
Point(72) = {3.399830,6.264831,0};
Point(73) = {3.204709,6.152177,0};
Point(74) = {3.030186,6.009683,0};
Point(75) = {2.880780,5.841039,0};
Point(76) = {2.760362,5.650612,0};
Point(77) = {2.672049,5.443335,0};
Point(78) = {2.618130,5.224576,0};
Line(42) = {40,41};
Line(43) = {41,42};
Line(44) = {42,43};
Line(45) = {43,44};
Line(46) = {44,45};
Line(47) = {45,46};
Line(48) = {46,47};
Line(49) = {47,48};
Line(50) = {48,49};
Line(51) = {49,50};
Line(52) = {50,51};
Line(53) = {51,52};
Line(54) = {52,53};
Line(55) = {53,54};
Line(56) = {54,55};
Line(57) = {55,56};
Line(58) = {56,57};
Line(59) = {57,58};
Line(60) = {58,59};
Line(61) = {59,60};
Line(62) = {60,61};
Line(63) = {61,62};
Line(64) = {62,63};
Line(65) = {63,64};
Line(66) = {64,65};
Line(67) = {65,66};
Line(68) = {66,67};
Line(69) = {67,68};
Line(70) = {68,69};
Line(71) = {69,70};
Line(72) = {70,71};
Line(73) = {71,72};
Line(74) = {72,73};
Line(75) = {73,74};
Line(76) = {74,75};
Line(77) = {75,76};
Line(78) = {76,77};
Line(79) = {77,78};
Line(80) = {78,40};
Line{42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80} 
In Surface{41};
Point(79) = {-1.000000,5.000000,0};
Point(80) = {4.000000,5.000000,0};
Line(81) = {79,80};
Line{81} In Surface{41};

Field[1]=MathEval;
Field[1].F ="0.080000+( 1-Exp( 
-((x-4.000000)^2+(y-5.000000)^2)/((1.600000)^2) ) )*(0.400000-0.080000)";
Background Field = 1;

Is there something wrong with my input file or any kind of bug (I am 
using gmsh 2.4.2) ?

Thanks,

Best regards,

Olivier Jamond