[cig-commits] r16515 - in long/3D/SNAC/trunk/Snac/plugins: plasticSPR viscoplasticSPR

echoi at geodynamics.org echoi at geodynamics.org
Fri Apr 9 06:55:57 PDT 2010


Author: echoi
Date: 2010-04-09 06:55:57 -0700 (Fri, 09 Apr 2010)
New Revision: 16515

Modified:
   long/3D/SNAC/trunk/Snac/plugins/plasticSPR/Constitutive.c
   long/3D/SNAC/trunk/Snac/plugins/viscoplasticSPR/Constitutive.c
Log:
Modified linear healing such that yielding tet heals more slowly.



Modified: long/3D/SNAC/trunk/Snac/plugins/plasticSPR/Constitutive.c
===================================================================
--- long/3D/SNAC/trunk/Snac/plugins/plasticSPR/Constitutive.c	2010-04-09 10:41:08 UTC (rev 16514)
+++ long/3D/SNAC/trunk/Snac/plugins/plasticSPR/Constitutive.c	2010-04-09 13:55:57 UTC (rev 16515)
@@ -249,6 +249,12 @@
 					}
 				}
 			}
+
+			/* linear healing: applied whether this tet has yielded or not. 
+			   Parameters are hardwired for now, but should be given through an input file. */
+			/* viscoplasticElement->plasticStrain[tetra_I] *= (1.0/(1.0+context->dt/1.0e+12)); */
+			plasticElement->plasticStrain[tetra_I] *= (1.0/(1.0+context->dt/(ind?1.0e+13:5.0e+11)));
+
 			depls += plasticElement->plasticStrain[tetra_I]*element->tetra[tetra_I].volume;
 			totalVolume += element->tetra[tetra_I].volume;
 /* 			if(element_lI==738) fprintf(stderr,"   *****  %d: depm=%g  acc plastic strain=%g\n", tetra_I, depm, element->tetra[tetra_I].volume); */

Modified: long/3D/SNAC/trunk/Snac/plugins/viscoplasticSPR/Constitutive.c
===================================================================
--- long/3D/SNAC/trunk/Snac/plugins/viscoplasticSPR/Constitutive.c	2010-04-09 10:41:08 UTC (rev 16514)
+++ long/3D/SNAC/trunk/Snac/plugins/viscoplasticSPR/Constitutive.c	2010-04-09 13:55:57 UTC (rev 16515)
@@ -354,9 +354,6 @@
 						depm = ( dep1 + dep2 + dep3 ) / 3.0f;
 						viscoplasticElement->plasticStrain[tetra_I] += sqrt( 0.5f * ((dep1-depm) * (dep1-depm) + (dep2-depm) * (dep2-depm) + (dep3-depm) * (dep3-depm) + depm*depm) );
 
-						/* linear healing */
-						viscoplasticElement->plasticStrain[tetra_I] *= (1.0/(1.0+context->dt/3.0e+13));
-
 						/* Stress projection back to euclidean coordinates */
 						memset( stress, 0, sizeof((*stress)) );
 						/* Resolve back to global axes  */
@@ -372,6 +369,11 @@
 			else
 				Journal_Firewall( (0>1), "In %s: \"mohrcoulomb\" is the only available yield criterion.\n", __func__ );
 
+			/* linear healing: applied whether this tet has yielded or not. 
+			   Parameters are hardwired for now, but should be given through an input file. */
+			/* viscoplasticElement->plasticStrain[tetra_I] *= (1.0/(1.0+context->dt/1.0e+12)); */
+			viscoplasticElement->plasticStrain[tetra_I] *= (1.0/(1.0+context->dt/(ind?1.0e+13:5.0e+11)));
+
 			depls += viscoplasticElement->plasticStrain[tetra_I]*element->tetra[tetra_I].volume;
 			totalVolume += element->tetra[tetra_I].volume;
 		}



More information about the CIG-COMMITS mailing list