[cig-commits] r19667 - in short/3D/PyLith/branches/v1.6-stable: libsrc/pylith/faults libsrc/pylith/friction unittests/libtests/friction/data
brad at geodynamics.org
brad at geodynamics.org
Thu Feb 23 13:59:54 PST 2012
Author: brad
Date: 2012-02-23 13:59:53 -0800 (Thu, 23 Feb 2012)
New Revision: 19667
Modified:
short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults/FaultCohesiveDyn.cc
short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/friction/RateStateAgeing.cc
short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/friction/StaticFriction.cc
short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/friction/TimeWeakening.cc
short/3D/PyLith/branches/v1.6-stable/unittests/libtests/friction/data/StaticFrictionData.cc
Log:
Removed debugging output. Change friction models to give cohesion when normal traction is positive (let constrainSolnSpace handle fault opening).
Modified: short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults/FaultCohesiveDyn.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults/FaultCohesiveDyn.cc 2012-02-23 21:21:29 UTC (rev 19666)
+++ short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults/FaultCohesiveDyn.cc 2012-02-23 21:59:53 UTC (rev 19667)
@@ -795,7 +795,6 @@
// model and the deformation. We also search in log space because
// some fault constitutive models depend on the log of slip rate.
-#if 1
const double residualTol = _zeroTolerance; // L2 misfit in tractions
const int maxIter = 16;
double logAlphaL = log10(_zeroTolerance); // minimum step
@@ -875,11 +874,10 @@
residualM = residualL;
} // if/else
const double alpha = pow(10.0, logAlphaM); // alphaM is our best guess
+#if 0 // DEBUGGING
std::cout << "ALPHA: " << alpha
<< ", residual: " << residualM
<< std::endl;
-#else
- const double alpha = 1.0;
#endif
double_array slipTVertex(spaceDim);
@@ -2478,7 +2476,7 @@
tractionTpdtVertex,
iterating);
-#if 0
+#if 0 // DEBUGGING
std::cout << "alpha: " << alpha
<< ", v_fault: " << v_fault;
std::cout << ", misfit:";
Modified: short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/friction/RateStateAgeing.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/friction/RateStateAgeing.cc 2012-02-23 21:21:29 UTC (rev 19666)
+++ short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/friction/RateStateAgeing.cc 2012-02-23 21:59:53 UTC (rev 19667)
@@ -309,31 +309,6 @@
if (normalTraction <= 0.0) {
// if fault is in compression
-#if 0
- // regularized rate and state equation
- const double f0 = properties[p_coef];
-
- // Since regulatized friction -> 0 as slipRate -> 0, limit slip
- // rate to some minimum value
- const double slipRateEff = std::max(_minSlipRate, slipRate);
-
- const double slipRate0 = properties[p_slipRate0];
- const double a = properties[p_a];
-
- const double theta = stateVars[s_state];
-
- const double L = properties[p_L];
- const double b = properties[p_b];
- const double bLnTerm = b * log(slipRate0 * theta / L);
-
- const double expTerm = exp((f0 + bLnTerm)/a);
- const double sinhArg = 0.5 * slipRateEff / slipRate0 * expTerm;
-
- mu_f = a * asinh(sinhArg);
- friction = -mu_f * normalTraction + properties[p_cohesion];
-
-#else
-
const double slipRateLinear = _minSlipRate;
const double f0 = properties[p_coef];
@@ -349,20 +324,12 @@
mu_f = f0 + a*log(slipRateLinear / slipRate0) + b*log(slipRate0*theta/L) -
a*(1.0 - slipRate/slipRateLinear);
} // else
-
friction = -mu_f * normalTraction + properties[p_cohesion];
+
+ } else {
+ friction = properties[p_cohesion];
+ } // if/else
-#if 0
- std::cout << "slip: " << slip
- << ", slipRate: " << slipRate
- << ", stateVar: " << theta
- << ", mu_f: " << mu_f
- << std::endl;
-#endif
-
-#endif
- } // if
-
PetscLogFlops(12);
return friction;
Modified: short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/friction/StaticFriction.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/friction/StaticFriction.cc 2012-02-23 21:21:29 UTC (rev 19666)
+++ short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/friction/StaticFriction.cc 2012-02-23 21:59:53 UTC (rev 19667)
@@ -158,7 +158,7 @@
const double friction = (normalTraction <= 0.0) ?
-properties[p_coef] * normalTraction + properties[p_cohesion]:
- 0.0;
+ properties[p_cohesion];
PetscLogFlops(2);
Modified: short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/friction/TimeWeakening.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/friction/TimeWeakening.cc 2012-02-23 21:21:29 UTC (rev 19666)
+++ short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/friction/TimeWeakening.cc 2012-02-23 21:59:53 UTC (rev 19667)
@@ -273,7 +273,9 @@
mu_f = properties[p_coefD];
} // if/else
friction = - mu_f * normalTraction + properties[p_cohesion];
- } // if
+ } else {
+ friction = properties[p_cohesion];
+ } // if/else
PetscLogFlops(6);
Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/friction/data/StaticFrictionData.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/friction/data/StaticFrictionData.cc 2012-02-23 21:21:29 UTC (rev 19666)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/friction/data/StaticFrictionData.cc 2012-02-23 21:59:53 UTC (rev 19667)
@@ -85,7 +85,7 @@
const double pylith::friction::StaticFrictionData::_friction[] = {
1000001.32,
- 0.0,
+ 1.0e+6,
};
const double pylith::friction::StaticFrictionData::_slip[] = {
More information about the CIG-COMMITS
mailing list