@@ -61,7 +61,7 @@ void MPMesh::calculateStrain(){
6161 p_MPs->parallel_for (setMPStrainRate, " setMPStrainRate" );
6262}
6363
64- void MPMesh::calculateStress (){
64+ void MPMesh::calculateStress (const int constitutive_relation ){
6565 // MeshFields
6666 auto solveStress = p_mesh->getMeshField <polyMPO::MeshF_SolveStress>();
6767 auto elasticTimeStep = p_mesh->getElasticTimeStep ();
@@ -75,16 +75,14 @@ void MPMesh::calculateStress(){
7575 auto MPsIcePressure = p_MPs->getData <polyMPO::MPF_IcePressure>();
7676 auto MPsRepPressure = p_MPs->getData <polyMPO::MPF_ReplacementPressure>();
7777
78- int model_no = 2 ; // TODO get from MPAS
79-
8078 auto setMPStress = PS_LAMBDA (const int & elm, const int & mp, const int & mask){
8179 if (mask){
8280 Vec3d strain_rate (MPsStrainRate (mp, 0 ), MPsStrainRate (mp, 1 ), MPsStrainRate (mp, 2 ));
8381 Vec3d stress (MPsStress (mp, 0 ), MPsStress (mp, 1 ), MPsStress (mp, 2 ));
84- if (model_no == 1 )
85- constitutive_linear (strain_rate, stress);
86- else if (model_no == 2 )
82+ if (constitutive_relation == 1 )
8783 constitutive_evp (strain_rate, stress, MPsIcePressure (mp, 0 ), MPsRepPressure (mp, 0 ), MPsArea (mp, 0 ), elasticTimeStep, dampingTimescale);
84+ else if (constitutive_relation == 3 )
85+ constitutive_linear (strain_rate, stress);
8886 for (int m=0 ; m<3 ; m++)
8987 MPsStress (mp, m) = stress[m];
9088 }
0 commit comments