diff --git a/NonLinearSolver/contact/contactDomain.h b/NonLinearSolver/contact/contactDomain.h index 7a0527fef4a6d00dbf3909d400b2ebc689de47f4..308431883ad9f29759c72d50273975528b24f49a 100644 --- a/NonLinearSolver/contact/contactDomain.h +++ b/NonLinearSolver/contact/contactDomain.h @@ -233,7 +233,7 @@ class rigidPlaneContactDomain : public contactDomain{ class rigidSphereContactDomain : public contactDomain{ protected: - MVertex *_vergc; // vertex of gravity center (center of sphere) + MVertex *_vergc; // vertex of gravity center of sphere double _radius; // radius of sphere; // double _thickContact; // (?) use for shell (contact with neutral axis of external fiber is !=0) double _density; // density of sphere (? Not a material law for now ?) @@ -245,7 +245,7 @@ class rigidSphereContactDomain : public contactDomain{ const double penalty, const double rho, elementFilter *filSlave=NULL); rigidSphereContactDomain(const rigidSphereContactDomain& src): contactDomain(src),_vergc(src._vergc), - _radius(src._radius),_density(src._density){}; // (? 1.a necessary constructor; 2.src ?) + _radius(src._radius),_density(src._density){}; virtual ~rigidSphereContactDomain(){} virtual MVertex* getGC() const{return _vergc;}; virtual void setDomainAndFunctionSpace(partDomain *dom)=0; // (?) diff --git a/NonLinearSolver/contact/rigidSphereContactTerms.cpp b/NonLinearSolver/contact/rigidSphereContactTerms.cpp index 60cf5f224bb72c3f4cd9da2131f66e40d428cbf9..965ccbbb01b9ef024d9c9622ad795f8a1ef53b9d 100644 --- a/NonLinearSolver/contact/rigidSphereContactTerms.cpp +++ b/NonLinearSolver/contact/rigidSphereContactTerms.cpp @@ -61,12 +61,12 @@ void forceRigidSphereContact::get(const MVertex *ver, const double disp[6],doubl A = ver->point(); Adisp.setPosition(disp[0],disp[1],disp[2]); A+=Adisp; - SVector3 BA(B,A); - double d = BA.norm(); + SVector3 _lastNormalContact(B,A); // direction : from Master to Slave + double d = _lastNormalContact.norm(); // test to know if contact if(d < _radius){ - _lastNormalContact = BA.normalize(); // direction : from Master to Slave + _lastNormalContact.normalize(); double penetration = _radius-d; double penpen = penetration*_penalty; for(int j=0;j<3;j++){ diff --git a/dG3D/benchmarks/cubeSphereContact/core b/dG3D/benchmarks/cubeSphereContact/core new file mode 100644 index 0000000000000000000000000000000000000000..cba2a9499a8573ef213a86a116ccdbe7fbfce69f Binary files /dev/null and b/dG3D/benchmarks/cubeSphereContact/core differ diff --git a/dG3D/benchmarks/panelSphereContact/simplifypanelSphereContact.geo b/dG3D/benchmarks/cubeSphereContact/cubeSphereContact.geo similarity index 75% rename from dG3D/benchmarks/panelSphereContact/simplifypanelSphereContact.geo rename to dG3D/benchmarks/cubeSphereContact/cubeSphereContact.geo index d9e547221cde731b326568c1f0ac2308aa7d302a..199d087d22d3c1161a3b8d5e6cc9226a25b1a3d2 100755 --- a/dG3D/benchmarks/panelSphereContact/simplifypanelSphereContact.geo +++ b/dG3D/benchmarks/cubeSphereContact/cubeSphereContact.geo @@ -1,27 +1,24 @@ // GEOMETRY AND MESH PARAMETERS -lays = 3; // number of layers of the composite (must be an integer) +lays = 5; // number of layers of the composite (must be an integer, in z direction) mm=1e-3; // unit for geometry -Lx = 150*mm; // panel length in x direction (coarse mesh) -Ly = 100*mm; // panel length in y direction (coarse mesh) -Lz = 10*mm; // length in z direction -R = 8*mm; // sphere radius +Lx = 100*mm; // dimension in x direction +Ly = 100*mm; // dimension in y direction +Lz = 50*mm; // dimension in z direction +R = 15*mm; // sphere radius dis = 0.1*mm; // initial contact distance -slp = 10*mm; // panel characteristic length +slc = 10*mm; // cube characteristic length sls = 10*mm; // sphere characteristic length -// sl3 = R; -pT1 = 15; // panel transfinite line value (control nodes number by line) -pT2 = 10; // panel transfinite line value (control nodes number by line) +cT = 10; // panel transfinite line value (control nodes number by line) sT = 3; // sphere transfinite line value (control nodes number by line) // ////////////////////////// -// CompositePanel // +// CompositeCube // ////////////////////////// // GEOMETRY -// panel -Point(1)={-Lx/2,-Ly/2,0,slp}; -Point(2)={-Lx/2,Ly/2,0,slp}; -Point(3)={Lx/2,Ly/2,0,slp}; -Point(4)={Lx/2,-Ly/2,0,slp}; +Point(1)={-Lx/2,-Ly/2,0,slc}; +Point(2)={-Lx/2,Ly/2,0,slc}; +Point(3)={Lx/2,Ly/2,0,slc}; +Point(4)={Lx/2,-Ly/2,0,slc}; Line(1)={1,2}; Line(2)={2,3}; @@ -30,12 +27,10 @@ Line(4)={4,1}; // surfaces Line Loop(1)={1,2,3,4}; - Plane Surface(1)={1}; // replace unstructured grid by structured grid (with controlled nodes number by line) -Transfinite Line {1,3} = pT2 Using Progression 1; -Transfinite Line {2,4} = pT1 Using Progression 1; +Transfinite Line {1,2,3,4} = cT Using Progression 1; // transfinite surface guarantee a structured grid on a surface Transfinite Surface {1}; @@ -55,14 +50,14 @@ my_plate[]=Extrude {0, 0, -Lz} { // PHYSICAL GROUPS Physical Surface(81) = {13}; -Physical Surface(82) = {21}; -Physical Surface(83) = {17}; +Physical Surface(82) = {17}; +Physical Surface(83) = {21}; Physical Surface(84) = {25}; -Physical Volume(85) = { my_plate[] }; // +Physical Volume(85) = { my_plate[] }; // ////////////////////////// -// Sphere // +// RigidSphere // ////////////////////////// // GEOMETRY Point(41) = {0,0,R+dis,sls}; @@ -137,6 +132,5 @@ Transfinite Surface {73,74,75,76,77,78,79,80}; // Recombine Volume {3}; // PHYSICAL GROUPS -Physical Point(87) ={41}; // sphere center -Physical Surface(80) ={78, 77, 80, 79, 74, 73, 76, 75}; - +Physical Point(86) ={41}; // sphere center +Physical Surface(87) ={78, 77, 80, 79, 74, 73, 76, 75}; // sphere surface diff --git a/dG3D/benchmarks/cubeSphereContact/cubeSphereContact.msh b/dG3D/benchmarks/cubeSphereContact/cubeSphereContact.msh new file mode 100644 index 0000000000000000000000000000000000000000..ab09ef4de8907f8c4841a89df5265bb91ca5af11 --- /dev/null +++ b/dG3D/benchmarks/cubeSphereContact/cubeSphereContact.msh @@ -0,0 +1,2023 @@ +$MeshFormat +4.1 0 8 +$EndMeshFormat +$Entities +15 24 14 2 +1 -0.05 -0.05 0 0 +2 -0.05 0.05 0 0 +3 0.05 0.05 0 0 +4 0.05 -0.05 0 0 +5 -0.05 -0.05 -0.05 0 +6 -0.05 0.05 -0.05 0 +10 0.05 0.05 -0.05 0 +14 0.05 -0.05 -0.05 0 +41 0 0 0.0151 1 86 +42 0.015 0 0.0151 0 +43 -0.015 0 0.0151 0 +44 0 0.015 0.0151 0 +45 0 -0.015 0.0151 0 +46 0 0 0.0301 0 +47 0 0 0.0001 0 +1 -0.05 -0.05 0 -0.05 0.05 0 0 2 1 -2 +2 -0.05 0.05 0 0.05 0.05 0 0 2 2 -3 +3 0.05 -0.05 0 0.05 0.05 0 0 2 3 -4 +4 -0.05 -0.05 0 0.05 -0.05 0 0 2 4 -1 +6 -0.05 -0.05 -0.05 -0.05 0.05 -0.05 0 2 5 -6 +7 -0.05 0.05 -0.05 0.05 0.05 -0.05 0 2 6 -10 +8 0.05 -0.05 -0.05 0.05 0.05 -0.05 0 2 10 -14 +9 -0.05 -0.05 -0.05 0.05 -0.05 -0.05 0 2 14 -5 +11 -0.05 -0.05 -0.05 -0.05 -0.05 0 0 2 1 -5 +12 -0.05 0.05 -0.05 -0.05 0.05 0 0 2 2 -6 +16 0.05 0.05 -0.05 0.05 0.05 0 0 2 3 -10 +20 0.05 -0.05 -0.05 0.05 -0.05 0 0 2 4 -14 +51 8.673617379884035e-19 0 0.0151 0.015 0.015 0.0151 0 2 42 -44 +52 -0.015 8.673617379884035e-19 0.0151 0 0.015 0.0151 0 2 44 -43 +53 -0.015 -0.015 0.0151 -8.673617379884035e-19 0 0.0151 0 2 43 -45 +54 0 -0.015 0.0151 0.015 -8.673617379884035e-19 0.0151 0 2 45 -42 +55 8.673617379884035e-19 0 0.0151 0.015 0 0.0301 0 2 42 -46 +56 -0.015 0 0.0151 0 0 0.0301 0 2 46 -43 +57 -0.015 0 9.999999999999939e-05 -8.673617379884035e-19 0 0.0151 0 2 43 -47 +58 0 0 9.999999999999939e-05 0.015 0 0.0151 0 2 47 -42 +59 0 8.673617379884035e-19 0.0151 0 0.015 0.0301 0 2 44 -46 +60 0 -0.015 0.0151 0 0 0.0301 0 2 46 -45 +61 0 -0.015 9.999999999999939e-05 0 -8.673617379884035e-19 0.0151 0 2 45 -47 +62 0 0 9.999999999999939e-05 0 0.015 0.0151 0 2 47 -44 +1 -0.05 -0.05 0 0.05 0.05 0 0 4 1 2 3 4 +13 -0.05 -0.05 -0.05 -0.05 0.05 0 1 81 4 1 12 -6 -11 +17 -0.05 0.05 -0.05 0.05 0.05 0 1 82 4 2 16 -7 -12 +21 0.05 -0.05 -0.05 0.05 0.05 0 1 83 4 3 20 -8 -16 +25 -0.05 -0.05 -0.05 0.05 -0.05 0 1 84 4 4 11 -9 -20 +26 -0.05 -0.05 -0.05 0.05 0.05 -0.05 0 4 6 7 8 9 +73 0 0 9.999999999999939e-05 0.015 0.015 0.0151 1 87 3 51 -62 58 +74 0 0 0.0151 0.015 0.015 0.0301 1 87 3 51 59 -55 +75 -0.015 0 0.0151 0 0.015 0.0301 1 87 3 52 -56 -59 +76 -0.015 0 9.999999999999939e-05 0 0.015 0.0151 1 87 3 52 57 62 +77 -0.015 -0.015 9.999999999999939e-05 0 0 0.0151 1 87 3 53 61 -57 +78 -0.015 -0.015 0.0151 0 0 0.0301 1 87 3 53 -60 56 +79 0 -0.015 0.0151 0.015 0 0.0301 1 87 3 54 55 60 +80 0 -0.015 9.999999999999939e-05 0.015 0 0.0151 1 87 3 54 -58 -61 +1 -0.05 -0.05 -0.05 0.05 0.05 0 1 85 6 -1 26 13 17 21 25 +3 -0.015 -0.015 9.999999999999939e-05 0.015 0.015 0.0301 0 8 78 77 80 79 74 73 76 75 +$EndEntities +$Nodes +54 627 1 627 +0 1 0 1 +1 +-0.05 -0.05 0 +0 2 0 1 +2 +-0.05 0.05 0 +0 3 0 1 +3 +0.05 0.05 0 +0 4 0 1 +4 +0.05 -0.05 0 +0 5 0 1 +5 +-0.05 -0.05 -0.05 +0 6 0 1 +6 +-0.05 0.05 -0.05 +0 10 0 1 +7 +0.05 0.05 -0.05 +0 14 0 1 +8 +0.05 -0.05 -0.05 +0 41 0 1 +9 +0 0 0.0151 +0 42 0 1 +10 +0.015 0 0.0151 +0 43 0 1 +11 +-0.015 0 0.0151 +0 44 0 1 +12 +0 0.015 0.0151 +0 45 0 1 +13 +0 -0.015 0.0151 +0 46 0 1 +14 +0 0 0.0301 +0 47 0 1 +15 +0 0 0.0001 +1 1 0 8 +16 +17 +18 +19 +20 +21 +22 +23 +-0.05 -0.03888888888891238 0 +-0.05 -0.02777777777783017 0 +-0.05 -0.0166666666667507 0 +-0.05 -0.005555555555673955 0 +-0.05 0.005555555555435944 0 +-0.05 0.01666666666657628 0 +-0.05 0.02777777777771662 0 +-0.05 0.03888888888885755 0 +1 2 0 8 +24 +25 +26 +27 +28 +29 +30 +31 +-0.03888888888891238 0.05 0 +-0.02777777777783017 0.05 0 +-0.0166666666667507 0.05 0 +-0.005555555555673955 0.05 0 +0.005555555555435944 0.05 0 +0.01666666666657628 0.05 0 +0.02777777777771662 0.05 0 +0.03888888888885755 0.05 0 +1 3 0 8 +32 +33 +34 +35 +36 +37 +38 +39 +0.05 0.03888888888891238 0 +0.05 0.02777777777783017 0 +0.05 0.0166666666667507 0 +0.05 0.005555555555673955 0 +0.05 -0.005555555555435944 0 +0.05 -0.01666666666657628 0 +0.05 -0.02777777777771662 0 +0.05 -0.03888888888885755 0 +1 4 0 8 +40 +41 +42 +43 +44 +45 +46 +47 +0.03888888888891238 -0.05 0 +0.02777777777783017 -0.05 0 +0.0166666666667507 -0.05 0 +0.005555555555673955 -0.05 0 +-0.005555555555435944 -0.05 0 +-0.01666666666657628 -0.05 0 +-0.02777777777771662 -0.05 0 +-0.03888888888885755 -0.05 0 +1 6 0 8 +48 +49 +50 +51 +52 +53 +54 +55 +-0.05 -0.03888888888891238 -0.05 +-0.05 -0.02777777777783017 -0.05 +-0.05 -0.0166666666667507 -0.05 +-0.05 -0.005555555555673955 -0.05 +-0.05 0.005555555555435944 -0.05 +-0.05 0.01666666666657628 -0.05 +-0.05 0.02777777777771662 -0.05 +-0.05 0.03888888888885755 -0.05 +1 7 0 8 +56 +57 +58 +59 +60 +61 +62 +63 +-0.03888888888891238 0.05 -0.05 +-0.02777777777783017 0.05 -0.05 +-0.0166666666667507 0.05 -0.05 +-0.005555555555673955 0.05 -0.05 +0.005555555555435944 0.05 -0.05 +0.01666666666657628 0.05 -0.05 +0.02777777777771662 0.05 -0.05 +0.03888888888885755 0.05 -0.05 +1 8 0 8 +64 +65 +66 +67 +68 +69 +70 +71 +0.05 0.03888888888891238 -0.05 +0.05 0.02777777777783017 -0.05 +0.05 0.0166666666667507 -0.05 +0.05 0.005555555555673955 -0.05 +0.05 -0.005555555555435944 -0.05 +0.05 -0.01666666666657628 -0.05 +0.05 -0.02777777777771662 -0.05 +0.05 -0.03888888888885755 -0.05 +1 9 0 8 +72 +73 +74 +75 +76 +77 +78 +79 +0.03888888888891238 -0.05 -0.05 +0.02777777777783017 -0.05 -0.05 +0.0166666666667507 -0.05 -0.05 +0.005555555555673955 -0.05 -0.05 +-0.005555555555435944 -0.05 -0.05 +-0.01666666666657628 -0.05 -0.05 +-0.02777777777771662 -0.05 -0.05 +-0.03888888888885755 -0.05 -0.05 +1 11 0 4 +80 +81 +82 +83 +-0.05 -0.05 -0.01 +-0.05 -0.05 -0.02 +-0.05 -0.05 -0.03 +-0.05 -0.05 -0.04000000000000001 +1 12 0 4 +84 +85 +86 +87 +-0.05 0.05 -0.01 +-0.05 0.05 -0.02 +-0.05 0.05 -0.03 +-0.05 0.05 -0.04000000000000001 +1 16 0 4 +88 +89 +90 +91 +0.05 0.05 -0.01 +0.05 0.05 -0.02 +0.05 0.05 -0.03 +0.05 0.05 -0.04000000000000001 +1 20 0 4 +92 +93 +94 +95 +0.05 -0.05 -0.01 +0.05 -0.05 -0.02 +0.05 -0.05 -0.03 +0.05 -0.05 -0.04000000000000001 +1 51 0 1 +96 +0.01060660169348463 0.0106066017421118 0.0151 +1 52 0 1 +97 +-0.0106066017421118 0.01060660169348463 0.0151 +1 53 0 1 +98 +-0.01060660169348463 -0.0106066017421118 0.0151 +1 54 0 1 +99 +0.0106066017421118 -0.01060660169348463 0.0151 +1 55 0 1 +100 +0.01060660169537891 0 0.02570660174021751 +1 56 0 1 +101 +-0.01060660174220677 0 0.02570660169338965 +1 57 0 1 +102 +-0.01060660169438057 0 0.004493398258784144 +1 58 0 1 +103 +0.01060660174089715 0 0.004493398305300725 +1 59 0 1 +104 +0 0.01060660169537891 0.02570660174021751 +1 60 0 1 +105 +0 -0.01060660174220677 0.02570660169338965 +1 61 0 1 +106 +0 -0.01060660169438057 0.004493398258784144 +1 62 0 1 +107 +0 0.01060660174089715 0.004493398305300725 +2 1 0 64 +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 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +-0.03888888888886365 -0.03888888888890631 0 +-0.02777777777772923 -0.0388888888889002 0 +-0.01666666666659566 -0.03888888888889411 0 +-0.005555555555462392 -0.03888888888888803 0 +0.005555555555647511 -0.03888888888888193 0 +0.01666666666673131 -0.03888888888887584 0 +0.02777777777781755 -0.03888888888886974 0 +0.03888888888890629 -0.03888888888886365 0 +-0.03888888888886975 -0.02777777777781756 0 +-0.02777777777774185 -0.02777777777780494 0 +-0.01666666666661503 -0.02777777777779231 0 +-0.005555555555488839 -0.02777777777777971 0 +0.005555555555621067 -0.02777777777776708 0 +0.01666666666671194 -0.02777777777775447 0 +0.02777777777780493 -0.02777777777774185 0 +0.03888888888890019 -0.02777777777772924 0 +-0.03888888888887585 -0.01666666666673132 0 +-0.02777777777775448 -0.01666666666671194 0 +-0.01666666666663442 -0.01666666666669255 0 +-0.00555555555551529 -0.01666666666667318 0 +0.005555555555594619 -0.01666666666665379 0 +0.01666666666669256 -0.01666666666663441 0 +0.02777777777779232 -0.01666666666661503 0 +0.03888888888889411 -0.01666666666659566 0 +-0.03888888888888193 -0.005555555555647513 0 +-0.02777777777776707 -0.005555555555621062 0 +-0.01666666666665379 -0.005555555555594623 0 +-0.005555555555541729 -0.005555555555568173 0 +0.00555555555556817 -0.005555555555541727 0 +0.01666666666667318 -0.005555555555515287 0 +0.02777777777777971 -0.005555555555488836 0 +0.03888888888888802 -0.005555555555462393 0 +-0.03888888888888802 0.005555555555462386 -0 +-0.02777777777777971 0.005555555555488837 -0 +-0.01666666666667318 0.005555555555515282 -0 +-0.005555555555568173 0.005555555555541726 -0 +0.005555555555541729 0.005555555555568172 0 +0.0166666666666538 0.005555555555594623 0 +0.02777777777776708 0.005555555555621067 0 +0.03888888888888192 0.005555555555647509 0 +-0.03888888888889411 0.01666666666659565 -0 +-0.02777777777779231 0.01666666666661504 -0 +-0.01666666666669256 0.01666666666663441 -0 +-0.005555555555594619 0.0166666666666538 -0 +0.005555555555515287 0.01666666666667318 0 +0.01666666666663442 0.01666666666669256 0 +0.02777777777775447 0.01666666666671194 0 +0.03888888888887583 0.01666666666673133 0 +-0.03888888888890019 0.02777777777772924 -0 +-0.02777777777780494 0.02777777777774185 -0 +-0.01666666666671194 0.02777777777775447 -0 +-0.005555555555621067 0.02777777777776709 -0 +0.005555555555488842 0.02777777777777971 0 +0.01666666666661503 0.02777777777779231 0 +0.02777777777774185 0.02777777777780494 0 +0.03888888888886974 0.02777777777781755 0 +-0.03888888888890629 0.03888888888886365 -0 +-0.02777777777781756 0.03888888888886974 -0 +-0.01666666666673132 0.03888888888887583 -0 +-0.005555555555647514 0.03888888888888192 -0 +0.005555555555462393 0.038888888888888 0 +0.01666666666659566 0.03888888888889411 0 +0.02777777777772923 0.03888888888890019 0 +0.03888888888886364 0.03888888888890629 0 +2 13 0 32 +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 +-0.05 -0.03888888888891238 -0.01 +-0.05 -0.03888888888891238 -0.02 +-0.05 -0.03888888888891238 -0.03 +-0.05 -0.03888888888891238 -0.04000000000000001 +-0.05 -0.02777777777783017 -0.01 +-0.05 -0.02777777777783017 -0.02 +-0.05 -0.02777777777783017 -0.03 +-0.05 -0.02777777777783017 -0.04000000000000001 +-0.05 -0.0166666666667507 -0.01 +-0.05 -0.0166666666667507 -0.02 +-0.05 -0.0166666666667507 -0.03 +-0.05 -0.0166666666667507 -0.04000000000000001 +-0.05 -0.005555555555673955 -0.01 +-0.05 -0.005555555555673955 -0.02 +-0.05 -0.005555555555673955 -0.03 +-0.05 -0.005555555555673955 -0.04000000000000001 +-0.05 0.005555555555435944 -0.01 +-0.05 0.005555555555435944 -0.02 +-0.05 0.005555555555435944 -0.03 +-0.05 0.005555555555435944 -0.04000000000000001 +-0.05 0.01666666666657628 -0.01 +-0.05 0.01666666666657628 -0.02 +-0.05 0.01666666666657628 -0.03 +-0.05 0.01666666666657628 -0.04000000000000001 +-0.05 0.02777777777771662 -0.01 +-0.05 0.02777777777771662 -0.02 +-0.05 0.02777777777771662 -0.03 +-0.05 0.02777777777771662 -0.04000000000000001 +-0.05 0.03888888888885755 -0.01 +-0.05 0.03888888888885755 -0.02 +-0.05 0.03888888888885755 -0.03 +-0.05 0.03888888888885755 -0.04000000000000001 +2 17 0 32 +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 +-0.03888888888891238 0.05 -0.01 +-0.03888888888891238 0.05 -0.02 +-0.03888888888891238 0.05 -0.03 +-0.03888888888891238 0.05 -0.04000000000000001 +-0.02777777777783017 0.05 -0.01 +-0.02777777777783017 0.05 -0.02 +-0.02777777777783017 0.05 -0.03 +-0.02777777777783017 0.05 -0.04000000000000001 +-0.0166666666667507 0.05 -0.01 +-0.0166666666667507 0.05 -0.02 +-0.0166666666667507 0.05 -0.03 +-0.0166666666667507 0.05 -0.04000000000000001 +-0.005555555555673955 0.05 -0.01 +-0.005555555555673955 0.05 -0.02 +-0.005555555555673955 0.05 -0.03 +-0.005555555555673955 0.05 -0.04000000000000001 +0.005555555555435944 0.05 -0.01 +0.005555555555435944 0.05 -0.02 +0.005555555555435944 0.05 -0.03 +0.005555555555435944 0.05 -0.04000000000000001 +0.01666666666657628 0.05 -0.01 +0.01666666666657628 0.05 -0.02 +0.01666666666657628 0.05 -0.03 +0.01666666666657628 0.05 -0.04000000000000001 +0.02777777777771662 0.05 -0.01 +0.02777777777771662 0.05 -0.02 +0.02777777777771662 0.05 -0.03 +0.02777777777771662 0.05 -0.04000000000000001 +0.03888888888885755 0.05 -0.01 +0.03888888888885755 0.05 -0.02 +0.03888888888885755 0.05 -0.03 +0.03888888888885755 0.05 -0.04000000000000001 +2 21 0 32 +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 +0.05 0.03888888888891238 -0.01 +0.05 0.03888888888891238 -0.02 +0.05 0.03888888888891238 -0.03 +0.05 0.03888888888891238 -0.04000000000000001 +0.05 0.02777777777783017 -0.01 +0.05 0.02777777777783017 -0.02 +0.05 0.02777777777783017 -0.03 +0.05 0.02777777777783017 -0.04000000000000001 +0.05 0.0166666666667507 -0.01 +0.05 0.0166666666667507 -0.02 +0.05 0.0166666666667507 -0.03 +0.05 0.0166666666667507 -0.04000000000000001 +0.05 0.005555555555673955 -0.01 +0.05 0.005555555555673955 -0.02 +0.05 0.005555555555673955 -0.03 +0.05 0.005555555555673955 -0.04000000000000001 +0.05 -0.005555555555435944 -0.01 +0.05 -0.005555555555435944 -0.02 +0.05 -0.005555555555435944 -0.03 +0.05 -0.005555555555435944 -0.04000000000000001 +0.05 -0.01666666666657628 -0.01 +0.05 -0.01666666666657628 -0.02 +0.05 -0.01666666666657628 -0.03 +0.05 -0.01666666666657628 -0.04000000000000001 +0.05 -0.02777777777771662 -0.01 +0.05 -0.02777777777771662 -0.02 +0.05 -0.02777777777771662 -0.03 +0.05 -0.02777777777771662 -0.04000000000000001 +0.05 -0.03888888888885755 -0.01 +0.05 -0.03888888888885755 -0.02 +0.05 -0.03888888888885755 -0.03 +0.05 -0.03888888888885755 -0.04000000000000001 +2 25 0 32 +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 +0.03888888888891238 -0.05 -0.01 +0.03888888888891238 -0.05 -0.02 +0.03888888888891238 -0.05 -0.03 +0.03888888888891238 -0.05 -0.04000000000000001 +0.02777777777783017 -0.05 -0.01 +0.02777777777783017 -0.05 -0.02 +0.02777777777783017 -0.05 -0.03 +0.02777777777783017 -0.05 -0.04000000000000001 +0.0166666666667507 -0.05 -0.01 +0.0166666666667507 -0.05 -0.02 +0.0166666666667507 -0.05 -0.03 +0.0166666666667507 -0.05 -0.04000000000000001 +0.005555555555673955 -0.05 -0.01 +0.005555555555673955 -0.05 -0.02 +0.005555555555673955 -0.05 -0.03 +0.005555555555673955 -0.05 -0.04000000000000001 +-0.005555555555435944 -0.05 -0.01 +-0.005555555555435944 -0.05 -0.02 +-0.005555555555435944 -0.05 -0.03 +-0.005555555555435944 -0.05 -0.04000000000000001 +-0.01666666666657628 -0.05 -0.01 +-0.01666666666657628 -0.05 -0.02 +-0.01666666666657628 -0.05 -0.03 +-0.01666666666657628 -0.05 -0.04000000000000001 +-0.02777777777771662 -0.05 -0.01 +-0.02777777777771662 -0.05 -0.02 +-0.02777777777771662 -0.05 -0.03 +-0.02777777777771662 -0.05 -0.04000000000000001 +-0.03888888888885755 -0.05 -0.01 +-0.03888888888885755 -0.05 -0.02 +-0.03888888888885755 -0.05 -0.03 +-0.03888888888885755 -0.05 -0.04000000000000001 +2 26 0 64 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +314 +315 +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 +-0.03888888888886365 -0.03888888888890631 -0.05 +-0.02777777777772923 -0.0388888888889002 -0.05 +-0.01666666666659566 -0.03888888888889411 -0.05 +-0.005555555555462392 -0.03888888888888803 -0.05 +0.005555555555647511 -0.03888888888888193 -0.05 +0.01666666666673131 -0.03888888888887584 -0.05 +0.02777777777781755 -0.03888888888886974 -0.05 +0.03888888888890629 -0.03888888888886365 -0.05 +-0.03888888888886975 -0.02777777777781756 -0.05 +-0.02777777777774185 -0.02777777777780494 -0.05 +-0.01666666666661503 -0.02777777777779231 -0.05 +-0.005555555555488839 -0.02777777777777971 -0.05 +0.005555555555621067 -0.02777777777776708 -0.05 +0.01666666666671194 -0.02777777777775447 -0.05 +0.02777777777780493 -0.02777777777774185 -0.05 +0.03888888888890019 -0.02777777777772924 -0.05 +-0.03888888888887585 -0.01666666666673132 -0.05 +-0.02777777777775448 -0.01666666666671194 -0.05 +-0.01666666666663442 -0.01666666666669255 -0.05 +-0.00555555555551529 -0.01666666666667318 -0.05 +0.005555555555594619 -0.01666666666665379 -0.05 +0.01666666666669256 -0.01666666666663441 -0.05 +0.02777777777779232 -0.01666666666661503 -0.05 +0.03888888888889411 -0.01666666666659566 -0.05 +-0.03888888888888193 -0.005555555555647513 -0.05 +-0.02777777777776707 -0.005555555555621062 -0.05 +-0.01666666666665379 -0.005555555555594623 -0.05 +-0.005555555555541729 -0.005555555555568173 -0.05 +0.00555555555556817 -0.005555555555541727 -0.05 +0.01666666666667318 -0.005555555555515287 -0.05 +0.02777777777777971 -0.005555555555488836 -0.05 +0.03888888888888802 -0.005555555555462393 -0.05 +-0.03888888888888802 0.005555555555462386 -0.05 +-0.02777777777777971 0.005555555555488837 -0.05 +-0.01666666666667318 0.005555555555515282 -0.05 +-0.005555555555568173 0.005555555555541726 -0.05 +0.005555555555541729 0.005555555555568172 -0.05 +0.0166666666666538 0.005555555555594623 -0.05 +0.02777777777776708 0.005555555555621067 -0.05 +0.03888888888888192 0.005555555555647509 -0.05 +-0.03888888888889411 0.01666666666659565 -0.05 +-0.02777777777779231 0.01666666666661504 -0.05 +-0.01666666666669256 0.01666666666663441 -0.05 +-0.005555555555594619 0.0166666666666538 -0.05 +0.005555555555515287 0.01666666666667318 -0.05 +0.01666666666663442 0.01666666666669256 -0.05 +0.02777777777775447 0.01666666666671194 -0.05 +0.03888888888887583 0.01666666666673133 -0.05 +-0.03888888888890019 0.02777777777772924 -0.05 +-0.02777777777780494 0.02777777777774185 -0.05 +-0.01666666666671194 0.02777777777775447 -0.05 +-0.005555555555621067 0.02777777777776709 -0.05 +0.005555555555488842 0.02777777777777971 -0.05 +0.01666666666661503 0.02777777777779231 -0.05 +0.02777777777774185 0.02777777777780494 -0.05 +0.03888888888886974 0.02777777777781755 -0.05 +-0.03888888888890629 0.03888888888886365 -0.05 +-0.02777777777781756 0.03888888888886974 -0.05 +-0.01666666666673132 0.03888888888887583 -0.05 +-0.005555555555647514 0.03888888888888192 -0.05 +0.005555555555462393 0.038888888888888 -0.05 +0.01666666666659566 0.03888888888889411 -0.05 +0.02777777777772923 0.03888888888890019 -0.05 +0.03888888888886364 0.03888888888890629 -0.05 +2 73 0 1 +364 +0.01109400021410477 0.007114062919256103 0.007936672000368218 +2 74 0 1 +365 +0.01109400020262533 0.007114062888630229 0.02226332804782548 +2 75 0 1 +366 +-0.00711406292527195 0.01109400018625153 0.02226332803679422 +2 76 0 1 +367 +-0.007114062880477649 0.01109400022442047 0.007936671977832604 +2 77 0 1 +368 +-0.0110940001960184 -0.007114062891107814 0.007936671944402767 +2 78 0 1 +369 +-0.01109400021978509 -0.007114062921609696 0.02226332798849714 +2 79 0 1 +370 +0.007114062881972963 -0.01109400022300788 0.02226332802287007 +2 80 0 1 +371 +0.007114062919094382 -0.01109400019874587 0.007936671976420957 +3 1 0 256 +372 +373 +374 +375 +376 +377 +378 +379 +380 +381 +382 +383 +384 +385 +386 +387 +388 +389 +390 +391 +392 +393 +394 +395 +396 +397 +398 +399 +400 +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 +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 +531 +532 +533 +534 +535 +536 +537 +538 +539 +540 +541 +542 +543 +544 +545 +546 +547 +548 +549 +550 +551 +552 +553 +554 +555 +556 +557 +558 +559 +560 +561 +562 +563 +564 +565 +566 +567 +568 +569 +570 +571 +572 +573 +574 +575 +576 +577 +578 +579 +580 +581 +582 +583 +584 +585 +586 +587 +588 +589 +590 +591 +592 +593 +594 +595 +596 +597 +598 +599 +600 +601 +602 +603 +604 +605 +606 +607 +608 +609 +610 +611 +612 +613 +614 +615 +616 +617 +618 +619 +620 +621 +622 +623 +624 +625 +626 +627 +-0.03888888888886365 -0.03888888888890631 -0.01 +-0.03888888888886365 -0.03888888888890631 -0.02 +-0.03888888888886365 -0.03888888888890631 -0.03 +-0.03888888888886365 -0.03888888888890631 -0.04000000000000001 +-0.02777777777772923 -0.0388888888889002 -0.01 +-0.02777777777772923 -0.0388888888889002 -0.02 +-0.02777777777772923 -0.0388888888889002 -0.03 +-0.02777777777772923 -0.0388888888889002 -0.04000000000000001 +-0.01666666666659566 -0.03888888888889411 -0.01 +-0.01666666666659566 -0.03888888888889411 -0.02 +-0.01666666666659566 -0.03888888888889411 -0.03 +-0.01666666666659566 -0.03888888888889411 -0.04000000000000001 +-0.005555555555462392 -0.03888888888888803 -0.01 +-0.005555555555462392 -0.03888888888888803 -0.02 +-0.005555555555462392 -0.03888888888888803 -0.03 +-0.005555555555462392 -0.03888888888888803 -0.04000000000000001 +0.005555555555647511 -0.03888888888888193 -0.01 +0.005555555555647511 -0.03888888888888193 -0.02 +0.005555555555647511 -0.03888888888888193 -0.03 +0.005555555555647511 -0.03888888888888193 -0.04000000000000001 +0.01666666666673131 -0.03888888888887584 -0.01 +0.01666666666673131 -0.03888888888887584 -0.02 +0.01666666666673131 -0.03888888888887584 -0.03 +0.01666666666673131 -0.03888888888887584 -0.04000000000000001 +0.02777777777781755 -0.03888888888886974 -0.01 +0.02777777777781755 -0.03888888888886974 -0.02 +0.02777777777781755 -0.03888888888886974 -0.03 +0.02777777777781755 -0.03888888888886974 -0.04000000000000001 +0.03888888888890629 -0.03888888888886365 -0.01 +0.03888888888890629 -0.03888888888886365 -0.02 +0.03888888888890629 -0.03888888888886365 -0.03 +0.03888888888890629 -0.03888888888886365 -0.04000000000000001 +-0.03888888888886975 -0.02777777777781756 -0.01 +-0.03888888888886975 -0.02777777777781756 -0.02 +-0.03888888888886975 -0.02777777777781756 -0.03 +-0.03888888888886975 -0.02777777777781756 -0.04000000000000001 +-0.02777777777774185 -0.02777777777780494 -0.01 +-0.02777777777774185 -0.02777777777780494 -0.02 +-0.02777777777774185 -0.02777777777780494 -0.03 +-0.02777777777774185 -0.02777777777780494 -0.04000000000000001 +-0.01666666666661503 -0.02777777777779231 -0.01 +-0.01666666666661503 -0.02777777777779231 -0.02 +-0.01666666666661503 -0.02777777777779231 -0.03 +-0.01666666666661503 -0.02777777777779231 -0.04000000000000001 +-0.005555555555488839 -0.02777777777777971 -0.01 +-0.005555555555488839 -0.02777777777777971 -0.02 +-0.005555555555488839 -0.02777777777777971 -0.03 +-0.005555555555488839 -0.02777777777777971 -0.04000000000000001 +0.005555555555621067 -0.02777777777776708 -0.01 +0.005555555555621067 -0.02777777777776708 -0.02 +0.005555555555621067 -0.02777777777776708 -0.03 +0.005555555555621067 -0.02777777777776708 -0.04000000000000001 +0.01666666666671194 -0.02777777777775447 -0.01 +0.01666666666671194 -0.02777777777775447 -0.02 +0.01666666666671194 -0.02777777777775447 -0.03 +0.01666666666671194 -0.02777777777775447 -0.04000000000000001 +0.02777777777780493 -0.02777777777774185 -0.01 +0.02777777777780493 -0.02777777777774185 -0.02 +0.02777777777780493 -0.02777777777774185 -0.03 +0.02777777777780493 -0.02777777777774185 -0.04000000000000001 +0.03888888888890019 -0.02777777777772924 -0.01 +0.03888888888890019 -0.02777777777772924 -0.02 +0.03888888888890019 -0.02777777777772924 -0.03 +0.03888888888890019 -0.02777777777772924 -0.04000000000000001 +-0.03888888888887585 -0.01666666666673132 -0.01 +-0.03888888888887585 -0.01666666666673132 -0.02 +-0.03888888888887585 -0.01666666666673132 -0.03 +-0.03888888888887585 -0.01666666666673132 -0.04000000000000001 +-0.02777777777775448 -0.01666666666671194 -0.01 +-0.02777777777775448 -0.01666666666671194 -0.02 +-0.02777777777775448 -0.01666666666671194 -0.03 +-0.02777777777775448 -0.01666666666671194 -0.04000000000000001 +-0.01666666666663442 -0.01666666666669255 -0.01 +-0.01666666666663442 -0.01666666666669255 -0.02 +-0.01666666666663442 -0.01666666666669255 -0.03 +-0.01666666666663442 -0.01666666666669255 -0.04000000000000001 +-0.00555555555551529 -0.01666666666667318 -0.01 +-0.00555555555551529 -0.01666666666667318 -0.02 +-0.00555555555551529 -0.01666666666667318 -0.03 +-0.00555555555551529 -0.01666666666667318 -0.04000000000000001 +0.005555555555594619 -0.01666666666665379 -0.01 +0.005555555555594619 -0.01666666666665379 -0.02 +0.005555555555594619 -0.01666666666665379 -0.03 +0.005555555555594619 -0.01666666666665379 -0.04000000000000001 +0.01666666666669256 -0.01666666666663441 -0.01 +0.01666666666669256 -0.01666666666663441 -0.02 +0.01666666666669256 -0.01666666666663441 -0.03 +0.01666666666669256 -0.01666666666663441 -0.04000000000000001 +0.02777777777779232 -0.01666666666661503 -0.01 +0.02777777777779232 -0.01666666666661503 -0.02 +0.02777777777779232 -0.01666666666661503 -0.03 +0.02777777777779232 -0.01666666666661503 -0.04000000000000001 +0.03888888888889411 -0.01666666666659566 -0.01 +0.03888888888889411 -0.01666666666659566 -0.02 +0.03888888888889411 -0.01666666666659566 -0.03 +0.03888888888889411 -0.01666666666659566 -0.04000000000000001 +-0.03888888888888193 -0.005555555555647513 -0.01 +-0.03888888888888193 -0.005555555555647513 -0.02 +-0.03888888888888193 -0.005555555555647513 -0.03 +-0.03888888888888193 -0.005555555555647513 -0.04000000000000001 +-0.02777777777776707 -0.005555555555621062 -0.01 +-0.02777777777776707 -0.005555555555621062 -0.02 +-0.02777777777776707 -0.005555555555621062 -0.03 +-0.02777777777776707 -0.005555555555621062 -0.04000000000000001 +-0.01666666666665379 -0.005555555555594623 -0.01 +-0.01666666666665379 -0.005555555555594623 -0.02 +-0.01666666666665379 -0.005555555555594623 -0.03 +-0.01666666666665379 -0.005555555555594623 -0.04000000000000001 +-0.005555555555541729 -0.005555555555568173 -0.01 +-0.005555555555541729 -0.005555555555568173 -0.02 +-0.005555555555541729 -0.005555555555568173 -0.03 +-0.005555555555541729 -0.005555555555568173 -0.04000000000000001 +0.00555555555556817 -0.005555555555541727 -0.01 +0.00555555555556817 -0.005555555555541727 -0.02 +0.00555555555556817 -0.005555555555541727 -0.03 +0.00555555555556817 -0.005555555555541727 -0.04000000000000001 +0.01666666666667318 -0.005555555555515287 -0.01 +0.01666666666667318 -0.005555555555515287 -0.02 +0.01666666666667318 -0.005555555555515287 -0.03 +0.01666666666667318 -0.005555555555515287 -0.04000000000000001 +0.02777777777777971 -0.005555555555488836 -0.01 +0.02777777777777971 -0.005555555555488836 -0.02 +0.02777777777777971 -0.005555555555488836 -0.03 +0.02777777777777971 -0.005555555555488836 -0.04000000000000001 +0.03888888888888802 -0.005555555555462393 -0.01 +0.03888888888888802 -0.005555555555462393 -0.02 +0.03888888888888802 -0.005555555555462393 -0.03 +0.03888888888888802 -0.005555555555462393 -0.04000000000000001 +-0.03888888888888802 0.005555555555462386 -0.01 +-0.03888888888888802 0.005555555555462386 -0.02 +-0.03888888888888802 0.005555555555462386 -0.03 +-0.03888888888888802 0.005555555555462386 -0.04000000000000001 +-0.02777777777777971 0.005555555555488837 -0.01 +-0.02777777777777971 0.005555555555488837 -0.02 +-0.02777777777777971 0.005555555555488837 -0.03 +-0.02777777777777971 0.005555555555488837 -0.04000000000000001 +-0.01666666666667318 0.005555555555515282 -0.01 +-0.01666666666667318 0.005555555555515282 -0.02 +-0.01666666666667318 0.005555555555515282 -0.03 +-0.01666666666667318 0.005555555555515282 -0.04000000000000001 +-0.005555555555568173 0.005555555555541726 -0.01 +-0.005555555555568173 0.005555555555541726 -0.02 +-0.005555555555568173 0.005555555555541726 -0.03 +-0.005555555555568173 0.005555555555541726 -0.04000000000000001 +0.005555555555541729 0.005555555555568172 -0.01 +0.005555555555541729 0.005555555555568172 -0.02 +0.005555555555541729 0.005555555555568172 -0.03 +0.005555555555541729 0.005555555555568172 -0.04000000000000001 +0.0166666666666538 0.005555555555594623 -0.01 +0.0166666666666538 0.005555555555594623 -0.02 +0.0166666666666538 0.005555555555594623 -0.03 +0.0166666666666538 0.005555555555594623 -0.04000000000000001 +0.02777777777776708 0.005555555555621067 -0.01 +0.02777777777776708 0.005555555555621067 -0.02 +0.02777777777776708 0.005555555555621067 -0.03 +0.02777777777776708 0.005555555555621067 -0.04000000000000001 +0.03888888888888192 0.005555555555647509 -0.01 +0.03888888888888192 0.005555555555647509 -0.02 +0.03888888888888192 0.005555555555647509 -0.03 +0.03888888888888192 0.005555555555647509 -0.04000000000000001 +-0.03888888888889411 0.01666666666659565 -0.01 +-0.03888888888889411 0.01666666666659565 -0.02 +-0.03888888888889411 0.01666666666659565 -0.03 +-0.03888888888889411 0.01666666666659565 -0.04000000000000001 +-0.02777777777779231 0.01666666666661504 -0.01 +-0.02777777777779231 0.01666666666661504 -0.02 +-0.02777777777779231 0.01666666666661504 -0.03 +-0.02777777777779231 0.01666666666661504 -0.04000000000000001 +-0.01666666666669256 0.01666666666663441 -0.01 +-0.01666666666669256 0.01666666666663441 -0.02 +-0.01666666666669256 0.01666666666663441 -0.03 +-0.01666666666669256 0.01666666666663441 -0.04000000000000001 +-0.005555555555594619 0.0166666666666538 -0.01 +-0.005555555555594619 0.0166666666666538 -0.02 +-0.005555555555594619 0.0166666666666538 -0.03 +-0.005555555555594619 0.0166666666666538 -0.04000000000000001 +0.005555555555515287 0.01666666666667318 -0.01 +0.005555555555515287 0.01666666666667318 -0.02 +0.005555555555515287 0.01666666666667318 -0.03 +0.005555555555515287 0.01666666666667318 -0.04000000000000001 +0.01666666666663442 0.01666666666669256 -0.01 +0.01666666666663442 0.01666666666669256 -0.02 +0.01666666666663442 0.01666666666669256 -0.03 +0.01666666666663442 0.01666666666669256 -0.04000000000000001 +0.02777777777775447 0.01666666666671194 -0.01 +0.02777777777775447 0.01666666666671194 -0.02 +0.02777777777775447 0.01666666666671194 -0.03 +0.02777777777775447 0.01666666666671194 -0.04000000000000001 +0.03888888888887583 0.01666666666673133 -0.01 +0.03888888888887583 0.01666666666673133 -0.02 +0.03888888888887583 0.01666666666673133 -0.03 +0.03888888888887583 0.01666666666673133 -0.04000000000000001 +-0.03888888888890019 0.02777777777772924 -0.01 +-0.03888888888890019 0.02777777777772924 -0.02 +-0.03888888888890019 0.02777777777772924 -0.03 +-0.03888888888890019 0.02777777777772924 -0.04000000000000001 +-0.02777777777780494 0.02777777777774185 -0.01 +-0.02777777777780494 0.02777777777774185 -0.02 +-0.02777777777780494 0.02777777777774185 -0.03 +-0.02777777777780494 0.02777777777774185 -0.04000000000000001 +-0.01666666666671194 0.02777777777775447 -0.01 +-0.01666666666671194 0.02777777777775447 -0.02 +-0.01666666666671194 0.02777777777775447 -0.03 +-0.01666666666671194 0.02777777777775447 -0.04000000000000001 +-0.005555555555621067 0.02777777777776709 -0.01 +-0.005555555555621067 0.02777777777776709 -0.02 +-0.005555555555621067 0.02777777777776709 -0.03 +-0.005555555555621067 0.02777777777776709 -0.04000000000000001 +0.005555555555488842 0.02777777777777971 -0.01 +0.005555555555488842 0.02777777777777971 -0.02 +0.005555555555488842 0.02777777777777971 -0.03 +0.005555555555488842 0.02777777777777971 -0.04000000000000001 +0.01666666666661503 0.02777777777779231 -0.01 +0.01666666666661503 0.02777777777779231 -0.02 +0.01666666666661503 0.02777777777779231 -0.03 +0.01666666666661503 0.02777777777779231 -0.04000000000000001 +0.02777777777774185 0.02777777777780494 -0.01 +0.02777777777774185 0.02777777777780494 -0.02 +0.02777777777774185 0.02777777777780494 -0.03 +0.02777777777774185 0.02777777777780494 -0.04000000000000001 +0.03888888888886974 0.02777777777781755 -0.01 +0.03888888888886974 0.02777777777781755 -0.02 +0.03888888888886974 0.02777777777781755 -0.03 +0.03888888888886974 0.02777777777781755 -0.04000000000000001 +-0.03888888888890629 0.03888888888886365 -0.01 +-0.03888888888890629 0.03888888888886365 -0.02 +-0.03888888888890629 0.03888888888886365 -0.03 +-0.03888888888890629 0.03888888888886365 -0.04000000000000001 +-0.02777777777781756 0.03888888888886974 -0.01 +-0.02777777777781756 0.03888888888886974 -0.02 +-0.02777777777781756 0.03888888888886974 -0.03 +-0.02777777777781756 0.03888888888886974 -0.04000000000000001 +-0.01666666666673132 0.03888888888887583 -0.01 +-0.01666666666673132 0.03888888888887583 -0.02 +-0.01666666666673132 0.03888888888887583 -0.03 +-0.01666666666673132 0.03888888888887583 -0.04000000000000001 +-0.005555555555647514 0.03888888888888192 -0.01 +-0.005555555555647514 0.03888888888888192 -0.02 +-0.005555555555647514 0.03888888888888192 -0.03 +-0.005555555555647514 0.03888888888888192 -0.04000000000000001 +0.005555555555462393 0.038888888888888 -0.01 +0.005555555555462393 0.038888888888888 -0.02 +0.005555555555462393 0.038888888888888 -0.03 +0.005555555555462393 0.038888888888888 -0.04000000000000001 +0.01666666666659566 0.03888888888889411 -0.01 +0.01666666666659566 0.03888888888889411 -0.02 +0.01666666666659566 0.03888888888889411 -0.03 +0.01666666666659566 0.03888888888889411 -0.04000000000000001 +0.02777777777772923 0.03888888888890019 -0.01 +0.02777777777772923 0.03888888888890019 -0.02 +0.02777777777772923 0.03888888888890019 -0.03 +0.02777777777772923 0.03888888888890019 -0.04000000000000001 +0.03888888888886364 0.03888888888890629 -0.01 +0.03888888888886364 0.03888888888890629 -0.02 +0.03888888888886364 0.03888888888890629 -0.03 +0.03888888888886364 0.03888888888890629 -0.04000000000000001 +$EndNodes +$Elements +14 634 1 634 +0 41 15 1 +1 9 +2 13 3 45 +2 1 16 172 80 +3 80 172 173 81 +4 81 173 174 82 +5 82 174 175 83 +6 83 175 48 5 +7 16 17 176 172 +8 172 176 177 173 +9 173 177 178 174 +10 174 178 179 175 +11 175 179 49 48 +12 17 18 180 176 +13 176 180 181 177 +14 177 181 182 178 +15 178 182 183 179 +16 179 183 50 49 +17 18 19 184 180 +18 180 184 185 181 +19 181 185 186 182 +20 182 186 187 183 +21 183 187 51 50 +22 19 20 188 184 +23 184 188 189 185 +24 185 189 190 186 +25 186 190 191 187 +26 187 191 52 51 +27 20 21 192 188 +28 188 192 193 189 +29 189 193 194 190 +30 190 194 195 191 +31 191 195 53 52 +32 21 22 196 192 +33 192 196 197 193 +34 193 197 198 194 +35 194 198 199 195 +36 195 199 54 53 +37 22 23 200 196 +38 196 200 201 197 +39 197 201 202 198 +40 198 202 203 199 +41 199 203 55 54 +42 23 2 84 200 +43 200 84 85 201 +44 201 85 86 202 +45 202 86 87 203 +46 203 87 6 55 +2 17 3 45 +47 2 24 204 84 +48 84 204 205 85 +49 85 205 206 86 +50 86 206 207 87 +51 87 207 56 6 +52 24 25 208 204 +53 204 208 209 205 +54 205 209 210 206 +55 206 210 211 207 +56 207 211 57 56 +57 25 26 212 208 +58 208 212 213 209 +59 209 213 214 210 +60 210 214 215 211 +61 211 215 58 57 +62 26 27 216 212 +63 212 216 217 213 +64 213 217 218 214 +65 214 218 219 215 +66 215 219 59 58 +67 27 28 220 216 +68 216 220 221 217 +69 217 221 222 218 +70 218 222 223 219 +71 219 223 60 59 +72 28 29 224 220 +73 220 224 225 221 +74 221 225 226 222 +75 222 226 227 223 +76 223 227 61 60 +77 29 30 228 224 +78 224 228 229 225 +79 225 229 230 226 +80 226 230 231 227 +81 227 231 62 61 +82 30 31 232 228 +83 228 232 233 229 +84 229 233 234 230 +85 230 234 235 231 +86 231 235 63 62 +87 31 3 88 232 +88 232 88 89 233 +89 233 89 90 234 +90 234 90 91 235 +91 235 91 7 63 +2 21 3 45 +92 3 32 236 88 +93 88 236 237 89 +94 89 237 238 90 +95 90 238 239 91 +96 91 239 64 7 +97 32 33 240 236 +98 236 240 241 237 +99 237 241 242 238 +100 238 242 243 239 +101 239 243 65 64 +102 33 34 244 240 +103 240 244 245 241 +104 241 245 246 242 +105 242 246 247 243 +106 243 247 66 65 +107 34 35 248 244 +108 244 248 249 245 +109 245 249 250 246 +110 246 250 251 247 +111 247 251 67 66 +112 35 36 252 248 +113 248 252 253 249 +114 249 253 254 250 +115 250 254 255 251 +116 251 255 68 67 +117 36 37 256 252 +118 252 256 257 253 +119 253 257 258 254 +120 254 258 259 255 +121 255 259 69 68 +122 37 38 260 256 +123 256 260 261 257 +124 257 261 262 258 +125 258 262 263 259 +126 259 263 70 69 +127 38 39 264 260 +128 260 264 265 261 +129 261 265 266 262 +130 262 266 267 263 +131 263 267 71 70 +132 39 4 92 264 +133 264 92 93 265 +134 265 93 94 266 +135 266 94 95 267 +136 267 95 8 71 +2 25 3 45 +137 4 40 268 92 +138 92 268 269 93 +139 93 269 270 94 +140 94 270 271 95 +141 95 271 72 8 +142 40 41 272 268 +143 268 272 273 269 +144 269 273 274 270 +145 270 274 275 271 +146 271 275 73 72 +147 41 42 276 272 +148 272 276 277 273 +149 273 277 278 274 +150 274 278 279 275 +151 275 279 74 73 +152 42 43 280 276 +153 276 280 281 277 +154 277 281 282 278 +155 278 282 283 279 +156 279 283 75 74 +157 43 44 284 280 +158 280 284 285 281 +159 281 285 286 282 +160 282 286 287 283 +161 283 287 76 75 +162 44 45 288 284 +163 284 288 289 285 +164 285 289 290 286 +165 286 290 291 287 +166 287 291 77 76 +167 45 46 292 288 +168 288 292 293 289 +169 289 293 294 290 +170 290 294 295 291 +171 291 295 78 77 +172 46 47 296 292 +173 292 296 297 293 +174 293 297 298 294 +175 294 298 299 295 +176 295 299 79 78 +177 47 1 80 296 +178 296 80 81 297 +179 297 81 82 298 +180 298 82 83 299 +181 299 83 5 79 +2 73 2 6 +182 10 96 364 +183 10 364 103 +184 96 12 364 +185 364 12 107 +186 103 107 15 +187 364 107 103 +2 74 2 6 +188 10 96 365 +189 10 365 100 +190 96 12 365 +191 365 12 104 +192 100 104 14 +193 365 104 100 +2 75 2 6 +194 97 11 366 +195 366 11 101 +196 12 97 366 +197 12 366 104 +198 104 101 14 +199 366 101 104 +2 76 2 6 +200 97 11 367 +201 367 11 102 +202 12 97 367 +203 12 367 107 +204 107 102 15 +205 367 102 107 +2 77 2 6 +206 11 98 368 +207 11 368 102 +208 98 13 368 +209 368 13 106 +210 102 106 15 +211 368 106 102 +2 78 2 6 +212 11 98 369 +213 11 369 101 +214 98 13 369 +215 369 13 105 +216 101 105 14 +217 369 105 101 +2 79 2 6 +218 99 10 370 +219 370 10 100 +220 13 99 370 +221 13 370 105 +222 105 100 14 +223 370 100 105 +2 80 2 6 +224 99 10 371 +225 371 10 103 +226 13 99 371 +227 13 371 106 +228 106 103 15 +229 371 103 106 +3 1 5 405 +230 1 16 108 47 80 172 372 296 +231 80 172 372 296 81 173 373 297 +232 81 173 373 297 82 174 374 298 +233 82 174 374 298 83 175 375 299 +234 83 175 375 299 5 48 300 79 +235 47 108 109 46 296 372 376 292 +236 296 372 376 292 297 373 377 293 +237 297 373 377 293 298 374 378 294 +238 298 374 378 294 299 375 379 295 +239 299 375 379 295 79 300 301 78 +240 46 109 110 45 292 376 380 288 +241 292 376 380 288 293 377 381 289 +242 293 377 381 289 294 378 382 290 +243 294 378 382 290 295 379 383 291 +244 295 379 383 291 78 301 302 77 +245 45 110 111 44 288 380 384 284 +246 288 380 384 284 289 381 385 285 +247 289 381 385 285 290 382 386 286 +248 290 382 386 286 291 383 387 287 +249 291 383 387 287 77 302 303 76 +250 44 111 112 43 284 384 388 280 +251 284 384 388 280 285 385 389 281 +252 285 385 389 281 286 386 390 282 +253 286 386 390 282 287 387 391 283 +254 287 387 391 283 76 303 304 75 +255 43 112 113 42 280 388 392 276 +256 280 388 392 276 281 389 393 277 +257 281 389 393 277 282 390 394 278 +258 282 390 394 278 283 391 395 279 +259 283 391 395 279 75 304 305 74 +260 42 113 114 41 276 392 396 272 +261 276 392 396 272 277 393 397 273 +262 277 393 397 273 278 394 398 274 +263 278 394 398 274 279 395 399 275 +264 279 395 399 275 74 305 306 73 +265 41 114 115 40 272 396 400 268 +266 272 396 400 268 273 397 401 269 +267 273 397 401 269 274 398 402 270 +268 274 398 402 270 275 399 403 271 +269 275 399 403 271 73 306 307 72 +270 40 115 39 4 268 400 264 92 +271 268 400 264 92 269 401 265 93 +272 269 401 265 93 270 402 266 94 +273 270 402 266 94 271 403 267 95 +274 271 403 267 95 72 307 71 8 +275 16 17 116 108 172 176 404 372 +276 172 176 404 372 173 177 405 373 +277 173 177 405 373 174 178 406 374 +278 174 178 406 374 175 179 407 375 +279 175 179 407 375 48 49 308 300 +280 108 116 117 109 372 404 408 376 +281 372 404 408 376 373 405 409 377 +282 373 405 409 377 374 406 410 378 +283 374 406 410 378 375 407 411 379 +284 375 407 411 379 300 308 309 301 +285 109 117 118 110 376 408 412 380 +286 376 408 412 380 377 409 413 381 +287 377 409 413 381 378 410 414 382 +288 378 410 414 382 379 411 415 383 +289 379 411 415 383 301 309 310 302 +290 110 118 119 111 380 412 416 384 +291 380 412 416 384 381 413 417 385 +292 381 413 417 385 382 414 418 386 +293 382 414 418 386 383 415 419 387 +294 383 415 419 387 302 310 311 303 +295 111 119 120 112 384 416 420 388 +296 384 416 420 388 385 417 421 389 +297 385 417 421 389 386 418 422 390 +298 386 418 422 390 387 419 423 391 +299 387 419 423 391 303 311 312 304 +300 112 120 121 113 388 420 424 392 +301 388 420 424 392 389 421 425 393 +302 389 421 425 393 390 422 426 394 +303 390 422 426 394 391 423 427 395 +304 391 423 427 395 304 312 313 305 +305 113 121 122 114 392 424 428 396 +306 392 424 428 396 393 425 429 397 +307 393 425 429 397 394 426 430 398 +308 394 426 430 398 395 427 431 399 +309 395 427 431 399 305 313 314 306 +310 114 122 123 115 396 428 432 400 +311 396 428 432 400 397 429 433 401 +312 397 429 433 401 398 430 434 402 +313 398 430 434 402 399 431 435 403 +314 399 431 435 403 306 314 315 307 +315 115 123 38 39 400 432 260 264 +316 400 432 260 264 401 433 261 265 +317 401 433 261 265 402 434 262 266 +318 402 434 262 266 403 435 263 267 +319 403 435 263 267 307 315 70 71 +320 17 18 124 116 176 180 436 404 +321 176 180 436 404 177 181 437 405 +322 177 181 437 405 178 182 438 406 +323 178 182 438 406 179 183 439 407 +324 179 183 439 407 49 50 316 308 +325 116 124 125 117 404 436 440 408 +326 404 436 440 408 405 437 441 409 +327 405 437 441 409 406 438 442 410 +328 406 438 442 410 407 439 443 411 +329 407 439 443 411 308 316 317 309 +330 117 125 126 118 408 440 444 412 +331 408 440 444 412 409 441 445 413 +332 409 441 445 413 410 442 446 414 +333 410 442 446 414 411 443 447 415 +334 411 443 447 415 309 317 318 310 +335 118 126 127 119 412 444 448 416 +336 412 444 448 416 413 445 449 417 +337 413 445 449 417 414 446 450 418 +338 414 446 450 418 415 447 451 419 +339 415 447 451 419 310 318 319 311 +340 119 127 128 120 416 448 452 420 +341 416 448 452 420 417 449 453 421 +342 417 449 453 421 418 450 454 422 +343 418 450 454 422 419 451 455 423 +344 419 451 455 423 311 319 320 312 +345 120 128 129 121 420 452 456 424 +346 420 452 456 424 421 453 457 425 +347 421 453 457 425 422 454 458 426 +348 422 454 458 426 423 455 459 427 +349 423 455 459 427 312 320 321 313 +350 121 129 130 122 424 456 460 428 +351 424 456 460 428 425 457 461 429 +352 425 457 461 429 426 458 462 430 +353 426 458 462 430 427 459 463 431 +354 427 459 463 431 313 321 322 314 +355 122 130 131 123 428 460 464 432 +356 428 460 464 432 429 461 465 433 +357 429 461 465 433 430 462 466 434 +358 430 462 466 434 431 463 467 435 +359 431 463 467 435 314 322 323 315 +360 123 131 37 38 432 464 256 260 +361 432 464 256 260 433 465 257 261 +362 433 465 257 261 434 466 258 262 +363 434 466 258 262 435 467 259 263 +364 435 467 259 263 315 323 69 70 +365 18 19 132 124 180 184 468 436 +366 180 184 468 436 181 185 469 437 +367 181 185 469 437 182 186 470 438 +368 182 186 470 438 183 187 471 439 +369 183 187 471 439 50 51 324 316 +370 124 132 133 125 436 468 472 440 +371 436 468 472 440 437 469 473 441 +372 437 469 473 441 438 470 474 442 +373 438 470 474 442 439 471 475 443 +374 439 471 475 443 316 324 325 317 +375 125 133 134 126 440 472 476 444 +376 440 472 476 444 441 473 477 445 +377 441 473 477 445 442 474 478 446 +378 442 474 478 446 443 475 479 447 +379 443 475 479 447 317 325 326 318 +380 126 134 135 127 444 476 480 448 +381 444 476 480 448 445 477 481 449 +382 445 477 481 449 446 478 482 450 +383 446 478 482 450 447 479 483 451 +384 447 479 483 451 318 326 327 319 +385 127 135 136 128 448 480 484 452 +386 448 480 484 452 449 481 485 453 +387 449 481 485 453 450 482 486 454 +388 450 482 486 454 451 483 487 455 +389 451 483 487 455 319 327 328 320 +390 128 136 137 129 452 484 488 456 +391 452 484 488 456 453 485 489 457 +392 453 485 489 457 454 486 490 458 +393 454 486 490 458 455 487 491 459 +394 455 487 491 459 320 328 329 321 +395 129 137 138 130 456 488 492 460 +396 456 488 492 460 457 489 493 461 +397 457 489 493 461 458 490 494 462 +398 458 490 494 462 459 491 495 463 +399 459 491 495 463 321 329 330 322 +400 130 138 139 131 460 492 496 464 +401 460 492 496 464 461 493 497 465 +402 461 493 497 465 462 494 498 466 +403 462 494 498 466 463 495 499 467 +404 463 495 499 467 322 330 331 323 +405 131 139 36 37 464 496 252 256 +406 464 496 252 256 465 497 253 257 +407 465 497 253 257 466 498 254 258 +408 466 498 254 258 467 499 255 259 +409 467 499 255 259 323 331 68 69 +410 19 20 140 132 184 188 500 468 +411 184 188 500 468 185 189 501 469 +412 185 189 501 469 186 190 502 470 +413 186 190 502 470 187 191 503 471 +414 187 191 503 471 51 52 332 324 +415 132 140 141 133 468 500 504 472 +416 468 500 504 472 469 501 505 473 +417 469 501 505 473 470 502 506 474 +418 470 502 506 474 471 503 507 475 +419 471 503 507 475 324 332 333 325 +420 133 141 142 134 472 504 508 476 +421 472 504 508 476 473 505 509 477 +422 473 505 509 477 474 506 510 478 +423 474 506 510 478 475 507 511 479 +424 475 507 511 479 325 333 334 326 +425 134 142 143 135 476 508 512 480 +426 476 508 512 480 477 509 513 481 +427 477 509 513 481 478 510 514 482 +428 478 510 514 482 479 511 515 483 +429 479 511 515 483 326 334 335 327 +430 135 143 144 136 480 512 516 484 +431 480 512 516 484 481 513 517 485 +432 481 513 517 485 482 514 518 486 +433 482 514 518 486 483 515 519 487 +434 483 515 519 487 327 335 336 328 +435 136 144 145 137 484 516 520 488 +436 484 516 520 488 485 517 521 489 +437 485 517 521 489 486 518 522 490 +438 486 518 522 490 487 519 523 491 +439 487 519 523 491 328 336 337 329 +440 137 145 146 138 488 520 524 492 +441 488 520 524 492 489 521 525 493 +442 489 521 525 493 490 522 526 494 +443 490 522 526 494 491 523 527 495 +444 491 523 527 495 329 337 338 330 +445 138 146 147 139 492 524 528 496 +446 492 524 528 496 493 525 529 497 +447 493 525 529 497 494 526 530 498 +448 494 526 530 498 495 527 531 499 +449 495 527 531 499 330 338 339 331 +450 139 147 35 36 496 528 248 252 +451 496 528 248 252 497 529 249 253 +452 497 529 249 253 498 530 250 254 +453 498 530 250 254 499 531 251 255 +454 499 531 251 255 331 339 67 68 +455 20 21 148 140 188 192 532 500 +456 188 192 532 500 189 193 533 501 +457 189 193 533 501 190 194 534 502 +458 190 194 534 502 191 195 535 503 +459 191 195 535 503 52 53 340 332 +460 140 148 149 141 500 532 536 504 +461 500 532 536 504 501 533 537 505 +462 501 533 537 505 502 534 538 506 +463 502 534 538 506 503 535 539 507 +464 503 535 539 507 332 340 341 333 +465 141 149 150 142 504 536 540 508 +466 504 536 540 508 505 537 541 509 +467 505 537 541 509 506 538 542 510 +468 506 538 542 510 507 539 543 511 +469 507 539 543 511 333 341 342 334 +470 142 150 151 143 508 540 544 512 +471 508 540 544 512 509 541 545 513 +472 509 541 545 513 510 542 546 514 +473 510 542 546 514 511 543 547 515 +474 511 543 547 515 334 342 343 335 +475 143 151 152 144 512 544 548 516 +476 512 544 548 516 513 545 549 517 +477 513 545 549 517 514 546 550 518 +478 514 546 550 518 515 547 551 519 +479 515 547 551 519 335 343 344 336 +480 144 152 153 145 516 548 552 520 +481 516 548 552 520 517 549 553 521 +482 517 549 553 521 518 550 554 522 +483 518 550 554 522 519 551 555 523 +484 519 551 555 523 336 344 345 337 +485 145 153 154 146 520 552 556 524 +486 520 552 556 524 521 553 557 525 +487 521 553 557 525 522 554 558 526 +488 522 554 558 526 523 555 559 527 +489 523 555 559 527 337 345 346 338 +490 146 154 155 147 524 556 560 528 +491 524 556 560 528 525 557 561 529 +492 525 557 561 529 526 558 562 530 +493 526 558 562 530 527 559 563 531 +494 527 559 563 531 338 346 347 339 +495 147 155 34 35 528 560 244 248 +496 528 560 244 248 529 561 245 249 +497 529 561 245 249 530 562 246 250 +498 530 562 246 250 531 563 247 251 +499 531 563 247 251 339 347 66 67 +500 21 22 156 148 192 196 564 532 +501 192 196 564 532 193 197 565 533 +502 193 197 565 533 194 198 566 534 +503 194 198 566 534 195 199 567 535 +504 195 199 567 535 53 54 348 340 +505 148 156 157 149 532 564 568 536 +506 532 564 568 536 533 565 569 537 +507 533 565 569 537 534 566 570 538 +508 534 566 570 538 535 567 571 539 +509 535 567 571 539 340 348 349 341 +510 149 157 158 150 536 568 572 540 +511 536 568 572 540 537 569 573 541 +512 537 569 573 541 538 570 574 542 +513 538 570 574 542 539 571 575 543 +514 539 571 575 543 341 349 350 342 +515 150 158 159 151 540 572 576 544 +516 540 572 576 544 541 573 577 545 +517 541 573 577 545 542 574 578 546 +518 542 574 578 546 543 575 579 547 +519 543 575 579 547 342 350 351 343 +520 151 159 160 152 544 576 580 548 +521 544 576 580 548 545 577 581 549 +522 545 577 581 549 546 578 582 550 +523 546 578 582 550 547 579 583 551 +524 547 579 583 551 343 351 352 344 +525 152 160 161 153 548 580 584 552 +526 548 580 584 552 549 581 585 553 +527 549 581 585 553 550 582 586 554 +528 550 582 586 554 551 583 587 555 +529 551 583 587 555 344 352 353 345 +530 153 161 162 154 552 584 588 556 +531 552 584 588 556 553 585 589 557 +532 553 585 589 557 554 586 590 558 +533 554 586 590 558 555 587 591 559 +534 555 587 591 559 345 353 354 346 +535 154 162 163 155 556 588 592 560 +536 556 588 592 560 557 589 593 561 +537 557 589 593 561 558 590 594 562 +538 558 590 594 562 559 591 595 563 +539 559 591 595 563 346 354 355 347 +540 155 163 33 34 560 592 240 244 +541 560 592 240 244 561 593 241 245 +542 561 593 241 245 562 594 242 246 +543 562 594 242 246 563 595 243 247 +544 563 595 243 247 347 355 65 66 +545 22 23 164 156 196 200 596 564 +546 196 200 596 564 197 201 597 565 +547 197 201 597 565 198 202 598 566 +548 198 202 598 566 199 203 599 567 +549 199 203 599 567 54 55 356 348 +550 156 164 165 157 564 596 600 568 +551 564 596 600 568 565 597 601 569 +552 565 597 601 569 566 598 602 570 +553 566 598 602 570 567 599 603 571 +554 567 599 603 571 348 356 357 349 +555 157 165 166 158 568 600 604 572 +556 568 600 604 572 569 601 605 573 +557 569 601 605 573 570 602 606 574 +558 570 602 606 574 571 603 607 575 +559 571 603 607 575 349 357 358 350 +560 158 166 167 159 572 604 608 576 +561 572 604 608 576 573 605 609 577 +562 573 605 609 577 574 606 610 578 +563 574 606 610 578 575 607 611 579 +564 575 607 611 579 350 358 359 351 +565 159 167 168 160 576 608 612 580 +566 576 608 612 580 577 609 613 581 +567 577 609 613 581 578 610 614 582 +568 578 610 614 582 579 611 615 583 +569 579 611 615 583 351 359 360 352 +570 160 168 169 161 580 612 616 584 +571 580 612 616 584 581 613 617 585 +572 581 613 617 585 582 614 618 586 +573 582 614 618 586 583 615 619 587 +574 583 615 619 587 352 360 361 353 +575 161 169 170 162 584 616 620 588 +576 584 616 620 588 585 617 621 589 +577 585 617 621 589 586 618 622 590 +578 586 618 622 590 587 619 623 591 +579 587 619 623 591 353 361 362 354 +580 162 170 171 163 588 620 624 592 +581 588 620 624 592 589 621 625 593 +582 589 621 625 593 590 622 626 594 +583 590 622 626 594 591 623 627 595 +584 591 623 627 595 354 362 363 355 +585 163 171 32 33 592 624 236 240 +586 592 624 236 240 593 625 237 241 +587 593 625 237 241 594 626 238 242 +588 594 626 238 242 595 627 239 243 +589 595 627 239 243 355 363 64 65 +590 23 2 24 164 200 84 204 596 +591 200 84 204 596 201 85 205 597 +592 201 85 205 597 202 86 206 598 +593 202 86 206 598 203 87 207 599 +594 203 87 207 599 55 6 56 356 +595 164 24 25 165 596 204 208 600 +596 596 204 208 600 597 205 209 601 +597 597 205 209 601 598 206 210 602 +598 598 206 210 602 599 207 211 603 +599 599 207 211 603 356 56 57 357 +600 165 25 26 166 600 208 212 604 +601 600 208 212 604 601 209 213 605 +602 601 209 213 605 602 210 214 606 +603 602 210 214 606 603 211 215 607 +604 603 211 215 607 357 57 58 358 +605 166 26 27 167 604 212 216 608 +606 604 212 216 608 605 213 217 609 +607 605 213 217 609 606 214 218 610 +608 606 214 218 610 607 215 219 611 +609 607 215 219 611 358 58 59 359 +610 167 27 28 168 608 216 220 612 +611 608 216 220 612 609 217 221 613 +612 609 217 221 613 610 218 222 614 +613 610 218 222 614 611 219 223 615 +614 611 219 223 615 359 59 60 360 +615 168 28 29 169 612 220 224 616 +616 612 220 224 616 613 221 225 617 +617 613 221 225 617 614 222 226 618 +618 614 222 226 618 615 223 227 619 +619 615 223 227 619 360 60 61 361 +620 169 29 30 170 616 224 228 620 +621 616 224 228 620 617 225 229 621 +622 617 225 229 621 618 226 230 622 +623 618 226 230 622 619 227 231 623 +624 619 227 231 623 361 61 62 362 +625 170 30 31 171 620 228 232 624 +626 620 228 232 624 621 229 233 625 +627 621 229 233 625 622 230 234 626 +628 622 230 234 626 623 231 235 627 +629 623 231 235 627 362 62 63 363 +630 171 31 3 32 624 232 88 236 +631 624 232 88 236 625 233 89 237 +632 625 233 89 237 626 234 90 238 +633 626 234 90 238 627 235 91 239 +634 627 235 91 239 363 63 7 64 +$EndElements diff --git a/dG3D/benchmarks/panelSphereContact/simplifypanelSphereContact.py b/dG3D/benchmarks/cubeSphereContact/cubeSphereContact.py similarity index 72% rename from dG3D/benchmarks/panelSphereContact/simplifypanelSphereContact.py rename to dG3D/benchmarks/cubeSphereContact/cubeSphereContact.py index 3a7a7506ecedb5213aeec398a9105dbfc7ffedd9..6656b85b3f697f4892706fdaf7a3baf5db4ec8bc 100755 --- a/dG3D/benchmarks/panelSphereContact/simplifypanelSphereContact.py +++ b/dG3D/benchmarks/cubeSphereContact/cubeSphereContact.py @@ -3,31 +3,32 @@ from gmshpy import * #from dG3Dpy import* from dG3DpyDebug import* -#script to launch PBC problem with a python script +#script to launch PBC problem with a python script +#(! radius need to be the same value as in .geo !) # parameters for material law -lawnum = 11 # unique number of law (?) +lawnum = 11 # unique number of law +rho = 100 # density (? unit ?) E = 3.e9 # Young's modulus Pa nu= 0.4 # Poisson ratio sy0 = 120e6 # initial yield stress Pa h = E/10. # (?) -rho = 100 # density (? unit ?) # creation of material law -law1 = J2LinearDG3DMaterialLaw(lawnum,rho,E,nu,sy0,h) # (?) +law1 = J2LinearDG3DMaterialLaw(lawnum,rho,E,nu,sy0,h) # (dG3D/src/dG3DMaterialLaw.h/.cpp) # geometry & mesh -geofile="simplifypanelSphereContact.geo" # name of the geometry with physical groups -meshfile="simplifypanelSphereContact.msh" # name of mesh file (to save directly in gmsh shift+ctrl+s) +geofile="cubeSphereContact.geo" # name of the geometry with physical groups +meshfile="cubeSphereContact.msh" # name of mesh file (to save directly in gmsh shift+ctrl+s) # parameters for part domain -nfield = 85 # number of the field (physical number of entity) +nfield = 85 # number of the field (physical number of entity defined in gmsh) #myfield1 = FSDomain(1000,nfield,lawnum,3) # (?) -fullDg = 0 # not a Discontinuous Galerkin part Domain (true=1/false=0 ? if plies =1 ?) +fullDg = 0 # not a Discontinuous Galerkin part Domain beta1 = 1e2 # stability parameters (?) # creation of part domain -myfield1 = dG3DDomain(1000,nfield,0,lawnum,fullDg,3) # (tag=1000 : tag number for slave domains with no linked ddls ; ws=0 : which state == initial) +myfield1 = dG3DDomain(1000,nfield,0,lawnum,fullDg,3) # (dG3D/src/dG3DDomain.h/.cpp : tag=1000 : tag number for slave domains with no linked ddls ; ws=0 : functionSpaceType::Lagrange ; dim=3) myfield1.stabilityParameters(beta1) # parameters for solver @@ -65,26 +66,26 @@ mysolver.displacementBC("Face",84,1,0.) mysolver.displacementBC("Face",84,2,0.) # parameters for contact definition -radius=8.e-3 -penalty=1.e4 # (? unit ?) +radius=15.e-3 # ! same value as in .geo ! +penalty=1.e8 # (? unit ?) rhocontact=7800. sphereDispl = -20.e-3 contactDom1 = 1000 # (tag number for master domain) # creation of contact definition -flaw = CoulombFrictionLaw(2,0.,0.,penalty,penalty/1000.) # normal to the contact, static friction coeff , dynamic friction coeff -contact1 = dG3DRigidSphereContactDomain(contactDom1, 2, 80, 3, nfield, 87,radius,penalty,rhocontact) # (? 1.dimMaster=0; 2.physpt=center of sphere ?) +flaw = CoulombFrictionLaw(2,0.,0.,penalty,penalty/1000.) # normal to the contact, static friction coeff, dynamic friction coeff +contact1 = dG3DRigidSphereContactDomain(contactDom1, 2, 87, 3, nfield, 86,radius,penalty,rhocontact) contact1.setFriction(bool(0)) contact1.addFrictionLaw(flaw) mysolver.contactInteraction(contact1) -# BC sphere (? Physical Surface(86) or Physical Volume) -mysolver.displacementRigidContactBC(80,0,0.) -mysolver.displacementRigidContactBC(80,1,0.) -mysolver.displacementRigidContactBC(80,2,sphereDispl) -#mysolver.displacementRigidContactBC(87,0,0.) -#mysolver.displacementRigidContactBC(87,1,0.) -#mysolver.displacementRigidContactBC(87,2,sphereDispl) +# BC sphere +mysolver.displacementRigidContactBC(87,0,0.) +mysolver.displacementRigidContactBC(87,1,0.) +mysolver.displacementRigidContactBC(87,2,sphereDispl) +#mysolver.displacementRigidContactBC(86,0,0.) +#mysolver.displacementRigidContactBC(86,1,0.) +#mysolver.displacementRigidContactBC(86,2,sphereDispl) # ## Outputs @@ -108,7 +109,7 @@ mysolver.internalPointBuildView("sig_VM",IPField.SVM, 1, 1); mysolver.internalPointBuildView("Green-Lagrange equivalent strain",IPField.GL_EQUIVALENT_STRAIN, 1, 1); mysolver.internalPointBuildView("Equivalent plastic strain",IPField.PLASTICSTRAIN, 1, 1); -mysolver.archivingRigidContact(87,2,0, nstepArch); +mysolver.archivingRigidContact(86,2,0, nstepArch); # mysolver.archivingIPOnPhysicalGroup # mysolver.archivingNodeDisplacement diff --git a/dG3D/benchmarks/panelSphereContact/panelSphereContact.geo b/dG3D/benchmarks/panelSphereContact/panelSphereContact.geo deleted file mode 100755 index 3ce309bc4e451bfc83b21fc2578c08d73b96bc29..0000000000000000000000000000000000000000 --- a/dG3D/benchmarks/panelSphereContact/panelSphereContact.geo +++ /dev/null @@ -1,156 +0,0 @@ -// GEOMETRY AND MESH PARAMETERS -lays = 8; // number of layers of the composite (must be an integer) -mm=1e-3; // unit for geometry -Lx = 150*mm; // panel length in x direction (coarse mesh) -Ly = 100*mm; // panel length in y direction (coarse mesh) -Lz = (3.08/lays)*mm; // length in z direction -lx = 45*mm; // sub-panel length in x direction (fine mesh) -ly = 41*mm; // sub-panel length in y direction (fine mesh) -R = 8*mm; // sphere radius -dis = 1*mm; // initial contact distance -sl1 = 20*mm; // panel characteristic length -sl2 = 5*mm; // sub-panel characteristic length -sl3 = 3*mm; // sphere characteristic length -// sl3 = R; -pT = 20; // panel transfinite line value (control nodes number by line) -sT = 3; // sphere transfinite line value (control nodes number by line) -// -////////////////////////// -// CompositePanel // -////////////////////////// -// GEOMETRY -// panel -Point(1)={-Lx/2,-Ly/2,0,sl1}; -Point(2)={-Lx/2,Ly/2,0,sl1}; -Point(3)={Lx/2,Ly/2,0,sl1}; -Point(4)={Lx/2,-Ly/2,0,sl1}; - -Line(1)={1,2}; -Line(2)={2,3}; -Line(3)={3,4}; -Line(4)={4,1}; - -// sub-panel -Point(5)={-lx/2,-ly/2,0,sl2}; -Point(6)={-lx/2,ly/2,0,sl2}; -Point(7)={lx/2,ly/2,0,sl2}; -Point(8)={lx/2,-ly/2,0,sl2}; - -Line(5)={5,6}; -Line(6)={6,7}; -Line(7)={7,8}; -Line(8)={8,5}; - -// surfaces -Line Loop(1)={1,2,3,4}; -Line Loop(2)={5,6,7,8}; - -Plane Surface(1)={1,2}; -Plane Surface(2)={2}; - -// replace unstructured grid by structured grid (with controlled nodes number by line) -Transfinite Line {5,6,7,8} = pT Using Progression 1; -// ? transfinite surface is used to define the ordering of the nodes/elements in the mesh ? -Transfinite Surface {2}; - -// replace tri/tetra by quad/hexa elements -Recombine Surface{1,2}; - -// extrusion of surfaces along z direction -my_plate[]=Extrude {0, 0, -Lz} { - Surface{1}; Surface{2}; - Layers{lays}; - Recombine; -}; - -// ? transfinite volume is used to define the ordering of the nodes/elements in the mesh ? -// ? transfinite volume not needed when using extrusion ? (no effet) -// Transfinite Volume {1,2}; - -// PHYSICAL GROUPS -Physical Surface(81) = {21}; -Physical Surface(82) = {33}; -Physical Surface(83) = {29}; -Physical Surface(84) = {25}; -Physical Volume(85) = { my_plate[] }; // - -// -////////////////////////// -// Sphere // -////////////////////////// -// GEOMETRY -Point(41) = {0,0,R+dis,sl3}; -Point(42) = {R,0,R+dis,sl3}; -Point(43) = {-R,0,R+dis,sl3}; -Point(44) = {0,R,R+dis,sl3}; -Point(45) = {0,-R,R+dis,sl3}; -Point(46) = {0,0,2*R+dis,sl3}; -Point(47) = {0,0,dis,sl3}; - -Circle(51) = {42,41,44}; -Circle(52) = {44,41,43}; -Circle(53) = {43,41,45}; -Circle(54) = {45,41,42}; -Circle(55) = {42,41,46}; -Circle(56) = {46,41,43}; -Circle(57) = {43,41,47}; -Circle(58) = {47,41,42}; -Circle(59) = {44,41,46}; -Circle(60) = {46,41,45}; -Circle(61) = {45,41,47}; -Circle(62) ={47,41,44}; - -//+ surfaces -Curve Loop(3) = {51, -62, 58}; -//+ -Surface(73) = {3}; -//+ -Curve Loop(4) = {51, 59, -55}; -//+ -Surface(74) = {4}; -//+ -Curve Loop(5) = {52, -56, -59}; -//+ -Surface(75) = {5}; -//+ -Curve Loop(6) = {52, 57, 62}; -//+ -Surface(76) = {6}; -//+ -Curve Loop(7) = {53, 61, -57}; -//+ -Surface(77) = {7}; -//+ -Curve Loop(8) = {53, -60, 56}; -//+ -Surface(78) = {8}; -//+ -Curve Loop(9) = {54, 55, 60}; -//+ -Surface(79) = {9}; -//+ -Curve Loop(10) = {54, -58, -61}; -//+ -Surface(80) = {10}; -//+ -Surface Loop(1) = {78, 77, 80, 79, 74, 73, 76, 75}; -//+ volume -Volume(3) = {1}; - -//replace unstructured grid by structured grid (with controlled nodes number by line) -Transfinite Line {51,52,53,54,55,56,57,58,59,60,61,62} = sT Using Progression 1; - -// ? transfinite surface and volume is used to define the ordering of the nodes/elements in the mesh ? -Transfinite Surface {73,74,75,76,77,78,79,80}; -// transfinite algorithm only available for 5- and 6-face volumes -// Transfinite Volume {3}; - -// replace tri/tetra by quad/hexa elements -Recombine Surface {73,74,75,76,77,78,79,80}; -Recombine Volume {3}; - -// PHYSICAL GROUPS -Physical Surface(86) = {73,74,75,76,77,78,79,80}; // sphere -Physical Point(87) ={41}; // sphere center - - diff --git a/dG3D/benchmarks/panelSphereContact/panelSphereContact.py b/dG3D/benchmarks/panelSphereContact/panelSphereContact.py deleted file mode 100755 index fe7ba8412537a9ad20be9aa42d55306939dec432..0000000000000000000000000000000000000000 --- a/dG3D/benchmarks/panelSphereContact/panelSphereContact.py +++ /dev/null @@ -1,114 +0,0 @@ -#coding-Utf-8-*- -from gmshpy import * -#from dG3Dpy import* -from dG3DpyDebug import* - -#script to launch PBC problem with a python script - -# material law -lawnum = 11 # unique number of law (?) -E = 3.e9 # Young's modulus Pa -nu= 0.4 # Poisson ratio -sy0 = 120e6 # initial yield stress Pa (?) -h = E/10. # (?) -rho = 100 # (?) - -# creation of material law -law1 = J2LinearDG3DMaterialLaw(lawnum,rho,E,nu,sy0,h) # (?) - -# geometry & mesh -geofile="panelSphereContact.geo" # name of the geometry with physical groups -meshfile="panelSphereContact.msh" # name of mesh file (to save directly in gmsh shift+ctrl+s) - -# creation of part Domain -nfield = 85 # number of the field (physical number of entity) -#myfield1 = FSDomain(1000,nfield,lawnum,3) # (?) -fullDg = 0 # not a Discontinuous Galerkin part Domain (?) -beta1 = 1e2 # stability parameters -myfield1 = dG3DDomain(1000,nfield,0,lawnum,fullDg,3) (? 1000 ?) -myfield1.stabilityParameters(beta1) - -# solver parameters -sol = 2 # Gmm=0 (default) Taucs=1 PETsc=2 (?) -soltype =1 # StaticLinear=0 (default) StaticNonLinear=1 -nstep = 50 # number of step (used only if soltype=1) -ftime =1. # Final time (used only if soltype=1) -tol=1.e-4 # relative tolerance for NR scheme (used only if soltype=1) -tolAbs = 1e-12 -nstepArch=1 # Number of step between 2 archiving (used only if soltype=1) - -# creation of Solver -mysolver = nonLinearMechSolver(1000) # tag=1000 (?) -mysolver.loadModel(meshfile) -mysolver.addDomain(myfield1) -mysolver.addMaterialLaw(law1) - -mysolver.Scheme(soltype) -mysolver.Solver(sol) -mysolver.snlData(nstep,ftime,tol,tolAbs) -mysolver.stepBetweenArchiving(nstepArch) - -# BC plate -mysolver.displacementBC("Face",81,0,0.) -mysolver.displacementBC("Face",81,1,0.) -mysolver.displacementBC("Face",81,2,0.) # (?) zero displacement in z direction -mysolver.displacementBC("Face",82,0,0.) -mysolver.displacementBC("Face",82,1,0.) -mysolver.displacementBC("Face",82,2,0.) # (?) zero displacement in z direction -mysolver.displacementBC("Face",83,0,0.) -mysolver.displacementBC("Face",83,1,0.) -mysolver.displacementBC("Face",83,2,0.) # (?) zero displacement in z direction -mysolver.displacementBC("Face",84,0,0.) -mysolver.displacementBC("Face",84,1,0.) -mysolver.displacementBC("Face",84,2,0.) # (?) zero displacement in z direction - -# Contact definition -penalty=1.e4 # (?) -hcontact=0.5e-3 # (?) semi height of a virtual box placed on the contact surface and where contact is taken into account -rhocontact=7800. # (?) -sphereDispl = -1.e-3 # (?) - -contactDom1= 6000 # (?) - -# flaw1 = CoulombFrictionLaw(1,0.,1.,1e11,1e10) - -contact1 = dG3DRigidSphereContact(contactDom1, 2, 86, 3, nfield, 87,penalty,hcontact,rhocontact) # (? 1.dimMaster=2/3; 2.physpt=center of sphere ?) -# (?) contact1.setFriction(bool(0)) -# (?) contact1.addFrictionLaw(flaw) -mysolver.contactInteraction(contact1) # (?) - -# BC sphere (? Physical Surface(86) or Physical Volume) -mysolver.displacementRigidContactBC(86,0,0.) -mysolver.displacementRigidContactBC(86,1,0.) -mysolver.displacementRigidContactBC(86,2,sphereDispl) - -# -## Outputs -mysolver.internalPointBuildView("Green-Lagrange_xx",IPField.STRAIN_XX, 1, 1); -mysolver.internalPointBuildView("Green-Lagrange_yy",IPField.STRAIN_YY, 1, 1); -mysolver.internalPointBuildView("Green-Lagrange_zz",IPField.STRAIN_ZZ, 1, 1); -mysolver.internalPointBuildView("Green-Lagrange_xy",IPField.STRAIN_XY, 1, 1); -mysolver.internalPointBuildView("Green-Lagrange_yz",IPField.STRAIN_YZ, 1, 1); -mysolver.internalPointBuildView("Green-Lagrange_xz",IPField.STRAIN_XZ, 1, 1); -mysolver.internalPointBuildView("sig_xx",IPField.SIG_XX, 1, 1) -mysolver.internalPointBuildView("sig_yy",IPField.SIG_YY, 1, 1) -mysolver.internalPointBuildView("sig_zz",IPField.SIG_ZZ, 1, 1) -mysolver.internalPointBuildView("sig_xy",IPField.SIG_XY, 1, 1) -mysolver.internalPointBuildView("sig_yz",IPField.SIG_YZ, 1, 1) -mysolver.internalPointBuildView("sig_xz",IPField.SIG_XZ, 1, 1) -mysolver.internalPointBuildView("sig_VM",IPField.SVM, 1, 1); -mysolver.internalPointBuildView("Green-Lagrange equivalent strain",IPField.GL_EQUIVALENT_STRAIN, 1, 1); -mysolver.internalPointBuildView("Equivalent plastic strain",IPField.PLASTICSTRAIN, 1, 1); - -# mysolver.archivingIPOnPhysicalGroup -# mysolver.archivingNodeDisplacement -# mysolver.archivingDispOnPhysicalGroup -# mysolver.archivingForceOnPhysicalGroup -# mysolver.archivingRigidContact -# mysolver.archivingRigidContactForce - - -mysolver.solve() - -# check = TestCheck() # (?) - diff --git a/dG3D/src/dG3DContactDomain.cpp b/dG3D/src/dG3DContactDomain.cpp index f76682f4fca30314bacc108dbb13610627b53929..6082e01ee75b5d819ae24755920418a84d616cd8 100644 --- a/dG3D/src/dG3DContactDomain.cpp +++ b/dG3D/src/dG3DContactDomain.cpp @@ -43,8 +43,7 @@ void dG3DRigidPlaneContactDomain::setDomainAndFunctionSpace(partDomain *dom){ dG3DRigidSphereContactDomain::dG3DRigidSphereContactDomain(const int tag, const int dimMaster, const int physMaster, const int dimSlave, const int physSlave, const int physPointBase, - const double radius, const double penalty, const double rho, - elementFilter *fslave): + const double radius, const double penalty, const double rho, elementFilter *fslave): rigidSphereContactDomain(tag, dimMaster, physMaster, dimSlave, physSlave, physPointBase, radius, penalty, rho, fslave){};