-
Denis Louis authored
adding non linear parameter in geo file + non linear FEM residual stopping criterion + validation large rotation
Denis Louis authoredadding non linear parameter in geo file + non linear FEM residual stopping criterion + validation large rotation
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
my_geo.geo 1.74 KiB
Lx = 2;
Ly = 1;
nx = 16; // prend beaucoup de temps àpd de 200x40
ny = 8;
Point(1) = {0, 0, 0, 0.1};
Point(2) = {Lx, 0, 0, 0.1};
Point(3) = {Lx, Ly, 0, 0.1};
Point(4) = {0, Ly, 0, 0.2};
Line(1) = {2, 1};
Line(2) = {3, 2};
Line(3) = {4, 3};
Line(4) = {1, 4};
Curve Loop(1) = {4, 3, 2, 1};
Plane Surface(1) = {1};
Transfinite Curve {3, 1} = nx+1 Using Progression 1;
Transfinite Curve {2, 4} = ny+1 Using Progression 1;
Transfinite Surface {1};
Recombine Surface {1}; // quads instead of triangles
Mesh.ElementOrder = 1;
Physical Curve("left_edge", 5) = {4};
Physical Surface("FEM_domain", 6) = {1};
Physical Curve("top_edge", 7) = {3};
Physical Curve("right_edge", 8) = {2};
Physical Point("fixed_node", 9) = {1};
// additional parameters given to the solver
SetNumber("Boundary Conditions/left_edge/ux", 0.); // HERE YOU DO NOT HAVE TO IMPOSE BOTH ux and uy simultaneously ! (permet aussi de simuler appuis à roulettes)
//SetNumber("Boundary Conditions/left_edge/uy", 0.);
SetNumber("Materials/FEM_domain/Young", 210e3);
SetNumber("Materials/FEM_domain/Poisson", 0.3);
SetNumber("Materials/FEM_domain/rho",7800); //volumic mass of acier
SetNumber("Boundary Conditions/top_edge/tx", 0.); // ALWAYS NEED TO IMPOSE BOTH tx AND ty ON A GIVEN EDGE (realiste, OK) !
SetNumber("Boundary Conditions/top_edge/ty", 0.); //set to some non-zero value to induce vertical deflection
SetNumber("Boundary Conditions/right_edge/tx", 21e3); // for simple tension conditions
SetNumber("Boundary Conditions/right_edge/ty", 0);
SetNumber("Volumic Forces/FEM_domain/bx",0);
SetNumber("Volumic Forces/FEM_domain/by",0.); //set to -9.81 for gravity
//SetNumber("Boundary Conditions/fixed_node/ux",0.);
SetNumber("Boundary Conditions/fixed_node/uy",2.);
Physical Curve("BEM_FEM_boundary", 10) = {1,2,3};