[cig-commits] r18974 - in short/3D/PyLith/branches/v1.6-revisedfault: libsrc/pylith/faults unittests/libtests/faults unittests/libtests/faults/data

brad at geodynamics.org brad at geodynamics.org
Mon Sep 26 14:38:50 PDT 2011


Author: brad
Date: 2011-09-26 14:38:49 -0700 (Mon, 26 Sep 2011)
New Revision: 18974

Modified:
   short/3D/PyLith/branches/v1.6-revisedfault/libsrc/pylith/faults/FaultCohesiveLagrange.cc
   short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/TestFaultCohesiveKin.cc
   short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.cc
   short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.hh
   short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.cc
   short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.hh
   short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.cc
   short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.hh
   short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.cc
   short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.hh
   short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.cc
   short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.hh
Log:
Updated kinematic fault tests with multiple sources.

Modified: short/3D/PyLith/branches/v1.6-revisedfault/libsrc/pylith/faults/FaultCohesiveLagrange.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-revisedfault/libsrc/pylith/faults/FaultCohesiveLagrange.cc	2011-09-26 21:38:14 UTC (rev 18973)
+++ short/3D/PyLith/branches/v1.6-revisedfault/libsrc/pylith/faults/FaultCohesiveLagrange.cc	2011-09-26 21:38:49 UTC (rev 18974)
@@ -1428,11 +1428,6 @@
       dispTIncrVertexP[iDim] = 
 	-jacobianVertexL[iDim]/jacobianVertexP[iDim]*dispTIncrVertexL[iDim];
 
-      std::cout << "iDim: " << iDim
-		<< ", jacobianL: " << jacobianVertexL[iDim]
-		<< ", Sinv: " << Sinv
-		<< std::endl;
-
     } // for
 
 #if defined(DETAILED_EVENT_LOGGING)

Modified: short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/TestFaultCohesiveKin.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/TestFaultCohesiveKin.cc	2011-09-26 21:38:14 UTC (rev 18973)
+++ short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/TestFaultCohesiveKin.cc	2011-09-26 21:38:49 UTC (rev 18974)
@@ -271,8 +271,7 @@
     fault.useSolnIncr(false);
     fault.integrateResidual(residual, t, &fields);
 
-    mesh.view("DOMAIN MESH");
-    residual.view("RESIDUAL"); // DEBUGGING
+    //residual.view("RESIDUAL"); // DEBUGGING
 
     // Check values
     const double* valsE = _data->residual;
@@ -303,7 +302,7 @@
     fault.useSolnIncr(true);
     fault.integrateResidual(residual, t, &fields);
 
-    residual.view("RESIDUAL"); // DEBUGGING
+    //residual.view("RESIDUAL"); // DEBUGGING
 
     // Check values
     const double* valsE = _data->residualIncr;
@@ -368,7 +367,7 @@
 
   jacobian.assemble("final_assembly");
 
-  MatView(jacobian.matrix(), PETSC_VIEWER_STDOUT_WORLD); // DEBUGGING
+  //MatView(jacobian.matrix(), PETSC_VIEWER_STDOUT_WORLD); // DEBUGGING
 
   const double* valsE = _data->jacobian;
   const int nrowsE = dispSection->sizeWithBC();
@@ -400,7 +399,7 @@
     for (int iCol=0; iCol < ncols; ++iCol) {
       const int index = ncols*iRow+iCol;
       const double valE = valsE[index];
-#if 1 // DEBUGGING
+#if 0 // DEBUGGING
       if (fabs(valE-vals[index]) > tolerance)
 	std::cout << "ERROR: iRow: " << iRow << ", iCol: " << iCol
 		  << "valE: " << valE
@@ -441,7 +440,7 @@
   CPPUNIT_ASSERT_EQUAL(false, fault.needNewJacobian());
   jacobian.complete();
 
-  // jacobian.view("JACOBIAN"); // DEBUGGING
+  //jacobian.view("JACOBIAN"); // DEBUGGING
 
   const ALE::Obj<RealSection>& jacobianSection = jacobian.section();
   CPPUNIT_ASSERT(!jacobianSection.isNull());
@@ -586,7 +585,7 @@
     fields.get("dispIncr adjust");
   solution += dispIncrAdj;
 
-  solution.view("SOLUTION AFTER ADJUSTMENT"); // DEBUGGING
+  //solution.view("SOLUTION AFTER ADJUSTMENT"); // DEBUGGING
 
   const ALE::Obj<RealSection>& solutionSection = solution.section();
   CPPUNIT_ASSERT(!solutionSection.isNull());

Modified: short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.cc	2011-09-26 21:38:14 UTC (rev 18973)
+++ short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.cc	2011-09-26 21:38:49 UTC (rev 18974)
@@ -59,10 +59,10 @@
 };
 
 const double pylith::faults::CohesiveKinSrcsDataHex8::_basis[] = {
-  0.62200847,  0.16666667,  0.16666667,  0.0446582,
-  0.16666667,  0.62200847,  0.0446582,   0.16666667,
-  0.16666667,  0.0446582,   0.62200847,  0.16666667,
-  0.0446582,   0.16666667,  0.16666667,  0.62200847,
+  0.62200847,  0.16666667,  0.0446582,   0.16666667,
+  0.16666667,  0.62200847,  0.16666667,   0.0446582,
+  0.0446582,   0.16666667,  0.62200847,  0.16666667,
+  0.16666667,   0.0446582,  0.16666667,  0.62200847,
 };
 
 const double pylith::faults::CohesiveKinSrcsDataHex8::_basisDeriv[] = {
@@ -112,18 +112,18 @@
   4.2, 6.2, 8.2,
   4.3, 6.3, 8.3,
   4.4, 6.4, 8.4,
-  4.5, 6.5, 8.5,
-  4.6, 6.6, 8.6,
-  4.7, 6.7, 8.7,
-  4.8, 6.8, 8.8,
+  4.5, 6.5, 8.5, // 6
+  4.6, 6.6, 8.6, // 7
+  4.7, 6.7, 8.7, // 8
+  4.8, 6.8, 8.8, // 9
   4.9, 6.9, 8.9,
   4.0, 6.0, 8.0,
   5.1, 7.1, 9.1,
   5.2, 7.2, 9.2,
-  5.3, 7.3, 9.3,
-  5.5, 7.5, 9.5,
-  5.7, 7.7, 9.7,
-  5.9, 7.9, 9.9,
+  5.3, 7.3, 9.3, // 14
+  5.5, 7.5, 9.5, // 15
+  5.7, 7.7, 9.7, // 16
+  5.9, 7.9, 9.9, // 17
   5.4, 7.4, 9.4, // 18
   5.6, 7.6, 9.6, // 19
   5.8, 7.8, 9.8, // 20
@@ -131,6 +131,52 @@
 };
 
 
+const double pylith::faults::CohesiveKinSrcsDataHex8::_fieldIncr[] = {
+  3.1, 4.1, 5.1,
+  3.2, 4.2, 5.2,
+  3.3, 4.3, 5.3,
+  3.4, 4.4, 5.4,
+  3.5, 4.5, 5.5, // 6
+  3.6, 4.6, 5.6, // 7
+  3.7, 4.7, 5.7, // 8
+  3.8, 4.8, 5.8, // 9
+  3.9, 4.9, 5.9,
+  3.0, 4.0, 5.0,
+  3.1, 4.1, 5.1,
+  3.2, 4.2, 5.2,
+  3.3, 4.3, 5.3, // 14
+  3.5, 4.5, 5.5, // 15
+  3.7, 4.7, 5.7, // 16
+  3.9, 4.9, 5.9, // 17
+  3.4, 4.4, 5.4, // 18
+  3.6, 4.6, 5.6, // 19
+  3.8, 4.8, 5.8, // 20
+  3.0, 4.0, 5.0, // 21
+};
+
+const double pylith::faults::CohesiveKinSrcsDataHex8::_jacobianLumped[] = {
+  1.1, 1.1, 1.1,
+  1.2, 1.2, 1.2,
+  1.3, 1.3, 1.3,
+  1.4, 1.4, 1.4,
+  1.5, 1.5, 1.5, // 6
+  1.6, 1.6, 1.6, // 7
+  1.7, 1.7, 1.7, // 8
+  1.8, 1.8, 1.8, // 9
+  1.9, 1.9, 1.9,
+  1.0, 1.0, 1.0,
+  1.1, 1.1, 1.1,
+  1.2, 1.2, 1.2,
+  1.3, 1.3, 1.3, // 14
+  1.5, 1.5, 1.5, // 15
+  1.7, 1.7, 1.7, // 16
+  1.9, 1.9, 1.9, // 17
+  1.0, 1.0, 1.0, // 18
+  1.0, 1.0, 1.0, // 19
+  1.0, 1.0, 1.0, // 20
+  1.0, 1.0, 1.0, // 21
+};
+
 const double pylith::faults::CohesiveKinSrcsDataHex8::_orientation[] = {
   0.0, -1.0, 0.0,    0.0, 0.0, +1.0,    -1.0, 0.0, 0.0,
   0.0, -1.0, 0.0,    0.0, 0.0, +1.0,    -1.0, 0.0, 0.0,
@@ -170,22 +216,203 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -9.4,-5.4,+7.4, // 6
- -9.6,-5.6,+7.6, // 7
- -9.8,-5.8,+7.8, // 8
- -9.0,-5.0,+7.0, // 9
+
+  // 6
+  -0.62200847*(0.62200847*5.4+0.16666667*5.6+0.04465820*5.0+0.16666667*5.8) +
+  -0.16666667*(0.16666667*5.4+0.62200847*5.6+0.16666667*5.0+0.04465820*5.8) +
+  -0.04465820*(0.04465820*5.4+0.16666667*5.6+0.62200847*5.0+0.16666667*5.8) +
+  -0.16666667*(0.16666667*5.4+0.04465820*5.6+0.16666667*5.0+0.62200847*5.8),
+
+  -0.62200847*(0.62200847*7.4+0.16666667*7.6+0.04465820*7.0+0.16666667*7.8) +
+  -0.16666667*(0.16666667*7.4+0.62200847*7.6+0.16666667*7.0+0.04465820*7.8) +
+  -0.04465820*(0.04465820*7.4+0.16666667*7.6+0.62200847*7.0+0.16666667*7.8) +
+  -0.16666667*(0.16666667*7.4+0.04465820*7.6+0.16666667*7.0+0.62200847*7.8),
+
+  -0.62200847*(0.62200847*9.4+0.16666667*9.6+0.04465820*9.0+0.16666667*9.8) +
+  -0.16666667*(0.16666667*9.4+0.62200847*9.6+0.16666667*9.0+0.04465820*9.8) +
+  -0.04465820*(0.04465820*9.4+0.16666667*9.6+0.62200847*9.0+0.16666667*9.8) +
+  -0.16666667*(0.16666667*9.4+0.04465820*9.6+0.16666667*9.0+0.62200847*9.8),
+
+  // 7
+  -0.62200847*(0.62200847*5.6+0.16666667*5.4+0.04465820*5.8+0.16666667*5.0) +
+  -0.16666667*(0.16666667*5.6+0.62200847*5.4+0.16666667*5.8+0.04465820*5.0) +
+  -0.04465820*(0.04465820*5.6+0.16666667*5.4+0.62200847*5.8+0.16666667*5.0) +
+  -0.16666667*(0.16666667*5.6+0.04465820*5.4+0.16666667*5.8+0.62200847*5.0),
+
+  -0.62200847*(0.62200847*7.6+0.16666667*7.4+0.04465820*7.8+0.16666667*7.0) +
+  -0.16666667*(0.16666667*7.6+0.62200847*7.4+0.16666667*7.8+0.04465820*7.0) +
+  -0.04465820*(0.04465820*7.6+0.16666667*7.4+0.62200847*7.8+0.16666667*7.0) +
+  -0.16666667*(0.16666667*7.6+0.04465820*7.4+0.16666667*7.8+0.62200847*7.0),
+
+  -0.62200847*(0.62200847*9.6+0.16666667*9.4+0.04465820*9.8+0.16666667*9.0) +
+  -0.16666667*(0.16666667*9.6+0.62200847*9.4+0.16666667*9.8+0.04465820*9.0) +
+  -0.04465820*(0.04465820*9.6+0.16666667*9.4+0.62200847*9.8+0.16666667*9.0) +
+  -0.16666667*(0.16666667*9.6+0.04465820*9.4+0.16666667*9.8+0.62200847*9.0),
+
+  // 8
+  -0.62200847*(0.62200847*5.8+0.16666667*5.0+0.04465820*5.6+0.16666667*5.4) +
+  -0.16666667*(0.16666667*5.8+0.62200847*5.0+0.16666667*5.6+0.04465820*5.4) +
+  -0.04465820*(0.04465820*5.8+0.16666667*5.0+0.62200847*5.6+0.16666667*5.4) +
+  -0.16666667*(0.16666667*5.8+0.04465820*5.0+0.16666667*5.6+0.62200847*5.4),
+
+  -0.62200847*(0.62200847*7.8+0.16666667*7.0+0.04465820*7.6+0.16666667*7.4) +
+  -0.16666667*(0.16666667*7.8+0.62200847*7.0+0.16666667*7.6+0.04465820*7.4) +
+  -0.04465820*(0.04465820*7.8+0.16666667*7.0+0.62200847*7.6+0.16666667*7.4) +
+  -0.16666667*(0.16666667*7.8+0.04465820*7.0+0.16666667*7.6+0.62200847*7.4),
+
+  -0.62200847*(0.62200847*9.8+0.16666667*9.0+0.04465820*9.6+0.16666667*9.4) +
+  -0.16666667*(0.16666667*9.8+0.62200847*9.0+0.16666667*9.6+0.04465820*9.4) +
+  -0.04465820*(0.04465820*9.8+0.16666667*9.0+0.62200847*9.6+0.16666667*9.4) +
+  -0.16666667*(0.16666667*9.8+0.04465820*9.0+0.16666667*9.6+0.62200847*9.4),
+
+  // 9
+  -0.62200847*(0.62200847*5.0+0.16666667*5.6+0.04465820*5.4+0.16666667*5.8) +
+  -0.16666667*(0.16666667*5.0+0.62200847*5.6+0.16666667*5.4+0.04465820*5.8) +
+  -0.04465820*(0.04465820*5.0+0.16666667*5.6+0.62200847*5.4+0.16666667*5.8) +
+  -0.16666667*(0.16666667*5.0+0.04465820*5.6+0.16666667*5.4+0.62200847*5.8),
+
+  -0.62200847*(0.62200847*7.0+0.16666667*7.6+0.04465820*7.4+0.16666667*7.8) +
+  -0.16666667*(0.16666667*7.0+0.62200847*7.6+0.16666667*7.4+0.04465820*7.8) +
+  -0.04465820*(0.04465820*7.0+0.16666667*7.6+0.62200847*7.4+0.16666667*7.8) +
+  -0.16666667*(0.16666667*7.0+0.04465820*7.6+0.16666667*7.4+0.62200847*7.8),
+
+  -0.62200847*(0.62200847*9.0+0.16666667*9.6+0.04465820*9.4+0.16666667*9.8) +
+  -0.16666667*(0.16666667*9.0+0.62200847*9.6+0.16666667*9.4+0.04465820*9.8) +
+  -0.04465820*(0.04465820*9.0+0.16666667*9.6+0.62200847*9.4+0.16666667*9.8) +
+  -0.16666667*(0.16666667*9.0+0.04465820*9.6+0.16666667*9.4+0.62200847*9.8),
+
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +9.4,+5.4,-7.4, // 14
- +9.6,+5.6,-7.6, // 15
- +9.8,+5.8,-7.8, // 16
- +9.0,+5.0,-7.0, // 17
-  0.8+1.82575588523+0.91680340354, -0.8+-0.55566483464-0.27902712282, 0.8+0.07938069066+0.03986101755, // 18 (constraint)
-  0.9+1.69682900001+0.62551316338, -0.9+-0.56560966667-0.20850438779, 0.9+0.14140241667+0.05212609695, // 19 (constraint)
-  1.0+1.51709826228+0.34903622931, -1.0+-0.54615537442-0.12565304255, 1.0+0.18205179147+0.04188434752, // 20 (constraint)
-  1.1+1.29378670385+0.12855127934, -1.1+-0.49761027071+-0.04944279975, 1.1+0.19904410828+0.01977711990, // 21 (constraint)
+
+  // 14
+  +0.62200847*(0.62200847*5.4+0.16666667*5.6+0.04465820*5.0+0.16666667*5.8) +
+  +0.16666667*(0.16666667*5.4+0.62200847*5.6+0.16666667*5.0+0.04465820*5.8) +
+  +0.04465820*(0.04465820*5.4+0.16666667*5.6+0.62200847*5.0+0.16666667*5.8) +
+  +0.16666667*(0.16666667*5.4+0.04465820*5.6+0.16666667*5.0+0.62200847*5.8),
+
+  +0.62200847*(0.62200847*7.4+0.16666667*7.6+0.04465820*7.0+0.16666667*7.8) +
+  +0.16666667*(0.16666667*7.4+0.62200847*7.6+0.16666667*7.0+0.04465820*7.8) +
+  +0.04465820*(0.04465820*7.4+0.16666667*7.6+0.62200847*7.0+0.16666667*7.8) +
+  +0.16666667*(0.16666667*7.4+0.04465820*7.6+0.16666667*7.0+0.62200847*7.8),
+
+  +0.62200847*(0.62200847*9.4+0.16666667*9.6+0.04465820*9.0+0.16666667*9.8) +
+  +0.16666667*(0.16666667*9.4+0.62200847*9.6+0.16666667*9.0+0.04465820*9.8) +
+  +0.04465820*(0.04465820*9.4+0.16666667*9.6+0.62200847*9.0+0.16666667*9.8) +
+  +0.16666667*(0.16666667*9.4+0.04465820*9.6+0.16666667*9.0+0.62200847*9.8),
+
+  // 15
+  +0.62200847*(0.62200847*5.6+0.16666667*5.4+0.04465820*5.8+0.16666667*5.0) +
+  +0.16666667*(0.16666667*5.6+0.62200847*5.4+0.16666667*5.8+0.04465820*5.0) +
+  +0.04465820*(0.04465820*5.6+0.16666667*5.4+0.62200847*5.8+0.16666667*5.0) +
+  +0.16666667*(0.16666667*5.6+0.04465820*5.4+0.16666667*5.8+0.62200847*5.0),
+
+  +0.62200847*(0.62200847*7.6+0.16666667*7.4+0.04465820*7.8+0.16666667*7.0) +
+  +0.16666667*(0.16666667*7.6+0.62200847*7.4+0.16666667*7.8+0.04465820*7.0) +
+  +0.04465820*(0.04465820*7.6+0.16666667*7.4+0.62200847*7.8+0.16666667*7.0) +
+  +0.16666667*(0.16666667*7.6+0.04465820*7.4+0.16666667*7.8+0.62200847*7.0),
+
+  +0.62200847*(0.62200847*9.6+0.16666667*9.4+0.04465820*9.8+0.16666667*9.0) +
+  +0.16666667*(0.16666667*9.6+0.62200847*9.4+0.16666667*9.8+0.04465820*9.0) +
+  +0.04465820*(0.04465820*9.6+0.16666667*9.4+0.62200847*9.8+0.16666667*9.0) +
+  +0.16666667*(0.16666667*9.6+0.04465820*9.4+0.16666667*9.8+0.62200847*9.0),
+
+  // 16
+  +0.62200847*(0.62200847*5.8+0.16666667*5.0+0.04465820*5.6+0.16666667*5.4) +
+  +0.16666667*(0.16666667*5.8+0.62200847*5.0+0.16666667*5.6+0.04465820*5.4) +
+  +0.04465820*(0.04465820*5.8+0.16666667*5.0+0.62200847*5.6+0.16666667*5.4) +
+  +0.16666667*(0.16666667*5.8+0.04465820*5.0+0.16666667*5.6+0.62200847*5.4),
+
+  +0.62200847*(0.62200847*7.8+0.16666667*7.0+0.04465820*7.6+0.16666667*7.4) +
+  +0.16666667*(0.16666667*7.8+0.62200847*7.0+0.16666667*7.6+0.04465820*7.4) +
+  +0.04465820*(0.04465820*7.8+0.16666667*7.0+0.62200847*7.6+0.16666667*7.4) +
+  +0.16666667*(0.16666667*7.8+0.04465820*7.0+0.16666667*7.6+0.62200847*7.4),
+
+  +0.62200847*(0.62200847*9.8+0.16666667*9.0+0.04465820*9.6+0.16666667*9.4) +
+  +0.16666667*(0.16666667*9.8+0.62200847*9.0+0.16666667*9.6+0.04465820*9.4) +
+  +0.04465820*(0.04465820*9.8+0.16666667*9.0+0.62200847*9.6+0.16666667*9.4) +
+  +0.16666667*(0.16666667*9.8+0.04465820*9.0+0.16666667*9.6+0.62200847*9.4),
+
+  // 17
+  +0.62200847*(0.62200847*5.0+0.16666667*5.6+0.04465820*5.4+0.16666667*5.8) +
+  +0.16666667*(0.16666667*5.0+0.62200847*5.6+0.16666667*5.4+0.04465820*5.8) +
+  +0.04465820*(0.04465820*5.0+0.16666667*5.6+0.62200847*5.4+0.16666667*5.8) +
+  +0.16666667*(0.16666667*5.0+0.04465820*5.6+0.16666667*5.4+0.62200847*5.8),
+
+  +0.62200847*(0.62200847*7.0+0.16666667*7.6+0.04465820*7.4+0.16666667*7.8) +
+  +0.16666667*(0.16666667*7.0+0.62200847*7.6+0.16666667*7.4+0.04465820*7.8) +
+  +0.04465820*(0.04465820*7.0+0.16666667*7.6+0.62200847*7.4+0.16666667*7.8) +
+  +0.16666667*(0.16666667*7.0+0.04465820*7.6+0.16666667*7.4+0.62200847*7.8),
+
+  +0.62200847*(0.62200847*9.0+0.16666667*9.6+0.04465820*9.4+0.16666667*9.8) +
+  +0.16666667*(0.16666667*9.0+0.62200847*9.6+0.16666667*9.4+0.04465820*9.8) +
+  +0.04465820*(0.04465820*9.0+0.16666667*9.6+0.62200847*9.4+0.16666667*9.8) +
+  +0.16666667*(0.16666667*9.0+0.04465820*9.6+0.16666667*9.4+0.62200847*9.8),
+
+  // 18 (constraint)
+  0.62200847*(0.62200847*(5.3-4.5+0.07938069066+0.03986101755)+0.16666667*(5.7-4.7+0.18205179147+0.04188434752)+0.04465820*(5.9-4.8+0.19904410828+0.01977711990)+0.16666667*(5.5-4.6+0.14140241667+0.05212609695)) +
+  0.16666667*(0.16666667*(5.3-4.5+0.07938069066+0.03986101755)+0.62200847*(5.7-4.7+0.18205179147+0.04188434752)+0.16666667*(5.9-4.8+0.19904410828+0.01977711990)+0.04465820*(5.5-4.6+0.14140241667+0.05212609695)) +
+  0.04465820*(0.04465820*(5.3-4.5+0.07938069066+0.03986101755)+0.16666667*(5.7-4.7+0.18205179147+0.04188434752)+0.62200847*(5.9-4.8+0.19904410828+0.01977711990)+0.16666667*(5.5-4.6+0.14140241667+0.05212609695)) +
+  0.16666667*(0.16666667*(5.3-4.5+0.07938069066+0.03986101755)+0.04465820*(5.7-4.7+0.18205179147+0.04188434752)+0.16666667*(5.9-4.8+0.19904410828+0.01977711990)+0.62200847*(5.5-4.6+0.14140241667+0.05212609695)),
+
+  0.62200847*(0.62200847*(7.3-6.5+1.82575588523+0.91680340354)+0.16666667*(7.7-6.7+1.51709826228+0.34903622931)+0.04465820*(7.9-6.8+1.29378670385+0.12855127934)+0.16666667*(7.5-6.6+1.69682900001+0.62551316338)) +
+  0.16666667*(0.16666667*(7.3-6.5+1.82575588523+0.91680340354)+0.62200847*(7.7-6.7+1.51709826228+0.34903622931)+0.16666667*(7.9-6.8+1.29378670385+0.12855127934)+0.04465820*(7.5-6.6+1.69682900001+0.62551316338)) +
+  0.04465820*(0.04465820*(7.3-6.5+1.82575588523+0.91680340354)+0.16666667*(7.7-6.7+1.51709826228+0.34903622931)+0.62200847*(7.9-6.8+1.29378670385+0.12855127934)+0.16666667*(7.5-6.6+1.69682900001+0.62551316338)) +
+  0.16666667*(0.16666667*(7.3-6.5+1.82575588523+0.91680340354)+0.04465820*(7.7-6.7+1.51709826228+0.34903622931)+0.16666667*(7.9-6.8+1.29378670385+0.12855127934)+0.62200847*(7.5-6.6+1.69682900001+0.62551316338)),
+
+  0.62200847*(0.62200847*(9.3-8.5+0.55566483464+0.27902712282)+0.16666667*(9.7-8.7+0.54615537442+0.12565304255)+0.04465820*(9.9-8.8+0.49761027071+0.04944279975)+0.16666667*(9.5-8.6+0.56560966667+0.20850438779)) +
+  0.16666667*(0.16666667*(9.3-8.5+0.55566483464+0.27902712282)+0.62200847*(9.7-8.7+0.54615537442+0.12565304255)+0.16666667*(9.9-8.8+0.49761027071+0.04944279975)+0.04465820*(9.5-8.6+0.56560966667+0.20850438779)) +
+  0.04465820*(0.04465820*(9.3-8.5+0.55566483464+0.27902712282)+0.16666667*(9.7-8.7+0.54615537442+0.12565304255)+0.62200847*(9.9-8.8+0.49761027071+0.04944279975)+0.16666667*(9.5-8.6+0.56560966667+0.20850438779)) +
+  0.16666667*(0.16666667*(9.3-8.5+0.55566483464+0.27902712282)+0.04465820*(9.7-8.7+0.54615537442+0.12565304255)+0.16666667*(9.9-8.8+0.49761027071+0.04944279975)+0.62200847*(9.5-8.6+0.56560966667+0.20850438779)),
+
+  // 19 (constraint)
+  0.62200847*(0.62200847*(5.5-4.6+0.14140241667+0.05212609695)+0.16666667*(5.3-4.5+0.07938069066+0.03986101755)+0.04465820*(5.7-4.7+0.18205179147+0.04188434752)+0.16666667*(5.9-4.8+0.19904410828+0.01977711990)) +
+  0.16666667*(0.16666667*(5.5-4.6+0.14140241667+0.05212609695)+0.62200847*(5.3-4.5+0.07938069066+0.03986101755)+0.16666667*(5.7-4.7+0.18205179147+0.04188434752)+0.04465820*(5.9-4.8+0.19904410828+0.01977711990)) +
+  0.04465820*(0.04465820*(5.5-4.6+0.14140241667+0.05212609695)+0.16666667*(5.3-4.5+0.07938069066+0.03986101755)+0.62200847*(5.7-4.7+0.18205179147+0.04188434752)+0.16666667*(5.9-4.8+0.19904410828+0.01977711990)) +
+  0.16666667*(0.16666667*(5.5-4.6+0.14140241667+0.05212609695)+0.04465820*(5.3-4.5+0.07938069066+0.03986101755)+0.16666667*(5.7-4.7+0.18205179147+0.04188434752)+0.62200847*(5.9-4.8+0.19904410828+0.01977711990)),
+				                		                    			                		                    
+  0.62200847*(0.62200847*(7.5-6.6+1.69682900001+0.62551316338)+0.16666667*(7.3-6.5+1.82575588523+0.91680340354)+0.04465820*(7.7-6.7+1.51709826228+0.34903622931)+0.16666667*(7.9-6.8+1.29378670385+0.12855127934)) +
+  0.16666667*(0.16666667*(7.5-6.6+1.69682900001+0.62551316338)+0.62200847*(7.3-6.5+1.82575588523+0.91680340354)+0.16666667*(7.7-6.7+1.51709826228+0.34903622931)+0.04465820*(7.9-6.8+1.29378670385+0.12855127934)) +
+  0.04465820*(0.04465820*(7.5-6.6+1.69682900001+0.62551316338)+0.16666667*(7.3-6.5+1.82575588523+0.91680340354)+0.62200847*(7.7-6.7+1.51709826228+0.34903622931)+0.16666667*(7.9-6.8+1.29378670385+0.12855127934)) +
+  0.16666667*(0.16666667*(7.5-6.6+1.69682900001+0.62551316338)+0.04465820*(7.3-6.5+1.82575588523+0.91680340354)+0.16666667*(7.7-6.7+1.51709826228+0.34903622931)+0.62200847*(7.9-6.8+1.29378670385+0.12855127934)),
+				                		                    			                		                    
+  0.62200847*(0.62200847*(9.5-8.6+0.56560966667+0.20850438779)+0.16666667*(9.3-8.5+0.55566483464+0.27902712282)+0.04465820*(9.7-8.7+0.54615537442+0.12565304255)+0.16666667*(9.9-8.8+0.49761027071+0.04944279975)) +
+  0.16666667*(0.16666667*(9.5-8.6+0.56560966667+0.20850438779)+0.62200847*(9.3-8.5+0.55566483464+0.27902712282)+0.16666667*(9.7-8.7+0.54615537442+0.12565304255)+0.04465820*(9.9-8.8+0.49761027071+0.04944279975)) +
+  0.04465820*(0.04465820*(9.5-8.6+0.56560966667+0.20850438779)+0.16666667*(9.3-8.5+0.55566483464+0.27902712282)+0.62200847*(9.7-8.7+0.54615537442+0.12565304255)+0.16666667*(9.9-8.8+0.49761027071+0.04944279975)) +
+  0.16666667*(0.16666667*(9.5-8.6+0.56560966667+0.20850438779)+0.04465820*(9.3-8.5+0.55566483464+0.27902712282)+0.16666667*(9.7-8.7+0.54615537442+0.12565304255)+0.62200847*(9.9-8.8+0.49761027071+0.04944279975)),
+
+  // 20 (constraint)
+  0.62200847*(0.62200847*(5.7-4.7+0.18205179147+0.04188434752)+0.16666667*(5.9-4.8+0.19904410828+0.01977711990)+0.04465820*(5.5-4.6+0.14140241667+0.05212609695)+0.16666667*(5.3-4.5+0.07938069066+0.03986101755)) +
+  0.16666667*(0.16666667*(5.7-4.7+0.18205179147+0.04188434752)+0.62200847*(5.9-4.8+0.19904410828+0.01977711990)+0.16666667*(5.5-4.6+0.14140241667+0.05212609695)+0.04465820*(5.3-4.5+0.07938069066+0.03986101755)) +
+  0.04465820*(0.04465820*(5.7-4.7+0.18205179147+0.04188434752)+0.16666667*(5.9-4.8+0.19904410828+0.01977711990)+0.62200847*(5.5-4.6+0.14140241667+0.05212609695)+0.16666667*(5.3-4.5+0.07938069066+0.03986101755)) +
+  0.16666667*(0.16666667*(5.7-4.7+0.18205179147+0.04188434752)+0.04465820*(5.9-4.8+0.19904410828+0.01977711990)+0.16666667*(5.5-4.6+0.14140241667+0.05212609695)+0.62200847*(5.3-4.5+0.07938069066+0.03986101755)),
+			  	                 	      	                     		  	                 	      	                     
+  0.62200847*(0.62200847*(7.7-6.7+1.51709826228+0.34903622931)+0.16666667*(7.9-6.8+1.29378670385+0.12855127934)+0.04465820*(7.5-6.6+1.69682900001+0.62551316338)+0.16666667*(7.3-6.5+1.82575588523+0.91680340354)) +
+  0.16666667*(0.16666667*(7.7-6.7+1.51709826228+0.34903622931)+0.62200847*(7.9-6.8+1.29378670385+0.12855127934)+0.16666667*(7.5-6.6+1.69682900001+0.62551316338)+0.04465820*(7.3-6.5+1.82575588523+0.91680340354)) +
+  0.04465820*(0.04465820*(7.7-6.7+1.51709826228+0.34903622931)+0.16666667*(7.9-6.8+1.29378670385+0.12855127934)+0.62200847*(7.5-6.6+1.69682900001+0.62551316338)+0.16666667*(7.3-6.5+1.82575588523+0.91680340354)) +
+  0.16666667*(0.16666667*(7.7-6.7+1.51709826228+0.34903622931)+0.04465820*(7.9-6.8+1.29378670385+0.12855127934)+0.16666667*(7.5-6.6+1.69682900001+0.62551316338)+0.62200847*(7.3-6.5+1.82575588523+0.91680340354)),
+			  	                 	      	                     		  	                 	      	                     
+  0.62200847*(0.62200847*(9.7-8.7+0.54615537442+0.12565304255)+0.16666667*(9.9-8.8+0.49761027071+0.04944279975)+0.04465820*(9.5-8.6+0.56560966667+0.20850438779)+0.16666667*(9.3-8.5+0.55566483464+0.27902712282)) +
+  0.16666667*(0.16666667*(9.7-8.7+0.54615537442+0.12565304255)+0.62200847*(9.9-8.8+0.49761027071+0.04944279975)+0.16666667*(9.5-8.6+0.56560966667+0.20850438779)+0.04465820*(9.3-8.5+0.55566483464+0.27902712282)) +
+  0.04465820*(0.04465820*(9.7-8.7+0.54615537442+0.12565304255)+0.16666667*(9.9-8.8+0.49761027071+0.04944279975)+0.62200847*(9.5-8.6+0.56560966667+0.20850438779)+0.16666667*(9.3-8.5+0.55566483464+0.27902712282)) +
+  0.16666667*(0.16666667*(9.7-8.7+0.54615537442+0.12565304255)+0.04465820*(9.9-8.8+0.49761027071+0.04944279975)+0.16666667*(9.5-8.6+0.56560966667+0.20850438779)+0.62200847*(9.3-8.5+0.55566483464+0.27902712282)),
+
+  // 21 (constraint)
+  0.62200847*(0.62200847*(5.9-4.8+0.19904410828+0.01977711990)+0.16666667*(5.5-4.6+0.14140241667+0.05212609695)+0.04465820*(5.3-4.5+0.07938069066+0.03986101755)+0.16666667*(5.7-4.7+0.18205179147+0.04188434752)) +
+  0.16666667*(0.16666667*(5.9-4.8+0.19904410828+0.01977711990)+0.62200847*(5.5-4.6+0.14140241667+0.05212609695)+0.16666667*(5.3-4.5+0.07938069066+0.03986101755)+0.04465820*(5.7-4.7+0.18205179147+0.04188434752)) +
+  0.04465820*(0.04465820*(5.9-4.8+0.19904410828+0.01977711990)+0.16666667*(5.5-4.6+0.14140241667+0.05212609695)+0.62200847*(5.3-4.5+0.07938069066+0.03986101755)+0.16666667*(5.7-4.7+0.18205179147+0.04188434752)) +
+  0.16666667*(0.16666667*(5.9-4.8+0.19904410828+0.01977711990)+0.04465820*(5.5-4.6+0.14140241667+0.05212609695)+0.16666667*(5.3-4.5+0.07938069066+0.03986101755)+0.62200847*(5.7-4.7+0.18205179147+0.04188434752)),
+			  	                      	      	                  		  	                      	      	                  
+  0.62200847*(0.62200847*(7.9-6.8+1.29378670385+0.12855127934)+0.16666667*(7.5-6.6+1.69682900001+0.62551316338)+0.04465820*(7.3-6.5+1.82575588523+0.91680340354)+0.16666667*(7.7-6.7+1.51709826228+0.34903622931)) +
+  0.16666667*(0.16666667*(7.9-6.8+1.29378670385+0.12855127934)+0.62200847*(7.5-6.6+1.69682900001+0.62551316338)+0.16666667*(7.3-6.5+1.82575588523+0.91680340354)+0.04465820*(7.7-6.7+1.51709826228+0.34903622931)) +
+  0.04465820*(0.04465820*(7.9-6.8+1.29378670385+0.12855127934)+0.16666667*(7.5-6.6+1.69682900001+0.62551316338)+0.62200847*(7.3-6.5+1.82575588523+0.91680340354)+0.16666667*(7.7-6.7+1.51709826228+0.34903622931)) +
+  0.16666667*(0.16666667*(7.9-6.8+1.29378670385+0.12855127934)+0.04465820*(7.5-6.6+1.69682900001+0.62551316338)+0.16666667*(7.3-6.5+1.82575588523+0.91680340354)+0.62200847*(7.7-6.7+1.51709826228+0.34903622931)),
+			  	                      	      	                  		  	                      	      	                  
+  0.62200847*(0.62200847*(9.9-8.8+0.49761027071+0.04944279975)+0.16666667*(9.5-8.6+0.56560966667+0.20850438779)+0.04465820*(9.3-8.5+0.55566483464+0.27902712282)+0.16666667*(9.7-8.7+0.54615537442+0.12565304255)) +
+  0.16666667*(0.16666667*(9.9-8.8+0.49761027071+0.04944279975)+0.62200847*(9.5-8.6+0.56560966667+0.20850438779)+0.16666667*(9.3-8.5+0.55566483464+0.27902712282)+0.04465820*(9.7-8.7+0.54615537442+0.12565304255)) +
+  0.04465820*(0.04465820*(9.9-8.8+0.49761027071+0.04944279975)+0.16666667*(9.5-8.6+0.56560966667+0.20850438779)+0.62200847*(9.3-8.5+0.55566483464+0.27902712282)+0.16666667*(9.7-8.7+0.54615537442+0.12565304255)) +
+  0.16666667*(0.16666667*(9.9-8.8+0.49761027071+0.04944279975)+0.04465820*(9.5-8.6+0.56560966667+0.20850438779)+0.16666667*(9.3-8.5+0.55566483464+0.27902712282)+0.62200847*(9.7-8.7+0.54615537442+0.12565304255)),
 };
 
 const double pylith::faults::CohesiveKinSrcsDataHex8::_residualIncr[] = {
@@ -193,22 +420,203 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -9.4,-5.4,+7.4, // 6
- -9.6,-5.6,+7.6, // 7
- -9.8,-5.8,+7.8, // 8
- -9.0,-5.0,+7.0, // 9
+
+  // 6
+  -0.62200847*(0.62200847*5.4+0.16666667*5.6+0.04465820*5.0+0.16666667*5.8) +
+  -0.16666667*(0.16666667*5.4+0.62200847*5.6+0.16666667*5.0+0.04465820*5.8) +
+  -0.04465820*(0.04465820*5.4+0.16666667*5.6+0.62200847*5.0+0.16666667*5.8) +
+  -0.16666667*(0.16666667*5.4+0.04465820*5.6+0.16666667*5.0+0.62200847*5.8),
+
+  -0.62200847*(0.62200847*7.4+0.16666667*7.6+0.04465820*7.0+0.16666667*7.8) +
+  -0.16666667*(0.16666667*7.4+0.62200847*7.6+0.16666667*7.0+0.04465820*7.8) +
+  -0.04465820*(0.04465820*7.4+0.16666667*7.6+0.62200847*7.0+0.16666667*7.8) +
+  -0.16666667*(0.16666667*7.4+0.04465820*7.6+0.16666667*7.0+0.62200847*7.8),
+
+  -0.62200847*(0.62200847*9.4+0.16666667*9.6+0.04465820*9.0+0.16666667*9.8) +
+  -0.16666667*(0.16666667*9.4+0.62200847*9.6+0.16666667*9.0+0.04465820*9.8) +
+  -0.04465820*(0.04465820*9.4+0.16666667*9.6+0.62200847*9.0+0.16666667*9.8) +
+  -0.16666667*(0.16666667*9.4+0.04465820*9.6+0.16666667*9.0+0.62200847*9.8),
+
+  // 7
+  -0.62200847*(0.62200847*5.6+0.16666667*5.4+0.04465820*5.8+0.16666667*5.0) +
+  -0.16666667*(0.16666667*5.6+0.62200847*5.4+0.16666667*5.8+0.04465820*5.0) +
+  -0.04465820*(0.04465820*5.6+0.16666667*5.4+0.62200847*5.8+0.16666667*5.0) +
+  -0.16666667*(0.16666667*5.6+0.04465820*5.4+0.16666667*5.8+0.62200847*5.0),
+
+  -0.62200847*(0.62200847*7.6+0.16666667*7.4+0.04465820*7.8+0.16666667*7.0) +
+  -0.16666667*(0.16666667*7.6+0.62200847*7.4+0.16666667*7.8+0.04465820*7.0) +
+  -0.04465820*(0.04465820*7.6+0.16666667*7.4+0.62200847*7.8+0.16666667*7.0) +
+  -0.16666667*(0.16666667*7.6+0.04465820*7.4+0.16666667*7.8+0.62200847*7.0),
+
+  -0.62200847*(0.62200847*9.6+0.16666667*9.4+0.04465820*9.8+0.16666667*9.0) +
+  -0.16666667*(0.16666667*9.6+0.62200847*9.4+0.16666667*9.8+0.04465820*9.0) +
+  -0.04465820*(0.04465820*9.6+0.16666667*9.4+0.62200847*9.8+0.16666667*9.0) +
+  -0.16666667*(0.16666667*9.6+0.04465820*9.4+0.16666667*9.8+0.62200847*9.0),
+
+  // 8
+  -0.62200847*(0.62200847*5.8+0.16666667*5.0+0.04465820*5.6+0.16666667*5.4) +
+  -0.16666667*(0.16666667*5.8+0.62200847*5.0+0.16666667*5.6+0.04465820*5.4) +
+  -0.04465820*(0.04465820*5.8+0.16666667*5.0+0.62200847*5.6+0.16666667*5.4) +
+  -0.16666667*(0.16666667*5.8+0.04465820*5.0+0.16666667*5.6+0.62200847*5.4),
+
+  -0.62200847*(0.62200847*7.8+0.16666667*7.0+0.04465820*7.6+0.16666667*7.4) +
+  -0.16666667*(0.16666667*7.8+0.62200847*7.0+0.16666667*7.6+0.04465820*7.4) +
+  -0.04465820*(0.04465820*7.8+0.16666667*7.0+0.62200847*7.6+0.16666667*7.4) +
+  -0.16666667*(0.16666667*7.8+0.04465820*7.0+0.16666667*7.6+0.62200847*7.4),
+
+  -0.62200847*(0.62200847*9.8+0.16666667*9.0+0.04465820*9.6+0.16666667*9.4) +
+  -0.16666667*(0.16666667*9.8+0.62200847*9.0+0.16666667*9.6+0.04465820*9.4) +
+  -0.04465820*(0.04465820*9.8+0.16666667*9.0+0.62200847*9.6+0.16666667*9.4) +
+  -0.16666667*(0.16666667*9.8+0.04465820*9.0+0.16666667*9.6+0.62200847*9.4),
+
+  // 9
+  -0.62200847*(0.62200847*5.0+0.16666667*5.6+0.04465820*5.4+0.16666667*5.8) +
+  -0.16666667*(0.16666667*5.0+0.62200847*5.6+0.16666667*5.4+0.04465820*5.8) +
+  -0.04465820*(0.04465820*5.0+0.16666667*5.6+0.62200847*5.4+0.16666667*5.8) +
+  -0.16666667*(0.16666667*5.0+0.04465820*5.6+0.16666667*5.4+0.62200847*5.8),
+
+  -0.62200847*(0.62200847*7.0+0.16666667*7.6+0.04465820*7.4+0.16666667*7.8) +
+  -0.16666667*(0.16666667*7.0+0.62200847*7.6+0.16666667*7.4+0.04465820*7.8) +
+  -0.04465820*(0.04465820*7.0+0.16666667*7.6+0.62200847*7.4+0.16666667*7.8) +
+  -0.16666667*(0.16666667*7.0+0.04465820*7.6+0.16666667*7.4+0.62200847*7.8),
+
+  -0.62200847*(0.62200847*9.0+0.16666667*9.6+0.04465820*9.4+0.16666667*9.8) +
+  -0.16666667*(0.16666667*9.0+0.62200847*9.6+0.16666667*9.4+0.04465820*9.8) +
+  -0.04465820*(0.04465820*9.0+0.16666667*9.6+0.62200847*9.4+0.16666667*9.8) +
+  -0.16666667*(0.16666667*9.0+0.04465820*9.6+0.16666667*9.4+0.62200847*9.8),
+
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +9.4,+5.4,-7.4, // 14
- +9.6,+5.6,-7.6, // 15
- +9.8,+5.8,-7.8, // 16
- +9.0,+5.0,-7.0, // 17
-  0.8+1.82575588523+0.91680340354, -0.8+-0.55566483464-0.27902712282, 0.8+0.07938069066+0.03986101755, // 18 (constraint)
-  0.9+1.69682900001+0.62551316338, -0.9+-0.56560966667-0.20850438779, 0.9+0.14140241667+0.05212609695, // 19 (constraint)
-  1.0+1.51709826228+0.34903622931, -1.0+-0.54615537442-0.12565304255, 1.0+0.18205179147+0.04188434752, // 20 (constraint)
-  1.1+1.29378670385+0.12855127934, -1.1+-0.49761027071+-0.04944279975, 1.1+0.19904410828+0.01977711990, // 21 (constraint)
+
+  // 14
+  +0.62200847*(0.62200847*5.4+0.16666667*5.6+0.04465820*5.0+0.16666667*5.8) +
+  +0.16666667*(0.16666667*5.4+0.62200847*5.6+0.16666667*5.0+0.04465820*5.8) +
+  +0.04465820*(0.04465820*5.4+0.16666667*5.6+0.62200847*5.0+0.16666667*5.8) +
+  +0.16666667*(0.16666667*5.4+0.04465820*5.6+0.16666667*5.0+0.62200847*5.8),
+
+  +0.62200847*(0.62200847*7.4+0.16666667*7.6+0.04465820*7.0+0.16666667*7.8) +
+  +0.16666667*(0.16666667*7.4+0.62200847*7.6+0.16666667*7.0+0.04465820*7.8) +
+  +0.04465820*(0.04465820*7.4+0.16666667*7.6+0.62200847*7.0+0.16666667*7.8) +
+  +0.16666667*(0.16666667*7.4+0.04465820*7.6+0.16666667*7.0+0.62200847*7.8),
+
+  +0.62200847*(0.62200847*9.4+0.16666667*9.6+0.04465820*9.0+0.16666667*9.8) +
+  +0.16666667*(0.16666667*9.4+0.62200847*9.6+0.16666667*9.0+0.04465820*9.8) +
+  +0.04465820*(0.04465820*9.4+0.16666667*9.6+0.62200847*9.0+0.16666667*9.8) +
+  +0.16666667*(0.16666667*9.4+0.04465820*9.6+0.16666667*9.0+0.62200847*9.8),
+
+  // 15
+  +0.62200847*(0.62200847*5.6+0.16666667*5.4+0.04465820*5.8+0.16666667*5.0) +
+  +0.16666667*(0.16666667*5.6+0.62200847*5.4+0.16666667*5.8+0.04465820*5.0) +
+  +0.04465820*(0.04465820*5.6+0.16666667*5.4+0.62200847*5.8+0.16666667*5.0) +
+  +0.16666667*(0.16666667*5.6+0.04465820*5.4+0.16666667*5.8+0.62200847*5.0),
+
+  +0.62200847*(0.62200847*7.6+0.16666667*7.4+0.04465820*7.8+0.16666667*7.0) +
+  +0.16666667*(0.16666667*7.6+0.62200847*7.4+0.16666667*7.8+0.04465820*7.0) +
+  +0.04465820*(0.04465820*7.6+0.16666667*7.4+0.62200847*7.8+0.16666667*7.0) +
+  +0.16666667*(0.16666667*7.6+0.04465820*7.4+0.16666667*7.8+0.62200847*7.0),
+
+  +0.62200847*(0.62200847*9.6+0.16666667*9.4+0.04465820*9.8+0.16666667*9.0) +
+  +0.16666667*(0.16666667*9.6+0.62200847*9.4+0.16666667*9.8+0.04465820*9.0) +
+  +0.04465820*(0.04465820*9.6+0.16666667*9.4+0.62200847*9.8+0.16666667*9.0) +
+  +0.16666667*(0.16666667*9.6+0.04465820*9.4+0.16666667*9.8+0.62200847*9.0),
+
+  // 16
+  +0.62200847*(0.62200847*5.8+0.16666667*5.0+0.04465820*5.6+0.16666667*5.4) +
+  +0.16666667*(0.16666667*5.8+0.62200847*5.0+0.16666667*5.6+0.04465820*5.4) +
+  +0.04465820*(0.04465820*5.8+0.16666667*5.0+0.62200847*5.6+0.16666667*5.4) +
+  +0.16666667*(0.16666667*5.8+0.04465820*5.0+0.16666667*5.6+0.62200847*5.4),
+
+  +0.62200847*(0.62200847*7.8+0.16666667*7.0+0.04465820*7.6+0.16666667*7.4) +
+  +0.16666667*(0.16666667*7.8+0.62200847*7.0+0.16666667*7.6+0.04465820*7.4) +
+  +0.04465820*(0.04465820*7.8+0.16666667*7.0+0.62200847*7.6+0.16666667*7.4) +
+  +0.16666667*(0.16666667*7.8+0.04465820*7.0+0.16666667*7.6+0.62200847*7.4),
+
+  +0.62200847*(0.62200847*9.8+0.16666667*9.0+0.04465820*9.6+0.16666667*9.4) +
+  +0.16666667*(0.16666667*9.8+0.62200847*9.0+0.16666667*9.6+0.04465820*9.4) +
+  +0.04465820*(0.04465820*9.8+0.16666667*9.0+0.62200847*9.6+0.16666667*9.4) +
+  +0.16666667*(0.16666667*9.8+0.04465820*9.0+0.16666667*9.6+0.62200847*9.4),
+
+  // 17
+  +0.62200847*(0.62200847*5.0+0.16666667*5.6+0.04465820*5.4+0.16666667*5.8) +
+  +0.16666667*(0.16666667*5.0+0.62200847*5.6+0.16666667*5.4+0.04465820*5.8) +
+  +0.04465820*(0.04465820*5.0+0.16666667*5.6+0.62200847*5.4+0.16666667*5.8) +
+  +0.16666667*(0.16666667*5.0+0.04465820*5.6+0.16666667*5.4+0.62200847*5.8),
+
+  +0.62200847*(0.62200847*7.0+0.16666667*7.6+0.04465820*7.4+0.16666667*7.8) +
+  +0.16666667*(0.16666667*7.0+0.62200847*7.6+0.16666667*7.4+0.04465820*7.8) +
+  +0.04465820*(0.04465820*7.0+0.16666667*7.6+0.62200847*7.4+0.16666667*7.8) +
+  +0.16666667*(0.16666667*7.0+0.04465820*7.6+0.16666667*7.4+0.62200847*7.8),
+
+  +0.62200847*(0.62200847*9.0+0.16666667*9.6+0.04465820*9.4+0.16666667*9.8) +
+  +0.16666667*(0.16666667*9.0+0.62200847*9.6+0.16666667*9.4+0.04465820*9.8) +
+  +0.04465820*(0.04465820*9.0+0.16666667*9.6+0.62200847*9.4+0.16666667*9.8) +
+  +0.16666667*(0.16666667*9.0+0.04465820*9.6+0.16666667*9.4+0.62200847*9.8),
+
+  // 18 (constraint)
+  0.62200847*(0.62200847*(5.3-4.5+0.07938069066+0.03986101755)+0.16666667*(5.7-4.7+0.18205179147+0.04188434752)+0.04465820*(5.9-4.8+0.19904410828+0.01977711990)+0.16666667*(5.5-4.6+0.14140241667+0.05212609695)) +
+  0.16666667*(0.16666667*(5.3-4.5+0.07938069066+0.03986101755)+0.62200847*(5.7-4.7+0.18205179147+0.04188434752)+0.16666667*(5.9-4.8+0.19904410828+0.01977711990)+0.04465820*(5.5-4.6+0.14140241667+0.05212609695)) +
+  0.04465820*(0.04465820*(5.3-4.5+0.07938069066+0.03986101755)+0.16666667*(5.7-4.7+0.18205179147+0.04188434752)+0.62200847*(5.9-4.8+0.19904410828+0.01977711990)+0.16666667*(5.5-4.6+0.14140241667+0.05212609695)) +
+  0.16666667*(0.16666667*(5.3-4.5+0.07938069066+0.03986101755)+0.04465820*(5.7-4.7+0.18205179147+0.04188434752)+0.16666667*(5.9-4.8+0.19904410828+0.01977711990)+0.62200847*(5.5-4.6+0.14140241667+0.05212609695)),
+
+  0.62200847*(0.62200847*(7.3-6.5+1.82575588523+0.91680340354)+0.16666667*(7.7-6.7+1.51709826228+0.34903622931)+0.04465820*(7.9-6.8+1.29378670385+0.12855127934)+0.16666667*(7.5-6.6+1.69682900001+0.62551316338)) +
+  0.16666667*(0.16666667*(7.3-6.5+1.82575588523+0.91680340354)+0.62200847*(7.7-6.7+1.51709826228+0.34903622931)+0.16666667*(7.9-6.8+1.29378670385+0.12855127934)+0.04465820*(7.5-6.6+1.69682900001+0.62551316338)) +
+  0.04465820*(0.04465820*(7.3-6.5+1.82575588523+0.91680340354)+0.16666667*(7.7-6.7+1.51709826228+0.34903622931)+0.62200847*(7.9-6.8+1.29378670385+0.12855127934)+0.16666667*(7.5-6.6+1.69682900001+0.62551316338)) +
+  0.16666667*(0.16666667*(7.3-6.5+1.82575588523+0.91680340354)+0.04465820*(7.7-6.7+1.51709826228+0.34903622931)+0.16666667*(7.9-6.8+1.29378670385+0.12855127934)+0.62200847*(7.5-6.6+1.69682900001+0.62551316338)),
+
+  0.62200847*(0.62200847*(9.3-8.5+0.55566483464+0.27902712282)+0.16666667*(9.7-8.7+0.54615537442+0.12565304255)+0.04465820*(9.9-8.8+0.49761027071+0.04944279975)+0.16666667*(9.5-8.6+0.56560966667+0.20850438779)) +
+  0.16666667*(0.16666667*(9.3-8.5+0.55566483464+0.27902712282)+0.62200847*(9.7-8.7+0.54615537442+0.12565304255)+0.16666667*(9.9-8.8+0.49761027071+0.04944279975)+0.04465820*(9.5-8.6+0.56560966667+0.20850438779)) +
+  0.04465820*(0.04465820*(9.3-8.5+0.55566483464+0.27902712282)+0.16666667*(9.7-8.7+0.54615537442+0.12565304255)+0.62200847*(9.9-8.8+0.49761027071+0.04944279975)+0.16666667*(9.5-8.6+0.56560966667+0.20850438779)) +
+  0.16666667*(0.16666667*(9.3-8.5+0.55566483464+0.27902712282)+0.04465820*(9.7-8.7+0.54615537442+0.12565304255)+0.16666667*(9.9-8.8+0.49761027071+0.04944279975)+0.62200847*(9.5-8.6+0.56560966667+0.20850438779)),
+
+  // 19 (constraint)
+  0.62200847*(0.62200847*(5.5-4.6+0.14140241667+0.05212609695)+0.16666667*(5.3-4.5+0.07938069066+0.03986101755)+0.04465820*(5.7-4.7+0.18205179147+0.04188434752)+0.16666667*(5.9-4.8+0.19904410828+0.01977711990)) +
+  0.16666667*(0.16666667*(5.5-4.6+0.14140241667+0.05212609695)+0.62200847*(5.3-4.5+0.07938069066+0.03986101755)+0.16666667*(5.7-4.7+0.18205179147+0.04188434752)+0.04465820*(5.9-4.8+0.19904410828+0.01977711990)) +
+  0.04465820*(0.04465820*(5.5-4.6+0.14140241667+0.05212609695)+0.16666667*(5.3-4.5+0.07938069066+0.03986101755)+0.62200847*(5.7-4.7+0.18205179147+0.04188434752)+0.16666667*(5.9-4.8+0.19904410828+0.01977711990)) +
+  0.16666667*(0.16666667*(5.5-4.6+0.14140241667+0.05212609695)+0.04465820*(5.3-4.5+0.07938069066+0.03986101755)+0.16666667*(5.7-4.7+0.18205179147+0.04188434752)+0.62200847*(5.9-4.8+0.19904410828+0.01977711990)),
+				                		                    			                		                    
+  0.62200847*(0.62200847*(7.5-6.6+1.69682900001+0.62551316338)+0.16666667*(7.3-6.5+1.82575588523+0.91680340354)+0.04465820*(7.7-6.7+1.51709826228+0.34903622931)+0.16666667*(7.9-6.8+1.29378670385+0.12855127934)) +
+  0.16666667*(0.16666667*(7.5-6.6+1.69682900001+0.62551316338)+0.62200847*(7.3-6.5+1.82575588523+0.91680340354)+0.16666667*(7.7-6.7+1.51709826228+0.34903622931)+0.04465820*(7.9-6.8+1.29378670385+0.12855127934)) +
+  0.04465820*(0.04465820*(7.5-6.6+1.69682900001+0.62551316338)+0.16666667*(7.3-6.5+1.82575588523+0.91680340354)+0.62200847*(7.7-6.7+1.51709826228+0.34903622931)+0.16666667*(7.9-6.8+1.29378670385+0.12855127934)) +
+  0.16666667*(0.16666667*(7.5-6.6+1.69682900001+0.62551316338)+0.04465820*(7.3-6.5+1.82575588523+0.91680340354)+0.16666667*(7.7-6.7+1.51709826228+0.34903622931)+0.62200847*(7.9-6.8+1.29378670385+0.12855127934)),
+				                		                    			                		                    
+  0.62200847*(0.62200847*(9.5-8.6+0.56560966667+0.20850438779)+0.16666667*(9.3-8.5+0.55566483464+0.27902712282)+0.04465820*(9.7-8.7+0.54615537442+0.12565304255)+0.16666667*(9.9-8.8+0.49761027071+0.04944279975)) +
+  0.16666667*(0.16666667*(9.5-8.6+0.56560966667+0.20850438779)+0.62200847*(9.3-8.5+0.55566483464+0.27902712282)+0.16666667*(9.7-8.7+0.54615537442+0.12565304255)+0.04465820*(9.9-8.8+0.49761027071+0.04944279975)) +
+  0.04465820*(0.04465820*(9.5-8.6+0.56560966667+0.20850438779)+0.16666667*(9.3-8.5+0.55566483464+0.27902712282)+0.62200847*(9.7-8.7+0.54615537442+0.12565304255)+0.16666667*(9.9-8.8+0.49761027071+0.04944279975)) +
+  0.16666667*(0.16666667*(9.5-8.6+0.56560966667+0.20850438779)+0.04465820*(9.3-8.5+0.55566483464+0.27902712282)+0.16666667*(9.7-8.7+0.54615537442+0.12565304255)+0.62200847*(9.9-8.8+0.49761027071+0.04944279975)),
+
+  // 20 (constraint)
+  0.62200847*(0.62200847*(5.7-4.7+0.18205179147+0.04188434752)+0.16666667*(5.9-4.8+0.19904410828+0.01977711990)+0.04465820*(5.5-4.6+0.14140241667+0.05212609695)+0.16666667*(5.3-4.5+0.07938069066+0.03986101755)) +
+  0.16666667*(0.16666667*(5.7-4.7+0.18205179147+0.04188434752)+0.62200847*(5.9-4.8+0.19904410828+0.01977711990)+0.16666667*(5.5-4.6+0.14140241667+0.05212609695)+0.04465820*(5.3-4.5+0.07938069066+0.03986101755)) +
+  0.04465820*(0.04465820*(5.7-4.7+0.18205179147+0.04188434752)+0.16666667*(5.9-4.8+0.19904410828+0.01977711990)+0.62200847*(5.5-4.6+0.14140241667+0.05212609695)+0.16666667*(5.3-4.5+0.07938069066+0.03986101755)) +
+  0.16666667*(0.16666667*(5.7-4.7+0.18205179147+0.04188434752)+0.04465820*(5.9-4.8+0.19904410828+0.01977711990)+0.16666667*(5.5-4.6+0.14140241667+0.05212609695)+0.62200847*(5.3-4.5+0.07938069066+0.03986101755)),
+			  	                 	      	                     		  	                 	      	                     
+  0.62200847*(0.62200847*(7.7-6.7+1.51709826228+0.34903622931)+0.16666667*(7.9-6.8+1.29378670385+0.12855127934)+0.04465820*(7.5-6.6+1.69682900001+0.62551316338)+0.16666667*(7.3-6.5+1.82575588523+0.91680340354)) +
+  0.16666667*(0.16666667*(7.7-6.7+1.51709826228+0.34903622931)+0.62200847*(7.9-6.8+1.29378670385+0.12855127934)+0.16666667*(7.5-6.6+1.69682900001+0.62551316338)+0.04465820*(7.3-6.5+1.82575588523+0.91680340354)) +
+  0.04465820*(0.04465820*(7.7-6.7+1.51709826228+0.34903622931)+0.16666667*(7.9-6.8+1.29378670385+0.12855127934)+0.62200847*(7.5-6.6+1.69682900001+0.62551316338)+0.16666667*(7.3-6.5+1.82575588523+0.91680340354)) +
+  0.16666667*(0.16666667*(7.7-6.7+1.51709826228+0.34903622931)+0.04465820*(7.9-6.8+1.29378670385+0.12855127934)+0.16666667*(7.5-6.6+1.69682900001+0.62551316338)+0.62200847*(7.3-6.5+1.82575588523+0.91680340354)),
+			  	                 	      	                     		  	                 	      	                     
+  0.62200847*(0.62200847*(9.7-8.7+0.54615537442+0.12565304255)+0.16666667*(9.9-8.8+0.49761027071+0.04944279975)+0.04465820*(9.5-8.6+0.56560966667+0.20850438779)+0.16666667*(9.3-8.5+0.55566483464+0.27902712282)) +
+  0.16666667*(0.16666667*(9.7-8.7+0.54615537442+0.12565304255)+0.62200847*(9.9-8.8+0.49761027071+0.04944279975)+0.16666667*(9.5-8.6+0.56560966667+0.20850438779)+0.04465820*(9.3-8.5+0.55566483464+0.27902712282)) +
+  0.04465820*(0.04465820*(9.7-8.7+0.54615537442+0.12565304255)+0.16666667*(9.9-8.8+0.49761027071+0.04944279975)+0.62200847*(9.5-8.6+0.56560966667+0.20850438779)+0.16666667*(9.3-8.5+0.55566483464+0.27902712282)) +
+  0.16666667*(0.16666667*(9.7-8.7+0.54615537442+0.12565304255)+0.04465820*(9.9-8.8+0.49761027071+0.04944279975)+0.16666667*(9.5-8.6+0.56560966667+0.20850438779)+0.62200847*(9.3-8.5+0.55566483464+0.27902712282)),
+
+  // 21 (constraint)
+  0.62200847*(0.62200847*(5.9-4.8+0.19904410828+0.01977711990)+0.16666667*(5.5-4.6+0.14140241667+0.05212609695)+0.04465820*(5.3-4.5+0.07938069066+0.03986101755)+0.16666667*(5.7-4.7+0.18205179147+0.04188434752)) +
+  0.16666667*(0.16666667*(5.9-4.8+0.19904410828+0.01977711990)+0.62200847*(5.5-4.6+0.14140241667+0.05212609695)+0.16666667*(5.3-4.5+0.07938069066+0.03986101755)+0.04465820*(5.7-4.7+0.18205179147+0.04188434752)) +
+  0.04465820*(0.04465820*(5.9-4.8+0.19904410828+0.01977711990)+0.16666667*(5.5-4.6+0.14140241667+0.05212609695)+0.62200847*(5.3-4.5+0.07938069066+0.03986101755)+0.16666667*(5.7-4.7+0.18205179147+0.04188434752)) +
+  0.16666667*(0.16666667*(5.9-4.8+0.19904410828+0.01977711990)+0.04465820*(5.5-4.6+0.14140241667+0.05212609695)+0.16666667*(5.3-4.5+0.07938069066+0.03986101755)+0.62200847*(5.7-4.7+0.18205179147+0.04188434752)),
+			  	                      	      	                  		  	                      	      	                  
+  0.62200847*(0.62200847*(7.9-6.8+1.29378670385+0.12855127934)+0.16666667*(7.5-6.6+1.69682900001+0.62551316338)+0.04465820*(7.3-6.5+1.82575588523+0.91680340354)+0.16666667*(7.7-6.7+1.51709826228+0.34903622931)) +
+  0.16666667*(0.16666667*(7.9-6.8+1.29378670385+0.12855127934)+0.62200847*(7.5-6.6+1.69682900001+0.62551316338)+0.16666667*(7.3-6.5+1.82575588523+0.91680340354)+0.04465820*(7.7-6.7+1.51709826228+0.34903622931)) +
+  0.04465820*(0.04465820*(7.9-6.8+1.29378670385+0.12855127934)+0.16666667*(7.5-6.6+1.69682900001+0.62551316338)+0.62200847*(7.3-6.5+1.82575588523+0.91680340354)+0.16666667*(7.7-6.7+1.51709826228+0.34903622931)) +
+  0.16666667*(0.16666667*(7.9-6.8+1.29378670385+0.12855127934)+0.04465820*(7.5-6.6+1.69682900001+0.62551316338)+0.16666667*(7.3-6.5+1.82575588523+0.91680340354)+0.62200847*(7.7-6.7+1.51709826228+0.34903622931)),
+			  	                      	      	                  		  	                      	      	                  
+  0.62200847*(0.62200847*(9.9-8.8+0.49761027071+0.04944279975)+0.16666667*(9.5-8.6+0.56560966667+0.20850438779)+0.04465820*(9.3-8.5+0.55566483464+0.27902712282)+0.16666667*(9.7-8.7+0.54615537442+0.12565304255)) +
+  0.16666667*(0.16666667*(9.9-8.8+0.49761027071+0.04944279975)+0.62200847*(9.5-8.6+0.56560966667+0.20850438779)+0.16666667*(9.3-8.5+0.55566483464+0.27902712282)+0.04465820*(9.7-8.7+0.54615537442+0.12565304255)) +
+  0.04465820*(0.04465820*(9.9-8.8+0.49761027071+0.04944279975)+0.16666667*(9.5-8.6+0.56560966667+0.20850438779)+0.62200847*(9.3-8.5+0.55566483464+0.27902712282)+0.16666667*(9.7-8.7+0.54615537442+0.12565304255)) +
+  0.16666667*(0.16666667*(9.9-8.8+0.49761027071+0.04944279975)+0.04465820*(9.5-8.6+0.56560966667+0.20850438779)+0.16666667*(9.3-8.5+0.55566483464+0.27902712282)+0.62200847*(9.7-8.7+0.54615537442+0.12565304255)),
 };
 
 const double pylith::faults::CohesiveKinSrcsDataHex8::_jacobian[] = {
@@ -468,7 +876,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 18
+ +1.0, 0.0, 0.0, // 18
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -488,7 +896,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 18
+  0.0,+1.0, 0.0, // 18
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -508,7 +916,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 18
+  0.0, 0.0,+1.0, // 18
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -529,7 +937,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 19
+ +1.0, 0.0, 0.0, // 19
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 7y
@@ -549,7 +957,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 19
+  0.0,+1.0, 0.0, // 19
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 7z
@@ -569,7 +977,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 19
+  0.0, 0.0,+1.0, // 19
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 8x
@@ -590,7 +998,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 20
+ +1.0, 0.0, 0.0, // 20
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 8y
   0.0, 0.0, 0.0,
@@ -610,7 +1018,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 20
+  0.0,+1.0, 0.0, // 20
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 8z
   0.0, 0.0, 0.0,
@@ -630,7 +1038,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 20
+  0.0, 0.0,+1.0, // 20
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 9x
   0.0, 0.0, 0.0,
@@ -651,7 +1059,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 21
+ +1.0, 0.0, 0.0, // 21
   0.0, 0.0, 0.0, // 9y
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -671,7 +1079,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 21
+  0.0,+1.0, 0.0, // 21
   0.0, 0.0, 0.0, // 9z
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -691,7 +1099,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 21
+  0.0, 0.0,+1.0, // 21
   0.0, 0.0, 0.0, // 10x
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -948,7 +1356,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 18
+ -1.0, 0.0, 0.0, // 18
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -968,7 +1376,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 18
+  0.0,-1.0, 0.0, // 18
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -988,7 +1396,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 18
+  0.0, 0.0,-1.0, // 18
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1009,7 +1417,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 19
+ -1.0, 0.0, 0.0, // 19
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 15y
@@ -1029,7 +1437,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 19
+  0.0,-1.0, 0.0, // 19
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 15z
@@ -1049,7 +1457,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 19
+  0.0, 0.0,-1.0, // 19
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 16x
@@ -1070,7 +1478,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 20
+ -1.0, 0.0, 0.0, // 20
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 16y
   0.0, 0.0, 0.0,
@@ -1090,7 +1498,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 20
+  0.0,-1.0, 0.0, // 20
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 16z
   0.0, 0.0, 0.0,
@@ -1110,7 +1518,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 20
+  0.0, 0.0,-1.0, // 20
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 17x
   0.0, 0.0, 0.0,
@@ -1131,7 +1539,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 21
+ -1.0, 0.0, 0.0, // 21
   0.0, 0.0, 0.0, // 17y
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1151,7 +1559,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 21
+  0.0,-1.0, 0.0, // 21
   0.0, 0.0, 0.0, // 17z
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1171,12 +1579,12 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 21
+  0.0, 0.0,-1.0, // 21
   0.0, 0.0, 0.0, // 18x
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 6
+ +1.0, 0.0, 0.0, // 6
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1184,7 +1592,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 14
+ -1.0, 0.0, 0.0, // 14
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1196,7 +1604,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 6
+  0.0,+1.0, 0.0, // 6
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1204,7 +1612,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 14
+  0.0,-1.0, 0.0, // 14
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1216,7 +1624,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 6
+  0.0, 0.0,+1.0, // 6
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1224,7 +1632,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 14
+  0.0, 0.0,-1.0, // 14
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1237,7 +1645,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 7
+ +1.0, 0.0, 0.0, // 7
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1245,7 +1653,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 15
+ -1.0, 0.0, 0.0, // 15
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1257,7 +1665,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 7
+  0.0,+1.0, 0.0, // 7
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1265,7 +1673,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 15
+  0.0,-1.0, 0.0, // 15
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1277,7 +1685,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 7
+  0.0, 0.0,+1.0, // 7
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1285,7 +1693,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 15
+  0.0, 0.0,-1.0, // 15
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1298,7 +1706,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 8
+ +1.0, 0.0, 0.0, // 8
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1306,7 +1714,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 16
+ -1.0, 0.0, 0.0, // 16
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1318,7 +1726,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 8
+  0.0,+1.0, 0.0, // 8
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1326,7 +1734,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 16
+  0.0,-1.0, 0.0, // 16
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1338,7 +1746,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 8
+  0.0, 0.0,+1.0, // 8
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1346,7 +1754,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 16
+  0.0, 0.0,-1.0, // 16
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1359,7 +1767,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 9
+ +1.0, 0.0, 0.0, // 9
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1367,7 +1775,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 17
+ -1.0, 0.0, 0.0, // 17
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1379,7 +1787,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 9
+  0.0,+1.0, 0.0, // 9
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1387,7 +1795,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 17
+  0.0,-1.0, 0.0, // 17
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1399,7 +1807,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 9
+  0.0, 0.0,+1.0, // 9
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1407,7 +1815,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 17
+  0.0, 0.0,-1.0, // 17
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -1432,6 +1840,8 @@
   slipTimeFilename = const_cast<char*>(_slipTimeFilename);
   riseTimeFilename = const_cast<char*>(_riseTimeFilename);
   fieldT = const_cast<double*>(_fieldT);
+  fieldIncr = const_cast<double*>(_fieldIncr);
+  jacobianLumped = const_cast<double*>(_jacobianLumped);
   orientation = const_cast<double*>(_orientation);
   area = const_cast<double*>(_area);
   residual = const_cast<double*>(_residual);

Modified: short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.hh
===================================================================
--- short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.hh	2011-09-26 21:38:14 UTC (rev 18973)
+++ short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataHex8.hh	2011-09-26 21:38:49 UTC (rev 18974)
@@ -63,7 +63,9 @@
   static const char* _matPropsFilename; ///< Name of db for bulk mat properties.
   //@}
 
-  static const double _fieldT[]; ///< Solution field at time t.
+  static const double _fieldT[]; ///< Field over domain at time t.
+  static const double _fieldIncr[]; ///< Solution increment field over domain at time t.
+  static const double _jacobianLumped[]; ///< Lumped Jacobian.
 
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.

Modified: short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.cc	2011-09-26 21:38:14 UTC (rev 18973)
+++ short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.cc	2011-09-26 21:38:49 UTC (rev 18974)
@@ -82,6 +82,22 @@
 };
 
 
+const double pylith::faults::CohesiveKinSrcsDataLine2::_fieldIncr[] = {
+  1.1,
+  1.2, // 3
+  1.3,
+  1.4, // 5
+  1.5
+};
+
+const double pylith::faults::CohesiveKinSrcsDataLine2::_jacobianLumped[] = {
+  2.1,
+  2.2, // 3
+  2.3,
+  2.4, // 5
+  1.0
+};
+
 const double pylith::faults::CohesiveKinSrcsDataLine2::_orientation[] = {
   1.0
 };
@@ -115,26 +131,26 @@
 
 const double pylith::faults::CohesiveKinSrcsDataLine2::_residualIncr[] = {
    0.0,
-   7.5,
+  -7.5,
    0.0,
-  -7.5,
-  -0.2+1.89546413727+0.99414665414,
+  +7.5,
+   0.2-1.89546413727-0.99414665414,
 };
 
 const double pylith::faults::CohesiveKinSrcsDataLine2::_residual[] = {
    0.0,
-   7.5,
+  -7.5,
    0.0,
-  -7.5,
-  -0.2+1.89546413727+0.99414665414,
+  +7.5,
+  0.2-1.89546413727-0.99414665414,
 };
 
 const double pylith::faults::CohesiveKinSrcsDataLine2::_jacobian[] = {
   0.0,  0.0,  0.0,  0.0,  0.0,
+  0.0,  0.0,  0.0,  0.0, +1.0,
+  0.0,  0.0,  0.0,  0.0,  0.0,
   0.0,  0.0,  0.0,  0.0, -1.0,
-  0.0,  0.0,  0.0,  0.0,  0.0,
-  0.0,  0.0,  0.0,  0.0, +1.0,
-  0.0, -1.0,  0.0, +1.0,  0.0,
+  0.0, +1.0,  0.0, -1.0,  0.0,
 };
 
 pylith::faults::CohesiveKinSrcsDataLine2::CohesiveKinSrcsDataLine2(void)
@@ -155,6 +171,8 @@
   slipTimeFilename = const_cast<char*>(_slipTimeFilename);
   riseTimeFilename = const_cast<char*>(_riseTimeFilename);
   fieldT = const_cast<double*>(_fieldT);
+  fieldIncr = const_cast<double*>(_fieldIncr);
+  jacobianLumped = const_cast<double*>(_jacobianLumped);
   orientation = const_cast<double*>(_orientation);
   area = const_cast<double*>(_area);
   residualIncr = const_cast<double*>(_residualIncr);

Modified: short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.hh
===================================================================
--- short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.hh	2011-09-26 21:38:14 UTC (rev 18973)
+++ short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataLine2.hh	2011-09-26 21:38:49 UTC (rev 18974)
@@ -63,7 +63,9 @@
   static const char* _matPropsFilename; ///< Name of db for bulk mat properties.
   //@}
 
-  static const double _fieldT[]; ///< Solution field at time t.
+  static const double _fieldT[]; ///< Field over domain at time t.
+  static const double _fieldIncr[]; ///< Solution increment field over domain at time t.
+  static const double _jacobianLumped[]; ///< Lumped Jacobian.
 
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.

Modified: short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.cc	2011-09-26 21:38:14 UTC (rev 18973)
+++ short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.cc	2011-09-26 21:38:49 UTC (rev 18974)
@@ -108,7 +108,31 @@
   8.0, 9.0, // 11
 };
 
+const double pylith::faults::CohesiveKinSrcsDataQuad4::_fieldIncr[] = {
+  3.1, 4.1,
+  3.2, 4.2,
+  3.3, 4.3, // 4
+  3.4, 4.4, // 5
+  3.5, 4.5,
+  3.6, 4.6,
+  3.7, 4.7, // 8
+  3.9, 4.9, // 9
+  3.8, 4.8, // 10
+  3.0, 4.0, // 11
+};
 
+const double pylith::faults::CohesiveKinSrcsDataQuad4::_jacobianLumped[] = {
+  1.1, 1.1,
+  1.2, 1.2,
+  1.3, 1.3, // 4
+  1.4, 1.4, // 5
+  1.5, 1.5,
+  1.6, 1.6,
+  1.7, 1.7, // 8
+  1.9, 1.9, // 9
+  1.0, 1.0, // 10
+  1.0, 1.0, // 11
+};
 
 const double pylith::faults::CohesiveKinSrcsDataQuad4::_orientation[] = {
   0.0,  1.0,  +1.0, 0.0,
@@ -145,27 +169,39 @@
 const double pylith::faults::CohesiveKinSrcsDataQuad4::_residual[] = {
   0.0,  0.0,
   0.0,  0.0,
-  9.8,  8.8, // 4
-  9.0,  8.0, // 5
+ -8.4, -9.4, // 4
+ -8.4, -9.4, // 5
   0.0,  0.0,
   0.0,  0.0,
- -9.8, -8.8, // 8
- -9.0, -8.0, // 9
- -0.4+1.77538035254+0.68377062865, -0.4+0.14794836271+0.05698088572, // 10
- -0.5+1.89546413727+0.99414665414, -0.5+0.08241148423+0.04322376757, // 11
+ +8.4, +9.4, // 8
+ +8.4, +9.4, // 9
+  0.5*(8.7-8.3 + 8.9-8.4) - 
+  0.5*(0.14794836271+0.05698088572+0.08241148423+0.04322376757),
+  0.5*(9.7-9.3 + 9.9-9.4) - 
+  0.5*(1.77538035254+0.68377062865+1.89546413727+0.99414665414), // 10
+  0.5*(8.7-8.3 + 8.9-8.4) - 
+  0.5*(0.14794836271+0.05698088572+0.08241148423+0.04322376757),
+  0.5*(9.7-9.3 + 9.9-9.4) - 
+  0.5*(1.77538035254+0.68377062865+1.89546413727+0.99414665414), // 11
 };
 
 const double pylith::faults::CohesiveKinSrcsDataQuad4::_residualIncr[] = {
   0.0,  0.0,
   0.0,  0.0,
-  9.8,  8.8, // 4
-  9.0,  8.0, // 5
+ -8.4, -9.4, // 4
+ -8.4, -9.4, // 5
   0.0,  0.0,
   0.0,  0.0,
- -9.8, -8.8, // 8
- -9.0, -8.0, // 9
- -0.4+1.77538035254+0.68377062865, -0.4+0.14794836271+0.05698088572, // 10
- -0.5+1.89546413727+0.99414665414, -0.5+0.08241148423+0.04322376757, // 11
+ +8.4, +9.4, // 8
+ +8.4, +9.4, // 9
+  0.5*(8.7-8.3 + 8.9-8.4) - 
+  0.5*(0.14794836271+0.05698088572+0.08241148423+0.04322376757),
+  0.5*(9.7-9.3 + 9.9-9.4) - 
+  0.5*(1.77538035254+0.68377062865+1.89546413727+0.99414665414), // 10
+  0.5*(8.7-8.3 + 8.9-8.4) - 
+  0.5*(0.14794836271+0.05698088572+0.08241148423+0.04322376757),
+  0.5*(9.7-9.3 + 9.9-9.4) - 
+  0.5*(1.77538035254+0.68377062865+1.89546413727+0.99414665414), // 11
 };
 
 const double pylith::faults::CohesiveKinSrcsDataQuad4::_jacobian[] = {
@@ -217,7 +253,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
-  0.0,-1.0, // 10
+ +1.0, 0.0, // 10
   0.0, 0.0,
   0.0, 0.0, // 4y
   0.0, 0.0,
@@ -227,7 +263,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
- -1.0, 0.0, //  10
+  0.0,+1.0, //  10
   0.0, 0.0,
   0.0, 0.0, // 5x
   0.0, 0.0,
@@ -238,7 +274,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
-  0.0,-1.0, //  11
+ +1.0, 0.0, //  11
   0.0, 0.0, // 5y
   0.0, 0.0,
   0.0, 0.0,
@@ -248,7 +284,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
- -1.0, 0.0, //  11
+  0.0,+1.0, //  11
   0.0, 0.0, // 6x
   0.0, 0.0,
   0.0, 0.0,
@@ -297,7 +333,7 @@
   0.0, 0.0, 
   0.0, 0.0,
   0.0, 0.0,
-  0.0,+1.0, //  10
+ -1.0, 0.0, //  10
   0.0, 0.0,
   0.0, 0.0, // 8y
   0.0, 0.0,
@@ -307,7 +343,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
- +1.0, 0.0, // 10
+  0.0,-1.0, // 10
   0.0, 0.0,
   0.0, 0.0, // 9x
   0.0, 0.0,
@@ -318,7 +354,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
-  0.0,+1.0, // 11
+ -1.0, 0.0, // 11
   0.0, 0.0, // 9y
   0.0, 0.0,
   0.0, 0.0,
@@ -328,45 +364,45 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
- +1.0, 0.0, // 11
+  0.0,-1.0, // 11
   0.0, 0.0, // 10x
   0.0, 0.0,
-  0.0,-1.0, //  4
+ +1.0, 0.0, //  4
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
-  0.0,+1.0, //  8
+ -1.0, 0.0, //  8
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0, // 10y
   0.0, 0.0,
- -1.0, 0.0, //  4
+  0.0,+1.0, //  4
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
- +1.0, 0.0, //  8
+  0.0,-1.0, //  8
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0, // 11x
   0.0, 0.0,
   0.0, 0.0,
-  0.0,-1.0, //  5
+ +1.0, 0.0, //  5
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
-  0.0,+1.0, //  9
+ -1.0, 0.0, //  9
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0, // 11y
   0.0, 0.0,
   0.0, 0.0,
- -1.0, 0.0, //  5
+  0.0,+1.0, //  5
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
- +1.0, 0.0, // 9
+  0.0,-1.0, // 9
   0.0, 0.0,
   0.0, 0.0,
 };
@@ -389,6 +425,8 @@
   slipTimeFilename = const_cast<char*>(_slipTimeFilename);
   riseTimeFilename = const_cast<char*>(_riseTimeFilename);
   fieldT = const_cast<double*>(_fieldT);
+  fieldIncr = const_cast<double*>(_fieldIncr);
+  jacobianLumped = const_cast<double*>(_jacobianLumped);
   orientation = const_cast<double*>(_orientation);
   area = const_cast<double*>(_area);
   residual = const_cast<double*>(_residual);

Modified: short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.hh
===================================================================
--- short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.hh	2011-09-26 21:38:14 UTC (rev 18973)
+++ short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataQuad4.hh	2011-09-26 21:38:49 UTC (rev 18974)
@@ -63,7 +63,9 @@
   static const char* _matPropsFilename; ///< Name of db for bulk mat properties.
   //@}
 
-  static const double _fieldT[]; ///< Solution field at time t.
+  static const double _fieldT[]; ///< Field over domain at time t.
+  static const double _fieldIncr[]; ///< Solution increment field over domain at time t.
+  static const double _jacobianLumped[]; ///< Lumped Jacobian.
 
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.

Modified: short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.cc	2011-09-26 21:38:14 UTC (rev 18973)
+++ short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.cc	2011-09-26 21:38:49 UTC (rev 18974)
@@ -97,7 +97,34 @@
   7.1, 8.1, 9.1, // 12
 };
 
+const double pylith::faults::CohesiveKinSrcsDataTet4::_fieldIncr[] = {
+  3.1, 4.1, 5.1,
+  3.2, 4.2, 5.2, // 3
+  3.3, 4.3, 5.3, // 4
+  3.4, 4.4, 5.4, // 5
+  3.5, 4.5, 5.5,
+  3.6, 4.6, 5.6, // 7
+  3.8, 4.8, 5.8, // 8
+  3.0, 4.0, 5.0, // 9
+  3.7, 4.7, 5.7, // 10
+  3.9, 4.9, 5.9, // 11
+  3.1, 4.1, 5.1, // 12
+};
 
+const double pylith::faults::CohesiveKinSrcsDataTet4::_jacobianLumped[] = {
+  1.1, 1.1, 1.1,
+  1.2, 1.2, 1.2, // 3
+  1.3, 1.3, 1.3, // 4
+  1.4, 1.4, 1.4, // 5
+  1.5, 1.5, 1.5,
+  1.6, 1.6, 1.6, // 7
+  1.8, 1.8, 1.8, // 8
+  1.0, 1.0, 1.0, // 9
+  1.0/3.0, 1.0/3.0, 1.0/3.0, // 10
+  1.0/3.0, 1.0/3.0, 1.0/3.0, // 11
+  1.0/3.0, 1.0/3.0, 1.0/3.0, // 12
+};
+
 const double pylith::faults::CohesiveKinSrcsDataTet4::_orientation[] = {
   0.0, +1.0, 0.0,    0.0, 0.0, +1.0,    +1.0, 0.0, 0.0,
   0.0, +1.0, 0.0,    0.0, 0.0, +1.0,    +1.0, 0.0, 0.0,
@@ -135,30 +162,60 @@
 
 const double pylith::faults::CohesiveKinSrcsDataTet4::_residual[] = {
   0.0,  0.0,  0.0,
-  9.7,  7.7,  8.7, // 3
-  9.9,  7.9,  8.9, // 4
-  9.1,  7.1,  8.1, // 5
+  -(7.7+7.9+7.1)/9.0,  -(8.7+8.9+8.1)/9.0,  -(9.7+9.9+9.1)/9.0, // 3
+  -(7.7+7.9+7.1)/9.0,  -(8.7+8.9+8.1)/9.0,  -(9.7+9.9+9.1)/9.0, // 4
+  -(7.7+7.9+7.1)/9.0,  -(8.7+8.9+8.1)/9.0,  -(9.7+9.9+9.1)/9.0, // 5
   0.0,  0.0,  0.0,
- -9.7, -7.7, -8.7, // 7
- -9.9, -7.9, -8.9, // 4
- -9.1, -7.1, -8.1, // 5
- -0.4+1.82575588523+0.91680340354, -0.4+-0.55566483464+-0.27902712282, -0.4+0.07938069066+0.03986101755, // 10
- -0.5+1.69682900001+0.62551316338, -0.5+-0.56560966667+-0.20850438779, -0.5+0.14140241667+0.05212609695, // 11
-  0.4+1.51709826228+0.34903622931,  0.4+-0.54615537442+-0.12565304255,  0.4+0.18205179147+0.04188434752, // 12
+  +(7.7+7.9+7.1)/9.0,  +(8.7+8.9+8.1)/9.0,  +(9.7+9.9+9.1)/9.0, // 7
+  +(7.7+7.9+7.1)/9.0,  +(8.7+8.9+8.1)/9.0,  +(9.7+9.9+9.1)/9.0, // 8
+  +(7.7+7.9+7.1)/9.0,  +(8.7+8.9+8.1)/9.0,  +(9.7+9.9+9.1)/9.0, // 9
+  (7.6-7.2 + 7.8-7.3 + 7.0-7.4)/9.0 +
+  (-0.07938069066-0.03986101755 + -0.14140241667-0.05212609695 + -0.18205179147-0.04188434752)/9.0,
+  (8.6-8.2 + 8.8-8.3 + 9.0-9.4)/9.0 +
+  (-1.69682900001-0.62551316338 + -1.82575588523-0.91680340354 + -1.51709826228-0.34903622931)/9.0,
+  (9.6-9.2 + 9.8-9.3 + 9.0-9.4)/9.0 +
+  (0.55566483464+0.27902712282 + 0.56560966667+0.20850438779 + 0.54615537442+0.12565304255)/9.0, // 10
+  (7.6-7.2 + 7.8-7.3 + 7.0-7.4)/9.0 +
+  (-0.07938069066-0.03986101755 + -0.14140241667-0.05212609695 + -0.18205179147-0.04188434752)/9.0,
+  (8.6-8.2 + 8.8-8.3 + 9.0-9.4)/9.0 +
+  (-1.69682900001-0.62551316338 + -1.82575588523-0.91680340354 + -1.51709826228-0.34903622931)/9.0,
+  (9.6-9.2 + 9.8-9.3 + 9.0-9.4)/9.0 +
+  (0.55566483464+0.27902712282 + 0.56560966667+0.20850438779 + 0.54615537442+0.12565304255)/9.0, // 11
+  (7.6-7.2 + 7.8-7.3 + 7.0-7.4)/9.0 +
+  (-0.07938069066-0.03986101755 + -0.14140241667-0.05212609695 + -0.18205179147-0.04188434752)/9.0,
+  (8.6-8.2 + 8.8-8.3 + 9.0-9.4)/9.0 +
+  (-1.69682900001-0.62551316338 + -1.82575588523-0.91680340354 + -1.51709826228-0.34903622931)/9.0,
+  (9.6-9.2 + 9.8-9.3 + 9.0-9.4)/9.0 +
+  (0.55566483464+0.27902712282 + 0.56560966667+0.20850438779 + 0.54615537442+0.12565304255)/9.0, // 12
 };
 
 const double pylith::faults::CohesiveKinSrcsDataTet4::_residualIncr[] = {
   0.0,  0.0,  0.0,
-  9.7,  7.7,  8.7, // 3
-  9.9,  7.9,  8.9, // 4
-  9.1,  7.1,  8.1, // 5
+  -(7.7+7.9+7.1)/9.0,  -(8.7+8.9+8.1)/9.0,  -(9.7+9.9+9.1)/9.0, // 3
+  -(7.7+7.9+7.1)/9.0,  -(8.7+8.9+8.1)/9.0,  -(9.7+9.9+9.1)/9.0, // 4
+  -(7.7+7.9+7.1)/9.0,  -(8.7+8.9+8.1)/9.0,  -(9.7+9.9+9.1)/9.0, // 5
   0.0,  0.0,  0.0,
- -9.7, -7.7, -8.7, // 7
- -9.9, -7.9, -8.9, // 4
- -9.1, -7.1, -8.1, // 5
- -0.4+1.82575588523+0.91680340354, -0.4+-0.55566483464+-0.27902712282, -0.4+0.07938069066+0.03986101755, // 10
- -0.5+1.69682900001+0.62551316338, -0.5+-0.56560966667+-0.20850438779, -0.5+0.14140241667+0.05212609695, // 11
-  0.4+1.51709826228+0.34903622931,  0.4+-0.54615537442+-0.12565304255,  0.4+0.18205179147+0.04188434752, // 12
+  +(7.7+7.9+7.1)/9.0,  +(8.7+8.9+8.1)/9.0,  +(9.7+9.9+9.1)/9.0, // 7
+  +(7.7+7.9+7.1)/9.0,  +(8.7+8.9+8.1)/9.0,  +(9.7+9.9+9.1)/9.0, // 8
+  +(7.7+7.9+7.1)/9.0,  +(8.7+8.9+8.1)/9.0,  +(9.7+9.9+9.1)/9.0, // 9
+  (7.6-7.2 + 7.8-7.3 + 7.0-7.4)/9.0 +
+  (-0.07938069066-0.03986101755 + -0.14140241667-0.05212609695 + -0.18205179147-0.04188434752)/9.0,
+  (8.6-8.2 + 8.8-8.3 + 9.0-9.4)/9.0 +
+  (-1.69682900001-0.62551316338 + -1.82575588523-0.91680340354 + -1.51709826228-0.34903622931)/9.0,
+  (9.6-9.2 + 9.8-9.3 + 9.0-9.4)/9.0 +
+  (0.55566483464+0.27902712282 + 0.56560966667+0.20850438779 + 0.54615537442+0.12565304255)/9.0, // 10
+  (7.6-7.2 + 7.8-7.3 + 7.0-7.4)/9.0 +
+  (-0.07938069066-0.03986101755 + -0.14140241667-0.05212609695 + -0.18205179147-0.04188434752)/9.0,
+  (8.6-8.2 + 8.8-8.3 + 9.0-9.4)/9.0 +
+  (-1.69682900001-0.62551316338 + -1.82575588523-0.91680340354 + -1.51709826228-0.34903622931)/9.0,
+  (9.6-9.2 + 9.8-9.3 + 9.0-9.4)/9.0 +
+  (0.55566483464+0.27902712282 + 0.56560966667+0.20850438779 + 0.54615537442+0.12565304255)/9.0, // 11
+  (7.6-7.2 + 7.8-7.3 + 7.0-7.4)/9.0 +
+  (-0.07938069066-0.03986101755 + -0.14140241667-0.05212609695 + -0.18205179147-0.04188434752)/9.0,
+  (8.6-8.2 + 8.8-8.3 + 9.0-9.4)/9.0 +
+  (-1.69682900001-0.62551316338 + -1.82575588523-0.91680340354 + -1.51709826228-0.34903622931)/9.0,
+  (9.6-9.2 + 9.8-9.3 + 9.0-9.4)/9.0 +
+  (0.55566483464+0.27902712282 + 0.56560966667+0.20850438779 + 0.54615537442+0.12565304255)/9.0, // 12
 };
 
 const double pylith::faults::CohesiveKinSrcsDataTet4::_jacobian[] = {
@@ -203,7 +260,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 10
+ +1.0/3.0, 0.0, 0.0, // 10
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 3y
@@ -214,7 +271,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 10
+  0.0,+1.0/3.0, 0.0, // 10
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 3z
@@ -225,7 +282,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 10
+  0.0, 0.0,+1.0/3.0, // 10
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 4x
@@ -237,7 +294,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 11
+ +1.0/3.0, 0.0, 0.0, // 11
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 4y
   0.0, 0.0, 0.0,
@@ -248,7 +305,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 11
+  0.0,+1.0/3.0, 0.0, // 11
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 4z
   0.0, 0.0, 0.0,
@@ -259,7 +316,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 11
+  0.0, 0.0,+1.0/3.0, // 11
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 5x
   0.0, 0.0, 0.0,
@@ -271,7 +328,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 12
+ +1.0/3.0, 0.0, 0.0, // 12
   0.0, 0.0, 0.0, // 5y
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -282,7 +339,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 12
+  0.0,+1.0/3.0, 0.0, // 12
   0.0, 0.0, 0.0, // 5z
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -293,7 +350,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 12
+  0.0, 0.0,+1.0/3.0, // 12
   0.0, 0.0, 0.0, // 6x
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -335,7 +392,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 10
+ -1.0/3.0, 0.0, 0.0, // 10
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 7y
@@ -346,7 +403,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 10
+  0.0,-1.0/3.0, 0.0, // 10
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 7z
@@ -357,7 +414,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 10
+  0.0, 0.0,-1.0/3.0, // 10
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 8x
@@ -369,7 +426,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 11
+ -1.0/3.0, 0.0, 0.0, // 11
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 8y
   0.0, 0.0, 0.0,
@@ -380,7 +437,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 11
+  0.0,-1.0/3.0, 0.0, // 11
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 8z
   0.0, 0.0, 0.0,
@@ -391,7 +448,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 11
+  0.0, 0.0,-1.0/3.0, // 11
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 9x
   0.0, 0.0, 0.0,
@@ -403,7 +460,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 12
+ -1.0/3.0, 0.0, 0.0, // 12
   0.0, 0.0, 0.0, // 9y
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -414,7 +471,7 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 12
+  0.0,-1.0/3.0, 0.0, // 12
   0.0, 0.0, 0.0, // 9z
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -425,35 +482,35 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 12
+  0.0, 0.0,-1.0/3.0, // 12
   0.0, 0.0, 0.0, // 10x
-  0.0,-1.0, 0.0, // 3
+ +1.0/3.0, 0.0, 0.0, // 3
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 7
+ -1.0/3.0, 0.0, 0.0, // 7
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 10y
-  0.0, 0.0,-1.0, // 3
+  0.0,+1.0/3.0, 0.0, // 3
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 7
+  0.0,-1.0/3.0, 0.0, // 7
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 10z
- -1.0, 0.0, 0.0, // 3
+  0.0, 0.0,+1.0/3.0, // 3
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 7
+  0.0, 0.0,-1.0/3.0, // 7
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -461,33 +518,33 @@
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 11x
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 4
+ +1.0/3.0, 0.0, 0.0, // 4
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 8
+ -1.0/3.0, 0.0, 0.0, // 8
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 11y
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 4
+  0.0,+1.0/3.0, 0.0, // 4
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 8
+  0.0,-1.0/3.0, 0.0, // 8
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 11z
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 4
+  0.0, 0.0,+1.0/3.0, // 4
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 8
+  0.0, 0.0,-1.0/3.0, // 8
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -495,33 +552,33 @@
   0.0, 0.0, 0.0, // 12x
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,-1.0, 0.0, // 5
+ +1.0/3.0, 0.0, 0.0, // 5
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0,+1.0, 0.0, // 9
+ -1.0/3.0, 0.0, 0.0, // 9
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 12y
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,-1.0, // 5
+  0.0,+1.0/3.0, 0.0, // 5
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
-  0.0, 0.0,+1.0, // 9
+  0.0,-1.0/3.0, 0.0, // 9
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0, // 12z
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- -1.0, 0.0, 0.0, // 5
+  0.0, 0.0,+1.0/3.0, // 5
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
- +1.0, 0.0, 0.0, // 9
+  0.0, 0.0,-1.0/3.0, // 9
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
   0.0, 0.0, 0.0,
@@ -545,6 +602,8 @@
   slipTimeFilename = const_cast<char*>(_slipTimeFilename);
   riseTimeFilename = const_cast<char*>(_riseTimeFilename);
   fieldT = const_cast<double*>(_fieldT);
+  fieldIncr = const_cast<double*>(_fieldIncr);
+  jacobianLumped = const_cast<double*>(_jacobianLumped);
   orientation = const_cast<double*>(_orientation);
   area = const_cast<double*>(_area);
   residual = const_cast<double*>(_residual);

Modified: short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.hh
===================================================================
--- short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.hh	2011-09-26 21:38:14 UTC (rev 18973)
+++ short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTet4.hh	2011-09-26 21:38:49 UTC (rev 18974)
@@ -63,7 +63,9 @@
   static const char* _matPropsFilename; ///< Name of db for bulk mat properties.
   //@}
 
-  static const double _fieldT[]; ///< Solution field at time t.
+  static const double _fieldT[]; ///< Field over domain at time t.
+  static const double _fieldIncr[]; ///< Solution increment field over domain at time t.
+  static const double _jacobianLumped[]; ///< Lumped Jacobian.
 
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.

Modified: short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.cc
===================================================================
--- short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.cc	2011-09-26 21:38:14 UTC (rev 18973)
+++ short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.cc	2011-09-26 21:38:49 UTC (rev 18974)
@@ -120,7 +120,28 @@
   8.8, 9.8, // 9
 };
 
+const double pylith::faults::CohesiveKinSrcsDataTri3::_fieldIncr[] = {
+  3.1, 4.1,
+  3.2, 4.2, // 3
+  3.3, 4.3, // 4
+  3.4, 4.4,
+  3.5, 4.5, // 6
+  3.7, 4.7, // 7
+  3.6, 4.6, // 8
+  3.8, 4.8, // 9
+};
 
+const double pylith::faults::CohesiveKinSrcsDataTri3::_jacobianLumped[] = {
+  1.1, 1.1,
+  1.2, 1.2, // 3
+  1.3, 1.3, // 4
+  1.4, 1.4,
+  1.5, 1.5, // 6
+  1.7, 1.7, // 7
+  1.0, 1.0, // 8
+  1.0, 1.0, // 9
+};
+
 const double pylith::faults::CohesiveKinSrcsDataTri3::_orientation[] = {
   0.0, -1.0,  -1.0, 0.0,
   0.0, -1.0,  -1.0, 0.0
@@ -156,24 +177,36 @@
 
 const double pylith::faults::CohesiveKinSrcsDataTri3::_residual[] = {
   0.0,  0.0,
- -9.6, -8.6, // 3
- -9.8, -8.8, // 4
+ -8.7, -9.7, // 3
+ -8.7, -9.7, // 4
   0.0,  0.0,
- +9.6, +8.6, // 6
- +9.8, +8.8, // 7
-  0.3+1.89546413727+0.99414665414,  0.3+0.08241148423+0.04322376757, // 8
-  0.4+1.77538035254+0.68377062865,  0.4+0.14794836271+0.05698088572, // 9
+ +8.7, +9.7, // 6
+ +8.7, +9.7, // 7
+  0.5*(8.5-8.2 + 8.7-8.3) + 
+  0.5*(0.08241148423+0.04322376757+0.14794836271+0.05698088572),
+  0.5*(9.5-9.2 + 9.7-9.3) + 
+  0.5*(1.89546413727+0.99414665414+1.77538035254+0.68377062865), // 8
+  0.5*(8.5-8.2 + 8.7-8.3) + 
+  0.5*(0.08241148423+0.04322376757+0.14794836271+0.05698088572),
+  0.5*(9.5-9.2 + 9.7-9.3) + 
+  0.5*(1.89546413727+0.99414665414+1.77538035254+0.68377062865), // 9
 };
 
 const double pylith::faults::CohesiveKinSrcsDataTri3::_residualIncr[] = {
   0.0,  0.0,
- -9.6, -8.6, // 3
- -9.8, -8.8, // 4
+ -8.7, -9.7, // 3
+ -8.7, -9.7, // 4
   0.0,  0.0,
- +9.6, +8.6, // 6
- +9.8, +8.8, // 7
-  0.3+1.89546413727+0.99414665414,  0.3+0.08241148423+0.04322376757, // 8
-  0.4+1.77538035254+0.68377062865,  0.4+0.14794836271+0.05698088572, // 9
+ +8.7, +9.7, // 6
+ +8.7, +9.7, // 7
+  0.5*(8.5-8.2 + 8.7-8.3) + 
+  0.5*(0.08241148423+0.04322376757+0.14794836271+0.05698088572),
+  0.5*(9.5-9.2 + 9.7-9.3) + 
+  0.5*(1.89546413727+0.99414665414+1.77538035254+0.68377062865), // 8
+  0.5*(8.5-8.2 + 8.7-8.3) + 
+  0.5*(0.08241148423+0.04322376757+0.14794836271+0.05698088572),
+  0.5*(9.5-9.2 + 9.7-9.3) + 
+  0.5*(1.89546413727+0.99414665414+1.77538035254+0.68377062865), // 9
 };
 
 const double pylith::faults::CohesiveKinSrcsDataTri3::_jacobian[] = {
@@ -199,7 +232,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
-  0.0,+1.0, // 8
+ +1.0, 0.0, // 8
   0.0, 0.0,
   0.0, 0.0, // 3y
   0.0, 0.0,
@@ -207,7 +240,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
- +1.0, 0.0, //  8
+  0.0,+1.0, //  8
   0.0, 0.0,
   0.0, 0.0, // 4x
   0.0, 0.0,
@@ -216,7 +249,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
-  0.0,+1.0, //  9
+ +1.0, 0.0, //  9
   0.0, 0.0, // 4y
   0.0, 0.0,
   0.0, 0.0,
@@ -224,7 +257,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
- +1.0, 0.0, //  9
+  0.0,+1.0, //  9
   0.0, 0.0, // 5x
   0.0, 0.0,
   0.0, 0.0,
@@ -247,7 +280,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
-  0.0,-1.0, //  8
+ -1.0, 0.0, //  8
   0.0, 0.0,
   0.0, 0.0, // 6y
   0.0, 0.0,
@@ -255,7 +288,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
- -1.0, 0.0, //  8
+  0.0,-1.0, //  8
   0.0, 0.0,
   0.0, 0.0, // 7x
   0.0, 0.0,
@@ -264,7 +297,7 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
-  0.0,-1.0, //  9
+ -1.0, 0.0, //  9
   0.0, 0.0, // 7y
   0.0, 0.0,
   0.0, 0.0,
@@ -272,39 +305,39 @@
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
- -1.0, 0.0, //  9
+  0.0,-1.0, //  9
 
   0.0, 0.0, // 8x
-  0.0,+1.0, //  3
+ +1.0, 0.0, //  3
   0.0, 0.0,
   0.0, 0.0,
-  0.0,-1.0, //  6
+ -1.0, 0.0, //  6
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0, // 8y
- +1.0, 0.0, //  3
+  0.0,+1.0, //  3
   0.0, 0.0,
   0.0, 0.0,
- -1.0, 0.0, //  6
+  0.0,-1.0, //  6
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0,
 
   0.0, 0.0, // 9x
   0.0, 0.0,
-  0.0,+1.0, //  4
+ +1.0, 0.0, //  4
   0.0, 0.0,
   0.0, 0.0,
-  0.0,-1.0, //  7
+ -1.0, 0.0, //  7
   0.0, 0.0,
   0.0, 0.0,
   0.0, 0.0, // 9y
   0.0, 0.0,
- +1.0, 0.0, //  4
+  0.0,+1.0, //  4
   0.0, 0.0,
   0.0, 0.0,
- -1.0, 0.0, //  7
+  0.0,-1.0, //  7
   0.0, 0.0,
   0.0, 0.0,
 };
@@ -327,6 +360,8 @@
   slipTimeFilename = const_cast<char*>(_slipTimeFilename);
   riseTimeFilename = const_cast<char*>(_riseTimeFilename);
   fieldT = const_cast<double*>(_fieldT);
+  fieldIncr = const_cast<double*>(_fieldIncr);
+  jacobianLumped = const_cast<double*>(_jacobianLumped);
   orientation = const_cast<double*>(_orientation);
   area = const_cast<double*>(_area);
   residual = const_cast<double*>(_residual);

Modified: short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.hh
===================================================================
--- short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.hh	2011-09-26 21:38:14 UTC (rev 18973)
+++ short/3D/PyLith/branches/v1.6-revisedfault/unittests/libtests/faults/data/CohesiveKinSrcsDataTri3.hh	2011-09-26 21:38:49 UTC (rev 18974)
@@ -63,7 +63,9 @@
   static const char* _matPropsFilename; ///< Name of db for bulk mat properties.
   //@}
 
-  static const double _fieldT[]; ///< Solution field at time t.
+  static const double _fieldT[]; ///< Field over domain at time t.
+  static const double _fieldIncr[]; ///< Solution increment field over domain at time t.
+  static const double _jacobianLumped[]; ///< Lumped Jacobian.
 
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.



More information about the CIG-COMMITS mailing list