[cig-commits] r18843 - short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults
brad at geodynamics.org
brad at geodynamics.org
Mon Aug 22 18:23:54 PDT 2011
Author: brad
Date: 2011-08-22 18:23:54 -0700 (Mon, 22 Aug 2011)
New Revision: 18843
Modified:
short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults/FaultCohesiveDyn.cc
short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults/FaultCohesiveDyn.hh
Log:
Fixed tolerance issue in determining if fault is under compression.
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 2011-08-22 22:12:55 UTC (rev 18842)
+++ short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults/FaultCohesiveDyn.cc 2011-08-23 01:23:54 UTC (rev 18843)
@@ -60,7 +60,7 @@
typedef ALE::ISieveVisitor::IndicesVisitor<RealSection,SieveSubMesh::order_type,PetscInt> IndicesVisitor;
// ----------------------------------------------------------------------
-const double pylith::faults::FaultCohesiveDyn::_slipRateTolerance = 1.0e-12;
+const double pylith::faults::FaultCohesiveDyn::_zeroTolerance = 1.0e-12;
// ----------------------------------------------------------------------
// Default constructor.
@@ -438,7 +438,7 @@
#if 0 // DEBUGGING
slipSection->view("SLIP");
- //slipRateSection->view("SLIP RATE");
+ slipRateSection->view("SLIP RATE");
//areaSection->view("AREA");
//dispTSection->view("DISP (t)");
//dispTIncrSection->view("DISP INCR (t->t+dt)");
@@ -560,9 +560,10 @@
const int indexN = spaceDim - 1;
const double lagrangeTpdtNormal = lagrangeTVertex[indexN] +
lagrangeTIncrVertex[indexN] + dLagrangeTpdtVertex[indexN];
- if (lagrangeTpdtNormal < 0.0 ||
- slipVertex[indexN] + dSlipVertex[indexN] < 0.0)
+ if (lagrangeTpdtNormal < -_zeroTolerance ||
+ slipVertex[indexN] + dSlipVertex[indexN] < 0.0) {
dSlipVertex[indexN] = -slipVertex[indexN];
+ } // if
// Set change in slip.
assert(dSlipVertex.size() ==
@@ -598,7 +599,7 @@
dLagrangeTpdtSection->view("AFTER dLagrange");
//dispTIncrSection->view("AFTER DISP INCR (t->t+dt)");
slipSection->view("AFTER SLIP");
- //slipRateSection->view("AFTER SLIP RATE");
+ slipRateSection->view("AFTER SLIP RATE");
#endif
} // constrainSolnSpace
@@ -1501,7 +1502,7 @@
// Limit velocity to resolvable range
for (int iDim = 0; iDim < spaceDim; ++iDim)
- if (fabs(slipRateVertex[iDim]) < _slipRateTolerance)
+ if (fabs(slipRateVertex[iDim]) < _zeroTolerance)
slipRateVertex[iDim] = 0.0;
// Update slip rate field.
@@ -1581,8 +1582,8 @@
int maxIters = 0;
err = KSPGetTolerances(_ksp, &rtol, &atol, &dtol, &maxIters);
CHECK_PETSC_ERROR(err);
- rtol = 1.0e-12;
- atol = 1.0e-15;
+ rtol = _zeroTolerance;
+ atol = 0.001*_zeroTolerance;
err = KSPSetTolerances(_ksp, rtol, atol, dtol, maxIters);
CHECK_PETSC_ERROR(err);
Modified: short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults/FaultCohesiveDyn.hh
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults/FaultCohesiveDyn.hh 2011-08-22 22:12:55 UTC (rev 18842)
+++ short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults/FaultCohesiveDyn.hh 2011-08-23 01:23:54 UTC (rev 18843)
@@ -290,8 +290,8 @@
PetscKSP _ksp; ///< PETSc KSP linear solver for sensitivity problem.
- /// Minimum resolvable slip rate accounting for roundoff errors
- static const double _slipRateTolerance;
+ /// Minimum resolvable value accounting for roundoff errors
+ static const double _zeroTolerance;
// NOT IMPLEMENTED ////////////////////////////////////////////////////
private :
More information about the CIG-COMMITS
mailing list