[cig-commits] r19157 - in short/3D/PyLith/branches/v1.6-stable: . libsrc/pylith/faults tests/3d/cyclicfriction unittests/libtests/faults unittests/libtests/faults/data

brad at geodynamics.org brad at geodynamics.org
Tue Nov 8 10:29:39 PST 2011


Author: brad
Date: 2011-11-08 10:29:39 -0800 (Tue, 08 Nov 2011)
New Revision: 19157

Modified:
   short/3D/PyLith/branches/v1.6-stable/configure.ac
   short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults/FaultCohesiveDyn.cc
   short/3D/PyLith/branches/v1.6-stable/tests/3d/cyclicfriction/Makefile.am
   short/3D/PyLith/branches/v1.6-stable/tests/3d/cyclicfriction/pylithapp.cfg
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/TestFaultCohesiveDyn.cc
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynData.cc
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynData.hh
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataHex8.cc
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataHex8.hh
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataQuad4.cc
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataQuad4.hh
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTet4.cc
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTet4.hh
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3.cc
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3.hh
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3d.cc
   short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3d.hh
Log:
Updated fault friction stick test data to account for ability to have sticking cases with nonzero slip (but no increment in slip). Added missing Makefiles to configure.ac for recently added tests.

Modified: short/3D/PyLith/branches/v1.6-stable/configure.ac
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/configure.ac	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/configure.ac	2011-11-08 18:29:39 UTC (rev 19157)
@@ -326,6 +326,8 @@
 		tests/3d/Makefile
 		tests/3d/matprops/Makefile
 		tests/3d/slipdir/Makefile
+		tests/3d/cyclicfriction/Makefile
+		tests/3d/cyclicfriction/output/Makefile
 		tests/3d/plasticity/Makefile
 		tests/3d/plasticity/threehex27/Makefile
 		tests/3d/plasticity/threehex27/config/Makefile

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-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/libsrc/pylith/faults/FaultCohesiveDyn.cc	2011-11-08 18:29:39 UTC (rev 19157)
@@ -808,15 +808,6 @@
     dLagrangeTpdtSection->restrictPoint(v_fault, &dLagrangeTpdtVertex[0],
 					dLagrangeTpdtVertex.size());
 
-    // Solution only changes if Lagrange multiplier changed, so skip
-    // updates if change in Lagrange multiplier is zero.
-    double dLagrangeMag = 0.0;
-    for (int iDim=0; iDim < spaceDim; ++iDim)
-      dLagrangeMag += dLagrangeTpdtVertex[iDim]*dLagrangeTpdtVertex[iDim];
-    if (0.0 == dLagrangeMag) {
-      continue; // No change, so continue
-    } // if
-
     // Get change in relative displacement from sensitivity solve.
     assert(spaceDim == sensDispRelSection->getFiberDimension(v_fault));
     const double* sensDispRelVertex = 

Modified: short/3D/PyLith/branches/v1.6-stable/tests/3d/cyclicfriction/Makefile.am
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/tests/3d/cyclicfriction/Makefile.am	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/tests/3d/cyclicfriction/Makefile.am	2011-11-08 18:29:39 UTC (rev 19157)
@@ -17,9 +17,17 @@
 #
 
 dist_noinst_DATA = \
+	geometry.jou \
+	hex8_1000m.jou \
+	hex8_1000m.exo \
 	pylithapp.cfg \
+	fieldsplit.cfg \
 	matprops.spatialdb \
+	initial_tractions.spatialdb \
 	cycle.timedb
 
+SUBDIRS = \
+	output
 
+
 # End of file 

Modified: short/3D/PyLith/branches/v1.6-stable/tests/3d/cyclicfriction/pylithapp.cfg
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/tests/3d/cyclicfriction/pylithapp.cfg	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/tests/3d/cyclicfriction/pylithapp.cfg	2011-11-08 18:29:39 UTC (rev 19157)
@@ -74,7 +74,7 @@
 db_change = spatialdata.spatialdb.UniformDB
 db_change.label = Amplitude of Dirichlet BC on +x
 db_change.values = [displacement-x,displacement-y,displacement-z,change-start-time]
-db_change.data = [-0.2*m,0.5*m,0.0*m,0.0*hour]
+db_change.data = [-0.2*m,-0.4*m,0.0*m,0.0*hour]
 
 th_change = spatialdata.spatialdb.TimeHistory
 th_change.label = Time history of tidal load
@@ -89,7 +89,7 @@
 db_change = spatialdata.spatialdb.UniformDB
 db_change.label = Amplitude of Dirichlet BC on -x
 db_change.values = [displacement-x,displacement-y,displacement-z,change-start-time]
-db_change.data = [+0.2*m,-0.5*m,0.0*m,0.0*hour]
+db_change.data = [+0.2*m,+0.4*m,0.0*m,0.0*hour]
 
 th_change = spatialdata.spatialdb.TimeHistory
 th_change.label = Time history of tidal load

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/TestFaultCohesiveDyn.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/TestFaultCohesiveDyn.cc	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/TestFaultCohesiveDyn.cc	2011-11-08 18:29:39 UTC (rev 19157)
@@ -232,7 +232,7 @@
       fields.get("dispIncr(t->t+dt)").section();
     CPPUNIT_ASSERT(!dispIncrSection.isNull());
 
-    //dispIncrSection->view("DISP INCREMENT"); // DEBUGGING
+    dispIncrSection->view("DISP INCREMENT"); // DEBUGGING
 
     // Get expected values
     const double* valsE = _data->fieldIncrStick; // No change in dispIncr
@@ -277,23 +277,37 @@
       fault.vertexField("slip").section();
     CPPUNIT_ASSERT(!slipSection.isNull());
 
-    const double valE = 0.0; // slip should be zero
+    //slipSection->view("SLIP"); // DEBUGGING
+
+    // Get expected values
+    CPPUNIT_ASSERT(_data->slipStickE);
+    const double* valsE = _data->slipStickE;
     int iVertex = 0; // variable to use as index into valsE array
     const int fiberDimE = spaceDim; // number of values per point
     const double tolerance = 1.0e-06;
-    for (SieveMesh::label_sequence::iterator v_iter = verticesBegin; v_iter
-	   != verticesEnd;
+    for (SieveMesh::label_sequence::iterator v_iter = verticesBegin; 
+	 v_iter != verticesEnd;
 	 ++v_iter, ++iVertex) { // loop over fault vertices
       // Check fiber dimension (number of values at point)
       const int fiberDim = slipSection->getFiberDimension(*v_iter);
       CPPUNIT_ASSERT_EQUAL(fiberDimE, fiberDim);
       const double* vals = slipSection->restrictPoint(*v_iter);
-      CPPUNIT_ASSERT(0 != vals);
+      CPPUNIT_ASSERT(vals);
 
       // Check values at point
       for (int i = 0; i < fiberDimE; ++i) {
         const int index = iVertex * spaceDim + i;
-	CPPUNIT_ASSERT_DOUBLES_EQUAL(valE, vals[i], tolerance);
+        const double valE = valsE[index];
+#if 0 // DEBUGGING
+	std::cout << "SLIP valE: " << valE
+		  << ", val: " << vals[i]
+		  << ", error: " << fabs(1.0-vals[i]/valE)
+		  << std::endl;
+#endif // DEBUGGING
+        if (fabs(valE) > tolerance)
+	  CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0, vals[i]/valE, tolerance);
+        else
+	  CPPUNIT_ASSERT_DOUBLES_EQUAL(valE, vals[i], tolerance);
       } // for
     } // for
   } // Check slip values
@@ -321,6 +335,54 @@
   fault.timeStep(dt);
   fault.constrainSolnSpace(&fields, t, jacobian);
 
+  { // Check solution values
+    // Lagrange multipliers should be adjusted according to friction
+    // as reflected in the fieldIncrSlipE data member.
+    const ALE::Obj<SieveMesh>& sieveMesh = mesh.sieveMesh();
+    CPPUNIT_ASSERT(!sieveMesh.isNull());
+    const ALE::Obj<SieveMesh::label_sequence>& vertices =
+      sieveMesh->depthStratum(0);
+    CPPUNIT_ASSERT(!vertices.isNull());
+    const SieveMesh::label_sequence::iterator verticesBegin = vertices->begin();
+    const SieveMesh::label_sequence::iterator verticesEnd = vertices->end();
+
+    // Get section containing solution (disp + Lagrange multipliers)
+    const ALE::Obj<RealSection>& dispIncrSection =
+      fields.get("dispIncr(t->t+dt)").section();
+    CPPUNIT_ASSERT(!dispIncrSection.isNull());
+
+    // Get expected values
+    const double* valsE = _data->fieldIncrSlipE; // Expected values for dispIncr
+    int iVertex = 0; // variable to use as index into valsE array
+    const int fiberDimE = spaceDim; // number of values per point
+    const double tolerance = 1.0e-06;
+    for (SieveMesh::label_sequence::iterator v_iter = verticesBegin;
+	 v_iter != verticesEnd;
+	 ++v_iter, ++iVertex) { // loop over all vertices in mesh
+      // Check fiber dimension (number of values at point)
+      const int fiberDim = dispIncrSection->getFiberDimension(*v_iter);
+      CPPUNIT_ASSERT_EQUAL(fiberDimE, fiberDim);
+      const double* vals = dispIncrSection->restrictPoint(*v_iter);
+      CPPUNIT_ASSERT(0 != vals);
+
+      // Check values at point
+      for (int i = 0; i < fiberDimE; ++i) {
+        const int index = iVertex * spaceDim + i;
+        const double valE = valsE[index];
+#if 0 // DEBUGGING
+	std::cout << "SOLUTION valE: " << valE
+		  << ", val: " << vals[i]
+		  << ", error: " << fabs(1.0-vals[i]/valE)
+		  << std::endl;
+#endif // DEBUGGING
+	if (fabs(valE) > tolerance)
+	  CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0, vals[i]/valE, tolerance);
+        else
+	  CPPUNIT_ASSERT_DOUBLES_EQUAL(valE, vals[i], tolerance);
+      } // for
+    } // for
+  } // Check solution values
+
   { // Check slip values
     // Slip values should be adjusted based on the change in the
     // Lagrange multipliers as reflected in the slipSlipE data member.
@@ -373,54 +435,6 @@
     } // for
   } // Check slip values
 
-  { // Check solution values
-    // Lagrange multipliers should be adjusted according to friction
-    // as reflected in the fieldIncrSlipE data member.
-    const ALE::Obj<SieveMesh>& sieveMesh = mesh.sieveMesh();
-    CPPUNIT_ASSERT(!sieveMesh.isNull());
-    const ALE::Obj<SieveMesh::label_sequence>& vertices =
-      sieveMesh->depthStratum(0);
-    CPPUNIT_ASSERT(!vertices.isNull());
-    const SieveMesh::label_sequence::iterator verticesBegin = vertices->begin();
-    const SieveMesh::label_sequence::iterator verticesEnd = vertices->end();
-
-    // Get section containing solution (disp + Lagrange multipliers)
-    const ALE::Obj<RealSection>& dispIncrSection =
-      fields.get("dispIncr(t->t+dt)").section();
-    CPPUNIT_ASSERT(!dispIncrSection.isNull());
-
-    // Get expected values
-    const double* valsE = _data->fieldIncrSlipE; // Expected values for dispIncr
-    int iVertex = 0; // variable to use as index into valsE array
-    const int fiberDimE = spaceDim; // number of values per point
-    const double tolerance = 1.0e-06;
-    for (SieveMesh::label_sequence::iterator v_iter = verticesBegin;
-	 v_iter != verticesEnd;
-	 ++v_iter, ++iVertex) { // loop over all vertices in mesh
-      // Check fiber dimension (number of values at point)
-      const int fiberDim = dispIncrSection->getFiberDimension(*v_iter);
-      CPPUNIT_ASSERT_EQUAL(fiberDimE, fiberDim);
-      const double* vals = dispIncrSection->restrictPoint(*v_iter);
-      CPPUNIT_ASSERT(0 != vals);
-
-      // Check values at point
-      for (int i = 0; i < fiberDimE; ++i) {
-        const int index = iVertex * spaceDim + i;
-        const double valE = valsE[index];
-#if 0 // DEBUGGING
-	std::cout << "SOLUTION valE: " << valE
-		  << ", val: " << vals[i]
-		  << ", error: " << fabs(1.0-vals[i]/valE)
-		  << std::endl;
-#endif // DEBUGGING
-	if (fabs(valE) > tolerance)
-	  CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0, vals[i]/valE, tolerance);
-        else
-	  CPPUNIT_ASSERT_DOUBLES_EQUAL(valE, vals[i], tolerance);
-      } // for
-    } // for
-  } // Check solution values
-
 } // testConstrainSolnSpaceSlip
 
 // ----------------------------------------------------------------------

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynData.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynData.cc	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynData.cc	2011-11-08 18:29:39 UTC (rev 19157)
@@ -42,6 +42,7 @@
   orientation(0),
   initialTractions(0),
   area(0),
+  slipStickE(0),
   fieldIncrSlipE(0),
   slipSlipE(0),
   fieldIncrOpenE(0),

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynData.hh
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynData.hh	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynData.hh	2011-11-08 18:29:39 UTC (rev 19157)
@@ -76,6 +76,7 @@
   double* orientation; ///< Expected values for fault orientation.
   double* area; ///< Expected values for fault area.
   double* initialTractions; ///< Expected values for initial tractions.
+  double* slipStickE; ///< Expected values for slip for sticking case.
   double* fieldIncrSlipE; ///< Expected values for solution increment for slipping case.
   double* slipSlipE; ///< Expected values for slip for slipping case.
   double* fieldIncrOpenE; ///< Expected values for solution increment for opening case.

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataHex8.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataHex8.cc	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataHex8.cc	2011-11-08 18:29:39 UTC (rev 19157)
@@ -1128,18 +1128,23 @@
   0.0, 2.0, 1.0,
   1.1, 3.1, 2.1,
   1.2, 3.2, 2.2,
-  1.3, 3.3, 2.3, // 14
-  1.5, 3.5, 2.5, // 15
-  1.7, 3.7, 2.7, // 16
-  1.9, 3.9, 2.9, // 17
-  41.4, 3.4, 2.4, // 18
-  41.6, 3.6, 2.6, // 19
-  41.8, 3.8, 2.8, // 20
-  41.0, 3.0, 2.0, // 21
+  0.5, 3.3, 2.3, // 14
+  0.6, 3.5, 2.5, // 15
+  0.7, 3.7, 2.7, // 16
+  0.8, 3.9, 2.9, // 17
+  12.266666666667,  3.6, 4.6, // 18
+  12.066666666667,  5.4, 2.4, // 19
+  16.866666666667,  2.2, 8.2, // 20
+  17.666666666667, 10.0, 2.0, // 21
 };
 
-// No change in fieldIncr
-// Zero slip
+// No slip
+const double pylith::faults::CohesiveDynDataHex8::_slipStickE[] = {
+  -0.8,  0.8,  0.0,
+  -0.9,  0.9,  0.0,
+  -1.0,  1.0,  0.0,
+  -1.1,  1.1,  0.0,
+};
 
 // ----------------------------------------------------------------------
 // Slip case
@@ -1285,6 +1290,7 @@
 
   // Stick
   fieldIncrStick = const_cast<double*>(_fieldIncrStick);
+  slipStickE = const_cast<double*>(_slipStickE);
 
   // Slip
   fieldIncrSlip = const_cast<double*>(_fieldIncrSlip);

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataHex8.hh
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataHex8.hh	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataHex8.hh	2011-11-08 18:29:39 UTC (rev 19157)
@@ -68,6 +68,7 @@
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.
   static const double _initialTractions[]; ///< Expected values for initial tractions.
+  static const double _slipStickE[]; ///< Expected values for slip for stick case.
   static const double _fieldIncrSlipE[]; ///< Expected values for solution increment for slip case.
   static const double _slipSlipE[]; ///< Expected values for slip for slip case.
   static const double _fieldIncrOpenE[]; ///< Expected values for solution increment for opening case.

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataQuad4.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataQuad4.cc	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataQuad4.cc	2011-11-08 18:29:39 UTC (rev 19157)
@@ -302,14 +302,17 @@
   1.4, 2.4, // 5
   1.5, 2.5,
   1.6, 2.6,
-  1.7, 2.7, // 8
-  1.9, 2.9, // 9
-  21.8, 2.8, // 10
-  21.0, 2.0, // 11
+  1.3, 2.7, // 8
+  1.4, 2.9, // 9
+  11.2, 2.20, // 10
+  16.0, 5.40, // 11
 };
 
-// No change in fieldIncr
-// Zero slip
+// No change in slip
+const double pylith::faults::CohesiveDynDataQuad4::_slipStickE[] = {
+ -0.4,  0.0,
+ -0.5,  0.0,
+};
 
 // ----------------------------------------------------------------------
 // Slip case
@@ -411,6 +414,7 @@
 
   // Stick
   fieldIncrStick = const_cast<double*>(_fieldIncrStick);
+  slipStickE = const_cast<double*>(_slipStickE);
 
   // Slip
   fieldIncrSlip = const_cast<double*>(_fieldIncrSlip);

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataQuad4.hh
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataQuad4.hh	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataQuad4.hh	2011-11-08 18:29:39 UTC (rev 19157)
@@ -68,6 +68,7 @@
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.
   static const double _initialTractions[]; ///< Expected values for initial tractions.
+  static const double _slipStickE[]; ///< Expected values for slip for stick case.
   static const double _fieldIncrSlipE[]; ///< Expected values for solution increment for slip case.
   static const double _slipSlipE[]; ///< Expected values for slip for slip case.
   static const double _fieldIncrOpenE[]; ///< Expected values for solution increment for opening case.

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTet4.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTet4.cc	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTet4.cc	2011-11-08 18:29:39 UTC (rev 19157)
@@ -506,16 +506,20 @@
   1.3, 2.3, 3.3, // 4
   1.4, 2.4, 3.4, // 5
   1.5, 2.5, 3.5,
-  1.6, 2.6, 3.6, // 7
-  1.8, 2.8, 3.8, // 8
-  1.0, 2.0, 3.0, // 9
+  1.2, 2.2, 3.2, // 7
+  1.3, 2.3, 3.3, // 8
+  1.4, 2.4, 3.4, // 9
   41.7, 2.7, 3.7, // 10
   41.9, 2.9, 3.9, // 11
   41.1, 2.1, 3.1, // 12
 };
 
-// No change in fieldIncr
-// Zero slip
+// No slip
+const double pylith::faults::CohesiveDynDataTet4::_slipStickE[] = {
+  0.0,  0.0,  0.0,
+  0.0,  0.0,  0.0,
+  0.0,  0.0,  0.0,
+};
 
 // ----------------------------------------------------------------------
 // Slip case
@@ -623,6 +627,7 @@
 
   // Stick
   fieldIncrStick = const_cast<double*>(_fieldIncrStick);
+  slipStickE = const_cast<double*>(_slipStickE);
 
   // Slip
   fieldIncrSlip = const_cast<double*>(_fieldIncrSlip);

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTet4.hh
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTet4.hh	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTet4.hh	2011-11-08 18:29:39 UTC (rev 19157)
@@ -68,6 +68,7 @@
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.
   static const double _initialTractions[]; ///< Expected values for initial tractions.
+  static const double _slipStickE[]; ///< Expected values for slip for stick case.
   static const double _fieldIncrSlipE[]; ///< Expected values for solution increment for slip case.
   static const double _slipSlipE[]; ///< Expected values for slip for slip case.
   static const double _fieldIncrOpenE[]; ///< Expected values for solution increment for opening case.

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3.cc	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3.cc	2011-11-08 18:29:39 UTC (rev 19157)
@@ -276,8 +276,11 @@
   21.8, 2.8, // 9
 };
 
-// No change in fieldIncr
-// Zero slip
+// No slip
+const double pylith::faults::CohesiveDynDataTri3::_slipStickE[] = {
+ 0.0,  0.0,
+ 0.0,  0.0,
+};
 
 // ----------------------------------------------------------------------
 // Slip case
@@ -371,6 +374,7 @@
 
   // Stick
   fieldIncrStick = const_cast<double*>(_fieldIncrStick);
+  slipStickE = const_cast<double*>(_slipStickE);
 
   // Slip
   fieldIncrSlip = const_cast<double*>(_fieldIncrSlip);

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3.hh
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3.hh	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3.hh	2011-11-08 18:29:39 UTC (rev 19157)
@@ -68,6 +68,7 @@
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.
   static const double _initialTractions[]; ///< Expected values for initial tractions.
+  static const double _slipStickE[]; ///< Expected values for slip for stick case.
   static const double _fieldIncrSlipE[]; ///< Expected values for solution increment for slip case.
   static const double _slipSlipE[]; ///< Expected values for slip for slip case.
   static const double _fieldIncrOpenE[]; ///< Expected values for solution increment for opening case.

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3d.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3d.cc	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3d.cc	2011-11-08 18:29:39 UTC (rev 19157)
@@ -454,16 +454,20 @@
   1.4, 2.4,
   1.5, 2.5, // 8
   1.6, 2.6,
-  1.7, 2.7, // 10
-  1.9, 2.9, // 11
-  2.1, 2.1, // 12
+  1.2, 2.2, // 10
+  1.3, 2.3, // 11
+  1.5, 2.5, // 12
   21.8, 22.8, // 13
   21.0, 2.0, // 14
   2.2, 22.2, // 15
 };
 
-// No change in fieldIncr
-// Zero slip
+// No slip
+const double pylith::faults::CohesiveDynDataTri3d::_slipStickE[] = {
+ 0.0,  0.0,
+ 0.0,  0.0,
+ 0.0,  0.0,
+};
 
 // ----------------------------------------------------------------------
 // Slip case
@@ -575,6 +579,7 @@
 
   // Stick
   fieldIncrStick = const_cast<double*>(_fieldIncrStick);
+  slipStickE = const_cast<double*>(_slipStickE);
 
   // Slip
   fieldIncrSlip = const_cast<double*>(_fieldIncrSlip);

Modified: short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3d.hh
===================================================================
--- short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3d.hh	2011-11-08 16:34:58 UTC (rev 19156)
+++ short/3D/PyLith/branches/v1.6-stable/unittests/libtests/faults/data/CohesiveDynDataTri3d.hh	2011-11-08 18:29:39 UTC (rev 19157)
@@ -68,6 +68,7 @@
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.
   static const double _initialTractions[]; ///< Expected values for initial tractions.
+  static const double _slipStickE[]; ///< Expected values for slip for stick case.
   static const double _fieldIncrSlipE[]; ///< Expected values for solution increment for slip case.
   static const double _slipSlipE[]; ///< Expected values for slip for slip case.
   static const double _fieldIncrOpenE[]; ///< Expected values for solution increment for opening case.



More information about the CIG-COMMITS mailing list