[cig-commits] r13699 - long/3D/SNAC/trunk/Snac/plugins/viscoplastic

echoi at geodynamics.org echoi at geodynamics.org
Tue Dec 16 15:15:58 PST 2008


Author: echoi
Date: 2008-12-16 15:15:58 -0800 (Tue, 16 Dec 2008)
New Revision: 13699

Modified:
   long/3D/SNAC/trunk/Snac/plugins/viscoplastic/Constitutive.c
Log:
Replaced the viscosity model with what's consistent with the manual.


Modified: long/3D/SNAC/trunk/Snac/plugins/viscoplastic/Constitutive.c
===================================================================
--- long/3D/SNAC/trunk/Snac/plugins/viscoplastic/Constitutive.c	2008-12-16 23:01:23 UTC (rev 13698)
+++ long/3D/SNAC/trunk/Snac/plugins/viscoplastic/Constitutive.c	2008-12-16 23:15:58 UTC (rev 13699)
@@ -202,8 +202,25 @@
 					avgTemp += 0.25 * temperatureNodeExt->temperature;
 					assert( !isnan(avgTemp) && !isinf(avgTemp) );
 				}
+				// Hall et. al., 2004, G3
+				(*viscosity)= rviscosity*pow((srJ2/rstrainrate),(1./srexponent-1.))
+					*exp(H/R*(1./(avgTemp+273.15)-1./(rTemp+273.15)));
+				if((*viscosity) < material->vis_min) (*viscosity) = material->vis_min;
+				if((*viscosity) > material->vis_max) (*viscosity) = material->vis_max;
+				Journal_Firewall(
+						!isnan((*viscosity)) && !isinf((*viscosity)),
+						context->snacError,
+						"rvisc=%e Erattio=%e pow(E)=%e, dT=%e exp=%e\n",
+						rviscosity,
+						(srJ2/rstrainrate),
+						pow((srJ2/rstrainrate),
+							(1./srexponent-1.)),
+						exp(H/R*(1./(avgTemp+273.15)-1./(rTemp+273.15))),
+						(1./(avgTemp+273.15)-1./(rTemp+273.15)) );
+#if 0
 				// Lavier and Buck, JGR, 2002
 				(*viscosity) = pow(rviscosity,-1.0/srexponent1)*pow(srJ2,1.0/srexponent2-1)*exp(H/R/(avgTemp+273.15));
+#endif
 			}
 			else {
 				(*viscosity) = rviscosity;



More information about the CIG-COMMITS mailing list