diff --git a/benchmarks/2d/fissure.geo b/benchmarks/2d/fissure.geo new file mode 100644 index 0000000000000000000000000000000000000000..1b33e91c18129d5210ca91f18319cb14a0ac2ea1 --- /dev/null +++ b/benchmarks/2d/fissure.geo @@ -0,0 +1,18 @@ +eps = 1.e-3 ; + +Point(1) = {-1,-1,0,.1} ; +Point(2) = {-1,1,0,.1} ; +Point(3) = {1,-1,0,.1} ; +Point(4) = {1,1,0,.1} ; +Point(5) = {-1,0,0,.06} ; +Point(6) = {0,0,0,.03} ; +Point(7) = {-1,0+eps,0,.06} ; +Line(1) = {5,1}; +Line(2) = {1,3}; +Line(3) = {3,4}; +Line(4) = {4,2}; +Line(5) = {2,7}; +Line(6) = {7,6}; +Line(7) = {6,5}; +Line Loop(8) = {5,6,7,1,2,3,4}; +Plane Surface(9) = {8}; diff --git a/benchmarks/2d/function.geo b/benchmarks/2d/function.geo new file mode 100644 index 0000000000000000000000000000000000000000..54ce6fe371ebc182eabebc44a88473947e50c5e3 --- /dev/null +++ b/benchmarks/2d/function.geo @@ -0,0 +1,59 @@ +x = 0; +y = 0; +r = 1; +theloop = 0; + +Function myCircle + p1 = newp; + Point (p1) = {x,y,0,0.2}; + p2 = newp; + Point (p2) = {r+x,y,0,0.2}; + p3 = newp; + Point (p3) = {x,r+y,0,0.2}; + p4 = newp; + Point (p4) = {-r+x,y,0,0.2}; + p5 = newp; + Point (p5) = {x,-r+y,0,0.2}; + c1 = newreg; + Circle (c1) = {p2,p1,p3}; + c2 = newreg; + Circle (c2) = {p3,p1,p4}; + c3 = newreg; + Circle (c3) = {p4,p1,p5}; + c4 = newreg; + Circle (c4) = {p5,p1,p2}; + theloop = newreg; + Line Loop (theloop) = {c1,c2,c3,c4}; +Return + +x = 2; +y = 2; +Call myCircle; +/*loop,x,y and r should be parameters*/ +loop1 = theloop; +x = -2; +y = 2; +Call myCircle; +loop2 = theloop; +x = 2; +y = -2; +Call myCircle; +loop3 = theloop; +x = -2; +y = -2; +Call myCircle; +loop4 = theloop; + +r = 5; +x = 0; +y = 0; +Call myCircle; +loop5 = theloop; + +Plane Surface(newreg) = {loop5,loop4,loop3,loop2,loop1}; +Line(10000) = {6,11}; +Attractor Line {10000} = {1,.03,1}; + +Mesh.Algorithm = 2 ; // This is the new 2D anisotropic algorithm + + diff --git a/benchmarks/2d/transfinite.geo b/benchmarks/2d/transfinite.geo new file mode 100644 index 0000000000000000000000000000000000000000..a3a0e36fada48474f3755b1ac29a21557697d41b --- /dev/null +++ b/benchmarks/2d/transfinite.geo @@ -0,0 +1,34 @@ + +// buggy with old mesh algo! + +l = .3; +l2 = .03; +Point(1) = {-2,-1,0,l}; +Point(2) = {-2,1,0,l2}; +Point(3) = {0,-1,0,l}; +Point(4) = {0,1,0,l}; +Point(5) = {-3,-2,0,l}; +Point(6) = {-3,2,0,l2}; +Point(7) = {1,-2,0,l}; +Point(8) = {1,2,0,l}; + +Line(1) = {6,8}; +Line(2) = {8,7}; +Line(3) = {7,5}; +Line(4) = {5,6}; +Line(5) = {2,1}; +Line(6) = {1,3}; +Line(7) = {3,4}; +Line(8) = {4,2}; + +Line Loop(9) = {5,6,7,8}; +Plane Surface(10) = {9}; + +Line Loop(11) = {2,3,4,1}; +Plane Surface(12) = {11,9}; + +Transfinite Line {5:8} = 10 Using Progression 5; + +Transfinite Surface{10} = {1,3,4,2}; +Recombine Surface {10} = 30; + diff --git a/benchmarks/2d/wing.geo b/benchmarks/2d/wing.geo new file mode 100644 index 0000000000000000000000000000000000000000..a255c6694556f2e7a807cafc69810dd82695b0f0 --- /dev/null +++ b/benchmarks/2d/wing.geo @@ -0,0 +1,1081 @@ +scale = 1 ; + +lc1 = 5.e-3 *scale ; +lc2 = 1.e-2 *scale ; +lc3 = 10 *scale ; + +/* l'aile */ +Point(3895) = {1.177410e-02*scale,-2.768003e-03*scale,0*scale,lc1}; +Point(3897) = {1.081196e-02*scale,-3.794565e-03*scale,0*scale,lc1}; +Point(3896) = {1.040081e-02*scale,-4.225326e-03*scale,0*scale,lc1}; +Point(3968) = {9.501183e-03*scale,-5.167856e-03*scale,0*scale,lc1}; +Point(3995) = {8.172335e-03*scale,-6.541147e-03*scale,0*scale,lc1}; +Point(4003) = {6.820756e-03*scale,-7.914438e-03*scale,0*scale,lc1}; +Point(3857) = {5.454371e-03*scale,-9.287729e-03*scale,0*scale,lc1}; +Point(3856) = {3.534352e-03*scale,-1.119762e-02*scale,0*scale,lc1}; +Point(3860) = {7.877699e-04*scale,-1.389559e-02*scale,0*scale,lc1}; +Point(3861) = {-1.958812e-03*scale,-1.658843e-02*scale,0*scale,lc1}; +Point(3863) = {-4.705394e-03*scale,-1.930092e-02*scale,0*scale,lc1}; +Point(3864) = {-7.451976e-03*scale,-2.206110e-02*scale,0*scale,lc1}; +Point(3865) = {-1.019856e-02*scale,-2.490134e-02*scale,0*scale,lc1}; +Point(3866) = {-1.294514e-02*scale,-2.785668e-02*scale,0*scale,lc1}; +Point(3867) = {-1.569172e-02*scale,-3.097311e-02*scale,0*scale,lc1}; +Point(3868) = {-1.819787e-02*scale,-3.400697e-02*scale,0*scale,lc1}; +Point(3869) = {-1.843830e-02*scale,-3.430929e-02*scale,0*scale,lc1}; +Point(3870) = {-2.032098e-02*scale,-3.675355e-02*scale,0*scale,lc1}; +Point(3871) = {-2.233602e-02*scale,-3.950013e-02*scale,0*scale,lc1}; +Point(3872) = {-2.428062e-02*scale,-4.224671e-02*scale,0*scale,lc1}; +Point(3977) = {-2.615522e-02*scale,-4.499330e-02*scale,0*scale,lc1}; +Point(3877) = {-2.795526e-02*scale,-4.773988e-02*scale,0*scale,lc1}; +Point(3876) = {-2.966457e-02*scale,-5.048646e-02*scale,0*scale,lc1}; +Point(3878) = {-3.128951e-02*scale,-5.323304e-02*scale,0*scale,lc1}; +Point(3934) = {-3.282722e-02*scale,-5.597962e-02*scale,0*scale,lc1}; +Point(3873) = {-3.427526e-02*scale,-5.872621e-02*scale,0*scale,lc1}; +Point(3874) = {-3.563187e-02*scale,-6.147279e-02*scale,0*scale,lc1}; +Point(3875) = {-3.689577e-02*scale,-6.421937e-02*scale,0*scale,lc1}; +Point(3935) = {-3.803475e-02*scale,-6.696595e-02*scale,0*scale,lc1}; +Point(3880) = {-3.906585e-02*scale,-6.971253e-02*scale,0*scale,lc1}; +Point(3879) = {-3.999980e-02*scale,-7.245912e-02*scale,0*scale,lc1}; +Point(3881) = {-4.084348e-02*scale,-7.520570e-02*scale,0*scale,lc1}; +Point(3936) = {-4.159737e-02*scale,-7.795228e-02*scale,0*scale,lc1}; +Point(3882) = {-4.219350e-02*scale,-8.069886e-02*scale,0*scale,lc1}; +Point(3883) = {-4.268262e-02*scale,-8.344544e-02*scale,0*scale,lc1}; +Point(3885) = {-4.302180e-02*scale,-8.619203e-02*scale,0*scale,lc1}; +Point(3884) = {-4.315754e-02*scale,-8.815942e-02*scale,0*scale,lc1}; +Point(1218) = {-4.315754e-02*scale,-8.893861e-02*scale,0*scale,lc1}; +Point(3933) = {-4.315754e-02*scale,-8.955185e-02*scale,0*scale,lc1}; +Point(3996) = {-4.314894e-02*scale,-9.031190e-02*scale,0*scale,lc1}; +Point(3989) = {-4.310538e-02*scale,-9.168519e-02*scale,0*scale,lc1}; +Point(3990) = {-4.298693e-02*scale,-9.305848e-02*scale,0*scale,lc1}; +Point(3978) = {-4.281442e-02*scale,-9.443177e-02*scale,0*scale,lc1}; +Point(3979) = {-4.254831e-02*scale,-9.580506e-02*scale,0*scale,lc1}; +Point(3974) = {-4.215142e-02*scale,-9.717835e-02*scale,0*scale,lc1}; +Point(3973) = {-4.166490e-02*scale,-9.855164e-02*scale,0*scale,lc1}; +Point(3963) = {-4.107412e-02*scale,-9.992494e-02*scale,0*scale,lc1}; +Point(3947) = {-4.041096e-02*scale,-1.011964e-01*scale,0*scale,lc1}; +Point(3948) = {-4.035707e-02*scale,-1.012982e-01*scale,0*scale,lc1}; +Point(3904) = {-3.903767e-02*scale,-1.033356e-01*scale,0*scale,lc1}; +Point(3903) = {-3.766438e-02*scale,-1.048133e-01*scale,0*scale,lc1}; +Point(3946) = {-3.629109e-02*scale,-1.058804e-01*scale,0*scale,lc1}; +Point(3902) = {-3.491780e-02*scale,-1.066897e-01*scale,0*scale,lc1}; +Point(3901) = {-3.354451e-02*scale,-1.073184e-01*scale,0*scale,lc1}; +Point(3900) = {-3.217121e-02*scale,-1.078168e-01*scale,0*scale,lc1}; +Point(3908) = {-3.079792e-02*scale,-1.081973e-01*scale,0*scale,lc1}; +Point(3907) = {-2.942463e-02*scale,-1.084688e-01*scale,0*scale,lc1}; +Point(3951) = {-2.805134e-02*scale,-1.086029e-01*scale,0*scale,lc1}; +Point(3950) = {-2.667805e-02*scale,-1.086423e-01*scale,0*scale,lc1}; +Point(3847) = {-2.580700e-02*scale,-1.086440e-01*scale,0*scale,lc1}; +Point(3949) = {-2.667805e-02*scale,-1.088853e-01*scale,0*scale,lc1}; +Point(3952) = {-2.805134e-02*scale,-1.092658e-01*scale,0*scale,lc1}; +Point(3905) = {-2.942463e-02*scale,-1.096463e-01*scale,0*scale,lc1}; +Point(3906) = {-3.079792e-02*scale,-1.100268e-01*scale,0*scale,lc1}; +Point(3909) = {-3.217121e-02*scale,-1.104020e-01*scale,0*scale,lc1}; +Point(3969) = {-3.354451e-02*scale,-1.107749e-01*scale,0*scale,lc1}; +Point(3970) = {-3.491780e-02*scale,-1.111477e-01*scale,0*scale,lc1}; +Point(3997) = {-3.629109e-02*scale,-1.115205e-01*scale,0*scale,lc1}; +Point(3998) = {-3.766438e-02*scale,-1.118690e-01*scale,0*scale,lc1}; +Point(4004) = {-3.903767e-02*scale,-1.122095e-01*scale,0*scale,lc1}; +Point(3959) = {-4.041096e-02*scale,-1.125499e-01*scale,0*scale,lc1}; +Point(3960) = {-4.315754e-02*scale,-1.131897e-01*scale,0*scale,lc1}; +Point(3972) = {-4.590412e-02*scale,-1.137699e-01*scale,0*scale,lc1}; +Point(3984) = {-4.865071e-02*scale,-1.143079e-01*scale,0*scale,lc1}; +Point(3988) = {-5.139729e-02*scale,-1.147970e-01*scale,0*scale,lc1}; +Point(3961) = {-5.414387e-02*scale,-1.152035e-01*scale,0*scale,lc1}; +Point(3962) = {-5.689045e-02*scale,-1.155501e-01*scale,0*scale,lc1}; +Point(3937) = {-5.963703e-02*scale,-1.157358e-01*scale,0*scale,lc1}; +Point(3938) = {-6.238362e-02*scale,-1.158519e-01*scale,0*scale,lc1}; +Point(3886) = {-6.513020e-02*scale,-1.158332e-01*scale,0*scale,lc1}; +Point(3887) = {-6.787678e-02*scale,-1.156607e-01*scale,0*scale,lc1}; +Point(3888) = {-7.062336e-02*scale,-1.152790e-01*scale,0*scale,lc1}; +Point(3993) = {-7.199665e-02*scale,-1.150098e-01*scale,0*scale,lc1}; +Point(3994) = {-7.336994e-02*scale,-1.146075e-01*scale,0*scale,lc1}; +Point(3971) = {-7.474324e-02*scale,-1.141776e-01*scale,0*scale,lc1}; +Point(3918) = {-7.611653e-02*scale,-1.135965e-01*scale,0*scale,lc1}; +Point(3919) = {-7.748982e-02*scale,-1.129165e-01*scale,0*scale,lc1}; +Point(3920) = {-7.886311e-02*scale,-1.121014e-01*scale,0*scale,lc1}; +Point(3956) = {-8.023640e-02*scale,-1.111186e-01*scale,0*scale,lc1}; +Point(3955) = {-8.047561e-02*scale,-1.109113e-01*scale,0*scale,lc1}; +Point(3965) = {-8.160969e-02*scale,-1.098434e-01*scale,0*scale,lc1}; +Point(3966) = {-8.189452e-02*scale,-1.095380e-01*scale,0*scale,lc1}; +Point(3910) = {-8.297356e-02*scale,-1.081647e-01*scale,0*scale,lc1}; +Point(3913) = {-8.376570e-02*scale,-1.067914e-01*scale,0*scale,lc1}; +Point(3912) = {-8.435627e-02*scale,-1.054263e-01*scale,0*scale,lc1}; +Point(3911) = {-8.435982e-02*scale,-1.054181e-01*scale,0*scale,lc1}; +Point(3914) = {-8.478803e-02*scale,-1.040448e-01*scale,0*scale,lc1}; +Point(3915) = {-8.503641e-02*scale,-1.026715e-01*scale,0*scale,lc1}; +Point(3916) = {-8.516945e-02*scale,-1.012982e-01*scale,0*scale,lc1}; +Point(3917) = {-8.522183e-02*scale,-9.992494e-02*scale,0*scale,lc1}; +Point(3953) = {-8.512327e-02*scale,-9.855164e-02*scale,0*scale,lc1}; +Point(3954) = {-8.495463e-02*scale,-9.717835e-02*scale,0*scale,lc1}; +Point(3964) = {-8.467545e-02*scale,-9.580506e-02*scale,0*scale,lc1}; +Point(3975) = {-8.433113e-02*scale,-9.443177e-02*scale,0*scale,lc1}; +Point(3992) = {-8.387660e-02*scale,-9.305848e-02*scale,0*scale,lc1}; +Point(3991) = {-8.341194e-02*scale,-9.168519e-02*scale,0*scale,lc1}; +Point(3999) = {-8.280629e-02*scale,-9.031190e-02*scale,0*scale,lc1}; +Point(3939) = {-8.220063e-02*scale,-8.893861e-02*scale,0*scale,lc1}; +Point(3967) = {-8.076693e-02*scale,-8.619203e-02*scale,0*scale,lc1}; +Point(3987) = {-7.916546e-02*scale,-8.344544e-02*scale,0*scale,lc1}; +Point(3985) = {-7.886311e-02*scale,-8.298081e-02*scale,0*scale,lc1}; +Point(3986) = {-7.737820e-02*scale,-8.069886e-02*scale,0*scale,lc1}; +Point(4002) = {-7.542111e-02*scale,-7.795228e-02*scale,0*scale,lc1}; +Point(3922) = {-7.335979e-02*scale,-7.520570e-02*scale,0*scale,lc1}; +Point(4005) = {-7.112105e-02*scale,-7.245912e-02*scale,0*scale,lc1}; +Point(3851) = {-6.873828e-02*scale,-6.971253e-02*scale,0*scale,lc1}; +Point(3850) = {-6.372231e-02*scale,-6.421937e-02*scale,0*scale,lc1}; +Point(3853) = {-5.963703e-02*scale,-6.001430e-02*scale,0*scale,lc1}; +Point(3852) = {-5.414387e-02*scale,-5.469298e-02*scale,0*scale,lc1}; +Point(3849) = {-4.865071e-02*scale,-4.961204e-02*scale,0*scale,lc1}; +Point(3848) = {-4.315754e-02*scale,-4.465740e-02*scale,0*scale,lc1}; +Point(3921) = {-3.766438e-02*scale,-3.985542e-02*scale,0*scale,lc1}; +Point(3983) = {-3.491780e-02*scale,-3.750843e-02*scale,0*scale,lc1}; +Point(3982) = {-3.217121e-02*scale,-3.519259e-02*scale,0*scale,lc1}; +Point(3976) = {-2.942463e-02*scale,-3.289435e-02*scale,0*scale,lc1}; +Point(3929) = {-2.744807e-02*scale,-3.126039e-02*scale,0*scale,lc1}; +Point(3958) = {-2.667805e-02*scale,-3.062383e-02*scale,0*scale,lc1}; +Point(3928) = {-2.411032e-02*scale,-2.851380e-02*scale,0*scale,lc1}; +Point(3957) = {-2.393147e-02*scale,-2.836765e-02*scale,0*scale,lc1}; +Point(3927) = {-2.118489e-02*scale,-2.612321e-02*scale,0*scale,lc1}; +Point(3926) = {-1.843830e-02*scale,-2.390843e-02*scale,0*scale,lc1}; +Point(3925) = {-1.569172e-02*scale,-2.170681e-02*scale,0*scale,lc1}; +Point(3924) = {-1.294514e-02*scale,-1.952576e-02*scale,0*scale,lc1}; +Point(3932) = {-1.040573e-02*scale,-1.752748e-02*scale,0*scale,lc1}; +Point(3931) = {-1.019856e-02*scale,-1.736495e-02*scale,0*scale,lc1}; +Point(3930) = {-7.451976e-03*scale,-1.521330e-02*scale,0*scale,lc1}; +Point(3923) = {-4.705394e-03*scale,-1.307794e-02*scale,0*scale,lc1}; +Point(3862) = {-1.958812e-03*scale,-1.095092e-02*scale,0*scale,lc1}; +Point(3859) = {1.960946e-04*scale,-9.287729e-03*scale,0*scale,lc1}; +Point(3858) = {7.877699e-04*scale,-8.831063e-03*scale,0*scale,lc1}; +Point(3855) = {3.534352e-03*scale,-6.728705e-03*scale,0*scale,lc1}; +Point(3854) = {6.280934e-03*scale,-4.633175e-03*scale,0*scale,lc1}; +Point(3945) = {7.386845e-03*scale,-3.794565e-03*scale,0*scale,lc1}; +Point(3944) = {7.654225e-03*scale,-3.591811e-03*scale,0*scale,lc1}; +Point(3899) = {9.027516e-03*scale,-2.550448e-03*scale,0*scale,lc1}; +Point(3898) = {1.040081e-02*scale,-1.509310e-03*scale,0*scale,lc1}; +Point(3894) = {1.177410e-02*scale,-4.686545e-04*scale,0*scale,lc1}; +Point(3890) = {1.282184e-02*scale,3.253082e-04*scale,0*scale,lc1}; +Point(3893) = {1.314739e-02*scale,5.720012e-04*scale,0*scale,lc1}; +Point(3941) = {1.463351e-02*scale,1.698599e-03*scale,0*scale,lc1}; +Point(4000) = {1.644012e-02*scale,3.071890e-03*scale,0*scale,lc1}; +Point(3980) = {1.824674e-02*scale,4.445181e-03*scale,0*scale,lc1}; +Point(3846) = {1.892400e-02*scale,4.960000e-03*scale,0*scale,lc1}; +Point(3981) = {1.843389e-02*scale,4.445181e-03*scale,0*scale,lc1}; +Point(4001) = {1.712649e-02*scale,3.071890e-03*scale,0*scale,lc1}; +Point(3942) = {1.584524e-02*scale,1.698599e-03*scale,0*scale,lc1}; +Point(3940) = {1.460138e-02*scale,3.253082e-04*scale,0*scale,lc1}; +Point(3889) = {1.452068e-02*scale,2.362167e-04*scale,0*scale,lc1}; +Point(3892) = {1.335131e-02*scale,-1.047983e-03*scale,0*scale,lc1}; +Point(3891) = {1.314739e-02*scale,-1.270371e-03*scale,0*scale,lc1}; +Point(3943) = {1.209204e-02*scale,-2.421274e-03*scale,0*scale,lc1}; +Point(4063) = {4.498368e-02*scale,-9.287729e-03*scale,0*scale,lc1}; +Point(4062) = {4.610574e-02*scale,-6.541147e-03*scale,0*scale,lc1}; +Point(4061) = {4.755089e-02*scale,-3.794565e-03*scale,0*scale,lc1}; +Point(4114) = {4.934166e-02*scale,-1.047983e-03*scale,0*scale,lc1}; +Point(4153) = {5.143154e-02*scale,1.698599e-03*scale,0*scale,lc1}; +Point(4178) = {5.390637e-02*scale,4.445181e-03*scale,0*scale,lc1}; +Point(4179) = {5.571941e-02*scale,6.252892e-03*scale,0*scale,lc1}; +Point(4191) = {5.846599e-02*scale,8.699713e-03*scale,0*scale,lc1}; +Point(4203) = {6.121257e-02*scale,1.103796e-02*scale,0*scale,lc1}; +Point(4109) = {6.350284e-02*scale,1.268493e-02*scale,0*scale,lc1}; +Point(4202) = {6.670574e-02*scale,1.498818e-02*scale,0*scale,lc1}; +Point(4199) = {7.170787e-02*scale,1.817809e-02*scale,0*scale,lc1}; +Point(4201) = {7.219890e-02*scale,1.846566e-02*scale,0*scale,lc1}; +Point(4200) = {7.769207e-02*scale,2.168274e-02*scale,0*scale,lc1}; +Point(4100) = {8.318523e-02*scale,2.447113e-02*scale,0*scale,lc1}; +Point(4099) = {9.417156e-02*scale,2.953992e-02*scale,0*scale,lc1}; +Point(4045) = {1.051579e-01*scale,3.374477e-02*scale,0*scale,lc1}; +Point(4044) = {1.161442e-01*scale,3.745387e-02*scale,0*scale,lc1}; +Point(4043) = {1.271305e-01*scale,4.084705e-02*scale,0*scale,lc1}; +Point(4147) = {1.381169e-01*scale,4.362166e-02*scale,0*scale,lc1}; +Point(4146) = {1.491032e-01*scale,4.590535e-02*scale,0*scale,lc1}; +Point(4180) = {1.600895e-01*scale,4.775547e-02*scale,0*scale,lc1}; +Point(4167) = {1.710759e-01*scale,4.909090e-02*scale,0*scale,lc1}; +Point(4166) = {1.820622e-01*scale,5.028654e-02*scale,0*scale,lc1}; +Point(4134) = {1.930485e-01*scale,5.118303e-02*scale,0*scale,lc1}; +Point(4133) = {2.040348e-01*scale,5.209637e-02*scale,0*scale,lc1}; +Point(4098) = {2.150212e-01*scale,5.304431e-02*scale,0*scale,lc1}; +Point(4097) = {2.260075e-01*scale,5.389186e-02*scale,0*scale,lc1}; +Point(4042) = {2.369938e-01*scale,5.466596e-02*scale,0*scale,lc1}; +Point(4041) = {2.479802e-01*scale,5.535583e-02*scale,0*scale,lc1}; +Point(4040) = {2.589665e-01*scale,5.602171e-02*scale,0*scale,lc1}; +Point(4095) = {2.699528e-01*scale,5.660820e-02*scale,0*scale,lc1}; +Point(4096) = {2.809391e-01*scale,5.717080e-02*scale,0*scale,lc1}; +Point(4132) = {2.919255e-01*scale,5.768210e-02*scale,0*scale,lc1}; +Point(4131) = {3.029118e-01*scale,5.816077e-02*scale,0*scale,lc1}; +Point(4165) = {3.138981e-01*scale,5.861410e-02*scale,0*scale,lc1}; +Point(4164) = {3.248844e-01*scale,5.902748e-02*scale,0*scale,lc1}; +Point(4163) = {3.358708e-01*scale,5.942876e-02*scale,0*scale,lc1}; +Point(4130) = {3.468571e-01*scale,5.978313e-02*scale,0*scale,lc1}; +Point(4129) = {3.578434e-01*scale,6.012088e-02*scale,0*scale,lc1}; +Point(4094) = {3.688298e-01*scale,6.041918e-02*scale,0*scale,lc1}; +Point(4093) = {3.798161e-01*scale,6.068571e-02*scale,0*scale,lc1}; +Point(4039) = {3.908024e-01*scale,6.092523e-02*scale,0*scale,lc1}; +Point(4038) = {4.017887e-01*scale,6.111444e-02*scale,0*scale,lc1}; +Point(4037) = {4.127751e-01*scale,6.128792e-02*scale,0*scale,lc1}; +Point(4092) = {4.237614e-01*scale,6.139510e-02*scale,0*scale,lc1}; +Point(4091) = {4.347477e-01*scale,6.148330e-02*scale,0*scale,lc1}; +Point(4128) = {4.457341e-01*scale,6.152051e-02*scale,0*scale,lc1}; +Point(4127) = {4.567204e-01*scale,6.152534e-02*scale,0*scale,lc1}; +Point(4162) = {4.677067e-01*scale,6.149964e-02*scale,0*scale,lc1}; +Point(4161) = {4.786930e-01*scale,6.143130e-02*scale,0*scale,lc1}; +Point(4183) = {4.896794e-01*scale,6.134928e-02*scale,0*scale,lc1}; +Point(4160) = {5.006657e-01*scale,6.120560e-02*scale,0*scale,lc1}; +Point(4159) = {5.116520e-01*scale,6.104561e-02*scale,0*scale,lc1}; +Point(4126) = {5.226384e-01*scale,6.083535e-02*scale,0*scale,lc1}; +Point(4125) = {5.336247e-01*scale,6.058889e-02*scale,0*scale,lc1}; +Point(4088) = {5.446110e-01*scale,6.030455e-02*scale,0*scale,lc1}; +Point(4087) = {5.555973e-01*scale,5.996460e-02*scale,0*scale,lc1}; +Point(4033) = {5.665837e-01*scale,5.960434e-02*scale,0*scale,lc1}; +Point(4032) = {5.775700e-01*scale,5.915575e-02*scale,0*scale,lc1}; +Point(4031) = {5.885563e-01*scale,5.867545e-02*scale,0*scale,lc1}; +Point(4086) = {5.995427e-01*scale,5.809113e-02*scale,0*scale,lc1}; +Point(4085) = {6.105290e-01*scale,5.746759e-02*scale,0*scale,lc1}; +Point(4124) = {6.215153e-01*scale,5.679937e-02*scale,0*scale,lc1}; +Point(4123) = {6.325016e-01*scale,5.616104e-02*scale,0*scale,lc1}; +Point(4158) = {6.434880e-01*scale,5.553466e-02*scale,0*scale,lc1}; +Point(4157) = {6.544743e-01*scale,5.490460e-02*scale,0*scale,lc1}; +Point(4156) = {6.654606e-01*scale,5.425221e-02*scale,0*scale,lc1}; +Point(4122) = {6.764469e-01*scale,5.351456e-02*scale,0*scale,lc1}; +Point(4121) = {6.874333e-01*scale,5.273401e-02*scale,0*scale,lc1}; +Point(4081) = {6.984196e-01*scale,5.190181e-02*scale,0*scale,lc1}; +Point(4080) = {7.094059e-01*scale,5.101347e-02*scale,0*scale,lc1}; +Point(4020) = {7.203923e-01*scale,5.010133e-02*scale,0*scale,lc1}; +Point(4019) = {7.313786e-01*scale,4.909498e-02*scale,0*scale,lc1}; +Point(4018) = {7.423649e-01*scale,4.806316e-02*scale,0*scale,lc1}; +Point(4143) = {7.533512e-01*scale,4.694984e-02*scale,0*scale,lc1}; +Point(4118) = {7.643376e-01*scale,4.579371e-02*scale,0*scale,lc1}; +Point(4022) = {7.753239e-01*scale,4.458624e-02*scale,0*scale,lc1}; +Point(4016) = {7.863102e-01*scale,4.330843e-02*scale,0*scale,lc1}; +Point(4015) = {7.972966e-01*scale,4.200167e-02*scale,0*scale,lc1}; +Point(4011) = {8.082829e-01*scale,4.058146e-02*scale,0*scale,lc1}; +Point(4010) = {8.192692e-01*scale,3.912968e-02*scale,0*scale,lc1}; +Point(4009) = {8.302555e-01*scale,3.758209e-02*scale,0*scale,lc1}; +Point(4219) = {8.357487e-01*scale,3.680830e-02*scale,0*scale,lc1}; +Point(4177) = {8.412419e-01*scale,3.598390e-02*scale,0*scale,lc1}; +Point(4176) = {8.467350e-01*scale,3.515767e-02*scale,0*scale,lc1}; +Point(4149) = {8.494816e-01*scale,3.474456e-02*scale,0*scale,lc1}; +Point(4059) = {8.522282e-01*scale,3.433145e-02*scale,0*scale,lc1}; +Point(4058) = {8.549748e-01*scale,3.391833e-02*scale,0*scale,lc1}; +Point(4055) = {8.577214e-01*scale,3.349214e-02*scale,0*scale,lc1}; +Point(4113) = {8.604679e-01*scale,3.306571e-02*scale,0*scale,lc1}; +Point(4110) = {8.632145e-01*scale,3.263928e-02*scale,0*scale,lc1}; +Point(4213) = {8.659611e-01*scale,3.221285e-02*scale,0*scale,lc1}; +Point(4210) = {8.687077e-01*scale,3.178643e-02*scale,0*scale,lc1}; +Point(4217) = {8.714543e-01*scale,3.136000e-02*scale,0*scale,lc1}; +Point(4006) = {8.740950e-01*scale,3.095000e-02*scale,0*scale,lc1}; +Point(4218) = {8.714543e-01*scale,3.095677e-02*scale,0*scale,lc1}; +Point(4211) = {8.687077e-01*scale,3.096380e-02*scale,0*scale,lc1}; +Point(4212) = {8.659611e-01*scale,3.097084e-02*scale,0*scale,lc1}; +Point(4111) = {8.632145e-01*scale,3.097787e-02*scale,0*scale,lc1}; +Point(4112) = {8.604679e-01*scale,3.098491e-02*scale,0*scale,lc1}; +Point(4056) = {8.577214e-01*scale,3.099195e-02*scale,0*scale,lc1}; +Point(4057) = {8.549748e-01*scale,3.099898e-02*scale,0*scale,lc1}; +Point(4060) = {8.522282e-01*scale,3.100602e-02*scale,0*scale,lc1}; +Point(4148) = {8.494816e-01*scale,3.101305e-02*scale,0*scale,lc1}; +Point(4150) = {8.467350e-01*scale,3.102009e-02*scale,0*scale,lc1}; +Point(4208) = {8.439885e-01*scale,3.102712e-02*scale,0*scale,lc1}; +Point(4209) = {8.412419e-01*scale,3.103416e-02*scale,0*scale,lc1}; +Point(4215) = {8.357487e-01*scale,3.104823e-02*scale,0*scale,lc1}; +Point(4216) = {8.302555e-01*scale,3.106230e-02*scale,0*scale,lc1}; +Point(4220) = {8.247624e-01*scale,3.107638e-02*scale,0*scale,lc1}; +Point(4012) = {8.192692e-01*scale,3.109045e-02*scale,0*scale,lc1}; +Point(4013) = {8.082829e-01*scale,3.111859e-02*scale,0*scale,lc1}; +Point(4014) = {7.972966e-01*scale,3.114674e-02*scale,0*scale,lc1}; +Point(4017) = {7.863102e-01*scale,3.117488e-02*scale,0*scale,lc1}; +Point(4021) = {7.753239e-01*scale,3.120302e-02*scale,0*scale,lc1}; +Point(4023) = {7.643376e-01*scale,3.123117e-02*scale,0*scale,lc1}; +Point(4117) = {7.533512e-01*scale,3.125931e-02*scale,0*scale,lc1}; +Point(4082) = {7.423649e-01*scale,3.128745e-02*scale,0*scale,lc1}; +Point(4083) = {7.313786e-01*scale,3.131560e-02*scale,0*scale,lc1}; +Point(4024) = {7.203923e-01*scale,3.134374e-02*scale,0*scale,lc1}; +Point(4025) = {7.094059e-01*scale,3.137188e-02*scale,0*scale,lc1}; +Point(4007) = {6.999910e-01*scale,3.139600e-02*scale,0*scale,lc1}; +Point(4026) = {6.999910e-01*scale,2.367126e-02*scale,0*scale,lc1}; +Point(4027) = {6.999910e-01*scale,1.268493e-02*scale,0*scale,lc1}; +Point(4028) = {6.999910e-01*scale,1.698599e-03*scale,0*scale,lc1}; +Point(4029) = {6.999910e-01*scale,-9.287729e-03*scale,0*scale,lc1}; +Point(4008) = {6.999910e-01*scale,-1.722400e-02*scale,0*scale,lc1}; +Point(4030) = {6.984196e-01*scale,-1.751626e-02*scale,0*scale,lc1}; +Point(4084) = {6.874333e-01*scale,-1.955960e-02*scale,0*scale,lc1}; +Point(4194) = {6.764469e-01*scale,-2.159776e-02*scale,0*scale,lc1}; +Point(4195) = {6.654606e-01*scale,-2.362865e-02*scale,0*scale,lc1}; +Point(4154) = {6.544743e-01*scale,-2.588904e-02*scale,0*scale,lc1}; +Point(4155) = {6.434880e-01*scale,-2.825320e-02*scale,0*scale,lc1}; +Point(4119) = {6.325016e-01*scale,-3.016078e-02*scale,0*scale,lc1}; +Point(4120) = {6.215153e-01*scale,-3.200586e-02*scale,0*scale,lc1}; +Point(4089) = {6.105290e-01*scale,-3.369569e-02*scale,0*scale,lc1}; +Point(4090) = {5.995427e-01*scale,-3.534073e-02*scale,0*scale,lc1}; +Point(4034) = {5.885563e-01*scale,-3.694183e-02*scale,0*scale,lc1}; +Point(4035) = {5.775700e-01*scale,-3.852074e-02*scale,0*scale,lc1}; +Point(4036) = {5.665837e-01*scale,-4.009157e-02*scale,0*scale,lc1}; +Point(4144) = {5.555973e-01*scale,-4.161619e-02*scale,0*scale,lc1}; +Point(4192) = {5.446110e-01*scale,-4.311363e-02*scale,0*scale,lc1}; +Point(4193) = {5.336247e-01*scale,-4.454372e-02*scale,0*scale,lc1}; +Point(4184) = {5.226384e-01*scale,-4.589904e-02*scale,0*scale,lc1}; +Point(4185) = {5.116520e-01*scale,-4.719211e-02*scale,0*scale,lc1}; +Point(4168) = {5.006657e-01*scale,-4.834107e-02*scale,0*scale,lc1}; +Point(4169) = {4.896794e-01*scale,-4.944199e-02*scale,0*scale,lc1}; +Point(4135) = {4.786930e-01*scale,-5.032590e-02*scale,0*scale,lc1}; +Point(4136) = {4.677067e-01*scale,-5.113121e-02*scale,0*scale,lc1}; +Point(4101) = {4.567204e-01*scale,-5.175527e-02*scale,0*scale,lc1}; +Point(4102) = {4.457341e-01*scale,-5.227269e-02*scale,0*scale,lc1}; +Point(4049) = {4.347477e-01*scale,-5.270239e-02*scale,0*scale,lc1}; +Point(4050) = {4.237614e-01*scale,-5.305741e-02*scale,0*scale,lc1}; +Point(4051) = {4.127751e-01*scale,-5.339040e-02*scale,0*scale,lc1}; +Point(4103) = {4.017887e-01*scale,-5.365720e-02*scale,0*scale,lc1}; +Point(4104) = {3.908024e-01*scale,-5.390137e-02*scale,0*scale,lc1}; +Point(4137) = {3.798161e-01*scale,-5.408775e-02*scale,0*scale,lc1}; +Point(4138) = {3.688298e-01*scale,-5.423035e-02*scale,0*scale,lc1}; +Point(4170) = {3.578434e-01*scale,-5.433335e-02*scale,0*scale,lc1}; +Point(4171) = {3.468571e-01*scale,-5.436941e-02*scale,0*scale,lc1}; +Point(4186) = {3.358708e-01*scale,-5.438425e-02*scale,0*scale,lc1}; +Point(4172) = {3.248844e-01*scale,-5.431051e-02*scale,0*scale,lc1}; +Point(4173) = {3.138981e-01*scale,-5.421116e-02*scale,0*scale,lc1}; +Point(4139) = {3.029118e-01*scale,-5.403703e-02*scale,0*scale,lc1}; +Point(4140) = {2.919255e-01*scale,-5.379680e-02*scale,0*scale,lc1}; +Point(4105) = {2.809391e-01*scale,-5.349015e-02*scale,0*scale,lc1}; +Point(4106) = {2.699528e-01*scale,-5.307623e-02*scale,0*scale,lc1}; +Point(4052) = {2.589665e-01*scale,-5.262516e-02*scale,0*scale,lc1}; +Point(4053) = {2.479802e-01*scale,-5.205332e-02*scale,0*scale,lc1}; +Point(4054) = {2.369938e-01*scale,-5.145659e-02*scale,0*scale,lc1}; +Point(4107) = {2.260075e-01*scale,-5.078306e-02*scale,0*scale,lc1}; +Point(4108) = {2.150212e-01*scale,-5.007146e-02*scale,0*scale,lc1}; +Point(4141) = {2.040348e-01*scale,-4.931867e-02*scale,0*scale,lc1}; +Point(4142) = {1.930485e-01*scale,-4.849150e-02*scale,0*scale,lc1}; +Point(4174) = {1.820622e-01*scale,-4.763665e-02*scale,0*scale,lc1}; +Point(4175) = {1.710759e-01*scale,-4.665625e-02*scale,0*scale,lc1}; +Point(4187) = {1.600895e-01*scale,-4.564614e-02*scale,0*scale,lc1}; +Point(4188) = {1.491032e-01*scale,-4.455428e-02*scale,0*scale,lc1}; +Point(4145) = {1.381169e-01*scale,-4.339482e-02*scale,0*scale,lc1}; +Point(4046) = {1.271305e-01*scale,-4.218155e-02*scale,0*scale,lc1}; +Point(4047) = {1.161442e-01*scale,-4.082776e-02*scale,0*scale,lc1}; +Point(4048) = {1.051579e-01*scale,-3.939290e-02*scale,0*scale,lc1}; +Point(4196) = {9.966472e-02*scale,-3.862964e-02*scale,0*scale,lc1}; +Point(4197) = {9.417156e-02*scale,-3.788513e-02*scale,0*scale,lc1}; +Point(4198) = {8.867839e-02*scale,-3.720163e-02*scale,0*scale,lc1}; +Point(4189) = {8.318523e-02*scale,-3.651554e-02*scale,0*scale,lc1}; +Point(4190) = {7.769207e-02*scale,-3.569174e-02*scale,0*scale,lc1}; +Point(4214) = {7.494548e-02*scale,-3.527985e-02*scale,0*scale,lc1}; +Point(4181) = {7.219890e-02*scale,-3.481687e-02*scale,0*scale,lc1}; +Point(4182) = {6.945232e-02*scale,-3.430639e-02*scale,0*scale,lc1}; +Point(4151) = {6.670574e-02*scale,-3.379591e-02*scale,0*scale,lc1}; +Point(4152) = {6.395916e-02*scale,-3.322033e-02*scale,0*scale,lc1}; +Point(4064) = {6.121257e-02*scale,-3.263264e-02*scale,0*scale,lc1}; +Point(4065) = {5.846599e-02*scale,-3.189105e-02*scale,0*scale,lc1}; +Point(4066) = {5.635416e-02*scale,-3.126039e-02*scale,0*scale,lc1}; +Point(4205) = {5.434612e-02*scale,-3.049426e-02*scale,0*scale,lc1}; +Point(4206) = {5.297283e-02*scale,-2.986940e-02*scale,0*scale,lc1}; +Point(4207) = {5.159954e-02*scale,-2.914883e-02*scale,0*scale,lc1}; +Point(4072) = {5.022625e-02*scale,-2.824438e-02*scale,0*scale,lc1}; +Point(4074) = {4.885296e-02*scale,-2.716087e-02*scale,0*scale,lc1}; +Point(4073) = {4.883074e-02*scale,-2.714051e-02*scale,0*scale,lc1}; +Point(4076) = {4.747966e-02*scale,-2.578824e-02*scale,0*scale,lc1}; +Point(4075) = {4.746129e-02*scale,-2.576722e-02*scale,0*scale,lc1}; +Point(4079) = {4.639274e-02*scale,-2.439393e-02*scale,0*scale,lc1}; +Point(4078) = {4.561283e-02*scale,-2.302064e-02*scale,0*scale,lc1}; +Point(4077) = {4.500573e-02*scale,-2.164735e-02*scale,0*scale,lc1}; +Point(4068) = {4.450243e-02*scale,-2.027406e-02*scale,0*scale,lc1}; +Point(4067) = {4.415104e-02*scale,-1.890077e-02*scale,0*scale,lc1}; +Point(4069) = {4.402927e-02*scale,-1.752748e-02*scale,0*scale,lc1}; +Point(4070) = {4.404617e-02*scale,-1.615418e-02*scale,0*scale,lc1}; +Point(4071) = {4.411753e-02*scale,-1.478089e-02*scale,0*scale,lc1}; +Point(4115) = {4.421802e-02*scale,-1.340760e-02*scale,0*scale,lc1}; +Point(4116) = {4.435615e-02*scale,-1.203431e-02*scale,0*scale,lc1}; +Point(4204) = {4.461695e-02*scale,-1.066102e-02*scale,0*scale,lc1}; + +/* la boite */ + +Point(11) = {4.552264e+01*scale,-2.254225e+01*scale,0*scale,lc3}; +Point(2233) = {4.552264e+01*scale,-1.129225e+01*scale,0*scale,lc3}; +Point(5) = {4.552264e+01*scale,-4.224671e-02*scale,0*scale,lc3}; +Point(2236) = {4.552264e+01*scale,1.120775e+01*scale,0*scale,lc3}; +Point(14) = {4.552264e+01*scale,2.245775e+01*scale,0*scale,lc3}; +Point(2) = {4.552264e+01*scale,4.495775e+01*scale,0*scale,lc3}; +Point(15) = {2.302264e+01*scale,4.495775e+01*scale,0*scale,lc3}; +Point(2301) = {1.177264e+01*scale,4.495775e+01*scale,0*scale,lc3}; +Point(6) = {5.226384e-01*scale,4.495775e+01*scale,0*scale,lc3}; +Point(2304) = {-1.072736e+01*scale,4.495775e+01*scale,0*scale,lc3}; +Point(18) = {-2.197736e+01*scale,4.495775e+01*scale,0*scale,lc3}; +Point(3) = {-4.447736e+01*scale,4.495775e+01*scale,0*scale,lc3}; +Point(19) = {-4.447736e+01*scale,2.245775e+01*scale,0*scale,lc3}; +Point(2240) = {-4.447736e+01*scale,1.120775e+01*scale,0*scale,lc3}; +Point(7) = {-4.447736e+01*scale,-4.224671e-02*scale,0*scale,lc3}; +Point(2243) = {-4.447736e+01*scale,-1.129225e+01*scale,0*scale,lc3}; +Point(22) = {-4.447736e+01*scale,-2.254225e+01*scale,0*scale,lc3}; +Point(4) = {-4.447736e+01*scale,-4.504225e+01*scale,0*scale,lc3}; +Point(23) = {-2.197736e+01*scale,-4.504225e+01*scale,0*scale,lc3}; +Point(2317) = {-1.072736e+01*scale,-4.504225e+01*scale,0*scale,lc3}; +Point(8) = {5.226384e-01*scale,-4.504225e+01*scale,0*scale,lc3}; +Point(2297) = {1.177264e+01*scale,-4.504225e+01*scale,0*scale,lc3}; +Point(10) = {2.302264e+01*scale,-4.504225e+01*scale,0*scale,lc3}; +Point(1) = {4.552264e+01*scale,-4.504225e+01*scale,0*scale,lc3}; + +/* le flap */ + +Point(4298) = {1.125732e+00*scale,-1.356305e-01*scale,0*scale,lc2}; +Point(4297) = {1.128473e+00*scale,-1.383771e-01*scale,0*scale,lc2}; +Point(4222) = {1.130511e+00*scale,-1.404190e-01*scale,0*scale,lc2}; +Point(4250) = {1.130200e+00*scale,-1.411237e-01*scale,0*scale,lc2}; +Point(4252) = {1.128987e+00*scale,-1.438702e-01*scale,0*scale,lc2}; +Point(4221) = {1.128033e+00*scale,-1.460320e-01*scale,0*scale,lc2}; +Point(4251) = {1.126886e+00*scale,-1.450775e-01*scale,0*scale,lc2}; +Point(4299) = {1.124140e+00*scale,-1.427912e-01*scale,0*scale,lc2}; +Point(4335) = {1.121393e+00*scale,-1.405048e-01*scale,0*scale,lc2}; +Point(4337) = {1.118647e+00*scale,-1.382318e-01*scale,0*scale,lc2}; +Point(4267) = {1.115900e+00*scale,-1.359746e-01*scale,0*scale,lc2}; +Point(4294) = {1.115481e+00*scale,-1.356305e-01*scale,0*scale,lc2}; +Point(4269) = {1.110407e+00*scale,-1.315213e-01*scale,0*scale,lc2}; +Point(4233) = {1.104914e+00*scale,-1.272651e-01*scale,0*scale,lc2}; +Point(4234) = {1.099421e+00*scale,-1.231333e-01*scale,0*scale,lc2}; +Point(4273) = {1.093927e+00*scale,-1.190696e-01*scale,0*scale,lc2}; +Point(4293) = {1.088434e+00*scale,-1.150965e-01*scale,0*scale,lc2}; +Point(4314) = {1.082941e+00*scale,-1.112096e-01*scale,0*scale,lc2}; +Point(4317) = {1.077448e+00*scale,-1.073829e-01*scale,0*scale,lc2}; +Point(4318) = {1.071955e+00*scale,-1.037168e-01*scale,0*scale,lc2}; +Point(4274) = {1.066462e+00*scale,-1.001266e-01*scale,0*scale,lc2}; +Point(4235) = {1.060968e+00*scale,-9.664561e-02*scale,0*scale,lc2}; +Point(4236) = {1.055475e+00*scale,-9.329373e-02*scale,0*scale,lc2}; +Point(4237) = {1.049982e+00*scale,-8.999964e-02*scale,0*scale,lc2}; +Point(4301) = {1.044489e+00*scale,-8.685139e-02*scale,0*scale,lc2}; +Point(4319) = {1.038996e+00*scale,-8.375978e-02*scale,0*scale,lc2}; +Point(4321) = {1.033503e+00*scale,-8.073620e-02*scale,0*scale,lc2}; +Point(4320) = {1.033435e+00*scale,-8.069886e-02*scale,0*scale,lc2}; +Point(4322) = {1.028009e+00*scale,-7.778268e-02*scale,0*scale,lc2}; +Point(4347) = {1.022516e+00*scale,-7.485902e-02*scale,0*scale,lc2}; +Point(4323) = {1.017023e+00*scale,-7.206071e-02*scale,0*scale,lc2}; +Point(4324) = {1.011530e+00*scale,-6.928798e-02*scale,0*scale,lc2}; +Point(4325) = {1.006037e+00*scale,-6.656447e-02*scale,0*scale,lc2}; +Point(4276) = {1.000544e+00*scale,-6.390345e-02*scale,0*scale,lc2}; + +Point(4238) = {9.950505e-01*scale,-6.128188e-02*scale,0*scale,lc2}; +Point(4240) = {9.895573e-01*scale,-5.875476e-02*scale,0*scale,lc2}; +Point(4239) = {9.894949e-01*scale,-5.872621e-02*scale,0*scale,lc2}; +Point(4241) = {9.840641e-01*scale,-5.625125e-02*scale,0*scale,lc2}; +Point(4277) = {9.785710e-01*scale,-5.382099e-02*scale,0*scale,lc2}; +Point(4326) = {9.730778e-01*scale,-5.141086e-02*scale,0*scale,lc2}; +Point(4327) = {9.675846e-01*scale,-4.903782e-02*scale,0*scale,lc2}; +Point(4328) = {9.620915e-01*scale,-4.670806e-02*scale,0*scale,lc2}; +Point(4350) = {9.565983e-01*scale,-4.440955e-02*scale,0*scale,lc2}; +Point(4348) = {9.511052e-01*scale,-4.217563e-02*scale,0*scale,lc2}; +Point(4349) = {9.456120e-01*scale,-3.995849e-02*scale,0*scale,lc2}; +Point(4332) = {9.401188e-01*scale,-3.778658e-02*scale,0*scale,lc2}; +Point(4333) = {9.346257e-01*scale,-3.563417e-02*scale,0*scale,lc2}; +Point(4334) = {9.291325e-01*scale,-3.354304e-02*scale,0*scale,lc2}; +Point(4278) = {9.236393e-01*scale,-3.147155e-02*scale,0*scale,lc2}; +Point(4247) = {9.181462e-01*scale,-2.942051e-02*scale,0*scale,lc2}; +Point(4248) = {9.126530e-01*scale,-2.741688e-02*scale,0*scale,lc2}; +Point(4249) = {9.071598e-01*scale,-2.541811e-02*scale,0*scale,lc2}; +Point(4282) = {9.016667e-01*scale,-2.339436e-02*scale,0*scale,lc2}; +Point(4283) = {8.961735e-01*scale,-2.121581e-02*scale,0*scale,lc2}; +Point(4341) = {8.934269e-01*scale,-2.008894e-02*scale,0*scale,lc2}; +Point(4342) = {8.906803e-01*scale,-1.868991e-02*scale,0*scale,lc2}; +Point(4343) = {8.879338e-01*scale,-1.729088e-02*scale,0*scale,lc2}; +Point(4289) = {8.851872e-01*scale,-1.539587e-02*scale,0*scale,lc2}; +Point(4290) = {8.824406e-01*scale,-1.328983e-02*scale,0*scale,lc2}; +Point(4286) = {8.796940e-01*scale,-1.068337e-02*scale,0*scale,lc2}; +Point(4255) = {8.785175e-01*scale,-9.287729e-03*scale,0*scale,lc2}; +Point(4257) = {8.763537e-01*scale,-6.541147e-03*scale,0*scale,lc2}; +Point(4256) = {8.745583e-01*scale,-3.794565e-03*scale,0*scale,lc2}; +Point(4346) = {8.737982e-01*scale,-2.421274e-03*scale,0*scale,lc2}; +Point(4288) = {8.731375e-01*scale,-1.047983e-03*scale,0*scale,lc2}; +Point(4287) = {8.725645e-01*scale,3.253082e-04*scale,0*scale,lc2}; +Point(4260) = {8.721474e-01*scale,1.698599e-03*scale,0*scale,lc2}; +Point(4259) = {8.718264e-01*scale,3.071890e-03*scale,0*scale,lc2}; +Point(4258) = {8.716296e-01*scale,4.445181e-03*scale,0*scale,lc2}; +Point(4262) = {8.715751e-01*scale,5.818472e-03*scale,0*scale,lc2}; +Point(4261) = {8.716587e-01*scale,7.191763e-03*scale,0*scale,lc2}; +Point(4264) = {8.718582e-01*scale,8.565054e-03*scale,0*scale,lc2}; +Point(4263) = {8.721688e-01*scale,9.938345e-03*scale,0*scale,lc2}; +Point(4265) = {8.726207e-01*scale,1.131164e-02*scale,0*scale,lc2}; +Point(4266) = {8.732553e-01*scale,1.268493e-02*scale,0*scale,lc2}; +Point(4303) = {8.741084e-01*scale,1.405822e-02*scale,0*scale,lc2}; +Point(4302) = {8.742009e-01*scale,1.417564e-02*scale,0*scale,lc2}; +Point(4304) = {8.752094e-01*scale,1.543151e-02*scale,0*scale,lc2}; +Point(4305) = {8.755741e-01*scale,1.580615e-02*scale,0*scale,lc2}; +Point(4306) = {8.765464e-01*scale,1.680480e-02*scale,0*scale,lc2}; +Point(4307) = {8.769474e-01*scale,1.712646e-02*scale,0*scale,lc2}; +Point(4308) = {8.783004e-01*scale,1.817809e-02*scale,0*scale,lc2}; +Point(4309) = {8.783207e-01*scale,1.819390e-02*scale,0*scale,lc2}; +Point(4345) = {8.796940e-01*scale,1.898483e-02*scale,0*scale,lc2}; +Point(4344) = {8.810673e-01*scale,1.969096e-02*scale,0*scale,lc2}; +Point(4254) = {8.824406e-01*scale,2.018966e-02*scale,0*scale,lc2}; +Point(4253) = {8.851872e-01*scale,2.092940e-02*scale,0*scale,lc2}; +Point(4285) = {8.879338e-01*scale,2.136484e-02*scale,0*scale,lc2}; +Point(4284) = {8.906803e-01*scale,2.153023e-02*scale,0*scale,lc2}; +Point(4340) = {8.934269e-01*scale,2.149455e-02*scale,0*scale,lc2}; +Point(4339) = {8.961735e-01*scale,2.136105e-02*scale,0*scale,lc2}; +Point(4338) = {8.989201e-01*scale,2.104930e-02*scale,0*scale,lc2}; +Point(4246) = {9.016667e-01*scale,2.064514e-02*scale,0*scale,lc2}; +Point(4245) = {9.071598e-01*scale,1.954695e-02*scale,0*scale,lc2}; +Point(4281) = {9.126530e-01*scale,1.818666e-02*scale,0*scale,lc2}; +Point(4280) = {9.181462e-01*scale,1.648801e-02*scale,0*scale,lc2}; +Point(4279) = {9.236393e-01*scale,1.459116e-02*scale,0*scale,lc2}; +Point(4244) = {9.291325e-01*scale,1.255534e-02*scale,0*scale,lc2}; +Point(4243) = {9.346257e-01*scale,1.024686e-02*scale,0*scale,lc2}; +Point(4242) = {9.401188e-01*scale,7.859173e-03*scale,0*scale,lc2}; +Point(4296) = {9.456120e-01*scale,5.245962e-03*scale,0*scale,lc2}; +Point(4295) = {9.511052e-01*scale,2.515401e-03*scale,0*scale,lc2}; +Point(4300) = {9.565983e-01*scale,-3.522322e-04*scale,0*scale,lc2}; +Point(4330) = {9.620915e-01*scale,-3.368852e-03*scale,0*scale,lc2}; +Point(4331) = {9.628545e-01*scale,-3.794565e-03*scale,0*scale,lc2}; +Point(4329) = {9.675846e-01*scale,-6.447130e-03*scale,0*scale,lc2}; +Point(4232) = {9.730778e-01*scale,-9.700323e-03*scale,0*scale,lc2}; +Point(4231) = {9.840641e-01*scale,-1.646639e-02*scale,0*scale,lc2}; +Point(4230) = {9.950505e-01*scale,-2.366260e-02*scale,0*scale,lc2}; + +Point(4229) = {1.006037e+00*scale,-3.132299e-02*scale,0*scale,lc2}; +Point(4228) = {1.017023e+00*scale,-3.943289e-02*scale,0*scale,lc2}; +Point(4227) = {1.028009e+00*scale,-4.793142e-02*scale,0*scale,lc2}; +Point(4225) = {1.038996e+00*scale,-5.669110e-02*scale,0*scale,lc2}; +Point(4226) = {1.048275e+00*scale,-6.421937e-02*scale,0*scale,lc2}; +Point(4312) = {1.054944e+00*scale,-6.971253e-02*scale,0*scale,lc2}; +Point(4223) = {1.060968e+00*scale,-7.473580e-02*scale,0*scale,lc2}; +Point(4224) = {1.061523e+00*scale,-7.520570e-02*scale,0*scale,lc2}; +Point(4311) = {1.066462e+00*scale,-7.943817e-02*scale,0*scale,lc2}; +Point(4310) = {1.067933e+00*scale,-8.069886e-02*scale,0*scale,lc2}; +Point(4275) = {1.071955e+00*scale,-8.420612e-02*scale,0*scale,lc2}; +Point(4316) = {1.077448e+00*scale,-8.903994e-02*scale,0*scale,lc2}; +Point(4315) = {1.082941e+00*scale,-9.395896e-02*scale,0*scale,lc2}; +Point(4313) = {1.088434e+00*scale,-9.897945e-02*scale,0*scale,lc2}; +Point(4292) = {1.093927e+00*scale,-1.041032e-01*scale,0*scale,lc2}; +Point(4272) = {1.099421e+00*scale,-1.093858e-01*scale,0*scale,lc2}; +Point(4271) = {1.104914e+00*scale,-1.148004e-01*scale,0*scale,lc2}; +Point(4270) = {1.110407e+00*scale,-1.202740e-01*scale,0*scale,lc2}; +Point(4268) = {1.114765e+00*scale,-1.246442e-01*scale,0*scale,lc2}; +Point(4291) = {1.120249e+00*scale,-1.301373e-01*scale,0*scale,lc2}; +Point(4336) = {1.122990e+00*scale,-1.328839e-01*scale,0*scale,lc2}; + +Line(1) = {3895,3897}; +Line(2) = {3897,3896}; +Line(3) = {3896,3968}; +Line(4) = {3968,3995}; +Line(5) = {3995,4003}; +Line(6) = {4003,3857}; +Line(7) = {3857,3856}; +Line(8) = {3856,3860}; +Line(9) = {3860,3861}; +Line(10) = {3861,3863}; +Line(11) = {3863,3864}; +Line(12) = {3864,3865}; +Line(13) = {3865,3866}; +Line(14) = {3866,3867}; +Line(15) = {3867,3868}; +Line(16) = {3868,3869}; +Line(17) = {3869,3870}; +Line(18) = {3870,3871}; +Line(19) = {3871,3872}; +Line(20) = {3872,3977}; +Line(21) = {3977,3877}; +Line(22) = {3877,3876}; +Line(23) = {3876,3878}; +Line(24) = {3878,3934}; +Line(25) = {3934,3873}; +Line(26) = {3873,3874}; +Line(27) = {3874,3875}; +Line(28) = {3875,3935}; +Line(29) = {3935,3880}; +Line(30) = {3880,3879}; +Line(31) = {3879,3881}; +Line(32) = {3881,3936}; +Line(33) = {3936,3882}; +Line(34) = {3882,3883}; +Line(35) = {3883,3885}; +Line(36) = {3885,3884}; +Line(37) = {3884,1218}; +Line(38) = {1218,3933}; +Line(39) = {3933,3996}; +Line(40) = {3996,3989}; +Line(41) = {3989,3990}; +Line(42) = {3990,3978}; +Line(43) = {3978,3979}; +Line(44) = {3979,3974}; +Line(45) = {3974,3973}; +Line(46) = {3973,3963}; +Line(47) = {3963,3947}; +Line(48) = {3947,3948}; +Line(49) = {3948,3904}; +Line(50) = {3904,3903}; +Line(51) = {3903,3946}; +Line(52) = {3946,3902}; +Line(53) = {3902,3901}; +Line(54) = {3901,3900}; +Line(55) = {3900,3908}; +Line(56) = {3908,3907}; +Line(57) = {3907,3951}; +Line(58) = {3951,3950}; +Line(59) = {3950,3847}; +Line(60) = {3847,3949}; +Line(61) = {3949,3952}; +Line(62) = {3952,3905}; +Line(63) = {3905,3906}; +Line(64) = {3906,3909}; +Line(65) = {3909,3969}; +Line(66) = {3969,3970}; +Line(67) = {3970,3997}; +Line(68) = {3997,3998}; +Line(69) = {3998,4004}; +Line(70) = {4004,3959}; +Line(71) = {3959,3960}; +Line(72) = {3960,3972}; +Line(73) = {3972,3984}; +Line(74) = {3984,3988}; +Line(75) = {3988,3961}; +Line(76) = {3961,3962}; +Line(77) = {3962,3937}; +Line(78) = {3937,3938}; +Line(79) = {3938,3886}; +Line(80) = {3886,3887}; +Line(81) = {3887,3888}; +Line(82) = {3888,3993}; +Line(83) = {3993,3994}; +Line(84) = {3994,3971}; +Line(85) = {3971,3918}; +Line(86) = {3918,3919}; +Line(87) = {3919,3920}; +Line(88) = {3920,3956}; +Line(89) = {3956,3955}; +Line(90) = {3955,3965}; +Line(91) = {3965,3966}; +Line(92) = {3966,3910}; +Line(93) = {3910,3913}; +Line(94) = {3913,3912}; +Line(95) = {3912,3911}; +Line(96) = {3911,3914}; +Line(97) = {3914,3915}; +Line(98) = {3915,3916}; +Line(99) = {3916,3917}; +Line(100) = {3917,3953}; +Line(101) = {3953,3954}; +Line(102) = {3954,3964}; +Line(103) = {3964,3975}; +Line(104) = {3975,3992}; +Line(105) = {3992,3991}; +Line(106) = {3991,3999}; +Line(107) = {3999,3939}; +Line(108) = {3939,3967}; +Line(109) = {3967,3987}; +Line(110) = {3987,3985}; +Line(111) = {3985,3986}; +Line(112) = {3986,4002}; +Line(113) = {4002,3922}; +Line(114) = {3922,4005}; +Line(115) = {4005,3851}; +Line(116) = {3851,3850}; +Line(117) = {3850,3853}; +Line(118) = {3853,3852}; +Line(119) = {3852,3849}; +Line(120) = {3849,3848}; +Line(121) = {3848,3921}; +Line(122) = {3921,3983}; +Line(123) = {3983,3982}; +Line(124) = {3982,3976}; +Line(125) = {3976,3929}; +Line(126) = {3929,3958}; +Line(127) = {3958,3928}; +Line(128) = {3928,3957}; +Line(129) = {3957,3927}; +Line(130) = {3927,3926}; +Line(131) = {3926,3925}; +Line(132) = {3925,3924}; +Line(133) = {3924,3932}; +Line(134) = {3932,3931}; +Line(135) = {3931,3930}; +Line(136) = {3930,3923}; +Line(137) = {3923,3862}; +Line(138) = {3862,3859}; +Line(139) = {3859,3858}; +Line(140) = {3858,3855}; +Line(141) = {3855,3854}; +Line(142) = {3854,3945}; +Line(143) = {3945,3944}; +Line(144) = {3944,3899}; +Line(145) = {3899,3898}; +Line(146) = {3898,3894}; +Line(147) = {3894,3890}; +Line(148) = {3890,3893}; +Line(149) = {3893,3941}; +Line(150) = {3941,4000}; +Line(151) = {4000,3980}; +Line(152) = {3980,3846}; +Line(153) = {3846,3981}; +Line(154) = {3981,4001}; +Line(155) = {4001,3942}; +Line(156) = {3942,3940}; +Line(157) = {3940,3889}; +Line(158) = {3889,3892}; +Line(159) = {3892,3891}; +Line(160) = {3891,3943}; +Line(161) = {3943,3895}; +Line(162) = {4063,4062}; +Line(163) = {4062,4061}; +Line(164) = {4061,4114}; +Line(165) = {4114,4153}; +Line(166) = {4153,4178}; +Line(167) = {4178,4179}; +Line(168) = {4179,4191}; +Line(169) = {4191,4203}; +Line(170) = {4203,4109}; +Line(171) = {4109,4202}; +Line(172) = {4202,4199}; +Line(173) = {4199,4201}; +Line(174) = {4201,4200}; +Line(175) = {4200,4100}; +Line(176) = {4100,4099}; +Line(177) = {4099,4045}; +Line(178) = {4045,4044}; +Line(179) = {4044,4043}; +Line(180) = {4043,4147}; +Line(181) = {4147,4146}; +Line(182) = {4146,4180}; +Line(183) = {4180,4167}; +Line(184) = {4167,4166}; +Line(185) = {4166,4134}; +Line(186) = {4134,4133}; +Line(187) = {4133,4098}; +Line(188) = {4098,4097}; +Line(189) = {4097,4042}; +Line(190) = {4042,4041}; +Line(191) = {4041,4040}; +Line(192) = {4040,4095}; +Line(193) = {4095,4096}; +Line(194) = {4096,4132}; +Line(195) = {4132,4131}; +Line(196) = {4131,4165}; +Line(197) = {4165,4164}; +Line(198) = {4164,4163}; +Line(199) = {4163,4130}; +Line(200) = {4130,4129}; +Line(201) = {4129,4094}; +Line(202) = {4094,4093}; +Line(203) = {4093,4039}; +Line(204) = {4039,4038}; +Line(205) = {4038,4037}; +Line(206) = {4037,4092}; +Line(207) = {4092,4091}; +Line(208) = {4091,4128}; +Line(209) = {4128,4127}; +Line(210) = {4127,4162}; +Line(211) = {4162,4161}; +Line(212) = {4161,4183}; +Line(213) = {4183,4160}; +Line(214) = {4160,4159}; +Line(215) = {4159,4126}; +Line(216) = {4126,4125}; +Line(217) = {4125,4088}; +Line(218) = {4088,4087}; +Line(219) = {4087,4033}; +Line(220) = {4033,4032}; +Line(221) = {4032,4031}; +Line(222) = {4031,4086}; +Line(223) = {4086,4085}; +Line(224) = {4085,4124}; +Line(225) = {4124,4123}; +Line(226) = {4123,4158}; +Line(227) = {4158,4157}; +Line(228) = {4157,4156}; +Line(229) = {4156,4122}; +Line(230) = {4122,4121}; +Line(231) = {4121,4081}; +Line(232) = {4081,4080}; +Line(233) = {4080,4020}; +Line(234) = {4020,4019}; +Line(235) = {4019,4018}; +Line(236) = {4018,4143}; +Line(237) = {4143,4118}; +Line(238) = {4118,4022}; +Line(239) = {4022,4016}; +Line(240) = {4016,4015}; +Line(241) = {4015,4011}; +Line(242) = {4011,4010}; +Line(243) = {4010,4009}; +Line(244) = {4009,4219}; +Line(245) = {4219,4177}; +Line(246) = {4177,4176}; +Line(247) = {4176,4149}; +Line(248) = {4149,4059}; +Line(249) = {4059,4058}; +Line(250) = {4058,4055}; +Line(251) = {4055,4113}; +Line(252) = {4113,4110}; +Line(253) = {4110,4213}; +Line(254) = {4213,4210}; +Line(255) = {4210,4217}; +Line(256) = {4217,4006}; +Line(257) = {4006,4218}; +Line(258) = {4218,4211}; +Line(259) = {4211,4212}; +Line(260) = {4212,4111}; +Line(261) = {4111,4112}; +Line(262) = {4112,4056}; +Line(263) = {4056,4057}; +Line(264) = {4057,4060}; +Line(265) = {4060,4148}; +Line(266) = {4148,4150}; +Line(267) = {4150,4208}; +Line(268) = {4208,4209}; +Line(269) = {4209,4215}; +Line(270) = {4215,4216}; +Line(271) = {4216,4220}; +Line(272) = {4220,4012}; +Line(273) = {4012,4013}; +Line(274) = {4013,4014}; +Line(275) = {4014,4017}; +Line(276) = {4017,4021}; +Line(277) = {4021,4023}; +Line(278) = {4023,4117}; +Line(279) = {4117,4082}; +Line(280) = {4082,4083}; +Line(281) = {4083,4024}; +Line(282) = {4024,4025}; +Line(283) = {4025,4007}; +Line(284) = {4007,4026}; +Line(285) = {4026,4027}; +Line(286) = {4027,4028}; +Line(287) = {4028,4029}; +Line(288) = {4029,4008}; +Line(289) = {4008,4030}; +Line(290) = {4030,4084}; +Line(291) = {4084,4194}; +Line(292) = {4194,4195}; +Line(293) = {4195,4154}; +Line(294) = {4154,4155}; +Line(295) = {4155,4119}; +Line(296) = {4119,4120}; +Line(297) = {4120,4089}; +Line(298) = {4089,4090}; +Line(299) = {4090,4034}; +Line(300) = {4034,4035}; +Line(301) = {4035,4036}; +Line(302) = {4036,4144}; +Line(303) = {4144,4192}; +Line(304) = {4192,4193}; +Line(305) = {4193,4184}; +Line(306) = {4184,4185}; +Line(307) = {4185,4168}; +Line(308) = {4168,4169}; +Line(309) = {4169,4135}; +Line(310) = {4135,4136}; +Line(311) = {4136,4101}; +Line(312) = {4101,4102}; +Line(313) = {4102,4049}; +Line(314) = {4049,4050}; +Line(315) = {4050,4051}; +Line(316) = {4051,4103}; +Line(317) = {4103,4104}; +Line(318) = {4104,4137}; +Line(319) = {4137,4138}; +Line(320) = {4138,4170}; +Line(321) = {4170,4171}; +Line(322) = {4171,4186}; +Line(323) = {4186,4172}; +Line(324) = {4172,4173}; +Line(325) = {4173,4139}; +Line(326) = {4139,4140}; +Line(327) = {4140,4105}; +Line(328) = {4105,4106}; +Line(329) = {4106,4052}; +Line(330) = {4052,4053}; +Line(331) = {4053,4054}; +Line(332) = {4054,4107}; +Line(333) = {4107,4108}; +Line(334) = {4108,4141}; +Line(335) = {4141,4142}; +Line(336) = {4142,4174}; +Line(337) = {4174,4175}; +Line(338) = {4175,4187}; +Line(339) = {4187,4188}; +Line(340) = {4188,4145}; +Line(341) = {4145,4046}; +Line(342) = {4046,4047}; +Line(343) = {4047,4048}; +Line(344) = {4048,4196}; +Line(345) = {4196,4197}; +Line(346) = {4197,4198}; +Line(347) = {4198,4189}; +Line(348) = {4189,4190}; +Line(349) = {4190,4214}; +Line(350) = {4214,4181}; +Line(351) = {4181,4182}; +Line(352) = {4182,4151}; +Line(353) = {4151,4152}; +Line(354) = {4152,4064}; +Line(355) = {4064,4065}; +Line(356) = {4065,4066}; +Line(357) = {4066,4205}; +Line(358) = {4205,4206}; +Line(359) = {4206,4207}; +Line(360) = {4207,4072}; +Line(361) = {4072,4074}; +Line(362) = {4074,4073}; +Line(363) = {4073,4076}; +Line(364) = {4076,4075}; +Line(365) = {4075,4079}; +Line(366) = {4079,4078}; +Line(367) = {4078,4077}; +Line(368) = {4077,4068}; +Line(369) = {4068,4067}; +Line(370) = {4067,4069}; +Line(371) = {4069,4070}; +Line(372) = {4070,4071}; +Line(373) = {4071,4115}; +Line(374) = {4115,4116}; +Line(375) = {4116,4204}; +Line(376) = {4204,4063}; +Line(377) = {11,2233}; +Line(378) = {2233,5}; +Line(379) = {5,2236}; +Line(380) = {2236,14}; +Line(381) = {14,2}; +Line(382) = {2,15}; +Line(383) = {15,2301}; +Line(384) = {2301,6}; +Line(385) = {6,2304}; +Line(386) = {2304,18}; +Line(387) = {18,3}; +Line(388) = {3,19}; +Line(389) = {19,2240}; +Line(390) = {2240,7}; +Line(391) = {7,2243}; +Line(392) = {2243,22}; +Line(393) = {22,4}; +Line(394) = {4,23}; +Line(395) = {23,2317}; +Line(396) = {2317,8}; +Line(397) = {8,2297}; +Line(398) = {2297,10}; +Line(399) = {10,1}; +Line(400) = {1,11}; +Line(401) = {4298,4297}; +Line(402) = {4297,4222}; +Line(403) = {4222,4250}; +Line(404) = {4250,4252}; +Line(405) = {4252,4221}; +Line(406) = {4221,4251}; +Line(407) = {4251,4299}; +Line(408) = {4299,4335}; +Line(409) = {4335,4337}; +Line(410) = {4337,4267}; +Line(411) = {4267,4294}; +Line(412) = {4294,4269}; +Line(413) = {4269,4233}; +Line(414) = {4233,4234}; +Line(415) = {4234,4273}; +Line(416) = {4273,4293}; +Line(417) = {4293,4314}; +Line(418) = {4314,4317}; +Line(419) = {4317,4318}; +Line(420) = {4318,4274}; +Line(421) = {4274,4235}; +Line(422) = {4235,4236}; +Line(423) = {4236,4237}; +Line(424) = {4237,4301}; +Line(425) = {4301,4319}; +Line(426) = {4319,4321}; +Line(427) = {4321,4320}; +Line(428) = {4320,4322}; +Line(429) = {4322,4347}; +Line(430) = {4347,4323}; +Line(431) = {4323,4324}; +Line(432) = {4324,4325}; +Line(433) = {4325,4276}; +Line(434) = {4276,4238}; +Line(435) = {4238,4240}; +Line(436) = {4240,4239}; +Line(437) = {4239,4241}; +Line(438) = {4241,4277}; +Line(439) = {4277,4326}; +Line(440) = {4326,4327}; +Line(441) = {4327,4328}; +Line(442) = {4328,4350}; +Line(443) = {4350,4348}; +Line(444) = {4348,4349}; +Line(445) = {4349,4332}; +Line(446) = {4332,4333}; +Line(447) = {4333,4334}; +Line(448) = {4334,4278}; +Line(449) = {4278,4247}; +Line(450) = {4247,4248}; +Line(451) = {4248,4249}; +Line(452) = {4249,4282}; +Line(453) = {4282,4283}; +Line(454) = {4283,4341}; +Line(455) = {4341,4342}; +Line(456) = {4342,4343}; +Line(457) = {4343,4289}; +Line(458) = {4289,4290}; +Line(459) = {4290,4286}; +Line(460) = {4286,4255}; +Line(461) = {4255,4257}; +Line(462) = {4257,4256}; +Line(463) = {4256,4346}; +Line(464) = {4346,4288}; +Line(465) = {4288,4287}; +Line(466) = {4287,4260}; +Line(467) = {4260,4259}; +Line(468) = {4259,4258}; +Line(469) = {4258,4262}; +Line(470) = {4262,4261}; +Line(471) = {4261,4264}; +Line(472) = {4264,4263}; +Line(473) = {4263,4265}; +Line(474) = {4265,4266}; +Line(475) = {4266,4303}; +Line(476) = {4303,4302}; +Line(477) = {4302,4304}; +Line(478) = {4304,4305}; +Line(479) = {4305,4306}; +Line(480) = {4306,4307}; +Line(481) = {4307,4308}; +Line(482) = {4308,4309}; +Line(483) = {4309,4345}; +Line(484) = {4345,4344}; +Line(485) = {4344,4254}; +Line(486) = {4254,4253}; +Line(487) = {4253,4285}; +Line(488) = {4285,4284}; +Line(489) = {4284,4340}; +Line(490) = {4340,4339}; +Line(491) = {4339,4338}; +Line(492) = {4338,4246}; +Line(493) = {4246,4245}; +Line(494) = {4245,4281}; +Line(495) = {4281,4280}; +Line(496) = {4280,4279}; +Line(497) = {4279,4244}; +Line(498) = {4244,4243}; +Line(499) = {4243,4242}; +Line(500) = {4242,4296}; +Line(501) = {4296,4295}; +Line(502) = {4295,4300}; +Line(503) = {4300,4330}; +Line(504) = {4330,4331}; +Line(505) = {4331,4329}; +Line(506) = {4329,4232}; +Line(507) = {4232,4231}; +Line(508) = {4231,4230}; +Line(509) = {4230,4229}; +Line(510) = {4229,4228}; +Line(511) = {4228,4227}; +Line(512) = {4227,4225}; +Line(513) = {4225,4226}; +Line(514) = {4226,4312}; +Line(515) = {4312,4223}; +Line(516) = {4223,4224}; +Line(517) = {4224,4311}; +Line(518) = {4311,4310}; +Line(519) = {4310,4275}; +Line(520) = {4275,4316}; +Line(521) = {4316,4315}; +Line(522) = {4315,4313}; +Line(523) = {4313,4292}; +Line(524) = {4292,4272}; +Line(525) = {4272,4271}; +Line(526) = {4271,4270}; +Line(527) = {4270,4268}; +Line(528) = {4268,4291}; +Line(529) = {4291,4336}; +Line(530) = {4336,4298}; +Line Loop(531) = {384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,377,378,379,380,381,382,383}; +Line Loop(532) = {316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315}; +Line Loop(533) = {446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445}; +Line Loop(534) = {41,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,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,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,40}; +Plane Surface(535) = {531,532,534,533}; diff --git a/benchmarks/3d/brain.geo b/benchmarks/3d/brain.geo new file mode 100644 index 0000000000000000000000000000000000000000..e42ba7b2511f172392a135c9524abc292481dc83 --- /dev/null +++ b/benchmarks/3d/brain.geo @@ -0,0 +1,35 @@ +Point(newp) = {0,0,0,0.1}; /* Point 1 */ +Point(newp) = {1,0,0,0.1}; /* Point 2 */ +Point(newp) = {-1,0,0,0.1}; /* Point 3 */ + +Point(newp) = {0,.8,0,0.1}; /* Point 4 */ +Point(newp) = {0,0,.8,0.1}; /* Point 5 */ +Point(newp) = {0,0,-.8,0.1}; /* Point 6 */ + +Point(newp) = {.1,0,-.79,.1}; /* Point 7 */ +Point(newp) = {.3,0,-.73,.1}; /* Point 8 */ +Point(newp) = {.65,0,-.55,.1}; /* Point 9 */ +Point(newp) = {.9,0,-.38,.1}; /* Point 10 */ + +Point(newp) = {.1,0,.79,.1}; /* Point 11 */ +Point(newp) = {.3,0,.73,.1}; /* Point 12 */ +Point(newp) = {.65,0,.55,.1}; /* Point 13 */ +Point(newp) = {.9,0,.38,.1}; /* Point 14 */ + +Spline(1) = {6,7,8,9,10,2}; +Circle(2) = {6,1,4}; +Circle(3) = {2,1,1,4}; +Line Loop(4) = {3,-2,1}; +Ruled Surface(5) = {4}; + +Spline(6) = {5,11,12,13,14,2}; +Circle(7) = {5,1,4}; +Line Loop(8) = {3,-7,6}; +Ruled Surface(9) = {8}; +Line(10) = {6,5}; +Line Loop(11) = {7,-2,10}; +Plane Surface(12) = {11}; +Line Loop(13) = {-1,10,6}; +Plane Surface(14) = {13}; +Surface Loop(15) = {12,9,-5,-14}; +Complex Volume(16) = {15}; diff --git a/benchmarks/3d/coin.geo b/benchmarks/3d/coin.geo new file mode 100644 index 0000000000000000000000000000000000000000..75db8b37cb7b441864c0139095dd11a663c62fec --- /dev/null +++ b/benchmarks/3d/coin.geo @@ -0,0 +1,58 @@ +lcar1 = .2; + +Point(newp) = {0.5,0.5,0.5,lcar1}; /* Point 1 */ +Point(newp) = {0.5,0.5,0,lcar1}; /* Point 2 */ +Point(newp) = {0,0.5,0.5,lcar1}; /* Point 3 */ +Point(newp) = {0,0,0.5,lcar1}; /* Point 4 */ +Point(newp) = {0.5,0,0.5,lcar1}; /* Point 5 */ +Point(newp) = {0.5,0,0,lcar1}; /* Point 6 */ +Point(newp) = {0,0.5,0,lcar1}; /* Point 7 */ +Point(newp) = {0,1,0,lcar1}; /* Point 8 */ +Point(newp) = {1,1,0,lcar1}; /* Point 9 */ +Point(newp) = {0,0,1,lcar1}; /* Point 10 */ +Point(newp) = {0,1,1,lcar1}; /* Point 11 */ +Point(newp) = {1,1,1,lcar1}; /* Point 12 */ +Point(newp) = {1,0,1,lcar1}; /* Point 13 */ +Point(newp) = {1,0,0,lcar1}; + +Line(1) = {8,9}; +Line(2) = {9,12}; +Line(3) = {12,11}; +Line(4) = {11,8}; +Line(5) = {9,14}; +Line(6) = {14,13}; +Line(7) = {13,12}; +Line(8) = {11,10}; +Line(9) = {10,13}; +Line(10) = {10,4}; +Line(11) = {4,5}; +Line(12) = {5,6}; +Line(13) = {6,2}; +Line(14) = {2,1}; +Line(15) = {1,3}; +Line(16) = {3,7}; +Line(17) = {7,2}; +Line(18) = {3,4}; +Line(19) = {5,1}; +Line(20) = {7,8}; +Line(21) = {6,14}; +Line Loop(22) = {11,19,15,18}; +Plane Surface(23) = {22}; +Line Loop(24) = {16,17,14,15}; +Plane Surface(25) = {24}; +Line Loop(26) = {-17,20,1,5,-21,13}; +Plane Surface(27) = {26}; +Line Loop(28) = {4,1,2,3}; +Plane Surface(29) = {28}; +Line Loop(30) = {7,-2,5,6}; +Plane Surface(31) = {30}; +Line Loop(32) = {6,-9,10,11,12,21}; +Plane Surface(33) = {32}; +Line Loop(34) = {7,3,8,9}; +Plane Surface(35) = {34}; +Line Loop(36) = {10,-18,16,20,-4,8}; +Plane Surface(37) = {36}; +Line Loop(38) = {-14,-13,-12,19}; +Plane Surface(39) = {38}; +Surface Loop(40) = {35,31,29,37,33,23,39,25,27}; +Complex Volume(41) = {40}; diff --git a/benchmarks/3d/ellipsis.geo b/benchmarks/3d/ellipsis.geo new file mode 100644 index 0000000000000000000000000000000000000000..eb0fb3910227eebf32d6b63973e04250ab07fd68 --- /dev/null +++ b/benchmarks/3d/ellipsis.geo @@ -0,0 +1,37 @@ +Point(newp) = { 0, 0,0,.1}; +Point(newp) = {-1, 0,0,.1}; +Point(newp) = { 1, 0,0,.1}; +Point(newp) = { 0, .5,0,.1}; +Point(newp) = { 0,-.5,0,.1}; +Point(newp) = { 0, 0,.8,.1}; +Point(newp) = { 0, 0,-1,.1}; + +Ellipsis(1) = {3,1,3,4}; +Ellipsis(2) = {4,1,2,2}; +Ellipsis(3) = {2,1,2,5}; +Ellipsis(4) = {5,1,3,3}; +Ellipsis(5) = {7,1,7,4}; +Ellipsis(6) = {4,1,6,6}; +Ellipsis(7) = {6,1,6,5}; +Ellipsis(8) = {5,1,7,7}; +Ellipsis(9) = {6,1,3,3}; +Ellipsis(10) = {2,1,2,6}; +Ellipsis(11) = {7,1,2,2}; +Ellipsis(12) = {3,1,3,7}; + +Line Loop(13) = {1,6,9}; +Ruled Surface(14) = {13}; +Line Loop(15) = {4,-9,7}; +Ruled Surface(16) = {15}; +Line Loop(17) = {-7,-10,3}; +Ruled Surface(18) = {17}; +Line Loop(19) = {3,8,11}; +Ruled Surface(20) = {19}; +Line Loop(21) = {2,-11,5}; +Ruled Surface(22) = {21}; +Line Loop(23) = {-5,-12,1}; +Ruled Surface(24) = {23}; +Line Loop(25) = {-12,-4,8}; +Ruled Surface(26) = {25}; +Line Loop(27) = {-6,2,10}; +Ruled Surface(28) = {27}; diff --git a/benchmarks/3d/old_extrude.geo b/benchmarks/3d/old_extrude.geo new file mode 100644 index 0000000000000000000000000000000000000000..a0bcc6b4fc6bff91139eee1ecfd79230e18ee552 --- /dev/null +++ b/benchmarks/3d/old_extrude.geo @@ -0,0 +1,454 @@ +// Mudanca de algumas coordenadas 22/05/2001 - Li�ge. + +/* Desenho do servo motor em 3D - 20/07/2000 */ + +/* Analise de um servomotor de imas permanentes - GRUCAD - julho de 2000 */ + +rR1 = 10.5e-03; +rR2 = 23.243e-03; +rR3 = 23.862e-03; +rR4 = 23.9e-03; +rR5 = 25.6e-03; + +rS1 = 26.02e-03; +rS2 = 26.62e-03; +rS3 = 26.96e-03; +rS4 = 38.16e-03; +rS5 = 38.27e-03; +rS6 = 40.02e-03; +rS7 = 46.0e-03; + +Gap = rS1-rR5; + +rB1=rR5+Gap/3; rB1b=rB1; +//rB1=rR5+Gap/3.7; rB1b=rR5+Gap/2.3; //To see both different surfaces +rB2=rR5+Gap*2/3; + + +NbrDiv = 16; + +A0 = 45.0; +/* Rotor position(deg):use 0 for the mesh and other angles for drawing*/ +//A1 = 4.0001*45.0/NbrDiv; +A1 = 90. ; + +deg2rad = Pi/180; + +/* Mesh parameters */ + +s = 1.; + +pR1 =(rR2-rR1)/10.*s; +pR2 =(rR2-rR1)/12.*s; + +pS1 =(rS7-rS1)/7.*s; +pS2 =(rS7-rS1)/12.*s; +pS3 =(rS6-rS3)/10.*s; + + +// Uma das faces do servo motor + +/* Rotor */ + +Point(1)={0,0,0,pR1}; + +A = 0.+A1; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(2)={rR1*cosA,rR1*sinA,0,pR1}; +Point(3)={rR4*cosA,rR4*sinA,0,pR1}; +Point(4)={rR5*cosA,rR5*sinA,0,pR1}; + +Point(5)={rB1*cosA,rB1*sinA,0,pR2}; + +A = 4.455+A1; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(6)={rR2*cosA,rR2*sinA,0,pR1}; + +A = 4.938+A1; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(7)={rR3*cosA,rR3*sinA,0,pR1}; + +A = 6.165+A1; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(8)={rR5*cosA,rR5*sinA,0,pR1}; + +A = 38.835+A1; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(9)={rR5*cosA,rR5*sinA,0,pR1}; + +A = 40.062+A1; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(10)={rR3*cosA,rR3*sinA,0,pR1}; + +A = 40.545+A1; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(11)={rR2*cosA,rR2*sinA,0,pR1}; + +A = 45.0+A1; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(12)={rR1*cosA,rR1*sinA,0,pR1}; +Point(13)={rR4*cosA,rR4*sinA,0,pR1}; +Point(14)={rR5*cosA,rR5*sinA,0,pR1}; + +Point(15)={rB1*cosA,rB1*sinA,0,pR2}; + +/* Gap */ + +Point(16)={rB1b,0,0,pS1}; +Point(17)={rB2,0,0,pS1}; + +A = 45.0; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(18)={rB1b*cosA,rB1b*sinA,0,pS1}; +Point(19)={rB2*cosA,rB2*sinA,0,pS1}; + + +/* Stator */ + +Point(20)={rS1,0,0,pS1}; +Point(21)={rS7,0,0,pS2}; + +A = 5.71+0; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(61)={rS7*cosA,rS7*sinA,0,pS3}; +A = 5.71+15; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(62)={rS7*cosA,rS7*sinA,0,pS3}; +A = 5.71+30; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(63)={rS7*cosA,rS7*sinA,0,pS3}; + +//A = 22.5; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +//Point(22)={rS7*cosA,rS7*sinA,0,pS2}; + +A = 45.0; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(23)={rS1*cosA,rS1*sinA,0,pS1}; +Point(24)={rS7*cosA,rS7*sinA,0,pS2}; + +/* Pontos da ranhura 01 */ + +A2 = 0.0; + +A = 2.77+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(25)={rS5*cosA,rS5*sinA,0,pS3}; + +A = 4.0+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(26)={rS3*cosA,rS3*sinA,0,pS3}; + +A = 5.52+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(27)={rS1*cosA,rS1*sinA,0,pS3}; + +A = 5.56+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(28)={rS2*cosA,rS2*sinA,0,pS3}; + +A = 5.56+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(29)={rS4*cosA,rS4*sinA,0,pS3}; + +A = 5.65+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(30)={rS6*cosA,rS6*sinA,0,pS3}; + +A = 9.35+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(31)={rS6*cosA,rS6*sinA,0,pS3}; + +A = 9.44+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(32)={rS4*cosA,rS4*sinA,0,pS3}; + +A = 9.44+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(33)={rS2*cosA,rS2*sinA,0,pS3}; + +A = 9.48+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(34)={rS1*cosA,rS1*sinA,0,pS3}; + +A = 11.0+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(35)={rS3*cosA,rS3*sinA,0,pS3}; + +A = 12.23+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(36)={rS5*cosA,rS5*sinA,0,pS3}; + +/* Pontos da ranhura 02 */ + +A2 = 15.0; + +A = 2.77+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(37)={rS5*cosA,rS5*sinA,0,pS3}; + +A = 4.0+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(38)={rS3*cosA,rS3*sinA,0,pS3}; + +A = 5.52+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(39)={rS1*cosA,rS1*sinA,0,pS3}; + +A = 5.56+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(40)={rS2*cosA,rS2*sinA,0,pS3}; + +A = 5.56+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(41)={rS4*cosA,rS4*sinA,0,pS3}; + +A = 5.65+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(42)={rS6*cosA,rS6*sinA,0,pS3}; + +A = 9.35+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(43)={rS6*cosA,rS6*sinA,0,pS3}; + +A = 9.44+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(44)={rS4*cosA,rS4*sinA,0,pS3}; + +A = 9.44+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(45)={rS2*cosA,rS2*sinA,0,pS3}; + +A = 9.48+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(46)={rS1*cosA,rS1*sinA,0,pS3}; + +A = 11.0+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(47)={rS3*cosA,rS3*sinA,0,pS3}; + +A = 12.23+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(48)={rS5*cosA,rS5*sinA,0,pS3}; + +/* Pontos da ranhura 03 */ + +A2 = 30.0; + +A = 2.77+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(49)={rS5*cosA,rS5*sinA,0,pS3}; + +A = 4.0+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(50)={rS3*cosA,rS3*sinA,0,pS3}; + +A = 5.52+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(51)={rS1*cosA,rS1*sinA,0,pS3}; + +A = 5.56+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(52)={rS2*cosA,rS2*sinA,0,pS3}; + +A = 5.56+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(53)={rS4*cosA,rS4*sinA,0,pS3}; + +A = 5.65+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(54)={rS6*cosA,rS6*sinA,0,pS3}; + +A = 9.35+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(55)={rS6*cosA,rS6*sinA,0,pS3}; + +A = 9.44+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(56)={rS4*cosA,rS4*sinA,0,pS3}; + +A = 9.44+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(57)={rS2*cosA,rS2*sinA,0,pS3}; + +A = 9.48+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(58)={rS1*cosA,rS1*sinA,0,pS3}; + +A = 11.0+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(59)={rS3*cosA,rS3*sinA,0,pS3}; + +A = 12.23+A2; sinA=Sin(A*deg2rad);cosA=Cos(A*deg2rad); +Point(60)={rS5*cosA,rS5*sinA,0,pS3}; + + +// linhas e circulos do rotor + +Line(1)={1,2}; +Line(2)={2,3}; +Line(3)={3,4}; +Line(4)={4,5}; +Line(5)={3,7}; +Line(6)={6,7}; +Line(7)={7,8}; +Line(8)={6,11}; +Line(9)={11,10}; +Line(10)={10,9}; +Line(11)={1,12}; +Line(12)={12,13}; +Line(13)={13,14}; +Line(14)={14,15}; +Line(15)={13,10}; +Circle(16)={2,1,12}; +Circle(17)={4,1,8}; +Circle(18)={8,1,9}; +Circle(19)={9,1,14}; +Circle(20)={5,1,15}; + +/* linhas e circulos do entreferro */ + +Line(21)={16,17}; +Line(22)={17,20}; +Line(23)={18,19}; +Line(24)={19,23}; +Circle(25)={16,1,18}; +Circle(26)={17,1,19}; + +/* linhas e circulos do estator */ +Line(27)={20,21}; +Line(28)={23,24}; +Circle(29)={20,1,27}; +Circle(30)={34,1,39}; +Circle(31)={46,1,51}; +Circle(32)={58,1,23}; +Circle(33)={21,1,61}; +Circle(34)={61,1,62}; +Circle(89)={62,1,63}; +Circle(90)={63,1,24}; + +Line(91)={30,61}; +Line(92)={42,62}; +Line(93)={54,63}; + +/* linhas e circulos da ranhura 01 */ +Line(35)={27,28}; +Line(36)={28,26}; +Line(37)={26,25}; +Circle(38)={25,29,30}; +Line(39)={30,31}; +Circle(40)={31,32,36}; +Line(41)={36,35}; +Line(42)={35,33}; +Line(43)={33,34}; +Line(44)={26,35}; + +/* linhas e circulos da ranhura 02 */ +Line(45)={39,40}; +Line(46)={40,38}; +Line(47)={38,37}; +Circle(48)={37,41,42}; +Line(49)={42,43}; +Circle(50)={43,44,48}; +Line(51)={48,47}; +Line(52)={47,45}; +Line(53)={45,46}; +Line(54)={38,47}; + +/* linhas e circulos da ranhura 03 */ +Line(55)={51,52}; +Line(56)={52,50}; +Line(57)={50,49}; +Circle(58)={49,53,54}; +Line(59)={54,55}; +Circle(60)={55,56,60}; +Line(61)={60,59}; +Line(62)={59,57}; +Line(63)={57,58}; +Line(64)={50,59}; + +/* superficies do rotor */ + +Line Loop(65) = {-11,1,16}; +Plane Surface(66) = {65}; +Line Loop(67) = {12,15,-9,-8,6,-5,-2,16}; +Plane Surface(68) = {67}; +Line Loop(69) = {7,-17,-3,5}; +Plane Surface(70) = {69}; +Line Loop(71) = {-18,-7,-6,8,9,10}; +Plane Surface(72) = {71}; +Line Loop(73) = {-19,-10,-15,13}; +Plane Surface(74) = {73}; +Line Loop(75) = {18,19,14,-20,-4,17}; +Plane Surface(76) = {75}; + +/* superficies do entreferro (banda de movimento) */ + +Transfinite Line{20,25,26}=NbrDiv+1 Using Power 1.; +Transfinite Line{21,23}=2; +Line Loop(77) = {-23,-25,21,26}; +Plane Surface(78) = {77}; +Transfinite Surface{78}={16,17,19,18}; +Recombine Surface{78}; // For Hexahedra in the Moving Band + +/* superficies do estator */ + +Line Loop(79) = {24,-32,-63,-62,-64,-56,-55,-31,-53,-52,-54,-46,-45,-30,-43,-42,-44,-36,-35,-29,-22,26}; +Plane Surface(80) = {79}; + + +Line Loop(94) = {37,38,91,-33,-27,29,35,36}; +Plane Surface(95) = {94}; +Line Loop(96) = {42,43,30,45,46,47,48,92,-34,-91,39,40,41}; +Plane Surface(97) = {96}; +Line Loop(98) = {52,53,31,55,56,57,58,93,-89,-92,49,50,51}; +Plane Surface(99) = {98}; +Line Loop(100) = {62,63,32,28,-90,-93,59,60,61}; +Plane Surface(101) = {100}; +/* +Line Loop(81) = {37,38,39,40,41,42,43,30,45,46,47,48,49,50,51,52,53,31,55,56,57,58,59,60,61,62,63,32,28,-90,-89,-34,-33,-27,29,35,36}; +Plane Surface(82) = {81}; +*/ +/* superficie da ranhura 01 */ + +Line Loop(83) = {-41,-40,-39,-38,-37,44}; +Plane Surface(84) = {83}; + +/* superficie da ranhura 02 */ + +Line Loop(85) = {-51,-50,-49,-48,-47,54}; +Plane Surface(86) = {85}; + +/* superficie da ranhura 03 */ +Line Loop(87) = {-61,-60,-59,-58,-57,64}; +Plane Surface(88) = {87}; + +// Continue with 101 ... + +// ---------------------------------------------------- +// ---------------------------------------------------- + +L_ = 100e6 ; +S_ = 200e6 ; +V_ = 300e6 ; +P_ = 400e6 ; +N_ = 1e6 ; + + +Physical Volume(1301) = {V_+N_+68}; // Rotor + +//Physical Volume(1302) = {V_+N_+95, V_+N_+97, V_+N_+99, V_+N_+101}; // Stator + +Physical Volume(1320) = {V_+N_+95}; // StatorSup0 +Physical Volume(1321) = {V_+N_+97}; // StatorSup1 +Physical Volume(1322) = {V_+N_+99}; // StatorSup2 +Physical Volume(1323) = {V_+N_+101}; // StatorSup3 + +Physical Volume(1300) = {V_+N_+66}; // AirInt +Physical Volume(1303) = {V_+N_+76}; // AirRotor +Physical Volume(1304) = {V_+N_+80}; // AirStator +Physical Volume(1305) = {V_+N_+78}; // AirBM + +Physical Volume(1310) = {V_+N_+72}; // Magnet + +Physical Volume(1311) = {V_+N_+70}; // Cale1 +Physical Volume(1312) = {V_+N_+74}; // Cale2 + +Physical Volume(1401) = {V_+N_+84}; // Ind1 +Physical Volume(1402) = {V_+N_+86}; // Ind2 +Physical Volume(1403) = {V_+N_+88}; // Ind3 + + +Physical Surface(2001) = {L_+N_+16}; // SurfInt +Physical Surface(2002) = {L_+N_+33,L_+N_+34,L_+N_+89,L_+N_+90}; // SurfExt + +Physical Surface(1011) = {L_+N_+ 1, L_+N_+2, L_+N_+3, L_+N_+4, L_+N_+21,L_+N_+22, L_+N_+27}; // SurfA +Physical Surface(1012) = {L_+N_+11,L_+N_+12,L_+N_+13,L_+N_+14, L_+N_+23,L_+N_+24, L_+N_+28}; // SurfB + + +Physical Surface(1501) = {L_+N_+20}; // SurfR +Physical Surface(1502) = {L_+N_+25}; // SurfBM + +Physical Line(2021) = {P_+N_+15}; // PointR +Physical Line(2022) = {P_+N_+18}; // PointBM + +// SurfR (PointR) & SurfBM (PointBM) are lines (points) located at the same +// position, but with distinct nodes + + +// For h-formulation (cut ...) +Physical Surface(2210) = {L_+N_+37,L_+N_+38,/*L_+N_+39,*/L_+N_+40,L_+N_+41,L_+N_+44}; // SkinInd1 +Physical Surface(2211) = {L_+N_+91}; // CutInd1 +Physical Surface(2212) = {L_+N_+39}; // SkinInd1_2 + +Physical Surface(2220) = {L_+N_+47,L_+N_+48,/*L_+N_+49,*/L_+N_+50,L_+N_+51,L_+N_+54}; // SkinInd2 +Physical Surface(2221) = {L_+N_+92}; // CutInd2 +Physical Surface(2222) = {L_+N_+49}; // SkinInd2_2 + +Physical Surface(2230) = {L_+N_+57,L_+N_+58,/*L_+N_+59,*/L_+N_+60,L_+N_+61,L_+N_+64}; // SkinInd3 +Physical Surface(2231) = {L_+N_+93}; // CutInd3 +Physical Surface(2232) = {L_+N_+59}; // SkinInd3_2 + + +Physical Point(2015) = {2}; // PointRef + + +i = 0*S_+0*N_ ; +Physical Surface(2300) = +{ i+68, i+95,i+97,i+99,i+101, i+66,i+76,i+80,i+78, i+72, i+70,i+74, i+84,i+86,i+88 }; // SurfZ0 + +i = S_+1*N_ ; +Physical Surface(2301) = +{ i+68, i+95,i+97,i+99,i+101, i+66,i+76,i+80,i+78, i+72, i+70,i+74, i+84,i+86,i+88 }; // SurfZ1 + diff --git a/benchmarks/3d/old_extrude.par b/benchmarks/3d/old_extrude.par new file mode 100644 index 0000000000000000000000000000000000000000..25e95e2dd07a08b34ad7230e8dcb6581198fff6d --- /dev/null +++ b/benchmarks/3d/old_extrude.par @@ -0,0 +1,3 @@ +1 +1 +0.04 diff --git a/benchmarks/3d/prism.geo b/benchmarks/3d/prism.geo new file mode 100644 index 0000000000000000000000000000000000000000..d537e222cbbe26b62ec93d4e4b070023470fe985 --- /dev/null +++ b/benchmarks/3d/prism.geo @@ -0,0 +1,46 @@ +Point(1) = {0.0,0.0,0.0,1.0}; +Point(2) = {1,0.0,0.0,1.0}; +Point(3) = {1,0.0,1,1.0}; +Point(4) = {1,2,1,1.0}; +Point(5) = {0,2,0,1.0}; +Point(6) = {1,2,0,1.0}; + +Line(1) = {4,6}; +Line(2) = {6,5}; +Line(3) = {5,4}; +Line(4) = {2,1}; +Line(5) = {1,3}; +Line(6) = {3,2}; +Line(7) = {2,6}; +Line(8) = {5,1}; +Line(9) = {3,4}; + +Line Loop(10) = {9,-3,8,5}; +Plane Surface(11) = {10}; +Line Loop(12) = {-7,-6,9,1}; +Plane Surface(13) = {12}; +Line Loop(14) = {-4,7,2,8}; +Plane Surface(15) = {14}; +Line Loop(16) = {6,4,5}; +Plane Surface(17) = {16}; +Line Loop(18) = {1,2,3}; +Plane Surface(19) = {18}; + +Surface Loop(20) = {13,15,17,-11,-19}; +Complex Volume(21) = {20}; + +Transfinite Line {1,2,3,4,5,6,7,8,9} = 3; + +Transfinite Surface {17} = {1,3,2}; +Transfinite Surface {15} = {1,2,6,5}; +Transfinite Surface {11} = {1,3,4,5}; +Transfinite Surface {13} = {3,2,6,4}; +Transfinite Surface {19} = {5,4,6}; + +Transfinite Volume {21} = {1,3,2,5,4,6}; + +/* +Recombine Surface {17,19}; +*/ +Recombine Surface {11,13,15}; + diff --git a/benchmarks/3d/sph.geo b/benchmarks/3d/sph.geo new file mode 100644 index 0000000000000000000000000000000000000000..0f4a835045cc612d756b27aeeb19196074eb500f --- /dev/null +++ b/benchmarks/3d/sph.geo @@ -0,0 +1,56 @@ +lc = 0.01; +dext = .05; +dint = .055; + +Point(1) = {0,0,0,lc}; +Point(2) = {dint,0,0,lc}; +Point(3) = {0,dint,0,lc}; +Point(4) = {0,0,dint,lc}; +Point(5) = {dext,0,0,lc}; +Point(6) = {0,dext,0,lc}; +Point(7) = {0,0,dext,lc}; + +Circle(1) = {7,1,5}; +Circle(2) = {4,1,2}; +Circle(3) = {5,1,6}; +Circle(4) = {2,1,3}; +Circle(5) = {7,1,6}; +Circle(6) = {4,1,3}; +Line(7) = {1,5}; +Line(8) = {5,2}; +Line(9) = {1,6}; +Line(10) = {6,3}; +Line(11) = {1,7}; +Line(12) = {7,4}; + +Line Loop(17) = {2,-8,-1,12}; +Plane Surface(18) = {17}; +Line Loop(19) = {-4,-8,3,10}; +Plane Surface(20) = {19}; +Line Loop(21) = {-6,-12,5,10}; +Plane Surface(22) = {21}; + +Line Loop(23) = {-6,2,4}; +Ruled Surface(24) = {23}; +Line Loop(25) = {-5,1,3}; +Ruled Surface(26) = {25}; + +Surface Loop(27) = {24,-22,-18,20,-26}; +Complex Volume(28) = {27}; + +Transfinite Line {1,2,3,4,5,6} = 10 ; +Transfinite Line {-8,-10,-12} = 5 Using Power 1.6 ; + +Transfinite Surface {22} = {4,7,6,3}; +Transfinite Surface {20} = {3,2,5,6}; +Transfinite Surface {18} = {4,2,5,7}; + +Transfinite Surface {24} = {3,4,2}; +Transfinite Surface {26} = {6,7,5}; + +Recombine Surface {18,20,22}; +/* +Recombine Surface {24,26}; +*/ +Transfinite Volume {28} = {3,4,2,6,7,5}; + diff --git a/benchmarks/3d/transfinite.geo b/benchmarks/3d/transfinite.geo new file mode 100644 index 0000000000000000000000000000000000000000..c0c7314aba4f2fa8c96c6f3d6a02901e3c63dde4 --- /dev/null +++ b/benchmarks/3d/transfinite.geo @@ -0,0 +1,66 @@ +Point(1) = {0.0,0.0,0.0,1.0}; +Point(2) = {1,0.0,0.0,1.0}; +Point(3) = {.5,.1,0.0,1.0}; +Point(4) = {.5,.2,0.0,1.0}; +Point(5) = {0,.5,0.0,1.0}; +Point(6) = {1,.55,0.0,1.0}; +Point(7) = {0,0,1,1.0}; + +Line(1) = {2,6}; +Line(2) = {5,1}; +Spline(3) = {1,3,2}; +Spline(4) = {5,4,6}; + +Line Loop(5) = {-1,-3,-2,4}; +Plane Surface(6) = {5}; + +Point(8) = {0,.5,1,1.0}; +Point(9) = {1,.5,1,1.0}; +Point(10) = {1,0,1,1.0}; + +Line(7) = {6,9}; +Line(8) = {9,10}; +Line(9) = {10,2}; +Line(10) = {10,7}; +Line(11) = {7,1}; +Line(12) = {5,8}; +Line(13) = {8,7}; +Line(14) = {8,9}; + +Line Loop(15) = {14,-7,-4,12}; +Ruled Surface(16) = {15}; +Line Loop(17) = {7,8,9,1}; +Ruled Surface(18) = {17}; +Line Loop(19) = {-10,-8,-14,13}; +Ruled Surface(20) = {19}; +Line Loop(21) = {-11,-13,-12,2}; +Ruled Surface(22) = {21}; +Line Loop(23) = {-9,10,11,3}; +Ruled Surface(24) = {23}; + +Surface Loop(25) = {16,20,24,18,6,22}; +Complex Volume(26) = {25}; + +Transfinite Line {7,9,11,12} = 5; +Transfinite Line {3,10,14} = 10; +Transfinite Line {4} = 10 Using Bump 1.5; +Transfinite Line {-1,2} = 20 Using Power 1.6; +Transfinite Line {8,13} = 20 ; + +Transfinite Surface {6} = {1,2,6,5}; +Transfinite Surface {20} = {7,10,9,8}; +Transfinite Surface {18} = {10,2,6,9}; +Transfinite Surface {22} = {7,1,5,8}; +Transfinite Surface {16} = {8,9,6,5}; +Transfinite Surface {24} = {7,10,2,1}; + +Transfinite Volume {26} = {7,10,2,1,8,9,6,5}; + +Recombine Surface {6,20,18,22,16,24}; + + + + + + + diff --git a/benchmarks/bugs/bug_demi_cercles.geo b/benchmarks/bugs/bug_demi_cercles.geo new file mode 100644 index 0000000000000000000000000000000000000000..a42a3fe8cb5a67f71075833a15c6677c0644b37a --- /dev/null +++ b/benchmarks/bugs/bug_demi_cercles.geo @@ -0,0 +1,13 @@ +Point(1) = {0.0,0.0,0.0,.08}; +Point(2) = {-.5,0.0,0.0,.08}; +Point(3) = {.5,0.0,0.0,.08}; +Point(4) = {.5,-.5,0.0,.08}; +Point(5) = {-.5,-.5,0.0,.08}; +Circle(1) = {3,1,2} Plane {0,0,1}; +Line(2) = {3,4}; +Line(3) = {4,5}; +Line(4) = {5,2}; +Line Loop(5) = {3,4,-1,2}; +Plane Surface(6) = {5}; +Extrude Surface {6, {0,0,.5}}; +Coherence; diff --git a/benchmarks/bugs/bug_ruled.geo b/benchmarks/bugs/bug_ruled.geo new file mode 100644 index 0000000000000000000000000000000000000000..0f5cb1cf6ec0247d696b749fffa02a51be32808e --- /dev/null +++ b/benchmarks/bugs/bug_ruled.geo @@ -0,0 +1,19 @@ + +// solved by setting the tolerance lower in sys3x3_with_tol (-> again, +// this arised from a wrong mean plane computation) + +//lc = 0.00001; +lc = 0.001; +Point(61) = {0.058, -0.005, 0, lc}; +Point(62) = {0.058, -0.005, 0.000625, lc}; +Point(64) = {0.058625, -0.005, 0, lc}; + +Point(85) = {0.058, -0.006, 0, lc}; +Point(86) = {0.058, -0.006, 0.000625, lc}; +Point(88) = {0.058625, -0.006, 0, lc}; +Line(1) = {86,62}; +Line(2) = {88,64}; +Circle(3) = {62,61,64}; +Circle(4) = {86,85,88}; +Line Loop(5) = {2,-3,-1,4}; +Ruled Surface(6) = {5}; diff --git a/benchmarks/bugs/bug_spline.geo b/benchmarks/bugs/bug_spline.geo new file mode 100644 index 0000000000000000000000000000000000000000..08ad7be9296f97f78bcdd5117722aca0acbf3361 --- /dev/null +++ b/benchmarks/bugs/bug_spline.geo @@ -0,0 +1,11 @@ +Point(1) = {0.0,0.0,0.0,.1}; +Point(2) = {1,0.0,0.0,.1}; +Point(3) = {1,1,0.0,.1}; +Point(4) = {.5,.5,1,.1}; +Point(5) = {1.2,.3,-.2,.1}; +Point(6) = {.5,0,.2,.1}; +Spline(1) = {1,4,3}; +Spline(2) = {3,5,2}; +Spline(3) = {2,6,1}; +Line Loop(4) = {2,3,1}; +Ruled Surface(5) = {4};