[cig-commits] r7008 - in short/3D/PyLith/trunk: . libsrc/feassemble unittests/libtests/feassemble unittests/libtests/feassemble/data

brad at geodynamics.org brad at geodynamics.org
Wed May 30 17:10:24 PDT 2007


Author: brad
Date: 2007-05-30 17:10:24 -0700 (Wed, 30 May 2007)
New Revision: 7008

Added:
   short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticIsotropic3D.py
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticPlaneStrain.py
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData1DQuadratic.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData1DQuadratic.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DLinear.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DLinear.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DQuadratic.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DQuadratic.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DLinear.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DLinear.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DQuadratic.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DQuadratic.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution1DQuadratic.py
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution2DLinear.py
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution2DQuadratic.py
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution3DLinear.py
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution3DQuadratic.py
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/elasticisotropic3d.spatialdb
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/elasticplanestrain.spatialdb
Removed:
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DLinear.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DLinear.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DQuadratic.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DQuadratic.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DLinear.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DLinear.hh
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DQuadratic.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DQuadratic.hh
Modified:
   short/3D/PyLith/trunk/TODO
   short/3D/PyLith/trunk/libsrc/feassemble/Elasticity.cc
   short/3D/PyLith/trunk/libsrc/feassemble/ElasticityExplicit.cc
   short/3D/PyLith/trunk/unittests/libtests/feassemble/Makefile.am
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicit.py
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorElasticity.py
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Makefile.am
   short/3D/PyLith/trunk/unittests/libtests/feassemble/data/generate.sh
Log:
Finished implementing C++ unit tests for explicit elasticity integrator. Need help from Matt to fix remaining bug in setting up sparse matrix for Jacobian. Fixed bug in computing stiffness matrix using Python (elasticity matrix uses mu no 2*mu).

Modified: short/3D/PyLith/trunk/TODO
===================================================================
--- short/3D/PyLith/trunk/TODO	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/TODO	2007-05-31 00:10:24 UTC (rev 7008)
@@ -2,23 +2,15 @@
 MAIN PRIORITIES (Brad)
 ======================================================================
 
-Fix TestDirichlet.setField unit test.
-
 1. Unit tests for Integrator stuff.
 
   a. Add in use of useElasticBehavior()
-    Would like to use boost::shared_ptr to prevent copies and
-    cloning of materials.
 
   b. Add unit test for IntegratorElasticity::calcTotalStrain
 
   c. ElasticityExplicit
     i. C++ unit tests
-      (1) timeStep()
-      (2) stableTimeStep()
-      (3) integrateResidual() [want tests for different cellDim and cell types]
-      (4) integrateJacobian() [want tests for different cellDim and cell types]
-      (5) updateState()
+      Need help from Matt to fix PETSc matrix update problem.
     ii. Python unit tests
       (1) setMesh()
       (2) initQuadrature()

Modified: short/3D/PyLith/trunk/libsrc/feassemble/Elasticity.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/feassemble/Elasticity.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/libsrc/feassemble/Elasticity.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -15,7 +15,6 @@
 #include "Elasticity.hh" // implementation of class methods
 
 #include <assert.h> // USES assert()
-#include <stdexcept> // USES std::logic_error
 
 // ----------------------------------------------------------------------
 void
@@ -27,14 +26,15 @@
 { // calcTotalStrain1D
   assert(0 != strain);
   
-  const int dimension = 1;
+  const int dim = 1;
   const int numQuadPts = strain->size();
 
-  assert(basisDeriv.size() == numQuadPts*numBasis*dimension);
-  assert(disp.size() == numBasis*dimension);
+  assert(basisDeriv.size() == numQuadPts*numBasis*dim);
+  assert(disp.size() == numBasis*dim);
 
   for (int iQuad=0; iQuad < numQuadPts; ++iQuad) {
     assert(1 == (*strain)[iQuad].size());
+    (*strain)[iQuad] *= 0.0;
     for (int iBasis=0; iBasis < numBasis; ++iBasis)
       (*strain)[iQuad][0] += 
 	basisDeriv[iQuad*numBasis+iBasis] * disp[iBasis];
@@ -51,22 +51,21 @@
 { // calcTotalStrain2D
   assert(0 != strain);
   
-  const int dimension = 2;
+  const int dim = 2;
   const int numQuadPts = strain->size();
 
-  assert(basisDeriv.size() == numQuadPts*numBasis*dimension);
-  assert(disp.size() == numBasis*dimension);
+  assert(basisDeriv.size() == numQuadPts*numBasis*dim);
+  assert(disp.size() == numBasis*dim);
 
   for (int iQuad=0; iQuad < numQuadPts; ++iQuad) {
     assert(3 == (*strain)[iQuad].size());
-    for (int iBasis=0, iQ=iQuad*numBasis; iBasis < numBasis; ++iBasis) {
-      (*strain)[iQuad][0] += 
-	basisDeriv[iQ+iBasis  ] * disp[iBasis  ];
-      (*strain)[iQuad][1] += 
-	basisDeriv[iQ+iBasis+1] * disp[iBasis+1];
+    (*strain)[iQuad] *= 0.0;
+    for (int iBasis=0, iQ=iQuad*numBasis*dim; iBasis < numBasis; ++iBasis) {
+      (*strain)[iQuad][0] += basisDeriv[iQ+iBasis*dim  ] * disp[iBasis*dim  ];
+      (*strain)[iQuad][1] += basisDeriv[iQ+iBasis*dim+1] * disp[iBasis*dim+1];
       (*strain)[iQuad][2] += 
-	0.5 * (basisDeriv[iQ+iBasis+1] * disp[iBasis  ] +
-	       basisDeriv[iQ+iBasis  ] * disp[iBasis+1]);
+	0.5 * (basisDeriv[iQ+iBasis*dim+1] * disp[iBasis*dim  ] +
+	       basisDeriv[iQ+iBasis*dim  ] * disp[iBasis*dim+1]);
     } // for
   } // for
 } // calcTotalStrain2D
@@ -81,30 +80,28 @@
 { // calcTotalStrain3D
   assert(0 != strain);
 
-  const int dimension = 3;
+  const int dim = 3;
   const int numQuadPts = strain->size();
 
-  assert(basisDeriv.size() == numQuadPts*numBasis*dimension);
-  assert(disp.size() == numBasis*dimension);
+  assert(basisDeriv.size() == numQuadPts*numBasis*dim);
+  assert(disp.size() == numBasis*dim);
 
   for (int iQuad=0; iQuad < numQuadPts; ++iQuad) {
     assert(6 == (*strain)[iQuad].size());
-    for (int iBasis=0, iQ=iQuad*numBasis; iBasis < numBasis; ++iBasis) {
-      (*strain)[iQuad][0] += 
-	basisDeriv[iQ+iBasis  ] * disp[iBasis  ];
-      (*strain)[iQuad][1] += 
-	basisDeriv[iQ+iBasis+1] * disp[iBasis+1];
-      (*strain)[iQuad][2] += 
-	basisDeriv[iQ+iBasis+2] * disp[iBasis+2];
+    (*strain)[iQuad] *= 0.0;
+    for (int iBasis=0, iQ=iQuad*numBasis*dim; iBasis < numBasis; ++iBasis) {
+      (*strain)[iQuad][0] += basisDeriv[iQ+iBasis*dim  ] * disp[iBasis*dim  ];
+      (*strain)[iQuad][1] += basisDeriv[iQ+iBasis*dim+1] * disp[iBasis*dim+1];
+      (*strain)[iQuad][2] += basisDeriv[iQ+iBasis*dim+2] * disp[iBasis*dim+2];
       (*strain)[iQuad][3] += 
-	0.5 * (basisDeriv[iQ+iBasis+1] * disp[iBasis  ] +
-	       basisDeriv[iQ+iBasis  ] * disp[iBasis+1]);
+	0.5 * (basisDeriv[iQ+iBasis*dim+1] * disp[iBasis*dim  ] +
+	       basisDeriv[iQ+iBasis*dim  ] * disp[iBasis*dim+1]);
       (*strain)[iQuad][4] += 
-	0.5 * (basisDeriv[iQ+iBasis+2] * disp[iBasis+1] +
-	       basisDeriv[iQ+iBasis+1] * disp[iBasis+2]);
+	0.5 * (basisDeriv[iQ+iBasis*dim+2] * disp[iBasis*dim+1] +
+	       basisDeriv[iQ+iBasis*dim+1] * disp[iBasis*dim+2]);
       (*strain)[iQuad][5] += 
-	0.5 * (basisDeriv[iQ+iBasis+2] * disp[iBasis  ] +
-	       basisDeriv[iQ+iBasis  ] * disp[iBasis+2]);
+	0.5 * (basisDeriv[iQ+iBasis*dim+2] * disp[iBasis*dim  ] +
+	       basisDeriv[iQ+iBasis*dim  ] * disp[iBasis*dim+2]);
     } // for
   } // for
 } // calcTotalStrain3D

Modified: short/3D/PyLith/trunk/libsrc/feassemble/ElasticityExplicit.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/feassemble/ElasticityExplicit.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/libsrc/feassemble/ElasticityExplicit.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -197,7 +197,7 @@
 	const double s11 = stress[iQuad][0];
 	for (int iBasis=0; iBasis < numBasis; ++iBasis) {
 	  const int iBlock = iBasis * spaceDim;
-	  const double N1 = wt*basisDeriv[iQuad*numBasis+iBasis*cellDim  ];
+	  const double N1 = wt*basisDeriv[iQuad*numBasis+iBasis  ];
 	  _cellVector[iBlock  ] -= N1*s11;
 	} // for
       } // for
@@ -218,12 +218,13 @@
 	const double s11 = stress[iQuad][0];
 	const double s22 = stress[iQuad][1];
 	const double s12 = stress[iQuad][2];
-	for (int iBasis=0, iQ=iQuad*numBasis; iBasis < numBasis; ++iBasis) {
-	  const int iBlock = iBasis * spaceDim;
+	for (int iBasis=0, iQ=iQuad*numBasis*cellDim;
+	     iBasis < numBasis;
+	     ++iBasis) {
 	  const double N1 = wt*basisDeriv[iQ+iBasis*cellDim  ];
 	  const double N2 = wt*basisDeriv[iQ+iBasis*cellDim+1];
-	  _cellVector[iBlock  ] -= N1*s11 + N2*s12;
-	  _cellVector[iBlock+1] -= N1*s12 + N2*s22;
+	  _cellVector[iBasis*spaceDim  ] -= N1*s11 + N2*s12;
+	  _cellVector[iBasis*spaceDim+1] -= N1*s12 + N2*s22;
 	} // for
       } // for
       err = PetscLogFlops(numQuadPts*(1+numBasis*(8+2+9)));
@@ -247,14 +248,15 @@
 	const double s23 = stress[iQuad][4];
 	const double s13 = stress[iQuad][5];
 
-	for (int iBasis=0, iQ=iQuad*numBasis; iBasis < numBasis; ++iBasis) {
-	  const int iBlock = iBasis * spaceDim;
+	for (int iBasis=0, iQ=iQuad*numBasis*cellDim;
+	     iBasis < numBasis;
+	     ++iBasis) {
 	  const double N1 = wt*basisDeriv[iQ+iBasis*cellDim+0];
 	  const double N2 = wt*basisDeriv[iQ+iBasis*cellDim+1];
 	  const double N3 = wt*basisDeriv[iQ+iBasis*cellDim+2];
-	  _cellVector[iBlock  ] -= N1*s11 + N2*s12 + N3*s13;
-	  _cellVector[iBlock+1] -= N1*s12 + N2*s22 + N3*s23;
-	  _cellVector[iBlock+2] -= N1*s13 + N2*s23 + N3*s33;
+	  _cellVector[iBasis*spaceDim  ] -= N1*s11 + N2*s12 + N3*s13;
+	  _cellVector[iBasis*spaceDim+1] -= N1*s12 + N2*s22 + N3*s23;
+	  _cellVector[iBasis*spaceDim+2] -= N1*s13 + N2*s23 + N3*s33;
 	} // for
       } // for
       err = PetscLogFlops(numQuadPts*(1+numBasis*(3+12)));
@@ -338,8 +340,8 @@
         for (int jBasis=0; jBasis < numBasis; ++jBasis) {
           const double valIJ = valI * basis[iQ+jBasis];
           for (int iDim=0; iDim < spaceDim; ++iDim) {
-            const int iBlock = (iBasis * spaceDim + iDim) * (spaceDim * numBasis);
-            const int jBlock = (jBasis * spaceDim + iDim);
+            const int iBlock = (iBasis*spaceDim + iDim) * (spaceDim*numBasis);
+            const int jBlock = (jBasis*spaceDim + iDim);
             _cellMatrix[iBlock+jBlock] += valIJ;
           } // for
         } // for
@@ -353,6 +355,7 @@
     // Assemble cell contribution into PETSc Matrix
     const ALE::Obj<Mesh::order_type>& globalOrder = 
       mesh->getFactory()->getGlobalOrder(mesh, "default", dispT);
+    assert(!globalOrder.isNull());
 
     err = updateOperator(*jacobian, mesh, dispT, globalOrder,
 			 *c_iter, _cellMatrix, ADD_VALUES);

Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/Makefile.am
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/Makefile.am	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/Makefile.am	2007-05-31 00:10:24 UTC (rev 7008)
@@ -23,6 +23,11 @@
 testfeassemble_SOURCES = \
 	TestElasticityExplicit.cc \
 	TestElasticityExplicit1DLinear.cc \
+	TestElasticityExplicit1DQuadratic.cc \
+	TestElasticityExplicit2DLinear.cc \
+	TestElasticityExplicit2DQuadratic.cc \
+	TestElasticityExplicit3DLinear.cc \
+	TestElasticityExplicit3DQuadratic.cc \
 	TestIntegrator.cc \
 	TestQuadrature.cc \
 	TestQuadrature1D.cc \
@@ -35,6 +40,11 @@
 noinst_HEADERS = \
 	TestElasticityExplicit.hh \
 	TestElasticityExplicit1DLinear.hh \
+	TestElasticityExplicit1DQuadratic.hh \
+	TestElasticityExplicit2DLinear.hh \
+	TestElasticityExplicit2DQuadratic.hh \
+	TestElasticityExplicit3DLinear.hh \
+	TestElasticityExplicit3DQuadratic.hh \
 	TestIntegrator.hh \
 	TestQuadrature.hh \
 	TestQuadrature1D.hh \
@@ -47,6 +57,11 @@
 testfeassemble_SOURCES += \
 	data/IntegratorData.cc \
 	data/ElasticityExplicitData1DLinear.cc \
+	data/ElasticityExplicitData1DQuadratic.cc \
+	data/ElasticityExplicitData2DLinear.cc \
+	data/ElasticityExplicitData2DQuadratic.cc \
+	data/ElasticityExplicitData3DLinear.cc \
+	data/ElasticityExplicitData3DQuadratic.cc \
 	data/QuadratureData.cc \
 	data/QuadratureData1DLinear.cc \
 	data/QuadratureData1DQuadratic.cc \
@@ -67,6 +82,11 @@
 noinst_HEADERS += \
 	data/IntegratorData.hh \
 	data/ElasticityExplicitData1DLinear.hh \
+	data/ElasticityExplicitData1DQuadratic.hh \
+	data/ElasticityExplicitData2DLinear.hh \
+	data/ElasticityExplicitData2DQuadratic.hh \
+	data/ElasticityExplicitData3DLinear.hh \
+	data/ElasticityExplicitData3DQuadratic.hh \
 	data/QuadratureData.hh \
 	data/QuadratureData1DLinear.hh \
 	data/QuadratureData1DQuadratic.hh \

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,50 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestElasticityExplicit1DQuadratic.hh" // Implementation of class methods
+
+#include "data/ElasticityExplicitData1DQuadratic.hh"
+
+#include "pylith/feassemble/Quadrature1D.hh" // USES Quadrature1D
+#include "pylith/materials/ElasticStrain1D.hh" // USES ElasticStrain1D
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestElasticityExplicit1DQuadratic );
+
+// ----------------------------------------------------------------------
+// Setup testing data.
+void
+pylith::feassemble::TestElasticityExplicit1DQuadratic::setUp(void)
+{ // setUp
+  _data = new ElasticityExplicitData1DQuadratic();
+  _quadrature = new Quadrature1D();
+  _material = new materials::ElasticStrain1D;
+
+  CPPUNIT_ASSERT(0 != _data);
+  CPPUNIT_ASSERT_EQUAL(std::string("ElasticStrain1D"),
+		       std::string(_data->matType));
+} // setUp
+
+// ----------------------------------------------------------------------
+// Tear down testing data.
+void
+pylith::feassemble::TestElasticityExplicit1DQuadratic::tearDown(void)
+{ // tearDown
+  delete _data;
+  delete _quadrature;
+  delete _material;
+} // tearDown
+
+
+// End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,61 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.hh
+ *
+ * @brief C++ TestElasticityExplicit object
+ *
+ * C++ unit testing for ElasticityExplicit with 1-D quadratic cells.
+ */
+
+#if !defined(pylith_feassemble_testelasticityexplicit1dquadratic_hh)
+#define pylith_feassemble_testelasticityexplicit1dquadratic_hh
+
+#include "TestElasticityExplicit.hh" // ISA TestElasticityExplicit
+
+/// Namespace for pylith package
+namespace pylith {
+  namespace feassemble {
+    class TestElasticityExplicit1DQuadratic;
+  } // feassemble
+} // pylith
+
+/// C++ unit testing for ElasticityExplicit
+class pylith::feassemble::TestElasticityExplicit1DQuadratic :
+  public TestElasticityExplicit
+{ // class TestElasticityExplicit1DQuadratic
+
+  // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+  CPPUNIT_TEST_SUITE( TestElasticityExplicit1DQuadratic );
+
+  CPPUNIT_TEST( testUpdateState );
+  CPPUNIT_TEST( testIntegrateResidual );
+  CPPUNIT_TEST( testIntegrateJacobian );
+
+  CPPUNIT_TEST_SUITE_END();
+
+  // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+  /// Setup testing data.
+  void setUp(void);
+
+  /// Tear down testing data.
+  void tearDown(void);
+
+}; // class TestElasticityExplicit1DQuadratic
+
+#endif // pylith_feassemble_testelasticityexplicit1dquadratic_hh
+
+
+// End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,50 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestElasticityExplicit2DLinear.hh" // Implementation of class methods
+
+#include "data/ElasticityExplicitData2DLinear.hh"
+
+#include "pylith/feassemble/Quadrature2D.hh" // USES Quadrature2D
+#include "pylith/materials/ElasticPlaneStrain.hh" // USES ElasticPlaneStrain
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestElasticityExplicit2DLinear );
+
+// ----------------------------------------------------------------------
+// Setup testing data.
+void
+pylith::feassemble::TestElasticityExplicit2DLinear::setUp(void)
+{ // setUp
+  _data = new ElasticityExplicitData2DLinear();
+  _quadrature = new Quadrature2D();
+  _material = new materials::ElasticPlaneStrain;
+
+  CPPUNIT_ASSERT(0 != _data);
+  CPPUNIT_ASSERT_EQUAL(std::string("ElasticPlaneStrain"),
+		       std::string(_data->matType));
+} // setUp
+
+// ----------------------------------------------------------------------
+// Tear down testing data.
+void
+pylith::feassemble::TestElasticityExplicit2DLinear::tearDown(void)
+{ // tearDown
+  delete _data;
+  delete _quadrature;
+  delete _material;
+} // tearDown
+
+
+// End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,61 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestElasticityExplicit2DLinear.hh
+ *
+ * @brief C++ TestElasticityExplicit object
+ *
+ * C++ unit testing for ElasticityExplicit with 1-D linear cells.
+ */
+
+#if !defined(pylith_feassemble_testelasticityexplicit2dlinear_hh)
+#define pylith_feassemble_testelasticityexplicit2dlinear_hh
+
+#include "TestElasticityExplicit.hh" // ISA TestElasticityExplicit
+
+/// Namespace for pylith package
+namespace pylith {
+  namespace feassemble {
+    class TestElasticityExplicit2DLinear;
+  } // feassemble
+} // pylith
+
+/// C++ unit testing for ElasticityExplicit
+class pylith::feassemble::TestElasticityExplicit2DLinear :
+  public TestElasticityExplicit
+{ // class TestElasticityExplicit2DLinear
+
+  // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+  CPPUNIT_TEST_SUITE( TestElasticityExplicit2DLinear );
+
+  CPPUNIT_TEST( testUpdateState );
+  CPPUNIT_TEST( testIntegrateResidual );
+  CPPUNIT_TEST( testIntegrateJacobian );
+
+  CPPUNIT_TEST_SUITE_END();
+
+  // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+  /// Setup testing data.
+  void setUp(void);
+
+  /// Tear down testing data.
+  void tearDown(void);
+
+}; // class TestElasticityExplicit2DLinear
+
+#endif // pylith_feassemble_testelasticityexplicit2dlinear_hh
+
+
+// End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,50 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestElasticityExplicit2DQuadratic.hh" // Implementation of class methods
+
+#include "data/ElasticityExplicitData2DQuadratic.hh"
+
+#include "pylith/feassemble/Quadrature2D.hh" // USES Quadrature2D
+#include "pylith/materials/ElasticPlaneStrain.hh" // USES ElasticPlaneStrain
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestElasticityExplicit2DQuadratic );
+
+// ----------------------------------------------------------------------
+// Setup testing data.
+void
+pylith::feassemble::TestElasticityExplicit2DQuadratic::setUp(void)
+{ // setUp
+  _data = new ElasticityExplicitData2DQuadratic();
+  _quadrature = new Quadrature2D();
+  _material = new materials::ElasticPlaneStrain;
+
+  CPPUNIT_ASSERT(0 != _data);
+  CPPUNIT_ASSERT_EQUAL(std::string("ElasticPlaneStrain"),
+		       std::string(_data->matType));
+} // setUp
+
+// ----------------------------------------------------------------------
+// Tear down testing data.
+void
+pylith::feassemble::TestElasticityExplicit2DQuadratic::tearDown(void)
+{ // tearDown
+  delete _data;
+  delete _quadrature;
+  delete _material;
+} // tearDown
+
+
+// End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,61 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.hh
+ *
+ * @brief C++ TestElasticityExplicit object
+ *
+ * C++ unit testing for ElasticityExplicit with 2-D quadratic cells.
+ */
+
+#if !defined(pylith_feassemble_testelasticityexplicit2dquadratic_hh)
+#define pylith_feassemble_testelasticityexplicit2dquadratic_hh
+
+#include "TestElasticityExplicit.hh" // ISA TestElasticityExplicit
+
+/// Namespace for pylith package
+namespace pylith {
+  namespace feassemble {
+    class TestElasticityExplicit2DQuadratic;
+  } // feassemble
+} // pylith
+
+/// C++ unit testing for ElasticityExplicit
+class pylith::feassemble::TestElasticityExplicit2DQuadratic :
+  public TestElasticityExplicit
+{ // class TestElasticityExplicit2DQuadratic
+
+  // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+  CPPUNIT_TEST_SUITE( TestElasticityExplicit2DQuadratic );
+
+  CPPUNIT_TEST( testUpdateState );
+  CPPUNIT_TEST( testIntegrateResidual );
+  CPPUNIT_TEST( testIntegrateJacobian );
+
+  CPPUNIT_TEST_SUITE_END();
+
+  // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+  /// Setup testing data.
+  void setUp(void);
+
+  /// Tear down testing data.
+  void tearDown(void);
+
+}; // class TestElasticityExplicit2DQuadratic
+
+#endif // pylith_feassemble_testelasticityexplicit2dquadratic_hh
+
+
+// End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,50 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestElasticityExplicit3DLinear.hh" // Implementation of class methods
+
+#include "data/ElasticityExplicitData3DLinear.hh"
+
+#include "pylith/feassemble/Quadrature3D.hh" // USES Quadrature3D
+#include "pylith/materials/ElasticIsotropic3D.hh" // USES ElasticIsotropic3D
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestElasticityExplicit3DLinear );
+
+// ----------------------------------------------------------------------
+// Setup testing data.
+void
+pylith::feassemble::TestElasticityExplicit3DLinear::setUp(void)
+{ // setUp
+  _data = new ElasticityExplicitData3DLinear();
+  _quadrature = new Quadrature3D();
+  _material = new materials::ElasticIsotropic3D;
+
+  CPPUNIT_ASSERT(0 != _data);
+  CPPUNIT_ASSERT_EQUAL(std::string("ElasticIsotropic3D"),
+		       std::string(_data->matType));
+} // setUp
+
+// ----------------------------------------------------------------------
+// Tear down testing data.
+void
+pylith::feassemble::TestElasticityExplicit3DLinear::tearDown(void)
+{ // tearDown
+  delete _data;
+  delete _quadrature;
+  delete _material;
+} // tearDown
+
+
+// End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,61 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestElasticityExplicit3DLinear.hh
+ *
+ * @brief C++ TestElasticityExplicit object
+ *
+ * C++ unit testing for ElasticityExplicit with 1-D linear cells.
+ */
+
+#if !defined(pylith_feassemble_testelasticityexplicit3dlinear_hh)
+#define pylith_feassemble_testelasticityexplicit3dlinear_hh
+
+#include "TestElasticityExplicit.hh" // ISA TestElasticityExplicit
+
+/// Namespace for pylith package
+namespace pylith {
+  namespace feassemble {
+    class TestElasticityExplicit3DLinear;
+  } // feassemble
+} // pylith
+
+/// C++ unit testing for ElasticityExplicit
+class pylith::feassemble::TestElasticityExplicit3DLinear :
+  public TestElasticityExplicit
+{ // class TestElasticityExplicit3DLinear
+
+  // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+  CPPUNIT_TEST_SUITE( TestElasticityExplicit3DLinear );
+
+  CPPUNIT_TEST( testUpdateState );
+  CPPUNIT_TEST( testIntegrateResidual );
+  CPPUNIT_TEST( testIntegrateJacobian );
+
+  CPPUNIT_TEST_SUITE_END();
+
+  // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+  /// Setup testing data.
+  void setUp(void);
+
+  /// Tear down testing data.
+  void tearDown(void);
+
+}; // class TestElasticityExplicit3DLinear
+
+#endif // pylith_feassemble_testelasticityexplicit3dlinear_hh
+
+
+// End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,50 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestElasticityExplicit3DQuadratic.hh" // Implementation of class methods
+
+#include "data/ElasticityExplicitData3DQuadratic.hh"
+
+#include "pylith/feassemble/Quadrature3D.hh" // USES Quadrature3D
+#include "pylith/materials/ElasticIsotropic3D.hh" // USES ElasticIsotropic3D
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestElasticityExplicit3DQuadratic );
+
+// ----------------------------------------------------------------------
+// Setup testing data.
+void
+pylith::feassemble::TestElasticityExplicit3DQuadratic::setUp(void)
+{ // setUp
+  _data = new ElasticityExplicitData3DQuadratic();
+  _quadrature = new Quadrature3D();
+  _material = new materials::ElasticIsotropic3D;
+
+  CPPUNIT_ASSERT(0 != _data);
+  CPPUNIT_ASSERT_EQUAL(std::string("ElasticIsotropic3D"),
+		       std::string(_data->matType));
+} // setUp
+
+// ----------------------------------------------------------------------
+// Tear down testing data.
+void
+pylith::feassemble::TestElasticityExplicit3DQuadratic::tearDown(void)
+{ // tearDown
+  delete _data;
+  delete _quadrature;
+  delete _material;
+} // tearDown
+
+
+// End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,61 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.hh
+ *
+ * @brief C++ TestElasticityExplicit object
+ *
+ * C++ unit testing for ElasticityExplicit with 3-D quadratic cells.
+ */
+
+#if !defined(pylith_feassemble_testelasticityexplicit3dquadratic_hh)
+#define pylith_feassemble_testelasticityexplicit3dquadratic_hh
+
+#include "TestElasticityExplicit.hh" // ISA TestElasticityExplicit
+
+/// Namespace for pylith package
+namespace pylith {
+  namespace feassemble {
+    class TestElasticityExplicit3DQuadratic;
+  } // feassemble
+} // pylith
+
+/// C++ unit testing for ElasticityExplicit
+class pylith::feassemble::TestElasticityExplicit3DQuadratic :
+  public TestElasticityExplicit
+{ // class TestElasticityExplicit3DQuadratic
+
+  // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+  CPPUNIT_TEST_SUITE( TestElasticityExplicit3DQuadratic );
+
+  CPPUNIT_TEST( testUpdateState );
+  CPPUNIT_TEST( testIntegrateResidual );
+  CPPUNIT_TEST( testIntegrateJacobian );
+
+  CPPUNIT_TEST_SUITE_END();
+
+  // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+  /// Setup testing data.
+  void setUp(void);
+
+  /// Tear down testing data.
+  void tearDown(void);
+
+}; // class TestElasticityExplicit3DQuadratic
+
+#endif // pylith_feassemble_testelasticityexplicit3dquadratic_hh
+
+
+// End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticIsotropic3D.py
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticIsotropic3D.py	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticIsotropic3D.py	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,56 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+#                           Brad T. Aagaard
+#                        U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file unittests/libtests/feassemble/data/ElasticIsotropic3D.py
+
+## @brief Python container holding material information for elastic
+## isotropic 3-D material used in testing finite-element C++ routines.
+
+from pyre.components.Component import Component
+
+# ----------------------------------------------------------------------
+
+# ElasticIsotropic3D class
+class ElasticIsotropic3D(Component):
+  """
+  Python container holding material information for elastic isotropic 3-D
+  material used in testing finite-element C++ routines.
+  """
+  
+  # PUBLIC METHODS /////////////////////////////////////////////////////
+  
+  def __init__(self, name="elasticisotropic3d"):
+    """
+    Constructor.
+    """
+    Component.__init__(self, name, facility="material")
+    
+    self.dimension = 3
+    self.type = "ElasticIsotropic3D"
+    self.dbFilename = "data/elasticisotropic3d.spatialdb"
+    self.id = 0
+    self.label = "elastic isotropic 3-D"
+    self.density = 2500.0
+    self.lameMu = 3.0e+10
+    self.lameLambda = self.lameMu
+    return
+  
+
+# FACTORIES ////////////////////////////////////////////////////////////
+def material():
+  """
+  Factory for ElasticIsotropic3D.
+  """
+  return ElasticIsotropic3D()
+
+
+# End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticPlaneStrain.py
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticPlaneStrain.py	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticPlaneStrain.py	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,56 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+#                           Brad T. Aagaard
+#                        U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file unittests/libtests/feassemble/data/ElasticPlaneStrain.py
+##
+## @brief Python container holding material information for elastic
+## strain 2-D material used in testing finite-element C++ routines.
+
+from pyre.components.Component import Component
+
+# ----------------------------------------------------------------------
+
+# ElasticPlaneStrain class
+class ElasticPlaneStrain(Component):
+  """
+  Python container holding material information for elastic strain 2-D
+  material used in testing finite-element C++ routines.
+  """
+  
+  # PUBLIC METHODS /////////////////////////////////////////////////////
+  
+  def __init__(self, name="elasticplanestrain"):
+    """
+    Constructor.
+    """
+    Component.__init__(self, name, facility="material")
+    
+    self.dimension = 2
+    self.type = "ElasticPlaneStrain"
+    self.dbFilename = "data/elasticplanestrain.spatialdb"
+    self.id = 0
+    self.label = "elastic strain 2-D"
+    self.density = 2500.0
+    self.lameMu = 3.0e+10
+    self.lameLambda = self.lameMu
+    return
+  
+
+# FACTORIES ////////////////////////////////////////////////////////////
+def material():
+  """
+  Factory for ElasticPlaneStrain.
+  """
+  return ElasticPlaneStrain()
+
+
+# End of file 

Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicit.py
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicit.py	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicit.py	2007-05-31 00:10:24 UTC (rev 7008)
@@ -47,11 +47,8 @@
     {r} = (1/dt**2)[M](-{u(t+dt)} + 2 {u(t)} - {u(t-dt)}) -
           [K]{u(t)}
     """
-    K = self._calculateStiffnessMat()
-    print K
-    
+    K = self._calculateStiffnessMat()    
     M = self._calculateMassMat()
-    print M
 
     dispResult = -self.fieldTpdt + 2.0*self.fieldT - self.fieldTmdt
     self.valsResidual = 1.0/self.dt**2 * numpy.dot(M, dispResult) - \

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData1DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData1DQuadratic.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData1DQuadratic.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,143 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application elasticityexplicit.
+
+#include "ElasticityExplicitData1DQuadratic.hh"
+
+const int pylith::feassemble::ElasticityExplicitData1DQuadratic::_spaceDim = 1;
+
+const int pylith::feassemble::ElasticityExplicitData1DQuadratic::_cellDim = 1;
+
+const int pylith::feassemble::ElasticityExplicitData1DQuadratic::_numVertices = 3;
+
+const int pylith::feassemble::ElasticityExplicitData1DQuadratic::_numCells = 1;
+
+const int pylith::feassemble::ElasticityExplicitData1DQuadratic::_numBasis = 3;
+
+const int pylith::feassemble::ElasticityExplicitData1DQuadratic::_numQuadPts = 2;
+
+const char* pylith::feassemble::ElasticityExplicitData1DQuadratic::_matType = "ElasticStrain1D";
+
+const char* pylith::feassemble::ElasticityExplicitData1DQuadratic::_matDBFilename = "data/elasticstrain1d.spatialdb";
+
+const int pylith::feassemble::ElasticityExplicitData1DQuadratic::_matId = 0;
+
+const char* pylith::feassemble::ElasticityExplicitData1DQuadratic::_matLabel = "elastic strain 1-D";
+
+const double pylith::feassemble::ElasticityExplicitData1DQuadratic::_dt =   1.00000000e-02;
+
+const double pylith::feassemble::ElasticityExplicitData1DQuadratic::_vertices[] = {
+ -2.50000000e-01,
+  8.75000000e-01,
+  2.00000000e+00,
+};
+
+const int pylith::feassemble::ElasticityExplicitData1DQuadratic::_cells[] = {
+0,1,2,
+};
+
+const double pylith::feassemble::ElasticityExplicitData1DQuadratic::_quadPts[] = {
+ -5.77350269e-01,
+  5.77350269e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData1DQuadratic::_quadWts[] = {
+  1.00000000e+00,  1.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityExplicitData1DQuadratic::_basis[] = {
+  4.55341801e-01,
+  6.66666667e-01,
+ -1.22008468e-01,
+ -1.22008468e-01,
+  6.66666667e-01,
+  4.55341801e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData1DQuadratic::_basisDeriv[] = {
+ -1.07735027e+00,
+  1.15470054e+00,
+ -7.73502692e-02,
+  7.73502692e-02,
+ -1.15470054e+00,
+  1.07735027e+00,
+};
+
+const double pylith::feassemble::ElasticityExplicitData1DQuadratic::_fieldTpdt[] = {
+  1.20000000e+00,
+  0.00000000e+00,
+  1.70000000e+00,
+};
+
+const double pylith::feassemble::ElasticityExplicitData1DQuadratic::_fieldT[] = {
+  1.10000000e+00,
+  1.00000000e-01,
+  1.50000000e+00,
+};
+
+const double pylith::feassemble::ElasticityExplicitData1DQuadratic::_fieldTmdt[] = {
+  1.00000000e+00,
+  1.00000000e-01,
+  1.30000000e+00,
+};
+
+const double pylith::feassemble::ElasticityExplicitData1DQuadratic::_valsResidual[] = {
+ -1.41749375e+11,
+  3.24002500e+11,
+ -1.82249375e+11,
+};
+
+const double pylith::feassemble::ElasticityExplicitData1DQuadratic::_valsJacobian[] = {
+  6.25000000e+06,
+  6.25000000e+06,
+ -3.12500000e+06,
+  6.25000000e+06,
+  2.50000000e+07,
+  6.25000000e+06,
+ -3.12500000e+06,
+  6.25000000e+06,
+  6.25000000e+06,
+};
+
+pylith::feassemble::ElasticityExplicitData1DQuadratic::ElasticityExplicitData1DQuadratic(void)
+{ // constructor
+  spaceDim = _spaceDim;
+  cellDim = _cellDim;
+  numVertices = _numVertices;
+  numCells = _numCells;
+  numBasis = _numBasis;
+  numQuadPts = _numQuadPts;
+  matType = const_cast<char*>(_matType);
+  matDBFilename = const_cast<char*>(_matDBFilename);
+  matId = _matId;
+  matLabel = const_cast<char*>(_matLabel);
+  dt = _dt;
+  vertices = const_cast<double*>(_vertices);
+  cells = const_cast<int*>(_cells);
+  quadPts = const_cast<double*>(_quadPts);
+  quadWts = const_cast<double*>(_quadWts);
+  basis = const_cast<double*>(_basis);
+  basisDeriv = const_cast<double*>(_basisDeriv);
+  fieldTpdt = const_cast<double*>(_fieldTpdt);
+  fieldT = const_cast<double*>(_fieldT);
+  fieldTmdt = const_cast<double*>(_fieldTmdt);
+  valsResidual = const_cast<double*>(_valsResidual);
+  valsJacobian = const_cast<double*>(_valsJacobian);
+} // constructor
+
+pylith::feassemble::ElasticityExplicitData1DQuadratic::~ElasticityExplicitData1DQuadratic(void)
+{}
+
+
+// End of file

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData1DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData1DQuadratic.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData1DQuadratic.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,88 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application elasticityexplicit.
+
+#if !defined(pylith_feassemble_elasticityexplicitdata1dquadratic_hh)
+#define pylith_feassemble_elasticityexplicitdata1dquadratic_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+  namespace feassemble {
+     class ElasticityExplicitData1DQuadratic;
+  } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityExplicitData1DQuadratic : public IntegratorData
+{
+
+public: 
+
+  /// Constructor
+  ElasticityExplicitData1DQuadratic(void);
+
+  /// Destructor
+  ~ElasticityExplicitData1DQuadratic(void);
+
+private:
+
+  static const int _spaceDim;
+
+  static const int _cellDim;
+
+  static const int _numVertices;
+
+  static const int _numCells;
+
+  static const int _numBasis;
+
+  static const int _numQuadPts;
+
+  static const char* _matType;
+
+  static const char* _matDBFilename;
+
+  static const int _matId;
+
+  static const char* _matLabel;
+
+  static const double _dt;
+
+  static const double _vertices[];
+
+  static const int _cells[];
+
+  static const double _quadPts[];
+
+  static const double _quadWts[];
+
+  static const double _basis[];
+
+  static const double _basisDeriv[];
+
+  static const double _fieldTpdt[];
+
+  static const double _fieldT[];
+
+  static const double _fieldTmdt[];
+
+  static const double _valsResidual[];
+
+  static const double _valsJacobian[];
+
+};
+
+#endif // pylith_feassemble_elasticityexplicitdata1dquadratic_hh
+
+// End of file

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DLinear.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DLinear.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DLinear.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,143 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application elasticityexplicit.
+
+#include "ElasticityExplicitData2DLinear.hh"
+
+const int pylith::feassemble::ElasticityExplicitData2DLinear::_spaceDim = 2;
+
+const int pylith::feassemble::ElasticityExplicitData2DLinear::_cellDim = 2;
+
+const int pylith::feassemble::ElasticityExplicitData2DLinear::_numVertices = 3;
+
+const int pylith::feassemble::ElasticityExplicitData2DLinear::_numCells = 1;
+
+const int pylith::feassemble::ElasticityExplicitData2DLinear::_numBasis = 3;
+
+const int pylith::feassemble::ElasticityExplicitData2DLinear::_numQuadPts = 1;
+
+const char* pylith::feassemble::ElasticityExplicitData2DLinear::_matType = "ElasticPlaneStrain";
+
+const char* pylith::feassemble::ElasticityExplicitData2DLinear::_matDBFilename = "data/elasticplanestrain.spatialdb";
+
+const int pylith::feassemble::ElasticityExplicitData2DLinear::_matId = 0;
+
+const char* pylith::feassemble::ElasticityExplicitData2DLinear::_matLabel = "elastic strain 2-D";
+
+const double pylith::feassemble::ElasticityExplicitData2DLinear::_dt =   1.00000000e-02;
+
+const double pylith::feassemble::ElasticityExplicitData2DLinear::_vertices[] = {
+  2.00000000e-01, -4.00000000e-01,
+  3.00000000e-01,  5.00000000e-01,
+ -1.00000000e+00, -2.00000000e-01,
+};
+
+const int pylith::feassemble::ElasticityExplicitData2DLinear::_cells[] = {
+0,1,2,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DLinear::_quadPts[] = {
+  3.33333333e-01,  3.33333333e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DLinear::_quadWts[] = {
+  5.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DLinear::_basis[] = {
+  3.33333333e-01,  3.33333333e-01,
+  3.33333333e-01,};
+
+const double pylith::feassemble::ElasticityExplicitData2DLinear::_basisDeriv[] = {
+ -1.00000000e+00, -1.00000000e+00,
+  1.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  1.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DLinear::_fieldTpdt[] = {
+  1.90000000e+00, -9.00000000e-01,
+  1.40000000e+00,  1.50000000e+00,
+  5.00000000e-01, -9.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DLinear::_fieldT[] = {
+  1.60000000e+00, -8.00000000e-01,
+  9.00000000e-01,  7.00000000e-01,
+ -2.00000000e-01, -1.10000000e+00,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DLinear::_fieldTmdt[] = {
+  8.00000000e-01,  1.00000000e-01,
+  5.00000000e-01,  3.00000000e-01,
+ -1.00000000e-01, -6.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DLinear::_valsResidual[] = {
+ -4.45506111e+10, -3.13529028e+10,
+  3.95993889e+10,  4.94709722e+09,
+  4.94938889e+09,  2.63970972e+10,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DLinear::_valsJacobian[] = {
+  1.52777778e+06,  0.00000000e+00,
+  1.52777778e+06,  0.00000000e+00,
+  1.52777778e+06,  0.00000000e+00,
+  0.00000000e+00,  1.52777778e+06,
+  0.00000000e+00,  1.52777778e+06,
+  0.00000000e+00,  1.52777778e+06,
+  1.52777778e+06,  0.00000000e+00,
+  1.52777778e+06,  0.00000000e+00,
+  1.52777778e+06,  0.00000000e+00,
+  0.00000000e+00,  1.52777778e+06,
+  0.00000000e+00,  1.52777778e+06,
+  0.00000000e+00,  1.52777778e+06,
+  1.52777778e+06,  0.00000000e+00,
+  1.52777778e+06,  0.00000000e+00,
+  1.52777778e+06,  0.00000000e+00,
+  0.00000000e+00,  1.52777778e+06,
+  0.00000000e+00,  1.52777778e+06,
+  0.00000000e+00,  1.52777778e+06,
+};
+
+pylith::feassemble::ElasticityExplicitData2DLinear::ElasticityExplicitData2DLinear(void)
+{ // constructor
+  spaceDim = _spaceDim;
+  cellDim = _cellDim;
+  numVertices = _numVertices;
+  numCells = _numCells;
+  numBasis = _numBasis;
+  numQuadPts = _numQuadPts;
+  matType = const_cast<char*>(_matType);
+  matDBFilename = const_cast<char*>(_matDBFilename);
+  matId = _matId;
+  matLabel = const_cast<char*>(_matLabel);
+  dt = _dt;
+  vertices = const_cast<double*>(_vertices);
+  cells = const_cast<int*>(_cells);
+  quadPts = const_cast<double*>(_quadPts);
+  quadWts = const_cast<double*>(_quadWts);
+  basis = const_cast<double*>(_basis);
+  basisDeriv = const_cast<double*>(_basisDeriv);
+  fieldTpdt = const_cast<double*>(_fieldTpdt);
+  fieldT = const_cast<double*>(_fieldT);
+  fieldTmdt = const_cast<double*>(_fieldTmdt);
+  valsResidual = const_cast<double*>(_valsResidual);
+  valsJacobian = const_cast<double*>(_valsJacobian);
+} // constructor
+
+pylith::feassemble::ElasticityExplicitData2DLinear::~ElasticityExplicitData2DLinear(void)
+{}
+
+
+// End of file

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DLinear.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DLinear.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DLinear.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,88 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application elasticityexplicit.
+
+#if !defined(pylith_feassemble_elasticityexplicitdata2dlinear_hh)
+#define pylith_feassemble_elasticityexplicitdata2dlinear_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+  namespace feassemble {
+     class ElasticityExplicitData2DLinear;
+  } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityExplicitData2DLinear : public IntegratorData
+{
+
+public: 
+
+  /// Constructor
+  ElasticityExplicitData2DLinear(void);
+
+  /// Destructor
+  ~ElasticityExplicitData2DLinear(void);
+
+private:
+
+  static const int _spaceDim;
+
+  static const int _cellDim;
+
+  static const int _numVertices;
+
+  static const int _numCells;
+
+  static const int _numBasis;
+
+  static const int _numQuadPts;
+
+  static const char* _matType;
+
+  static const char* _matDBFilename;
+
+  static const int _matId;
+
+  static const char* _matLabel;
+
+  static const double _dt;
+
+  static const double _vertices[];
+
+  static const int _cells[];
+
+  static const double _quadPts[];
+
+  static const double _quadWts[];
+
+  static const double _basis[];
+
+  static const double _basisDeriv[];
+
+  static const double _fieldTpdt[];
+
+  static const double _fieldT[];
+
+  static const double _fieldTmdt[];
+
+  static const double _valsResidual[];
+
+  static const double _valsJacobian[];
+
+};
+
+#endif // pylith_feassemble_elasticityexplicitdata2dlinear_hh
+
+// End of file

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DQuadratic.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DQuadratic.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,237 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application elasticityexplicit.
+
+#include "ElasticityExplicitData2DQuadratic.hh"
+
+const int pylith::feassemble::ElasticityExplicitData2DQuadratic::_spaceDim = 2;
+
+const int pylith::feassemble::ElasticityExplicitData2DQuadratic::_cellDim = 2;
+
+const int pylith::feassemble::ElasticityExplicitData2DQuadratic::_numVertices = 6;
+
+const int pylith::feassemble::ElasticityExplicitData2DQuadratic::_numCells = 1;
+
+const int pylith::feassemble::ElasticityExplicitData2DQuadratic::_numBasis = 6;
+
+const int pylith::feassemble::ElasticityExplicitData2DQuadratic::_numQuadPts = 3;
+
+const char* pylith::feassemble::ElasticityExplicitData2DQuadratic::_matType = "ElasticPlaneStrain";
+
+const char* pylith::feassemble::ElasticityExplicitData2DQuadratic::_matDBFilename = "data/elasticplanestrain.spatialdb";
+
+const int pylith::feassemble::ElasticityExplicitData2DQuadratic::_matId = 0;
+
+const char* pylith::feassemble::ElasticityExplicitData2DQuadratic::_matLabel = "elastic strain 2-D";
+
+const double pylith::feassemble::ElasticityExplicitData2DQuadratic::_dt =   1.00000000e-02;
+
+const double pylith::feassemble::ElasticityExplicitData2DQuadratic::_vertices[] = {
+ -1.00000000e+00, -1.00000000e+00,
+  1.00000000e+00,  2.00000000e-01,
+ -1.50000000e+00,  5.00000000e-01,
+  0.00000000e+00, -6.00000000e-01,
+  2.50000000e-01,  3.50000000e-01,
+ -1.25000000e+00, -2.50000000e-01,
+};
+
+const int pylith::feassemble::ElasticityExplicitData2DQuadratic::_cells[] = {
+0,1,2,3,4,5,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DQuadratic::_quadPts[] = {
+  6.66666667e-01,  1.66666667e-01,
+  1.66666667e-01,  6.66666667e-01,
+  1.66666667e-01,  1.66666667e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DQuadratic::_quadWts[] = {
+  1.66666667e-01,  1.66666667e-01,  1.66666667e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DQuadratic::_basis[] = {
+ -1.11111111e-01,  2.22222222e-01,
+ -1.11111111e-01,  4.44444444e-01,
+  4.44444444e-01,  1.11111111e-01,
+ -1.11111111e-01, -1.11111111e-01,
+  2.22222222e-01,  1.11111111e-01,
+  4.44444444e-01,  4.44444444e-01,
+  2.22222222e-01, -1.11111111e-01,
+ -1.11111111e-01,  4.44444444e-01,
+  1.11111111e-01,  4.44444444e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DQuadratic::_basisDeriv[] = {
+  3.33333333e-01,  3.33333333e-01,
+  1.66666667e+00,  0.00000000e+00,
+  0.00000000e+00, -3.33333333e-01,
+ -2.00000000e+00, -2.66666667e+00,
+  6.66666667e-01,  2.66666667e+00,
+ -6.66666667e-01,  0.00000000e+00,
+  3.33333333e-01,  3.33333333e-01,
+ -3.33333333e-01,  0.00000000e+00,
+  0.00000000e+00,  1.66666667e+00,
+  0.00000000e+00, -6.66666667e-01,
+  2.66666667e+00,  6.66666667e-01,
+ -2.66666667e+00, -2.00000000e+00,
+ -1.66666667e+00, -1.66666667e+00,
+ -3.33333333e-01,  0.00000000e+00,
+  0.00000000e+00, -3.33333333e-01,
+  2.00000000e+00, -6.66666667e-01,
+  6.66666667e-01,  6.66666667e-01,
+ -6.66666667e-01,  2.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DQuadratic::_fieldTpdt[] = {
+ -4.00000000e-01, -6.00000000e-01,
+  7.00000000e-01,  8.00000000e-01,
+  0.00000000e+00,  2.00000000e-01,
+ -5.00000000e-01, -4.00000000e-01,
+  3.00000000e-01,  9.00000000e-01,
+ -3.00000000e-01, -9.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DQuadratic::_fieldT[] = {
+ -3.00000000e-01, -4.00000000e-01,
+  5.00000000e-01,  6.00000000e-01,
+  0.00000000e+00,  1.00000000e-01,
+ -2.00000000e-01, -3.00000000e-01,
+  2.00000000e-01,  3.00000000e-01,
+ -1.00000000e-01, -2.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DQuadratic::_fieldTmdt[] = {
+ -2.00000000e-01, -3.00000000e-01,
+  3.00000000e-01,  4.00000000e-01,
+  0.00000000e+00,  1.00000000e-01,
+ -3.00000000e-01, -2.00000000e-01,
+  1.00000000e-01,  4.00000000e-01,
+ -2.00000000e-01, -6.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DQuadratic::_valsResidual[] = {
+ -2.31996617e+10,  2.89043296e+09,
+ -1.24763329e+11, -6.07499338e+10,
+ -4.35147872e+10, -9.72849436e+10,
+  3.06207774e+11,  4.04154283e+11,
+ -4.20118462e+11, -4.84409983e+11,
+  3.05400760e+11,  2.35408162e+11,
+};
+
+const double pylith::feassemble::ElasticityExplicitData2DQuadratic::_valsJacobian[] = {
+  1.27743484e+06,  0.00000000e+00,
+ -4.66392318e+05,  0.00000000e+00,
+ -8.11042524e+05,  0.00000000e+00,
+  6.31001372e+05,  0.00000000e+00,
+ -1.45747599e+06,  0.00000000e+00,
+  2.86351166e+05,  0.00000000e+00,
+  0.00000000e+00,  1.27743484e+06,
+  0.00000000e+00, -4.66392318e+05,
+  0.00000000e+00, -8.11042524e+05,
+  0.00000000e+00,  6.31001372e+05,
+  0.00000000e+00, -1.45747599e+06,
+  0.00000000e+00,  2.86351166e+05,
+ -4.66392318e+05,  0.00000000e+00,
+  1.19513032e+06,  0.00000000e+00,
+ -7.28737997e+05,  0.00000000e+00,
+  3.01783265e+05,  0.00000000e+00,
+  3.94375857e+04,  0.00000000e+00,
+ -1.62208505e+06,  0.00000000e+00,
+  0.00000000e+00, -4.66392318e+05,
+  0.00000000e+00,  1.19513032e+06,
+  0.00000000e+00, -7.28737997e+05,
+  0.00000000e+00,  3.01783265e+05,
+  0.00000000e+00,  3.94375857e+04,
+  0.00000000e+00, -1.62208505e+06,
+ -8.11042524e+05,  0.00000000e+00,
+ -7.28737997e+05,  0.00000000e+00,
+  1.53978052e+06,  0.00000000e+00,
+ -9.32784636e+05,  0.00000000e+00,
+  1.41803841e+06,  0.00000000e+00,
+  1.33573388e+06,  0.00000000e+00,
+  0.00000000e+00, -8.11042524e+05,
+  0.00000000e+00, -7.28737997e+05,
+  0.00000000e+00,  1.53978052e+06,
+  0.00000000e+00, -9.32784636e+05,
+  0.00000000e+00,  1.41803841e+06,
+  0.00000000e+00,  1.33573388e+06,
+  6.31001372e+05,  0.00000000e+00,
+  3.01783265e+05,  0.00000000e+00,
+ -9.32784636e+05,  0.00000000e+00,
+  6.34430727e+06,  0.00000000e+00,
+  4.78052126e+06,  0.00000000e+00,
+  5.10973937e+06,  0.00000000e+00,
+  0.00000000e+00,  6.31001372e+05,
+  0.00000000e+00,  3.01783265e+05,
+  0.00000000e+00, -9.32784636e+05,
+  0.00000000e+00,  6.34430727e+06,
+  0.00000000e+00,  4.78052126e+06,
+  0.00000000e+00,  5.10973937e+06,
+ -1.45747599e+06,  0.00000000e+00,
+  3.94375857e+04,  0.00000000e+00,
+  1.41803841e+06,  0.00000000e+00,
+  4.78052126e+06,  0.00000000e+00,
+  7.65603567e+06,  0.00000000e+00,
+  6.15912209e+06,  0.00000000e+00,
+  0.00000000e+00, -1.45747599e+06,
+  0.00000000e+00,  3.94375857e+04,
+  0.00000000e+00,  1.41803841e+06,
+  0.00000000e+00,  4.78052126e+06,
+  0.00000000e+00,  7.65603567e+06,
+  0.00000000e+00,  6.15912209e+06,
+  2.86351166e+05,  0.00000000e+00,
+ -1.62208505e+06,  0.00000000e+00,
+  1.33573388e+06,  0.00000000e+00,
+  5.10973937e+06,  0.00000000e+00,
+  6.15912209e+06,  0.00000000e+00,
+  8.06755830e+06,  0.00000000e+00,
+  0.00000000e+00,  2.86351166e+05,
+  0.00000000e+00, -1.62208505e+06,
+  0.00000000e+00,  1.33573388e+06,
+  0.00000000e+00,  5.10973937e+06,
+  0.00000000e+00,  6.15912209e+06,
+  0.00000000e+00,  8.06755830e+06,
+};
+
+pylith::feassemble::ElasticityExplicitData2DQuadratic::ElasticityExplicitData2DQuadratic(void)
+{ // constructor
+  spaceDim = _spaceDim;
+  cellDim = _cellDim;
+  numVertices = _numVertices;
+  numCells = _numCells;
+  numBasis = _numBasis;
+  numQuadPts = _numQuadPts;
+  matType = const_cast<char*>(_matType);
+  matDBFilename = const_cast<char*>(_matDBFilename);
+  matId = _matId;
+  matLabel = const_cast<char*>(_matLabel);
+  dt = _dt;
+  vertices = const_cast<double*>(_vertices);
+  cells = const_cast<int*>(_cells);
+  quadPts = const_cast<double*>(_quadPts);
+  quadWts = const_cast<double*>(_quadWts);
+  basis = const_cast<double*>(_basis);
+  basisDeriv = const_cast<double*>(_basisDeriv);
+  fieldTpdt = const_cast<double*>(_fieldTpdt);
+  fieldT = const_cast<double*>(_fieldT);
+  fieldTmdt = const_cast<double*>(_fieldTmdt);
+  valsResidual = const_cast<double*>(_valsResidual);
+  valsJacobian = const_cast<double*>(_valsJacobian);
+} // constructor
+
+pylith::feassemble::ElasticityExplicitData2DQuadratic::~ElasticityExplicitData2DQuadratic(void)
+{}
+
+
+// End of file

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DQuadratic.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData2DQuadratic.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,88 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application elasticityexplicit.
+
+#if !defined(pylith_feassemble_elasticityexplicitdata2dquadratic_hh)
+#define pylith_feassemble_elasticityexplicitdata2dquadratic_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+  namespace feassemble {
+     class ElasticityExplicitData2DQuadratic;
+  } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityExplicitData2DQuadratic : public IntegratorData
+{
+
+public: 
+
+  /// Constructor
+  ElasticityExplicitData2DQuadratic(void);
+
+  /// Destructor
+  ~ElasticityExplicitData2DQuadratic(void);
+
+private:
+
+  static const int _spaceDim;
+
+  static const int _cellDim;
+
+  static const int _numVertices;
+
+  static const int _numCells;
+
+  static const int _numBasis;
+
+  static const int _numQuadPts;
+
+  static const char* _matType;
+
+  static const char* _matDBFilename;
+
+  static const int _matId;
+
+  static const char* _matLabel;
+
+  static const double _dt;
+
+  static const double _vertices[];
+
+  static const int _cells[];
+
+  static const double _quadPts[];
+
+  static const double _quadWts[];
+
+  static const double _basis[];
+
+  static const double _basisDeriv[];
+
+  static const double _fieldTpdt[];
+
+  static const double _fieldT[];
+
+  static const double _fieldTmdt[];
+
+  static const double _valsResidual[];
+
+  static const double _valsJacobian[];
+
+};
+
+#endif // pylith_feassemble_elasticityexplicitdata2dquadratic_hh
+
+// End of file

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DLinear.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DLinear.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DLinear.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,179 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application elasticityexplicit.
+
+#include "ElasticityExplicitData3DLinear.hh"
+
+const int pylith::feassemble::ElasticityExplicitData3DLinear::_spaceDim = 3;
+
+const int pylith::feassemble::ElasticityExplicitData3DLinear::_cellDim = 3;
+
+const int pylith::feassemble::ElasticityExplicitData3DLinear::_numVertices = 4;
+
+const int pylith::feassemble::ElasticityExplicitData3DLinear::_numCells = 1;
+
+const int pylith::feassemble::ElasticityExplicitData3DLinear::_numBasis = 4;
+
+const int pylith::feassemble::ElasticityExplicitData3DLinear::_numQuadPts = 1;
+
+const char* pylith::feassemble::ElasticityExplicitData3DLinear::_matType = "ElasticIsotropic3D";
+
+const char* pylith::feassemble::ElasticityExplicitData3DLinear::_matDBFilename = "data/elasticisotropic3d.spatialdb";
+
+const int pylith::feassemble::ElasticityExplicitData3DLinear::_matId = 0;
+
+const char* pylith::feassemble::ElasticityExplicitData3DLinear::_matLabel = "elastic isotropic 3-D";
+
+const double pylith::feassemble::ElasticityExplicitData3DLinear::_dt =   1.00000000e-02;
+
+const double pylith::feassemble::ElasticityExplicitData3DLinear::_vertices[] = {
+ -5.00000000e-01, -1.00000000e+00, -5.00000000e-01,
+  2.00000000e+00, -5.00000000e-01, -4.00000000e-01,
+  1.00000000e+00, -1.00000000e-01, -3.00000000e-01,
+ -2.00000000e-01,  5.00000000e-01,  2.00000000e+00,
+};
+
+const int pylith::feassemble::ElasticityExplicitData3DLinear::_cells[] = {
+0,1,2,3,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DLinear::_quadPts[] = {
+  2.50000000e-01,  2.50000000e-01,  2.50000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DLinear::_quadWts[] = {
+  1.66666667e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DLinear::_basis[] = {
+  2.50000000e-01,  2.50000000e-01,  2.50000000e-01,
+  2.50000000e-01,};
+
+const double pylith::feassemble::ElasticityExplicitData3DLinear::_basisDeriv[] = {
+ -1.00000000e+00, -1.00000000e+00, -1.00000000e+00,
+  1.00000000e+00,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  1.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,  1.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DLinear::_fieldTpdt[] = {
+  4.00000000e-01,  2.00000000e-01, -5.00000000e-01,
+ -3.00000000e-01, -4.00000000e-01, -6.00000000e-01,
+  2.00000000e-01,  6.00000000e-01,  3.00000000e-01,
+ -6.00000000e-01, -1.00000000e-01, -3.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DLinear::_fieldT[] = {
+  1.00000000e-01,  1.00000000e-01, -6.00000000e-01,
+ -1.00000000e-01, -2.00000000e-01, -5.00000000e-01,
+  1.00000000e-01,  7.00000000e-01,  2.00000000e-01,
+ -5.00000000e-01, -0.00000000e+00, -2.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DLinear::_fieldTmdt[] = {
+  1.00000000e-01,  1.00000000e-01, -3.00000000e-01,
+ -2.00000000e-01, -1.00000000e-01, -5.00000000e-01,
+  2.00000000e-01,  4.00000000e-01,  1.00000000e-01,
+ -4.00000000e-01, -1.00000000e-01, -1.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DLinear::_valsResidual[] = {
+ -6.45616813e+09,  3.87365044e+10,  2.90517478e+10,
+ -6.45616812e+09,  4.84250438e+09,  8.06974781e+09,
+  4.84183188e+09, -3.22794956e+10, -1.12982522e+10,
+  8.06983188e+09, -1.12974956e+10, -2.58242522e+10,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DLinear::_valsJacobian[] = {
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  8.40625000e+05,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  8.40625000e+05,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+  0.00000000e+00,  0.00000000e+00,  8.40625000e+05,
+};
+
+pylith::feassemble::ElasticityExplicitData3DLinear::ElasticityExplicitData3DLinear(void)
+{ // constructor
+  spaceDim = _spaceDim;
+  cellDim = _cellDim;
+  numVertices = _numVertices;
+  numCells = _numCells;
+  numBasis = _numBasis;
+  numQuadPts = _numQuadPts;
+  matType = const_cast<char*>(_matType);
+  matDBFilename = const_cast<char*>(_matDBFilename);
+  matId = _matId;
+  matLabel = const_cast<char*>(_matLabel);
+  dt = _dt;
+  vertices = const_cast<double*>(_vertices);
+  cells = const_cast<int*>(_cells);
+  quadPts = const_cast<double*>(_quadPts);
+  quadWts = const_cast<double*>(_quadWts);
+  basis = const_cast<double*>(_basis);
+  basisDeriv = const_cast<double*>(_basisDeriv);
+  fieldTpdt = const_cast<double*>(_fieldTpdt);
+  fieldT = const_cast<double*>(_fieldT);
+  fieldTmdt = const_cast<double*>(_fieldTmdt);
+  valsResidual = const_cast<double*>(_valsResidual);
+  valsJacobian = const_cast<double*>(_valsJacobian);
+} // constructor
+
+pylith::feassemble::ElasticityExplicitData3DLinear::~ElasticityExplicitData3DLinear(void)
+{}
+
+
+// End of file

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DLinear.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DLinear.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DLinear.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,88 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application elasticityexplicit.
+
+#if !defined(pylith_feassemble_elasticityexplicitdata3dlinear_hh)
+#define pylith_feassemble_elasticityexplicitdata3dlinear_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+  namespace feassemble {
+     class ElasticityExplicitData3DLinear;
+  } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityExplicitData3DLinear : public IntegratorData
+{
+
+public: 
+
+  /// Constructor
+  ElasticityExplicitData3DLinear(void);
+
+  /// Destructor
+  ~ElasticityExplicitData3DLinear(void);
+
+private:
+
+  static const int _spaceDim;
+
+  static const int _cellDim;
+
+  static const int _numVertices;
+
+  static const int _numCells;
+
+  static const int _numBasis;
+
+  static const int _numQuadPts;
+
+  static const char* _matType;
+
+  static const char* _matDBFilename;
+
+  static const int _matId;
+
+  static const char* _matLabel;
+
+  static const double _dt;
+
+  static const double _vertices[];
+
+  static const int _cells[];
+
+  static const double _quadPts[];
+
+  static const double _quadWts[];
+
+  static const double _basis[];
+
+  static const double _basisDeriv[];
+
+  static const double _fieldTpdt[];
+
+  static const double _fieldT[];
+
+  static const double _fieldTmdt[];
+
+  static const double _valsResidual[];
+
+  static const double _valsJacobian[];
+
+};
+
+#endif // pylith_feassemble_elasticityexplicitdata3dlinear_hh
+
+// End of file

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DQuadratic.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DQuadratic.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,512 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application elasticityexplicit.
+
+#include "ElasticityExplicitData3DQuadratic.hh"
+
+const int pylith::feassemble::ElasticityExplicitData3DQuadratic::_spaceDim = 3;
+
+const int pylith::feassemble::ElasticityExplicitData3DQuadratic::_cellDim = 3;
+
+const int pylith::feassemble::ElasticityExplicitData3DQuadratic::_numVertices = 10;
+
+const int pylith::feassemble::ElasticityExplicitData3DQuadratic::_numCells = 1;
+
+const int pylith::feassemble::ElasticityExplicitData3DQuadratic::_numBasis = 10;
+
+const int pylith::feassemble::ElasticityExplicitData3DQuadratic::_numQuadPts = 4;
+
+const char* pylith::feassemble::ElasticityExplicitData3DQuadratic::_matType = "ElasticIsotropic3D";
+
+const char* pylith::feassemble::ElasticityExplicitData3DQuadratic::_matDBFilename = "data/elasticisotropic3d.spatialdb";
+
+const int pylith::feassemble::ElasticityExplicitData3DQuadratic::_matId = 0;
+
+const char* pylith::feassemble::ElasticityExplicitData3DQuadratic::_matLabel = "elastic isotropic 3-D";
+
+const double pylith::feassemble::ElasticityExplicitData3DQuadratic::_dt =   1.00000000e-02;
+
+const double pylith::feassemble::ElasticityExplicitData3DQuadratic::_vertices[] = {
+ -5.00000000e-01, -2.00000000e+00, -1.00000000e+00,
+  2.00000000e+00, -2.00000000e+00, -5.00000000e-01,
+  1.00000000e+00,  1.00000000e+00,  0.00000000e+00,
+  2.00000000e-01,  5.00000000e-01,  2.00000000e+00,
+  7.00000000e-01, -2.10000000e+00, -8.00000000e-01,
+  3.00000000e-01, -5.00000000e-01, -5.00000000e-01,
+ -2.00000000e-01, -8.00000000e-01,  5.00000000e-01,
+  1.50000000e+00, -6.00000000e-01, -2.00000000e-01,
+  6.00000000e-01,  8.00000000e-01,  9.00000000e-01,
+  1.10000000e+00, -8.00000000e-01,  7.00000000e-01,
+};
+
+const int pylith::feassemble::ElasticityExplicitData3DQuadratic::_cells[] = {
+0,1,2,3,4,5,6,7,8,9,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DQuadratic::_quadPts[] = {
+  8.33333333e-02,  8.33333333e-02,  8.33333333e-02,
+  7.50000000e-01,  8.33333333e-02,  8.33333333e-02,
+  8.33333333e-02,  7.50000000e-01,  8.33333333e-02,
+  8.33333333e-02,  8.33333333e-02,  7.50000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DQuadratic::_quadWts[] = {
+  1.25000000e-01,  1.25000000e-01,  1.25000000e-01,  1.25000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DQuadratic::_basis[] = {
+  3.75000000e-01, -6.94444444e-02, -6.94444444e-02,
+ -6.94444444e-02,  2.50000000e-01,  2.50000000e-01,
+  2.50000000e-01,  2.77777778e-02,  2.77777778e-02,
+  2.77777778e-02, -6.94444444e-02,  3.75000000e-01,
+ -6.94444444e-02, -6.94444444e-02,  2.50000000e-01,
+  2.77777778e-02,  2.77777778e-02,  2.50000000e-01,
+  2.77777778e-02,  2.50000000e-01, -6.94444444e-02,
+ -6.94444444e-02,  3.75000000e-01, -6.94444444e-02,
+  2.77777778e-02,  2.50000000e-01,  2.77777778e-02,
+  2.50000000e-01,  2.50000000e-01,  2.77777778e-02,
+ -6.94444444e-02, -6.94444444e-02, -6.94444444e-02,
+  3.75000000e-01,  2.77777778e-02,  2.77777778e-02,
+  2.50000000e-01,  2.77777778e-02,  2.50000000e-01,
+  2.50000000e-01,};
+
+const double pylith::feassemble::ElasticityExplicitData3DQuadratic::_basisDeriv[] = {
+ -2.00000000e+00, -2.00000000e+00, -2.00000000e+00,
+ -6.66666667e-01,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -6.66666667e-01,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -6.66666667e-01,
+  2.66666667e+00, -3.33333333e-01, -3.33333333e-01,
+ -3.33333333e-01,  2.66666667e+00, -3.33333333e-01,
+ -3.33333333e-01, -3.33333333e-01,  2.66666667e+00,
+  3.33333333e-01,  3.33333333e-01,  0.00000000e+00,
+  0.00000000e+00,  3.33333333e-01,  3.33333333e-01,
+  3.33333333e-01,  0.00000000e+00,  3.33333333e-01,
+  6.66666667e-01,  6.66666667e-01,  6.66666667e-01,
+  2.00000000e+00,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -6.66666667e-01,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -6.66666667e-01,
+ -2.66666667e+00, -3.00000000e+00, -3.00000000e+00,
+ -3.33333333e-01,  1.11022302e-16, -3.33333333e-01,
+ -3.33333333e-01, -3.33333333e-01,  1.11022302e-16,
+  3.33333333e-01,  3.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  3.33333333e-01,  3.33333333e-01,
+  3.33333333e-01,  0.00000000e+00,  3.00000000e+00,
+  6.66666667e-01,  6.66666667e-01,  6.66666667e-01,
+ -6.66666667e-01,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  2.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -6.66666667e-01,
+  1.11022302e-16, -3.33333333e-01, -3.33333333e-01,
+ -3.00000000e+00, -2.66666667e+00, -3.00000000e+00,
+ -3.33333333e-01, -3.33333333e-01, -1.11022302e-16,
+  3.00000000e+00,  3.33333333e-01,  0.00000000e+00,
+  0.00000000e+00,  3.33333333e-01,  3.00000000e+00,
+  3.33333333e-01,  0.00000000e+00,  3.33333333e-01,
+  6.66666667e-01,  6.66666667e-01,  6.66666667e-01,
+ -6.66666667e-01,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -6.66666667e-01,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,  2.00000000e+00,
+ -1.11022302e-16, -3.33333333e-01, -3.33333333e-01,
+ -3.33333333e-01, -1.11022302e-16, -3.33333333e-01,
+ -3.00000000e+00, -3.00000000e+00, -2.66666667e+00,
+  3.33333333e-01,  3.33333333e-01,  0.00000000e+00,
+  0.00000000e+00,  3.00000000e+00,  3.33333333e-01,
+  3.00000000e+00,  0.00000000e+00,  3.33333333e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DQuadratic::_fieldTpdt[] = {
+  3.00000000e-01, -4.00000000e-01, -4.00000000e-01,
+ -6.00000000e-01,  8.00000000e-01,  2.00000000e-01,
+  5.00000000e-01,  5.00000000e-01,  7.00000000e-01,
+ -7.00000000e-01, -5.00000000e-01, -7.00000000e-01,
+ -6.00000000e-01, -3.00000000e-01,  8.00000000e-01,
+ -4.00000000e-01, -8.00000000e-01, -5.00000000e-01,
+  7.00000000e-01,  8.00000000e-01, -5.00000000e-01,
+ -5.00000000e-01, -5.00000000e-01, -7.00000000e-01,
+ -3.00000000e-01, -9.00000000e-01,  8.00000000e-01,
+ -1.00000000e-01,  5.00000000e-01, -9.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DQuadratic::_fieldT[] = {
+  1.00000000e-01, -2.00000000e-01, -6.00000000e-01,
+ -3.00000000e-01,  4.00000000e-01,  9.00000000e-01,
+  6.00000000e-01,  8.00000000e-01,  5.00000000e-01,
+ -8.00000000e-01, -6.00000000e-01, -8.00000000e-01,
+ -0.00000000e+00, -2.00000000e-01,  6.00000000e-01,
+ -4.00000000e-01, -7.00000000e-01, -2.00000000e-01,
+  7.00000000e-01,  6.00000000e-01, -1.00000000e-01,
+ -4.00000000e-01, -3.00000000e-01, -3.00000000e-01,
+ -7.00000000e-01, -6.00000000e-01,  1.00000000e-01,
+ -9.00000000e-01,  3.00000000e-01, -8.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DQuadratic::_fieldTmdt[] = {
+  2.00000000e-01, -3.00000000e-01, -4.00000000e-01,
+ -6.00000000e-01,  2.00000000e-01,  3.00000000e-01,
+  5.00000000e-01,  2.00000000e-01,  5.00000000e-01,
+ -3.00000000e-01, -6.00000000e-01, -3.00000000e-01,
+ -5.00000000e-01, -9.00000000e-01,  4.00000000e-01,
+ -3.00000000e-01, -6.00000000e-01, -8.00000000e-01,
+  9.00000000e-01,  5.00000000e-01, -2.00000000e-01,
+ -7.00000000e-01, -3.00000000e-01, -3.00000000e-01,
+ -5.00000000e-01, -8.00000000e-01,  4.00000000e-01,
+ -4.00000000e-01,  5.00000000e-01, -8.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DQuadratic::_valsResidual[] = {
+  1.84687210e+12,  5.70862959e+11,  2.80600256e+12,
+ -1.31068344e+11, -2.48979010e+11,  1.54805758e+10,
+ -7.37392773e+11, -2.72245362e+12, -2.96206199e+11,
+  1.09603429e+12,  6.31435717e+11,  2.06777127e+12,
+ -1.66296306e+12, -1.95985880e+12, -4.07664833e+12,
+  1.82196155e+10,  2.99159565e+12, -6.71583673e+11,
+ -8.56680206e+12, -7.43943766e+12, -5.67503563e+12,
+  6.00107219e+11,  1.86196321e+12,  7.80134346e+11,
+  1.95088530e+12,  4.62461427e+12,  6.22205519e+11,
+  5.58607418e+12,  1.69029148e+12,  4.42789859e+12,
+};
+
+const double pylith::feassemble::ElasticityExplicitData3DQuadratic::_valsJacobian[] = {
+  8.58871421e+06,  0.00000000e+00,  0.00000000e+00,
+ -2.12223687e+06,  0.00000000e+00,  0.00000000e+00,
+ -2.14181277e+06,  0.00000000e+00,  0.00000000e+00,
+ -2.72868977e+06,  0.00000000e+00,  0.00000000e+00,
+  4.16422397e+06,  0.00000000e+00,  0.00000000e+00,
+  4.15443601e+06,  0.00000000e+00,  0.00000000e+00,
+  3.86099751e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.20103952e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.50426598e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.49447802e+06,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  8.58871421e+06,  0.00000000e+00,
+  0.00000000e+00, -2.12223687e+06,  0.00000000e+00,
+  0.00000000e+00, -2.14181277e+06,  0.00000000e+00,
+  0.00000000e+00, -2.72868977e+06,  0.00000000e+00,
+  0.00000000e+00,  4.16422397e+06,  0.00000000e+00,
+  0.00000000e+00,  4.15443601e+06,  0.00000000e+00,
+  0.00000000e+00,  3.86099751e+06,  0.00000000e+00,
+  0.00000000e+00, -1.20103952e+06,  0.00000000e+00,
+  0.00000000e+00, -1.50426598e+06,  0.00000000e+00,
+  0.00000000e+00, -1.49447802e+06,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,  8.58871421e+06,
+  0.00000000e+00,  0.00000000e+00, -2.12223687e+06,
+  0.00000000e+00,  0.00000000e+00, -2.14181277e+06,
+  0.00000000e+00,  0.00000000e+00, -2.72868977e+06,
+  0.00000000e+00,  0.00000000e+00,  4.16422397e+06,
+  0.00000000e+00,  0.00000000e+00,  4.15443601e+06,
+  0.00000000e+00,  0.00000000e+00,  3.86099751e+06,
+  0.00000000e+00,  0.00000000e+00, -1.20103952e+06,
+  0.00000000e+00,  0.00000000e+00, -1.50426598e+06,
+  0.00000000e+00,  0.00000000e+00, -1.49447802e+06,
+ -2.12223687e+06,  0.00000000e+00,  0.00000000e+00,
+  7.46054777e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.88541131e+06,  0.00000000e+00,  0.00000000e+00,
+ -2.47228831e+06,  0.00000000e+00,  0.00000000e+00,
+  3.24117870e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.43180084e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.72523934e+06,  0.00000000e+00,  0.00000000e+00,
+  3.35959148e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.60682656e+06,  0.00000000e+00,  0.00000000e+00,
+  3.06615298e+06,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -2.12223687e+06,  0.00000000e+00,
+  0.00000000e+00,  7.46054777e+06,  0.00000000e+00,
+  0.00000000e+00, -1.88541131e+06,  0.00000000e+00,
+  0.00000000e+00, -2.47228831e+06,  0.00000000e+00,
+  0.00000000e+00,  3.24117870e+06,  0.00000000e+00,
+  0.00000000e+00, -1.43180084e+06,  0.00000000e+00,
+  0.00000000e+00, -1.72523934e+06,  0.00000000e+00,
+  0.00000000e+00,  3.35959148e+06,  0.00000000e+00,
+  0.00000000e+00, -1.60682656e+06,  0.00000000e+00,
+  0.00000000e+00,  3.06615298e+06,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -2.12223687e+06,
+  0.00000000e+00,  0.00000000e+00,  7.46054777e+06,
+  0.00000000e+00,  0.00000000e+00, -1.88541131e+06,
+  0.00000000e+00,  0.00000000e+00, -2.47228831e+06,
+  0.00000000e+00,  0.00000000e+00,  3.24117870e+06,
+  0.00000000e+00,  0.00000000e+00, -1.43180084e+06,
+  0.00000000e+00,  0.00000000e+00, -1.72523934e+06,
+  0.00000000e+00,  0.00000000e+00,  3.35959148e+06,
+  0.00000000e+00,  0.00000000e+00, -1.60682656e+06,
+  0.00000000e+00,  0.00000000e+00,  3.06615298e+06,
+ -2.14181277e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.88541131e+06,  0.00000000e+00,  0.00000000e+00,
+  7.54668174e+06,  0.00000000e+00,  0.00000000e+00,
+ -2.49186421e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.41418253e+06,  0.00000000e+00,  0.00000000e+00,
+  3.30186400e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.71740898e+06,  0.00000000e+00,  0.00000000e+00,
+  3.43006473e+06,  0.00000000e+00,  0.00000000e+00,
+  3.12683828e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.58920825e+06,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -2.14181277e+06,  0.00000000e+00,
+  0.00000000e+00, -1.88541131e+06,  0.00000000e+00,
+  0.00000000e+00,  7.54668174e+06,  0.00000000e+00,
+  0.00000000e+00, -2.49186421e+06,  0.00000000e+00,
+  0.00000000e+00, -1.41418253e+06,  0.00000000e+00,
+  0.00000000e+00,  3.30186400e+06,  0.00000000e+00,
+  0.00000000e+00, -1.71740898e+06,  0.00000000e+00,
+  0.00000000e+00,  3.43006473e+06,  0.00000000e+00,
+  0.00000000e+00,  3.12683828e+06,  0.00000000e+00,
+  0.00000000e+00, -1.58920825e+06,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -2.14181277e+06,
+  0.00000000e+00,  0.00000000e+00, -1.88541131e+06,
+  0.00000000e+00,  0.00000000e+00,  7.54668174e+06,
+  0.00000000e+00,  0.00000000e+00, -2.49186421e+06,
+  0.00000000e+00,  0.00000000e+00, -1.41418253e+06,
+  0.00000000e+00,  0.00000000e+00,  3.30186400e+06,
+  0.00000000e+00,  0.00000000e+00, -1.71740898e+06,
+  0.00000000e+00,  0.00000000e+00,  3.43006473e+06,
+  0.00000000e+00,  0.00000000e+00,  3.12683828e+06,
+  0.00000000e+00,  0.00000000e+00, -1.58920825e+06,
+ -2.72868977e+06,  0.00000000e+00,  0.00000000e+00,
+ -2.47228831e+06,  0.00000000e+00,  0.00000000e+00,
+ -2.49186421e+06,  0.00000000e+00,  0.00000000e+00,
+  1.01289405e+07,  0.00000000e+00,  0.00000000e+00,
+ -1.17943173e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.18921968e+06,  0.00000000e+00,  0.00000000e+00,
+  5.12118270e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.06101895e+06,  0.00000000e+00,  0.00000000e+00,
+  5.23959548e+06,  0.00000000e+00,  0.00000000e+00,
+  5.24938343e+06,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -2.72868977e+06,  0.00000000e+00,
+  0.00000000e+00, -2.47228831e+06,  0.00000000e+00,
+  0.00000000e+00, -2.49186421e+06,  0.00000000e+00,
+  0.00000000e+00,  1.01289405e+07,  0.00000000e+00,
+  0.00000000e+00, -1.17943173e+06,  0.00000000e+00,
+  0.00000000e+00, -1.18921968e+06,  0.00000000e+00,
+  0.00000000e+00,  5.12118270e+06,  0.00000000e+00,
+  0.00000000e+00, -1.06101895e+06,  0.00000000e+00,
+  0.00000000e+00,  5.23959548e+06,  0.00000000e+00,
+  0.00000000e+00,  5.24938343e+06,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -2.72868977e+06,
+  0.00000000e+00,  0.00000000e+00, -2.47228831e+06,
+  0.00000000e+00,  0.00000000e+00, -2.49186421e+06,
+  0.00000000e+00,  0.00000000e+00,  1.01289405e+07,
+  0.00000000e+00,  0.00000000e+00, -1.17943173e+06,
+  0.00000000e+00,  0.00000000e+00, -1.18921968e+06,
+  0.00000000e+00,  0.00000000e+00,  5.12118270e+06,
+  0.00000000e+00,  0.00000000e+00, -1.06101895e+06,
+  0.00000000e+00,  0.00000000e+00,  5.23959548e+06,
+  0.00000000e+00,  0.00000000e+00,  5.24938343e+06,
+  4.16422397e+06,  0.00000000e+00,  0.00000000e+00,
+  3.24117870e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.41418253e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.17943173e+06,  0.00000000e+00,  0.00000000e+00,
+  6.50957790e+06,  0.00000000e+00,  0.00000000e+00,
+  4.18189729e+06,  0.00000000e+00,  0.00000000e+00,
+  4.29927269e+06,  0.00000000e+00,  0.00000000e+00,
+  3.72037466e+06,  0.00000000e+00,  0.00000000e+00,
+  1.51006944e+06,  0.00000000e+00,  0.00000000e+00,
+  3.83775006e+06,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  4.16422397e+06,  0.00000000e+00,
+  0.00000000e+00,  3.24117870e+06,  0.00000000e+00,
+  0.00000000e+00, -1.41418253e+06,  0.00000000e+00,
+  0.00000000e+00, -1.17943173e+06,  0.00000000e+00,
+  0.00000000e+00,  6.50957790e+06,  0.00000000e+00,
+  0.00000000e+00,  4.18189729e+06,  0.00000000e+00,
+  0.00000000e+00,  4.29927269e+06,  0.00000000e+00,
+  0.00000000e+00,  3.72037466e+06,  0.00000000e+00,
+  0.00000000e+00,  1.51006944e+06,  0.00000000e+00,
+  0.00000000e+00,  3.83775006e+06,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,  4.16422397e+06,
+  0.00000000e+00,  0.00000000e+00,  3.24117870e+06,
+  0.00000000e+00,  0.00000000e+00, -1.41418253e+06,
+  0.00000000e+00,  0.00000000e+00, -1.17943173e+06,
+  0.00000000e+00,  0.00000000e+00,  6.50957790e+06,
+  0.00000000e+00,  0.00000000e+00,  4.18189729e+06,
+  0.00000000e+00,  0.00000000e+00,  4.29927269e+06,
+  0.00000000e+00,  0.00000000e+00,  3.72037466e+06,
+  0.00000000e+00,  0.00000000e+00,  1.51006944e+06,
+  0.00000000e+00,  0.00000000e+00,  3.83775006e+06,
+  4.15443601e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.43180084e+06,  0.00000000e+00,  0.00000000e+00,
+  3.30186400e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.18921968e+06,  0.00000000e+00,  0.00000000e+00,
+  4.18189729e+06,  0.00000000e+00,  0.00000000e+00,
+  6.54872971e+06,  0.00000000e+00,  0.00000000e+00,
+  4.30318787e+06,  0.00000000e+00,  0.00000000e+00,
+  3.75561128e+06,  0.00000000e+00,  0.00000000e+00,
+  3.87690186e+06,  0.00000000e+00,  0.00000000e+00,
+  1.51006944e+06,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  4.15443601e+06,  0.00000000e+00,
+  0.00000000e+00, -1.43180084e+06,  0.00000000e+00,
+  0.00000000e+00,  3.30186400e+06,  0.00000000e+00,
+  0.00000000e+00, -1.18921968e+06,  0.00000000e+00,
+  0.00000000e+00,  4.18189729e+06,  0.00000000e+00,
+  0.00000000e+00,  6.54872971e+06,  0.00000000e+00,
+  0.00000000e+00,  4.30318787e+06,  0.00000000e+00,
+  0.00000000e+00,  3.75561128e+06,  0.00000000e+00,
+  0.00000000e+00,  3.87690186e+06,  0.00000000e+00,
+  0.00000000e+00,  1.51006944e+06,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,  4.15443601e+06,
+  0.00000000e+00,  0.00000000e+00, -1.43180084e+06,
+  0.00000000e+00,  0.00000000e+00,  3.30186400e+06,
+  0.00000000e+00,  0.00000000e+00, -1.18921968e+06,
+  0.00000000e+00,  0.00000000e+00,  4.18189729e+06,
+  0.00000000e+00,  0.00000000e+00,  6.54872971e+06,
+  0.00000000e+00,  0.00000000e+00,  4.30318787e+06,
+  0.00000000e+00,  0.00000000e+00,  3.75561128e+06,
+  0.00000000e+00,  0.00000000e+00,  3.87690186e+06,
+  0.00000000e+00,  0.00000000e+00,  1.51006944e+06,
+  3.86099751e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.72523934e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.71740898e+06,  0.00000000e+00,  0.00000000e+00,
+  5.12118270e+06,  0.00000000e+00,  0.00000000e+00,
+  4.29927269e+06,  0.00000000e+00,  0.00000000e+00,
+  4.30318787e+06,  0.00000000e+00,  0.00000000e+00,
+  7.72248371e+06,  0.00000000e+00,  0.00000000e+00,
+  1.51006944e+06,  0.00000000e+00,  0.00000000e+00,
+  4.93328046e+06,  0.00000000e+00,  0.00000000e+00,
+  4.92936528e+06,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  3.86099751e+06,  0.00000000e+00,
+  0.00000000e+00, -1.72523934e+06,  0.00000000e+00,
+  0.00000000e+00, -1.71740898e+06,  0.00000000e+00,
+  0.00000000e+00,  5.12118270e+06,  0.00000000e+00,
+  0.00000000e+00,  4.29927269e+06,  0.00000000e+00,
+  0.00000000e+00,  4.30318787e+06,  0.00000000e+00,
+  0.00000000e+00,  7.72248371e+06,  0.00000000e+00,
+  0.00000000e+00,  1.51006944e+06,  0.00000000e+00,
+  0.00000000e+00,  4.93328046e+06,  0.00000000e+00,
+  0.00000000e+00,  4.92936528e+06,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,  3.86099751e+06,
+  0.00000000e+00,  0.00000000e+00, -1.72523934e+06,
+  0.00000000e+00,  0.00000000e+00, -1.71740898e+06,
+  0.00000000e+00,  0.00000000e+00,  5.12118270e+06,
+  0.00000000e+00,  0.00000000e+00,  4.29927269e+06,
+  0.00000000e+00,  0.00000000e+00,  4.30318787e+06,
+  0.00000000e+00,  0.00000000e+00,  7.72248371e+06,
+  0.00000000e+00,  0.00000000e+00,  1.51006944e+06,
+  0.00000000e+00,  0.00000000e+00,  4.93328046e+06,
+  0.00000000e+00,  0.00000000e+00,  4.92936528e+06,
+ -1.20103952e+06,  0.00000000e+00,  0.00000000e+00,
+  3.35959148e+06,  0.00000000e+00,  0.00000000e+00,
+  3.43006473e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.06101895e+06,  0.00000000e+00,  0.00000000e+00,
+  3.72037466e+06,  0.00000000e+00,  0.00000000e+00,
+  3.75561128e+06,  0.00000000e+00,  0.00000000e+00,
+  1.51006944e+06,  0.00000000e+00,  0.00000000e+00,
+  6.03592678e+06,  0.00000000e+00,  0.00000000e+00,
+  3.82562157e+06,  0.00000000e+00,  0.00000000e+00,
+  3.79038495e+06,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -1.20103952e+06,  0.00000000e+00,
+  0.00000000e+00,  3.35959148e+06,  0.00000000e+00,
+  0.00000000e+00,  3.43006473e+06,  0.00000000e+00,
+  0.00000000e+00, -1.06101895e+06,  0.00000000e+00,
+  0.00000000e+00,  3.72037466e+06,  0.00000000e+00,
+  0.00000000e+00,  3.75561128e+06,  0.00000000e+00,
+  0.00000000e+00,  1.51006944e+06,  0.00000000e+00,
+  0.00000000e+00,  6.03592678e+06,  0.00000000e+00,
+  0.00000000e+00,  3.82562157e+06,  0.00000000e+00,
+  0.00000000e+00,  3.79038495e+06,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -1.20103952e+06,
+  0.00000000e+00,  0.00000000e+00,  3.35959148e+06,
+  0.00000000e+00,  0.00000000e+00,  3.43006473e+06,
+  0.00000000e+00,  0.00000000e+00, -1.06101895e+06,
+  0.00000000e+00,  0.00000000e+00,  3.72037466e+06,
+  0.00000000e+00,  0.00000000e+00,  3.75561128e+06,
+  0.00000000e+00,  0.00000000e+00,  1.51006944e+06,
+  0.00000000e+00,  0.00000000e+00,  6.03592678e+06,
+  0.00000000e+00,  0.00000000e+00,  3.82562157e+06,
+  0.00000000e+00,  0.00000000e+00,  3.79038495e+06,
+ -1.50426598e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.60682656e+06,  0.00000000e+00,  0.00000000e+00,
+  3.12683828e+06,  0.00000000e+00,  0.00000000e+00,
+  5.23959548e+06,  0.00000000e+00,  0.00000000e+00,
+  1.51006944e+06,  0.00000000e+00,  0.00000000e+00,
+  3.87690186e+06,  0.00000000e+00,  0.00000000e+00,
+  4.93328046e+06,  0.00000000e+00,  0.00000000e+00,
+  3.82562157e+06,  0.00000000e+00,  0.00000000e+00,
+  7.24883259e+06,  0.00000000e+00,  0.00000000e+00,
+  4.88200017e+06,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -1.50426598e+06,  0.00000000e+00,
+  0.00000000e+00, -1.60682656e+06,  0.00000000e+00,
+  0.00000000e+00,  3.12683828e+06,  0.00000000e+00,
+  0.00000000e+00,  5.23959548e+06,  0.00000000e+00,
+  0.00000000e+00,  1.51006944e+06,  0.00000000e+00,
+  0.00000000e+00,  3.87690186e+06,  0.00000000e+00,
+  0.00000000e+00,  4.93328046e+06,  0.00000000e+00,
+  0.00000000e+00,  3.82562157e+06,  0.00000000e+00,
+  0.00000000e+00,  7.24883259e+06,  0.00000000e+00,
+  0.00000000e+00,  4.88200017e+06,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -1.50426598e+06,
+  0.00000000e+00,  0.00000000e+00, -1.60682656e+06,
+  0.00000000e+00,  0.00000000e+00,  3.12683828e+06,
+  0.00000000e+00,  0.00000000e+00,  5.23959548e+06,
+  0.00000000e+00,  0.00000000e+00,  1.51006944e+06,
+  0.00000000e+00,  0.00000000e+00,  3.87690186e+06,
+  0.00000000e+00,  0.00000000e+00,  4.93328046e+06,
+  0.00000000e+00,  0.00000000e+00,  3.82562157e+06,
+  0.00000000e+00,  0.00000000e+00,  7.24883259e+06,
+  0.00000000e+00,  0.00000000e+00,  4.88200017e+06,
+ -1.49447802e+06,  0.00000000e+00,  0.00000000e+00,
+  3.06615298e+06,  0.00000000e+00,  0.00000000e+00,
+ -1.58920825e+06,  0.00000000e+00,  0.00000000e+00,
+  5.24938343e+06,  0.00000000e+00,  0.00000000e+00,
+  3.83775006e+06,  0.00000000e+00,  0.00000000e+00,
+  1.51006944e+06,  0.00000000e+00,  0.00000000e+00,
+  4.92936528e+06,  0.00000000e+00,  0.00000000e+00,
+  3.79038495e+06,  0.00000000e+00,  0.00000000e+00,
+  4.88200017e+06,  0.00000000e+00,  0.00000000e+00,
+  7.20968078e+06,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -1.49447802e+06,  0.00000000e+00,
+  0.00000000e+00,  3.06615298e+06,  0.00000000e+00,
+  0.00000000e+00, -1.58920825e+06,  0.00000000e+00,
+  0.00000000e+00,  5.24938343e+06,  0.00000000e+00,
+  0.00000000e+00,  3.83775006e+06,  0.00000000e+00,
+  0.00000000e+00,  1.51006944e+06,  0.00000000e+00,
+  0.00000000e+00,  4.92936528e+06,  0.00000000e+00,
+  0.00000000e+00,  3.79038495e+06,  0.00000000e+00,
+  0.00000000e+00,  4.88200017e+06,  0.00000000e+00,
+  0.00000000e+00,  7.20968078e+06,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -1.49447802e+06,
+  0.00000000e+00,  0.00000000e+00,  3.06615298e+06,
+  0.00000000e+00,  0.00000000e+00, -1.58920825e+06,
+  0.00000000e+00,  0.00000000e+00,  5.24938343e+06,
+  0.00000000e+00,  0.00000000e+00,  3.83775006e+06,
+  0.00000000e+00,  0.00000000e+00,  1.51006944e+06,
+  0.00000000e+00,  0.00000000e+00,  4.92936528e+06,
+  0.00000000e+00,  0.00000000e+00,  3.79038495e+06,
+  0.00000000e+00,  0.00000000e+00,  4.88200017e+06,
+  0.00000000e+00,  0.00000000e+00,  7.20968078e+06,
+};
+
+pylith::feassemble::ElasticityExplicitData3DQuadratic::ElasticityExplicitData3DQuadratic(void)
+{ // constructor
+  spaceDim = _spaceDim;
+  cellDim = _cellDim;
+  numVertices = _numVertices;
+  numCells = _numCells;
+  numBasis = _numBasis;
+  numQuadPts = _numQuadPts;
+  matType = const_cast<char*>(_matType);
+  matDBFilename = const_cast<char*>(_matDBFilename);
+  matId = _matId;
+  matLabel = const_cast<char*>(_matLabel);
+  dt = _dt;
+  vertices = const_cast<double*>(_vertices);
+  cells = const_cast<int*>(_cells);
+  quadPts = const_cast<double*>(_quadPts);
+  quadWts = const_cast<double*>(_quadWts);
+  basis = const_cast<double*>(_basis);
+  basisDeriv = const_cast<double*>(_basisDeriv);
+  fieldTpdt = const_cast<double*>(_fieldTpdt);
+  fieldT = const_cast<double*>(_fieldT);
+  fieldTmdt = const_cast<double*>(_fieldTmdt);
+  valsResidual = const_cast<double*>(_valsResidual);
+  valsJacobian = const_cast<double*>(_valsJacobian);
+} // constructor
+
+pylith::feassemble::ElasticityExplicitData3DQuadratic::~ElasticityExplicitData3DQuadratic(void)
+{}
+
+
+// End of file

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DQuadratic.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/ElasticityExplicitData3DQuadratic.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,88 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application elasticityexplicit.
+
+#if !defined(pylith_feassemble_elasticityexplicitdata3dquadratic_hh)
+#define pylith_feassemble_elasticityexplicitdata3dquadratic_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+  namespace feassemble {
+     class ElasticityExplicitData3DQuadratic;
+  } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityExplicitData3DQuadratic : public IntegratorData
+{
+
+public: 
+
+  /// Constructor
+  ElasticityExplicitData3DQuadratic(void);
+
+  /// Destructor
+  ~ElasticityExplicitData3DQuadratic(void);
+
+private:
+
+  static const int _spaceDim;
+
+  static const int _cellDim;
+
+  static const int _numVertices;
+
+  static const int _numCells;
+
+  static const int _numBasis;
+
+  static const int _numQuadPts;
+
+  static const char* _matType;
+
+  static const char* _matDBFilename;
+
+  static const int _matId;
+
+  static const char* _matLabel;
+
+  static const double _dt;
+
+  static const double _vertices[];
+
+  static const int _cells[];
+
+  static const double _quadPts[];
+
+  static const double _quadWts[];
+
+  static const double _basis[];
+
+  static const double _basisDeriv[];
+
+  static const double _fieldTpdt[];
+
+  static const double _fieldT[];
+
+  static const double _fieldTmdt[];
+
+  static const double _valsResidual[];
+
+  static const double _valsJacobian[];
+
+};
+
+#endif // pylith_feassemble_elasticityexplicitdata3dquadratic_hh
+
+// End of file

Deleted: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DLinear.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DLinear.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DLinear.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -1,106 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-//                           Brad T. Aagaard
-//                        U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-// DO NOT EDIT THIS FILE
-// This file was generated from python application integratorinertia1dlinear.
-
-#include "IntegratorDataInertia1DLinear.hh"
-
-const int pylith::feassemble::IntegratorDataInertia1DLinear::_numVertices = 2;
-
-const int pylith::feassemble::IntegratorDataInertia1DLinear::_spaceDim = 1;
-
-const int pylith::feassemble::IntegratorDataInertia1DLinear::_numCells = 1;
-
-const int pylith::feassemble::IntegratorDataInertia1DLinear::_cellDim = 1;
-
-const int pylith::feassemble::IntegratorDataInertia1DLinear::_numBasis = 2;
-
-const int pylith::feassemble::IntegratorDataInertia1DLinear::_numQuadPts = 1;
-
-const int pylith::feassemble::IntegratorDataInertia1DLinear::_fiberDim = 1;
-
-const double pylith::feassemble::IntegratorDataInertia1DLinear::_vertices[] = {
- -2.50000000e-01,
-  2.00000000e+00,
-};
-
-const int pylith::feassemble::IntegratorDataInertia1DLinear::_cells[] = {
-       0,       1,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DLinear::_quadPts[] = {
-  0.00000000e+00,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DLinear::_quadWts[] = {
-  2.00000000e+00,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DLinear::_basis[] = {
-  5.00000000e-01,
-  5.00000000e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DLinear::_basisDeriv[] = {
- -5.00000000e-01,
-  5.00000000e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DLinear::_fieldIn[] = {
-  1.20000000e+00,
-  1.50000000e+00,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DLinear::_valsAction[] = {
-  1.51875000e+00,
-  1.51875000e+00,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DLinear::_valsMatrix[] = {
-  5.62500000e-01,
-  5.62500000e-01,
-  5.62500000e-01,
-  5.62500000e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DLinear::_valsLumped[] = {
-  1.12500000e+00,
-  1.12500000e+00,
-};
-
-pylith::feassemble::IntegratorDataInertia1DLinear::IntegratorDataInertia1DLinear(void)
-{ // constructor
-  numVertices = _numVertices;
-  spaceDim = _spaceDim;
-  numCells = _numCells;
-  cellDim = _cellDim;
-  numBasis = _numBasis;
-  numQuadPts = _numQuadPts;
-  fiberDim = _fiberDim;
-  vertices = const_cast<double*>(_vertices);
-  cells = const_cast<int*>(_cells);
-  quadPts = const_cast<double*>(_quadPts);
-  quadWts = const_cast<double*>(_quadWts);
-  basis = const_cast<double*>(_basis);
-  basisDeriv = const_cast<double*>(_basisDeriv);
-  fieldIn = const_cast<double*>(_fieldIn);
-  valsAction = const_cast<double*>(_valsAction);
-  valsMatrix = const_cast<double*>(_valsMatrix);
-  valsLumped = const_cast<double*>(_valsLumped);
-} // constructor
-
-pylith::feassemble::IntegratorDataInertia1DLinear::~IntegratorDataInertia1DLinear(void)
-{}
-
-
-// End of file

Deleted: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DLinear.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DLinear.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DLinear.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -1,78 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-//                           Brad T. Aagaard
-//                        U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-// DO NOT EDIT THIS FILE
-// This file was generated from python application integratorinertia1dlinear.
-
-#if !defined(pylith_feassemble_integratordatainertia1dlinear_hh)
-#define pylith_feassemble_integratordatainertia1dlinear_hh
-
-#include "IntegratorData.hh"
-
-namespace pylith {
-  namespace feassemble {
-     class IntegratorDataInertia1DLinear;
-  } // pylith
-} // feassemble
-
-class pylith::feassemble::IntegratorDataInertia1DLinear : public IntegratorData
-{
-
-public: 
-
-  /// Constructor
-  IntegratorDataInertia1DLinear(void);
-
-  /// Destructor
-  ~IntegratorDataInertia1DLinear(void);
-
-private:
-
-  static const int _numVertices;
-
-  static const int _spaceDim;
-
-  static const int _numCells;
-
-  static const int _cellDim;
-
-  static const int _numBasis;
-
-  static const int _numQuadPts;
-
-  static const int _fiberDim;
-
-  static const double _vertices[];
-
-  static const int _cells[];
-
-  static const double _quadPts[];
-
-  static const double _quadWts[];
-
-  static const double _basis[];
-
-  static const double _basisDeriv[];
-
-  static const double _fieldIn[];
-
-  static const double _valsAction[];
-
-  static const double _valsMatrix[];
-
-  static const double _valsLumped[];
-
-};
-
-#endif // pylith_feassemble_integratordatainertia1dlinear_hh
-
-// End of file

Deleted: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DQuadratic.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DQuadratic.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -1,124 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-//                           Brad T. Aagaard
-//                        U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-// DO NOT EDIT THIS FILE
-// This file was generated from python application integratorinertia1dquadratic.
-
-#include "IntegratorDataInertia1DQuadratic.hh"
-
-const int pylith::feassemble::IntegratorDataInertia1DQuadratic::_numVertices = 3;
-
-const int pylith::feassemble::IntegratorDataInertia1DQuadratic::_spaceDim = 1;
-
-const int pylith::feassemble::IntegratorDataInertia1DQuadratic::_numCells = 1;
-
-const int pylith::feassemble::IntegratorDataInertia1DQuadratic::_cellDim = 1;
-
-const int pylith::feassemble::IntegratorDataInertia1DQuadratic::_numBasis = 3;
-
-const int pylith::feassemble::IntegratorDataInertia1DQuadratic::_numQuadPts = 2;
-
-const int pylith::feassemble::IntegratorDataInertia1DQuadratic::_fiberDim = 1;
-
-const double pylith::feassemble::IntegratorDataInertia1DQuadratic::_vertices[] = {
- -2.50000000e-01,
-  8.75000000e-01,
-  2.00000000e+00,
-};
-
-const int pylith::feassemble::IntegratorDataInertia1DQuadratic::_cells[] = {
-       0,       1,       2,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DQuadratic::_quadPts[] = {
- -5.77350269e-01,
-  5.77350269e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DQuadratic::_quadWts[] = {
-  1.00000000e+00,  1.00000000e+00,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DQuadratic::_basis[] = {
-  4.55341801e-01,
-  6.66666667e-01,
- -1.22008468e-01,
- -1.22008468e-01,
-  6.66666667e-01,
-  4.55341801e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DQuadratic::_basisDeriv[] = {
- -1.07735027e+00,
-  1.15470054e+00,
- -7.73502692e-02,
-  7.73502692e-02,
- -1.15470054e+00,
-  1.07735027e+00,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DQuadratic::_fieldIn[] = {
-  1.20000000e+00,
-  1.50000000e+00,
- -8.00000000e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DQuadratic::_valsAction[] = {
-  7.75000000e-01,
-  1.60000000e+00,
-  2.50000000e-02,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DQuadratic::_valsMatrix[] = {
-  2.50000000e-01,
-  2.50000000e-01,
- -1.25000000e-01,
-  2.50000000e-01,
-  1.00000000e-00,
-  2.50000000e-01,
- -1.25000000e-01,
-  2.50000000e-01,
-  2.50000000e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia1DQuadratic::_valsLumped[] = {
-  3.75000000e-01,
-  1.50000000e+00,
-  3.75000000e-01,
-};
-
-pylith::feassemble::IntegratorDataInertia1DQuadratic::IntegratorDataInertia1DQuadratic(void)
-{ // constructor
-  numVertices = _numVertices;
-  spaceDim = _spaceDim;
-  numCells = _numCells;
-  cellDim = _cellDim;
-  numBasis = _numBasis;
-  numQuadPts = _numQuadPts;
-  fiberDim = _fiberDim;
-  vertices = const_cast<double*>(_vertices);
-  cells = const_cast<int*>(_cells);
-  quadPts = const_cast<double*>(_quadPts);
-  quadWts = const_cast<double*>(_quadWts);
-  basis = const_cast<double*>(_basis);
-  basisDeriv = const_cast<double*>(_basisDeriv);
-  fieldIn = const_cast<double*>(_fieldIn);
-  valsAction = const_cast<double*>(_valsAction);
-  valsMatrix = const_cast<double*>(_valsMatrix);
-  valsLumped = const_cast<double*>(_valsLumped);
-} // constructor
-
-pylith::feassemble::IntegratorDataInertia1DQuadratic::~IntegratorDataInertia1DQuadratic(void)
-{}
-
-
-// End of file

Deleted: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DQuadratic.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia1DQuadratic.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -1,78 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-//                           Brad T. Aagaard
-//                        U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-// DO NOT EDIT THIS FILE
-// This file was generated from python application integratorinertia1dquadratic.
-
-#if !defined(pylith_feassemble_integratordatainertia1dquadratic_hh)
-#define pylith_feassemble_integratordatainertia1dquadratic_hh
-
-#include "IntegratorData.hh"
-
-namespace pylith {
-  namespace feassemble {
-     class IntegratorDataInertia1DQuadratic;
-  } // pylith
-} // feassemble
-
-class pylith::feassemble::IntegratorDataInertia1DQuadratic : public IntegratorData
-{
-
-public: 
-
-  /// Constructor
-  IntegratorDataInertia1DQuadratic(void);
-
-  /// Destructor
-  ~IntegratorDataInertia1DQuadratic(void);
-
-private:
-
-  static const int _numVertices;
-
-  static const int _spaceDim;
-
-  static const int _numCells;
-
-  static const int _cellDim;
-
-  static const int _numBasis;
-
-  static const int _numQuadPts;
-
-  static const int _fiberDim;
-
-  static const double _vertices[];
-
-  static const int _cells[];
-
-  static const double _quadPts[];
-
-  static const double _quadWts[];
-
-  static const double _basis[];
-
-  static const double _basisDeriv[];
-
-  static const double _fieldIn[];
-
-  static const double _valsAction[];
-
-  static const double _valsMatrix[];
-
-  static const double _valsLumped[];
-
-};
-
-#endif // pylith_feassemble_integratordatainertia1dquadratic_hh
-
-// End of file

Deleted: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DLinear.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DLinear.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DLinear.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -1,159 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-//                           Brad T. Aagaard
-//                        U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-// DO NOT EDIT THIS FILE
-// This file was generated from python application integratorinertia3dlinear.
-
-#include "IntegratorDataInertia3DLinear.hh"
-
-const int pylith::feassemble::IntegratorDataInertia3DLinear::_numVertices = 4;
-
-const int pylith::feassemble::IntegratorDataInertia3DLinear::_spaceDim = 3;
-
-const int pylith::feassemble::IntegratorDataInertia3DLinear::_numCells = 1;
-
-const int pylith::feassemble::IntegratorDataInertia3DLinear::_cellDim = 3;
-
-const int pylith::feassemble::IntegratorDataInertia3DLinear::_numBasis = 4;
-
-const int pylith::feassemble::IntegratorDataInertia3DLinear::_numQuadPts = 1;
-
-const int pylith::feassemble::IntegratorDataInertia3DLinear::_fiberDim = 3;
-
-const double pylith::feassemble::IntegratorDataInertia3DLinear::_vertices[] = {
- -5.00000000e-01, -1.00000000e+00, -5.00000000e-01,
-  2.00000000e+00, -5.00000000e-01, -4.00000000e-01,
-  1.00000000e+00, -1.00000000e-01, -3.00000000e-01,
- -2.00000000e-01,  5.00000000e-01,  2.00000000e+00,
-};
-
-const int pylith::feassemble::IntegratorDataInertia3DLinear::_cells[] = {
-       0,       1,       2,       3,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DLinear::_quadPts[] = {
-  2.50000000e-01,  2.50000000e-01,  2.50000000e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DLinear::_quadWts[] = {
-  1.66666667e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DLinear::_basis[] = {
-  2.50000000e-01,  2.50000000e-01,  2.50000000e-01,
-  2.50000000e-01,};
-
-const double pylith::feassemble::IntegratorDataInertia3DLinear::_basisDeriv[] = {
- -1.00000000e+00, -1.00000000e+00, -1.00000000e+00,
-  1.00000000e+00,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  1.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00,  1.00000000e+00,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DLinear::_fieldIn[] = {
-  1.20000000e+00,  1.00000000e-01, -3.00000000e-01,
-  2.00000000e-01, -8.00000000e-01,  1.20000000e+00,
-  1.30000000e+00, -2.00000000e-01,  1.70000000e+00,
-  1.10000000e+00,  1.40000000e+00,  9.00000000e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DLinear::_valsAction[] = {
-  1.27775000e-01,  1.68125000e-02,  1.17687500e-01,
-  1.27775000e-01,  1.68125000e-02,  1.17687500e-01,
-  1.27775000e-01,  1.68125000e-02,  1.17687500e-01,
-  1.27775000e-01,  1.68125000e-02,  1.17687500e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DLinear::_valsMatrix[] = {
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  3.36250000e-02,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  3.36250000e-02,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-  0.00000000e+00,  0.00000000e+00,  3.36250000e-02,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DLinear::_valsLumped[] = {
-  1.34500000e-01,  1.34500000e-01,  1.34500000e-01,
-  1.34500000e-01,  1.34500000e-01,  1.34500000e-01,
-  1.34500000e-01,  1.34500000e-01,  1.34500000e-01,
-  1.34500000e-01,  1.34500000e-01,  1.34500000e-01,
-};
-
-pylith::feassemble::IntegratorDataInertia3DLinear::IntegratorDataInertia3DLinear(void)
-{ // constructor
-  numVertices = _numVertices;
-  spaceDim = _spaceDim;
-  numCells = _numCells;
-  cellDim = _cellDim;
-  numBasis = _numBasis;
-  numQuadPts = _numQuadPts;
-  fiberDim = _fiberDim;
-  vertices = const_cast<double*>(_vertices);
-  cells = const_cast<int*>(_cells);
-  quadPts = const_cast<double*>(_quadPts);
-  quadWts = const_cast<double*>(_quadWts);
-  basis = const_cast<double*>(_basis);
-  basisDeriv = const_cast<double*>(_basisDeriv);
-  fieldIn = const_cast<double*>(_fieldIn);
-  valsAction = const_cast<double*>(_valsAction);
-  valsMatrix = const_cast<double*>(_valsMatrix);
-  valsLumped = const_cast<double*>(_valsLumped);
-} // constructor
-
-pylith::feassemble::IntegratorDataInertia3DLinear::~IntegratorDataInertia3DLinear(void)
-{}
-
-
-// End of file

Deleted: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DLinear.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DLinear.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DLinear.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -1,78 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-//                           Brad T. Aagaard
-//                        U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-// DO NOT EDIT THIS FILE
-// This file was generated from python application integratorinertia3dlinear.
-
-#if !defined(pylith_feassemble_integratordatainertia3dlinear_hh)
-#define pylith_feassemble_integratordatainertia3dlinear_hh
-
-#include "IntegratorData.hh"
-
-namespace pylith {
-  namespace feassemble {
-     class IntegratorDataInertia3DLinear;
-  } // pylith
-} // feassemble
-
-class pylith::feassemble::IntegratorDataInertia3DLinear : public IntegratorData
-{
-
-public: 
-
-  /// Constructor
-  IntegratorDataInertia3DLinear(void);
-
-  /// Destructor
-  ~IntegratorDataInertia3DLinear(void);
-
-private:
-
-  static const int _numVertices;
-
-  static const int _spaceDim;
-
-  static const int _numCells;
-
-  static const int _cellDim;
-
-  static const int _numBasis;
-
-  static const int _numQuadPts;
-
-  static const int _fiberDim;
-
-  static const double _vertices[];
-
-  static const int _cells[];
-
-  static const double _quadPts[];
-
-  static const double _quadWts[];
-
-  static const double _basis[];
-
-  static const double _basisDeriv[];
-
-  static const double _fieldIn[];
-
-  static const double _valsAction[];
-
-  static const double _valsMatrix[];
-
-  static const double _valsLumped[];
-
-};
-
-#endif // pylith_feassemble_integratordatainertia3dlinear_hh
-
-// End of file

Deleted: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DQuadratic.cc	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DQuadratic.cc	2007-05-31 00:10:24 UTC (rev 7008)
@@ -1,486 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-//                           Brad T. Aagaard
-//                        U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-// DO NOT EDIT THIS FILE
-// This file was generated from python application integratorinertia3dquadratic.
-
-#include "IntegratorDataInertia3DQuadratic.hh"
-
-const int pylith::feassemble::IntegratorDataInertia3DQuadratic::_numVertices = 10;
-
-const int pylith::feassemble::IntegratorDataInertia3DQuadratic::_spaceDim = 3;
-
-const int pylith::feassemble::IntegratorDataInertia3DQuadratic::_numCells = 1;
-
-const int pylith::feassemble::IntegratorDataInertia3DQuadratic::_cellDim = 3;
-
-const int pylith::feassemble::IntegratorDataInertia3DQuadratic::_numBasis = 10;
-
-const int pylith::feassemble::IntegratorDataInertia3DQuadratic::_numQuadPts = 4;
-
-const int pylith::feassemble::IntegratorDataInertia3DQuadratic::_fiberDim = 3;
-
-const double pylith::feassemble::IntegratorDataInertia3DQuadratic::_vertices[] = {
- -5.00000000e-01, -2.00000000e+00, -1.00000000e+00,
-  2.00000000e+00, -2.00000000e+00, -5.00000000e-01,
-  1.00000000e+00,  1.00000000e+00,  0.00000000e+00,
-  2.00000000e-01,  5.00000000e-01,  2.00000000e+00,
-  7.00000000e-01, -2.10000000e+00, -8.00000000e-01,
-  3.00000000e-01, -5.00000000e-01, -5.00000000e-01,
- -2.00000000e-01, -8.00000000e-01,  5.00000000e-01,
-  1.50000000e+00, -6.00000000e-01, -2.00000000e-01,
-  6.00000000e-01,  8.00000000e-01,  9.00000000e-01,
-  1.10000000e+00, -8.00000000e-01,  7.00000000e-01,
-};
-
-const int pylith::feassemble::IntegratorDataInertia3DQuadratic::_cells[] = {
-       0,       1,       2,       3,       4,       5,       6,       7,       8,       9,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DQuadratic::_quadPts[] = {
-  8.33333333e-02,  8.33333333e-02,  8.33333333e-02,
-  7.50000000e-01,  8.33333333e-02,  8.33333333e-02,
-  8.33333333e-02,  7.50000000e-01,  8.33333333e-02,
-  8.33333333e-02,  8.33333333e-02,  7.50000000e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DQuadratic::_quadWts[] = {
-  1.25000000e-01,  1.25000000e-01,  1.25000000e-01,  1.25000000e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DQuadratic::_basis[] = {
-  3.75000000e-01, -6.94444444e-02, -6.94444444e-02,
- -6.94444444e-02,  2.50000000e-01,  2.50000000e-01,
-  2.50000000e-01,  2.77777778e-02,  2.77777778e-02,
-  2.77777778e-02, -6.94444444e-02,  3.75000000e-01,
- -6.94444444e-02, -6.94444444e-02,  2.50000000e-01,
-  2.77777778e-02,  2.77777778e-02,  2.50000000e-01,
-  2.77777778e-02,  2.50000000e-01, -6.94444444e-02,
- -6.94444444e-02,  3.75000000e-01, -6.94444444e-02,
-  2.77777778e-02,  2.50000000e-01,  2.77777778e-02,
-  2.50000000e-01,  2.50000000e-01,  2.77777778e-02,
- -6.94444444e-02, -6.94444444e-02, -6.94444444e-02,
-  3.75000000e-01,  2.77777778e-02,  2.77777778e-02,
-  2.50000000e-01,  2.77777778e-02,  2.50000000e-01,
-  2.50000000e-01,};
-
-const double pylith::feassemble::IntegratorDataInertia3DQuadratic::_basisDeriv[] = {
- -2.00000000e+00, -2.00000000e+00, -2.00000000e+00,
- -6.66666667e-01,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00, -6.66666667e-01,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00, -6.66666667e-01,
-  2.66666667e+00, -3.33333333e-01, -3.33333333e-01,
- -3.33333333e-01,  2.66666667e+00, -3.33333333e-01,
- -3.33333333e-01, -3.33333333e-01,  2.66666667e+00,
-  3.33333333e-01,  3.33333333e-01,  0.00000000e+00,
-  0.00000000e+00,  3.33333333e-01,  3.33333333e-01,
-  3.33333333e-01,  0.00000000e+00,  3.33333333e-01,
-  6.66666667e-01,  6.66666667e-01,  6.66666667e-01,
-  2.00000000e+00,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00, -6.66666667e-01,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00, -6.66666667e-01,
- -2.66666667e+00, -3.00000000e+00, -3.00000000e+00,
- -3.33333333e-01,  1.11022302e-16, -3.33333333e-01,
- -3.33333333e-01, -3.33333333e-01,  1.11022302e-16,
-  3.33333333e-01,  3.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  3.33333333e-01,  3.33333333e-01,
-  3.33333333e-01,  0.00000000e+00,  3.00000000e+00,
-  6.66666667e-01,  6.66666667e-01,  6.66666667e-01,
- -6.66666667e-01,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  2.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00, -6.66666667e-01,
-  1.11022302e-16, -3.33333333e-01, -3.33333333e-01,
- -3.00000000e+00, -2.66666667e+00, -3.00000000e+00,
- -3.33333333e-01, -3.33333333e-01, -1.11022302e-16,
-  3.00000000e+00,  3.33333333e-01,  0.00000000e+00,
-  0.00000000e+00,  3.33333333e-01,  3.00000000e+00,
-  3.33333333e-01,  0.00000000e+00,  3.33333333e-01,
-  6.66666667e-01,  6.66666667e-01,  6.66666667e-01,
- -6.66666667e-01,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00, -6.66666667e-01,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00,  2.00000000e+00,
- -1.11022302e-16, -3.33333333e-01, -3.33333333e-01,
- -3.33333333e-01, -1.11022302e-16, -3.33333333e-01,
- -3.00000000e+00, -3.00000000e+00, -2.66666667e+00,
-  3.33333333e-01,  3.33333333e-01,  0.00000000e+00,
-  0.00000000e+00,  3.00000000e+00,  3.33333333e-01,
-  3.00000000e+00,  0.00000000e+00,  3.33333333e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DQuadratic::_fieldIn[] = {
-  1.20000000e+00,  1.50000000e+00,  3.00000000e-01,
-  8.00000000e-01,  9.00000000e-01,  1.40000000e+00,
-  7.00000000e-01,  2.00000000e-01,  8.00000000e-01,
-  1.40000000e+00,  1.50000000e+00,  1.40000000e+00,
-  5.00000000e-01,  7.00000000e-01,  1.60000000e+00,
-  1.90000000e+00,  1.20000000e+00,  1.30000000e+00,
-  6.00000000e-01,  3.00000000e-01,  1.50000000e+00,
-  1.30000000e+00,  6.00000000e-01,  3.00000000e-01,
-  1.40000000e+00,  1.00000000e-01,  1.80000000e+00,
-  2.00000000e-01,  1.00000000e+00,  8.00000000e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DQuadratic::_valsAction[] = {
-  4.64606100e-01,  5.25788473e-01,  3.06532606e-01,
- -3.05228438e-02,  1.75997618e-01,  2.45750439e-01,
-  4.30815359e-01, -1.55977942e-01,  1.64247809e-01,
-  5.76536621e-01,  5.11894577e-01,  1.01873542e+00,
-  1.05787885e+00,  9.67886303e-01,  1.28838018e+00,
-  1.28854795e+00,  8.01898523e-01,  1.24762887e+00,
-  1.36140858e+00,  1.13583478e+00,  1.67487267e+00,
-  1.04098348e+00,  6.27003095e-01,  1.21723778e+00,
-  1.34451321e+00,  7.94951575e-01,  1.60373027e+00,
-  1.11384411e+00,  9.60939355e-01,  1.64448159e+00,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DQuadratic::_valsMatrix[] = {
-  3.43548568e-01,  0.00000000e+00,  0.00000000e+00,
- -8.48894747e-02,  0.00000000e+00,  0.00000000e+00,
- -8.56725109e-02,  0.00000000e+00,  0.00000000e+00,
- -1.09147591e-01,  0.00000000e+00,  0.00000000e+00,
-  1.66568959e-01,  0.00000000e+00,  0.00000000e+00,
-  1.66177441e-01,  0.00000000e+00,  0.00000000e+00,
-  1.54439901e-01,  0.00000000e+00,  0.00000000e+00,
- -4.80415809e-02,  0.00000000e+00,  0.00000000e+00,
- -6.01706390e-02,  0.00000000e+00,  0.00000000e+00,
- -5.97791209e-02,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  3.43548568e-01,  0.00000000e+00,
-  0.00000000e+00, -8.48894747e-02,  0.00000000e+00,
-  0.00000000e+00, -8.56725109e-02,  0.00000000e+00,
-  0.00000000e+00, -1.09147591e-01,  0.00000000e+00,
-  0.00000000e+00,  1.66568959e-01,  0.00000000e+00,
-  0.00000000e+00,  1.66177441e-01,  0.00000000e+00,
-  0.00000000e+00,  1.54439901e-01,  0.00000000e+00,
-  0.00000000e+00, -4.80415809e-02,  0.00000000e+00,
-  0.00000000e+00, -6.01706390e-02,  0.00000000e+00,
-  0.00000000e+00, -5.97791209e-02,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00,  3.43548568e-01,
-  0.00000000e+00,  0.00000000e+00, -8.48894747e-02,
-  0.00000000e+00,  0.00000000e+00, -8.56725109e-02,
-  0.00000000e+00,  0.00000000e+00, -1.09147591e-01,
-  0.00000000e+00,  0.00000000e+00,  1.66568959e-01,
-  0.00000000e+00,  0.00000000e+00,  1.66177441e-01,
-  0.00000000e+00,  0.00000000e+00,  1.54439901e-01,
-  0.00000000e+00,  0.00000000e+00, -4.80415809e-02,
-  0.00000000e+00,  0.00000000e+00, -6.01706390e-02,
-  0.00000000e+00,  0.00000000e+00, -5.97791209e-02,
- -8.48894747e-02,  0.00000000e+00,  0.00000000e+00,
-  2.98421911e-01,  0.00000000e+00,  0.00000000e+00,
- -7.54164523e-02,  0.00000000e+00,  0.00000000e+00,
- -9.88915324e-02,  0.00000000e+00,  0.00000000e+00,
-  1.29647148e-01,  0.00000000e+00,  0.00000000e+00,
- -5.72720336e-02,  0.00000000e+00,  0.00000000e+00,
- -6.90095736e-02,  0.00000000e+00,  0.00000000e+00,
-  1.34383659e-01,  0.00000000e+00,  0.00000000e+00,
- -6.42730624e-02,  0.00000000e+00,  0.00000000e+00,
-  1.22646119e-01,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00, -8.48894747e-02,  0.00000000e+00,
-  0.00000000e+00,  2.98421911e-01,  0.00000000e+00,
-  0.00000000e+00, -7.54164523e-02,  0.00000000e+00,
-  0.00000000e+00, -9.88915324e-02,  0.00000000e+00,
-  0.00000000e+00,  1.29647148e-01,  0.00000000e+00,
-  0.00000000e+00, -5.72720336e-02,  0.00000000e+00,
-  0.00000000e+00, -6.90095736e-02,  0.00000000e+00,
-  0.00000000e+00,  1.34383659e-01,  0.00000000e+00,
-  0.00000000e+00, -6.42730624e-02,  0.00000000e+00,
-  0.00000000e+00,  1.22646119e-01,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00, -8.48894747e-02,
-  0.00000000e+00,  0.00000000e+00,  2.98421911e-01,
-  0.00000000e+00,  0.00000000e+00, -7.54164523e-02,
-  0.00000000e+00,  0.00000000e+00, -9.88915324e-02,
-  0.00000000e+00,  0.00000000e+00,  1.29647148e-01,
-  0.00000000e+00,  0.00000000e+00, -5.72720336e-02,
-  0.00000000e+00,  0.00000000e+00, -6.90095736e-02,
-  0.00000000e+00,  0.00000000e+00,  1.34383659e-01,
-  0.00000000e+00,  0.00000000e+00, -6.42730624e-02,
-  0.00000000e+00,  0.00000000e+00,  1.22646119e-01,
- -8.56725109e-02,  0.00000000e+00,  0.00000000e+00,
- -7.54164523e-02,  0.00000000e+00,  0.00000000e+00,
-  3.01867270e-01,  0.00000000e+00,  0.00000000e+00,
- -9.96745685e-02,  0.00000000e+00,  0.00000000e+00,
- -5.65673011e-02,  0.00000000e+00,  0.00000000e+00,
-  1.32074560e-01,  0.00000000e+00,  0.00000000e+00,
- -6.86963592e-02,  0.00000000e+00,  0.00000000e+00,
-  1.37202589e-01,  0.00000000e+00,  0.00000000e+00,
-  1.25073531e-01,  0.00000000e+00,  0.00000000e+00,
- -6.35683299e-02,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00, -8.56725109e-02,  0.00000000e+00,
-  0.00000000e+00, -7.54164523e-02,  0.00000000e+00,
-  0.00000000e+00,  3.01867270e-01,  0.00000000e+00,
-  0.00000000e+00, -9.96745685e-02,  0.00000000e+00,
-  0.00000000e+00, -5.65673011e-02,  0.00000000e+00,
-  0.00000000e+00,  1.32074560e-01,  0.00000000e+00,
-  0.00000000e+00, -6.86963592e-02,  0.00000000e+00,
-  0.00000000e+00,  1.37202589e-01,  0.00000000e+00,
-  0.00000000e+00,  1.25073531e-01,  0.00000000e+00,
-  0.00000000e+00, -6.35683299e-02,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00, -8.56725109e-02,
-  0.00000000e+00,  0.00000000e+00, -7.54164523e-02,
-  0.00000000e+00,  0.00000000e+00,  3.01867270e-01,
-  0.00000000e+00,  0.00000000e+00, -9.96745685e-02,
-  0.00000000e+00,  0.00000000e+00, -5.65673011e-02,
-  0.00000000e+00,  0.00000000e+00,  1.32074560e-01,
-  0.00000000e+00,  0.00000000e+00, -6.86963592e-02,
-  0.00000000e+00,  0.00000000e+00,  1.37202589e-01,
-  0.00000000e+00,  0.00000000e+00,  1.25073531e-01,
-  0.00000000e+00,  0.00000000e+00, -6.35683299e-02,
- -1.09147591e-01,  0.00000000e+00,  0.00000000e+00,
- -9.88915324e-02,  0.00000000e+00,  0.00000000e+00,
- -9.96745685e-02,  0.00000000e+00,  0.00000000e+00,
-  4.05157622e-01,  0.00000000e+00,  0.00000000e+00,
- -4.71772691e-02,  0.00000000e+00,  0.00000000e+00,
- -4.75687872e-02,  0.00000000e+00,  0.00000000e+00,
-  2.04847308e-01,  0.00000000e+00,  0.00000000e+00,
- -4.24407579e-02,  0.00000000e+00,  0.00000000e+00,
-  2.09583819e-01,  0.00000000e+00,  0.00000000e+00,
-  2.09975337e-01,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00, -1.09147591e-01,  0.00000000e+00,
-  0.00000000e+00, -9.88915324e-02,  0.00000000e+00,
-  0.00000000e+00, -9.96745685e-02,  0.00000000e+00,
-  0.00000000e+00,  4.05157622e-01,  0.00000000e+00,
-  0.00000000e+00, -4.71772691e-02,  0.00000000e+00,
-  0.00000000e+00, -4.75687872e-02,  0.00000000e+00,
-  0.00000000e+00,  2.04847308e-01,  0.00000000e+00,
-  0.00000000e+00, -4.24407579e-02,  0.00000000e+00,
-  0.00000000e+00,  2.09583819e-01,  0.00000000e+00,
-  0.00000000e+00,  2.09975337e-01,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00, -1.09147591e-01,
-  0.00000000e+00,  0.00000000e+00, -9.88915324e-02,
-  0.00000000e+00,  0.00000000e+00, -9.96745685e-02,
-  0.00000000e+00,  0.00000000e+00,  4.05157622e-01,
-  0.00000000e+00,  0.00000000e+00, -4.71772691e-02,
-  0.00000000e+00,  0.00000000e+00, -4.75687872e-02,
-  0.00000000e+00,  0.00000000e+00,  2.04847308e-01,
-  0.00000000e+00,  0.00000000e+00, -4.24407579e-02,
-  0.00000000e+00,  0.00000000e+00,  2.09583819e-01,
-  0.00000000e+00,  0.00000000e+00,  2.09975337e-01,
-  1.66568959e-01,  0.00000000e+00,  0.00000000e+00,
-  1.29647148e-01,  0.00000000e+00,  0.00000000e+00,
- -5.65673011e-02,  0.00000000e+00,  0.00000000e+00,
- -4.71772691e-02,  0.00000000e+00,  0.00000000e+00,
-  2.60383116e-01,  0.00000000e+00,  0.00000000e+00,
-  1.67275892e-01,  0.00000000e+00,  0.00000000e+00,
-  1.71970908e-01,  0.00000000e+00,  0.00000000e+00,
-  1.48814986e-01,  0.00000000e+00,  0.00000000e+00,
-  6.04027778e-02,  0.00000000e+00,  0.00000000e+00,
-  1.53510002e-01,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  1.66568959e-01,  0.00000000e+00,
-  0.00000000e+00,  1.29647148e-01,  0.00000000e+00,
-  0.00000000e+00, -5.65673011e-02,  0.00000000e+00,
-  0.00000000e+00, -4.71772691e-02,  0.00000000e+00,
-  0.00000000e+00,  2.60383116e-01,  0.00000000e+00,
-  0.00000000e+00,  1.67275892e-01,  0.00000000e+00,
-  0.00000000e+00,  1.71970908e-01,  0.00000000e+00,
-  0.00000000e+00,  1.48814986e-01,  0.00000000e+00,
-  0.00000000e+00,  6.04027778e-02,  0.00000000e+00,
-  0.00000000e+00,  1.53510002e-01,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00,  1.66568959e-01,
-  0.00000000e+00,  0.00000000e+00,  1.29647148e-01,
-  0.00000000e+00,  0.00000000e+00, -5.65673011e-02,
-  0.00000000e+00,  0.00000000e+00, -4.71772691e-02,
-  0.00000000e+00,  0.00000000e+00,  2.60383116e-01,
-  0.00000000e+00,  0.00000000e+00,  1.67275892e-01,
-  0.00000000e+00,  0.00000000e+00,  1.71970908e-01,
-  0.00000000e+00,  0.00000000e+00,  1.48814986e-01,
-  0.00000000e+00,  0.00000000e+00,  6.04027778e-02,
-  0.00000000e+00,  0.00000000e+00,  1.53510002e-01,
-  1.66177441e-01,  0.00000000e+00,  0.00000000e+00,
- -5.72720336e-02,  0.00000000e+00,  0.00000000e+00,
-  1.32074560e-01,  0.00000000e+00,  0.00000000e+00,
- -4.75687872e-02,  0.00000000e+00,  0.00000000e+00,
-  1.67275892e-01,  0.00000000e+00,  0.00000000e+00,
-  2.61949188e-01,  0.00000000e+00,  0.00000000e+00,
-  1.72127515e-01,  0.00000000e+00,  0.00000000e+00,
-  1.50224451e-01,  0.00000000e+00,  0.00000000e+00,
-  1.55076075e-01,  0.00000000e+00,  0.00000000e+00,
-  6.04027778e-02,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  1.66177441e-01,  0.00000000e+00,
-  0.00000000e+00, -5.72720336e-02,  0.00000000e+00,
-  0.00000000e+00,  1.32074560e-01,  0.00000000e+00,
-  0.00000000e+00, -4.75687872e-02,  0.00000000e+00,
-  0.00000000e+00,  1.67275892e-01,  0.00000000e+00,
-  0.00000000e+00,  2.61949188e-01,  0.00000000e+00,
-  0.00000000e+00,  1.72127515e-01,  0.00000000e+00,
-  0.00000000e+00,  1.50224451e-01,  0.00000000e+00,
-  0.00000000e+00,  1.55076075e-01,  0.00000000e+00,
-  0.00000000e+00,  6.04027778e-02,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00,  1.66177441e-01,
-  0.00000000e+00,  0.00000000e+00, -5.72720336e-02,
-  0.00000000e+00,  0.00000000e+00,  1.32074560e-01,
-  0.00000000e+00,  0.00000000e+00, -4.75687872e-02,
-  0.00000000e+00,  0.00000000e+00,  1.67275892e-01,
-  0.00000000e+00,  0.00000000e+00,  2.61949188e-01,
-  0.00000000e+00,  0.00000000e+00,  1.72127515e-01,
-  0.00000000e+00,  0.00000000e+00,  1.50224451e-01,
-  0.00000000e+00,  0.00000000e+00,  1.55076075e-01,
-  0.00000000e+00,  0.00000000e+00,  6.04027778e-02,
-  1.54439901e-01,  0.00000000e+00,  0.00000000e+00,
- -6.90095736e-02,  0.00000000e+00,  0.00000000e+00,
- -6.86963592e-02,  0.00000000e+00,  0.00000000e+00,
-  2.04847308e-01,  0.00000000e+00,  0.00000000e+00,
-  1.71970908e-01,  0.00000000e+00,  0.00000000e+00,
-  1.72127515e-01,  0.00000000e+00,  0.00000000e+00,
-  3.08899348e-01,  0.00000000e+00,  0.00000000e+00,
-  6.04027778e-02,  0.00000000e+00,  0.00000000e+00,
-  1.97331219e-01,  0.00000000e+00,  0.00000000e+00,
-  1.97174611e-01,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00,  1.54439901e-01,  0.00000000e+00,
-  0.00000000e+00, -6.90095736e-02,  0.00000000e+00,
-  0.00000000e+00, -6.86963592e-02,  0.00000000e+00,
-  0.00000000e+00,  2.04847308e-01,  0.00000000e+00,
-  0.00000000e+00,  1.71970908e-01,  0.00000000e+00,
-  0.00000000e+00,  1.72127515e-01,  0.00000000e+00,
-  0.00000000e+00,  3.08899348e-01,  0.00000000e+00,
-  0.00000000e+00,  6.04027778e-02,  0.00000000e+00,
-  0.00000000e+00,  1.97331219e-01,  0.00000000e+00,
-  0.00000000e+00,  1.97174611e-01,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00,  1.54439901e-01,
-  0.00000000e+00,  0.00000000e+00, -6.90095736e-02,
-  0.00000000e+00,  0.00000000e+00, -6.86963592e-02,
-  0.00000000e+00,  0.00000000e+00,  2.04847308e-01,
-  0.00000000e+00,  0.00000000e+00,  1.71970908e-01,
-  0.00000000e+00,  0.00000000e+00,  1.72127515e-01,
-  0.00000000e+00,  0.00000000e+00,  3.08899348e-01,
-  0.00000000e+00,  0.00000000e+00,  6.04027778e-02,
-  0.00000000e+00,  0.00000000e+00,  1.97331219e-01,
-  0.00000000e+00,  0.00000000e+00,  1.97174611e-01,
- -4.80415809e-02,  0.00000000e+00,  0.00000000e+00,
-  1.34383659e-01,  0.00000000e+00,  0.00000000e+00,
-  1.37202589e-01,  0.00000000e+00,  0.00000000e+00,
- -4.24407579e-02,  0.00000000e+00,  0.00000000e+00,
-  1.48814986e-01,  0.00000000e+00,  0.00000000e+00,
-  1.50224451e-01,  0.00000000e+00,  0.00000000e+00,
-  6.04027778e-02,  0.00000000e+00,  0.00000000e+00,
-  2.41437071e-01,  0.00000000e+00,  0.00000000e+00,
-  1.53024863e-01,  0.00000000e+00,  0.00000000e+00,
-  1.51615398e-01,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00, -4.80415809e-02,  0.00000000e+00,
-  0.00000000e+00,  1.34383659e-01,  0.00000000e+00,
-  0.00000000e+00,  1.37202589e-01,  0.00000000e+00,
-  0.00000000e+00, -4.24407579e-02,  0.00000000e+00,
-  0.00000000e+00,  1.48814986e-01,  0.00000000e+00,
-  0.00000000e+00,  1.50224451e-01,  0.00000000e+00,
-  0.00000000e+00,  6.04027778e-02,  0.00000000e+00,
-  0.00000000e+00,  2.41437071e-01,  0.00000000e+00,
-  0.00000000e+00,  1.53024863e-01,  0.00000000e+00,
-  0.00000000e+00,  1.51615398e-01,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00, -4.80415809e-02,
-  0.00000000e+00,  0.00000000e+00,  1.34383659e-01,
-  0.00000000e+00,  0.00000000e+00,  1.37202589e-01,
-  0.00000000e+00,  0.00000000e+00, -4.24407579e-02,
-  0.00000000e+00,  0.00000000e+00,  1.48814986e-01,
-  0.00000000e+00,  0.00000000e+00,  1.50224451e-01,
-  0.00000000e+00,  0.00000000e+00,  6.04027778e-02,
-  0.00000000e+00,  0.00000000e+00,  2.41437071e-01,
-  0.00000000e+00,  0.00000000e+00,  1.53024863e-01,
-  0.00000000e+00,  0.00000000e+00,  1.51615398e-01,
- -6.01706390e-02,  0.00000000e+00,  0.00000000e+00,
- -6.42730624e-02,  0.00000000e+00,  0.00000000e+00,
-  1.25073531e-01,  0.00000000e+00,  0.00000000e+00,
-  2.09583819e-01,  0.00000000e+00,  0.00000000e+00,
-  6.04027778e-02,  0.00000000e+00,  0.00000000e+00,
-  1.55076075e-01,  0.00000000e+00,  0.00000000e+00,
-  1.97331219e-01,  0.00000000e+00,  0.00000000e+00,
-  1.53024863e-01,  0.00000000e+00,  0.00000000e+00,
-  2.89953304e-01,  0.00000000e+00,  0.00000000e+00,
-  1.95280007e-01,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00, -6.01706390e-02,  0.00000000e+00,
-  0.00000000e+00, -6.42730624e-02,  0.00000000e+00,
-  0.00000000e+00,  1.25073531e-01,  0.00000000e+00,
-  0.00000000e+00,  2.09583819e-01,  0.00000000e+00,
-  0.00000000e+00,  6.04027778e-02,  0.00000000e+00,
-  0.00000000e+00,  1.55076075e-01,  0.00000000e+00,
-  0.00000000e+00,  1.97331219e-01,  0.00000000e+00,
-  0.00000000e+00,  1.53024863e-01,  0.00000000e+00,
-  0.00000000e+00,  2.89953304e-01,  0.00000000e+00,
-  0.00000000e+00,  1.95280007e-01,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00, -6.01706390e-02,
-  0.00000000e+00,  0.00000000e+00, -6.42730624e-02,
-  0.00000000e+00,  0.00000000e+00,  1.25073531e-01,
-  0.00000000e+00,  0.00000000e+00,  2.09583819e-01,
-  0.00000000e+00,  0.00000000e+00,  6.04027778e-02,
-  0.00000000e+00,  0.00000000e+00,  1.55076075e-01,
-  0.00000000e+00,  0.00000000e+00,  1.97331219e-01,
-  0.00000000e+00,  0.00000000e+00,  1.53024863e-01,
-  0.00000000e+00,  0.00000000e+00,  2.89953304e-01,
-  0.00000000e+00,  0.00000000e+00,  1.95280007e-01,
- -5.97791209e-02,  0.00000000e+00,  0.00000000e+00,
-  1.22646119e-01,  0.00000000e+00,  0.00000000e+00,
- -6.35683299e-02,  0.00000000e+00,  0.00000000e+00,
-  2.09975337e-01,  0.00000000e+00,  0.00000000e+00,
-  1.53510002e-01,  0.00000000e+00,  0.00000000e+00,
-  6.04027778e-02,  0.00000000e+00,  0.00000000e+00,
-  1.97174611e-01,  0.00000000e+00,  0.00000000e+00,
-  1.51615398e-01,  0.00000000e+00,  0.00000000e+00,
-  1.95280007e-01,  0.00000000e+00,  0.00000000e+00,
-  2.88387231e-01,  0.00000000e+00,  0.00000000e+00,
-  0.00000000e+00, -5.97791209e-02,  0.00000000e+00,
-  0.00000000e+00,  1.22646119e-01,  0.00000000e+00,
-  0.00000000e+00, -6.35683299e-02,  0.00000000e+00,
-  0.00000000e+00,  2.09975337e-01,  0.00000000e+00,
-  0.00000000e+00,  1.53510002e-01,  0.00000000e+00,
-  0.00000000e+00,  6.04027778e-02,  0.00000000e+00,
-  0.00000000e+00,  1.97174611e-01,  0.00000000e+00,
-  0.00000000e+00,  1.51615398e-01,  0.00000000e+00,
-  0.00000000e+00,  1.95280007e-01,  0.00000000e+00,
-  0.00000000e+00,  2.88387231e-01,  0.00000000e+00,
-  0.00000000e+00,  0.00000000e+00, -5.97791209e-02,
-  0.00000000e+00,  0.00000000e+00,  1.22646119e-01,
-  0.00000000e+00,  0.00000000e+00, -6.35683299e-02,
-  0.00000000e+00,  0.00000000e+00,  2.09975337e-01,
-  0.00000000e+00,  0.00000000e+00,  1.53510002e-01,
-  0.00000000e+00,  0.00000000e+00,  6.04027778e-02,
-  0.00000000e+00,  0.00000000e+00,  1.97174611e-01,
-  0.00000000e+00,  0.00000000e+00,  1.51615398e-01,
-  0.00000000e+00,  0.00000000e+00,  1.95280007e-01,
-  0.00000000e+00,  0.00000000e+00,  2.88387231e-01,
-};
-
-const double pylith::feassemble::IntegratorDataInertia3DQuadratic::_valsLumped[] = {
-  3.83033951e-01,  3.83033951e-01,  3.83033951e-01,
-  2.35346708e-01,  2.35346708e-01,  2.35346708e-01,
-  2.46622428e-01,  2.46622428e-01,  2.46622428e-01,
-  5.84663580e-01,  5.84663580e-01,  5.84663580e-01,
-  1.15482922e+00,  1.15482922e+00,  1.15482922e+00,
-  1.16046708e+00,  1.16046708e+00,  1.16046708e+00,
-  1.32948765e+00,  1.32948765e+00,  1.32948765e+00,
-  1.08662346e+00,  1.08662346e+00,  1.08662346e+00,
-  1.26128189e+00,  1.26128189e+00,  1.26128189e+00,
-  1.25564403e+00,  1.25564403e+00,  1.25564403e+00,
-};
-
-pylith::feassemble::IntegratorDataInertia3DQuadratic::IntegratorDataInertia3DQuadratic(void)
-{ // constructor
-  numVertices = _numVertices;
-  spaceDim = _spaceDim;
-  numCells = _numCells;
-  cellDim = _cellDim;
-  numBasis = _numBasis;
-  numQuadPts = _numQuadPts;
-  fiberDim = _fiberDim;
-  vertices = const_cast<double*>(_vertices);
-  cells = const_cast<int*>(_cells);
-  quadPts = const_cast<double*>(_quadPts);
-  quadWts = const_cast<double*>(_quadWts);
-  basis = const_cast<double*>(_basis);
-  basisDeriv = const_cast<double*>(_basisDeriv);
-  fieldIn = const_cast<double*>(_fieldIn);
-  valsAction = const_cast<double*>(_valsAction);
-  valsMatrix = const_cast<double*>(_valsMatrix);
-  valsLumped = const_cast<double*>(_valsLumped);
-} // constructor
-
-pylith::feassemble::IntegratorDataInertia3DQuadratic::~IntegratorDataInertia3DQuadratic(void)
-{}
-
-
-// End of file

Deleted: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DQuadratic.hh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorDataInertia3DQuadratic.hh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -1,78 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-//                           Brad T. Aagaard
-//                        U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-// DO NOT EDIT THIS FILE
-// This file was generated from python application integratorinertia3dquadratic.
-
-#if !defined(pylith_feassemble_integratordatainertia3dquadratic_hh)
-#define pylith_feassemble_integratordatainertia3dquadratic_hh
-
-#include "IntegratorData.hh"
-
-namespace pylith {
-  namespace feassemble {
-     class IntegratorDataInertia3DQuadratic;
-  } // pylith
-} // feassemble
-
-class pylith::feassemble::IntegratorDataInertia3DQuadratic : public IntegratorData
-{
-
-public: 
-
-  /// Constructor
-  IntegratorDataInertia3DQuadratic(void);
-
-  /// Destructor
-  ~IntegratorDataInertia3DQuadratic(void);
-
-private:
-
-  static const int _numVertices;
-
-  static const int _spaceDim;
-
-  static const int _numCells;
-
-  static const int _cellDim;
-
-  static const int _numBasis;
-
-  static const int _numQuadPts;
-
-  static const int _fiberDim;
-
-  static const double _vertices[];
-
-  static const int _cells[];
-
-  static const double _quadPts[];
-
-  static const double _quadWts[];
-
-  static const double _basis[];
-
-  static const double _basisDeriv[];
-
-  static const double _fieldIn[];
-
-  static const double _valsAction[];
-
-  static const double _valsMatrix[];
-
-  static const double _valsLumped[];
-
-};
-
-#endif // pylith_feassemble_integratordatainertia3dquadratic_hh
-
-// End of file

Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorElasticity.py
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorElasticity.py	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/IntegratorElasticity.py	2007-05-31 00:10:24 UTC (rev 7008)
@@ -59,7 +59,6 @@
 
     # Matrix of elasticity values
     D = self._calculateElasticityMat()
-    print "D: ",D
     
     for cell in self.cells:
       cellK = numpy.zeros( (self.spaceDim*self.numBasis,
@@ -71,7 +70,6 @@
       for iQuad in xrange(self.numQuadPts):
         wt = self.quadWts[iQuad] * jacobianDet[iQuad]
         B = self._calculateBasisDerivMat(iQuad)
-        print "B: ",B
         cellK[:] += wt * numpy.dot(numpy.dot(B.transpose(), D), B)
       feutils.assembleMat(K, cellK, cell, self.spaceDim)
     return K
@@ -96,7 +94,6 @@
       for iQuad in xrange(self.numQuadPts):
         wt = self.quadWts[iQuad] * jacobianDet[iQuad]
         N = self._calculateBasisMat(iQuad)
-        print "N: ",N
         cellM[:] += self.density * wt * numpy.dot(N.transpose(), N)
       feutils.assembleMat(M, cellM, cell, self.spaceDim)
     return M
@@ -114,11 +111,11 @@
     elif 2 == self.cellDim:
       lambda2mu = self.lameLambda + 2*self.lameMu
       C1111 = lambda2mu
-      C2222 = lambda2mu
       C1122 = self.lameLambda
-      C1212 = 2*self.lameMu
       C1112 = 0.0
+      C2222 = lambda2mu
       C2212 = 0.0
+      C1212 = self.lameMu # B uses engineering strain, so mu instead of 2*mu
       D = numpy.array([ [C1111, C1122, C1112],
                         [C1122, C2222, C2212],
                         [C1112, C2212, C1212] ],
@@ -131,9 +128,9 @@
       C1122 = self.lameLambda
       C1133 = self.lameLambda
       C2233 = self.lameLambda
-      C1212 = 2*self.lameMu
-      C2323 = 2*self.lameMu
-      C1313 = 2*self.lameMu
+      C1212 = self.lameMu # B uses engineering strain, so mu instead of 2*mu
+      C2323 = self.lameMu
+      C1313 = self.lameMu
       C1112 = 0.0
       C1123 = 0.0
       C1113 = 0.0
@@ -186,7 +183,7 @@
         B[5, iBasis*self.spaceDim+0] = self.basisDeriv[iQuad, iBasis, 2]
         B[5, iBasis*self.spaceDim+2] = self.basisDeriv[iQuad, iBasis, 0]
     elif 2 == self.spaceDim:
-      B = numpy.zeros( (4, self.spaceDim*self.numBasis),
+      B = numpy.zeros( (3, self.spaceDim*self.numBasis),
                        dtype=numpy.float64)
       for iBasis in xrange(self.numBasis):
         B[0, iBasis*self.spaceDim+0] = self.basisDeriv[iQuad, iBasis, 0]

Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Makefile.am
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Makefile.am	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Makefile.am	2007-05-31 00:10:24 UTC (rev 7008)
@@ -11,7 +11,9 @@
 #
 
 noinst_DATA = \
-	elasticstrain1d.spatialdb
+	elasticstrain1d.spatialdb \
+	elasticplanestrain.spatialdb \
+	elasticisotropic3d.spatialdb
 
 # 'export' the input files by performing a mock install
 export_datadir = $(top_builddir)/unittests/libtests/feassemble/data

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution1DQuadratic.py
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution1DQuadratic.py	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution1DQuadratic.py	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,55 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+#                           Brad T. Aagaard
+#                        U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file unittests/libtests/feassemble/data/Solution1DQuadratic.py
+
+## @brief Python container holding solution information for 1-D mesh
+## with quadratic cells used in testing finite-element C++ routines.
+
+from pyre.components.Component import Component
+
+import numpy
+
+# ----------------------------------------------------------------------
+
+# Solution1DQuadratic class
+class Solution1DQuadratic(Component):
+  """
+  Python container holding solution information for 1-D mesh with
+  quadratic cells used in testing finite-element C++ routines.
+  """
+  
+  # PUBLIC METHODS /////////////////////////////////////////////////////
+  
+  def __init__(self, name="solution1dquadratic"):
+    """
+    Constructor.
+    """
+    Component.__init__(self, name, facility="solution")
+    
+    # Input fields
+    self.dt = 0.01
+    self.fieldTpdt = numpy.array([ [1.2], [0.0], [1.7] ], dtype=numpy.float64)
+    self.fieldT = numpy.array([ [1.1], [0.1], [1.5] ], dtype=numpy.float64)
+    self.fieldTmdt = numpy.array([ [1.0], [0.1], [1.3] ], dtype=numpy.float64)
+    return
+  
+
+# FACTORIES ////////////////////////////////////////////////////////////
+def solution():
+  """
+  Factory for Solution1DQuadratic.
+  """
+  return Solution1DQuadratic()
+
+
+# End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution2DLinear.py
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution2DLinear.py	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution2DLinear.py	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,61 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+#                           Brad T. Aagaard
+#                        U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file unittests/libtests/feassemble/data/Solution2DLinear.py
+
+## @brief Python container holding solution information for 2-D mesh
+## with linear cells used in testing finite-element C++ routines.
+
+from pyre.components.Component import Component
+
+import numpy
+
+# ----------------------------------------------------------------------
+
+# Solution2DLinear class
+class Solution2DLinear(Component):
+  """
+  Python container holding solution information for 2-D mesh with
+  linear cells used in testing finite-element C++ routines.
+  """
+  
+  # PUBLIC METHODS /////////////////////////////////////////////////////
+  
+  def __init__(self, name="solution2dlinear"):
+    """
+    Constructor.
+    """
+    Component.__init__(self, name, facility="solution")
+    
+    # Input fields
+    self.dt = 0.01
+    self.fieldTpdt = numpy.array([ 1.9, -0.9,
+                                   1.4,  1.5,
+                                   0.5, -0.9 ], dtype=numpy.float64)
+    self.fieldT = numpy.array([ 1.6, -0.8,
+                                0.9,  0.7,
+                               -0.2, -1.1 ], dtype=numpy.float64)
+    self.fieldTmdt = numpy.array([ 0.8,  0.1,
+                                   0.5,  0.3,
+                                  -0.1, -0.6 ], dtype=numpy.float64)
+    return
+  
+
+# FACTORIES ////////////////////////////////////////////////////////////
+def solution():
+  """
+  Factory for Solution2DLinear.
+  """
+  return Solution2DLinear()
+
+
+# End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution2DQuadratic.py
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution2DQuadratic.py	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution2DQuadratic.py	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,70 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+#                           Brad T. Aagaard
+#                        U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file unittests/libtests/feassemble/data/Solution2DQuadratic.py
+
+## @brief Python container holding solution information for 2-D mesh
+## with quadratic cells used in testing finite-element C++ routines.
+
+from pyre.components.Component import Component
+
+import numpy
+
+# ----------------------------------------------------------------------
+
+# Solution2DQuadratic class
+class Solution2DQuadratic(Component):
+  """
+  Python container holding solution information for 2-D mesh with
+  quadratic cells used in testing finite-element C++ routines.
+  """
+  
+  # PUBLIC METHODS /////////////////////////////////////////////////////
+  
+  def __init__(self, name="solution2dquadratic"):
+    """
+    Constructor.
+    """
+    Component.__init__(self, name, facility="solution")
+    
+    # Input fields
+    self.dt = 0.01
+    self.fieldTpdt = numpy.array([ -0.4, -0.6,
+                                   +0.7, +0.8,
+                                   +0.0, +0.2,
+                                   -0.5, -0.4,
+                                   +0.3, +0.9,
+                                   -0.3, -0.9 ], dtype=numpy.float64)
+    self.fieldT = numpy.array([ -0.3, -0.4,
+                                +0.5, +0.6,
+                                +0.0, +0.1,
+                                -0.2, -0.3,
+                                +0.2, +0.3,
+                                -0.1, -0.2 ], dtype=numpy.float64)
+    self.fieldTmdt = numpy.array([ -0.2, -0.3,
+                                   +0.3, +0.4,
+                                   +0.0, +0.1,
+                                   -0.3, -0.2,
+                                   +0.1, +0.4,
+                                   -0.2, -0.6 ], dtype=numpy.float64)
+    return
+  
+
+# FACTORIES ////////////////////////////////////////////////////////////
+def solution():
+  """
+  Factory for Solution2DQuadratic.
+  """
+  return Solution2DQuadratic()
+
+
+# End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution3DLinear.py
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution3DLinear.py	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution3DLinear.py	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,64 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+#                           Brad T. Aagaard
+#                        U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file unittests/libtests/feassemble/data/Solution3DLinear.py
+
+## @brief Python container holding solution information for 3-D mesh
+## with linear cells used in testing finite-element C++ routines.
+
+from pyre.components.Component import Component
+
+import numpy
+
+# ----------------------------------------------------------------------
+
+# Solution3DLinear class
+class Solution3DLinear(Component):
+  """
+  Python container holding solution information for 3-D mesh with
+  linear cells used in testing finite-element C++ routines.
+  """
+  
+  # PUBLIC METHODS /////////////////////////////////////////////////////
+  
+  def __init__(self, name="solution3dlinear"):
+    """
+    Constructor.
+    """
+    Component.__init__(self, name, facility="solution")
+    
+    # Input fields
+    self.dt = 0.01
+    self.fieldTpdt = numpy.array([ +0.4, +0.2, -0.5,
+                                   -0.3, -0.4, -0.6,
+                                   +0.2, +0.6, +0.3,
+                                   -0.6, -0.1, -0.3], dtype=numpy.float64)
+    self.fieldT = numpy.array([ +0.1, +0.1, -0.6,
+                                -0.1, -0.2, -0.5,
+                                +0.1, +0.7, +0.2,
+                                -0.5, -0.0, -0.2], dtype=numpy.float64)
+    self.fieldTmdt = numpy.array([ +0.1, +0.1, -0.3,
+                                   -0.2, -0.1, -0.5,
+                                   +0.2, +0.4, +0.1,
+                                   -0.4, -0.1, -0.1], dtype=numpy.float64)
+    return
+  
+
+# FACTORIES ////////////////////////////////////////////////////////////
+def solution():
+  """
+  Factory for Solution3DLinear.
+  """
+  return Solution3DLinear()
+
+
+# End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution3DQuadratic.py
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution3DQuadratic.py	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/Solution3DQuadratic.py	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,82 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+#                           Brad T. Aagaard
+#                        U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file unittests/libtests/feassemble/data/Solution3DQuadratic.py
+
+## @brief Python container holding solution information for 3-D mesh
+## with quadratic cells used in testing finite-element C++ routines.
+
+from pyre.components.Component import Component
+
+import numpy
+
+# ----------------------------------------------------------------------
+
+# Solution3DQuadratic class
+class Solution3DQuadratic(Component):
+  """
+  Python container holding solution information for 3-D mesh with
+  quadratic cells used in testing finite-element C++ routines.
+  """
+  
+  # PUBLIC METHODS /////////////////////////////////////////////////////
+  
+  def __init__(self, name="solution3dquadratic"):
+    """
+    Constructor.
+    """
+    Component.__init__(self, name, facility="solution")
+    
+    # Input fields
+    self.dt = 0.01
+    self.fieldTpdt = numpy.array([ +0.3, -0.4, -0.4,
+                                   -0.6, +0.8, +0.2,
+                                   +0.5, +0.5, +0.7,
+                                   -0.7, -0.5, -0.7,
+                                   -0.6, -0.3, +0.8,
+                                   -0.4, -0.8, -0.5,
+                                   +0.7, +0.8, -0.5,
+                                   -0.5, -0.5, -0.7,
+                                   -0.3, -0.9, +0.8,
+                                   -0.1, +0.5, -0.9], dtype=numpy.float64)
+    self.fieldT = numpy.array([ +0.1, -0.2, -0.6,
+                                -0.3, +0.4, +0.9,
+                                +0.6, +0.8, +0.5,
+                                -0.8, -0.6, -0.8,
+                                -0.0, -0.2, +0.6,
+                                -0.4, -0.7, -0.2,
+                                +0.7, +0.6, -0.1,
+                                -0.4, -0.3, -0.3,
+                                -0.7, -0.6, +0.1,
+                                -0.9, +0.3, -0.8], dtype=numpy.float64)
+    self.fieldTmdt = numpy.array([ +0.2, -0.3, -0.4,
+                                   -0.6, +0.2, +0.3,
+                                   +0.5, +0.2, +0.5,
+                                   -0.3, -0.6, -0.3,
+                                   -0.5, -0.9, +0.4,
+                                   -0.3, -0.6, -0.8,
+                                   +0.9, +0.5, -0.2,
+                                   -0.7, -0.3, -0.3,
+                                   -0.5, -0.8, +0.4,
+                                   -0.4, +0.5, -0.8], dtype=numpy.float64)
+    return
+  
+
+# FACTORIES ////////////////////////////////////////////////////////////
+def solution():
+  """
+  Factory for Solution3DQuadratic.
+  """
+  return Solution3DQuadratic()
+
+
+# End of file 

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/elasticisotropic3d.spatialdb
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/elasticisotropic3d.spatialdb	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/elasticisotropic3d.spatialdb	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,14 @@
+#SPATIAL.ascii 1
+SimpleDB {
+  num-values = 3
+  value-names =  density vs vp
+  value-units =  kg/m^3  m/s  m/s
+  num-locs = 1
+  data-dim = 0
+  space-dim = 3
+  cs-data = cartesian {
+    to-meters = 1.0
+    space-dim = 3
+  }
+}
+0.0  0.0  0.0   2500.0  3464.1016151377544 6000.0

Added: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/elasticplanestrain.spatialdb
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/elasticplanestrain.spatialdb	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/elasticplanestrain.spatialdb	2007-05-31 00:10:24 UTC (rev 7008)
@@ -0,0 +1,14 @@
+#SPATIAL.ascii 1
+SimpleDB {
+  num-values = 3
+  value-names =  density vs vp
+  value-units =  kg/m^3  m/s  m/s
+  num-locs = 1
+  data-dim = 0
+  space-dim = 2
+  cs-data = cartesian {
+    to-meters = 1.0
+    space-dim = 2
+  }
+}
+0.0  0.0   2500.0  3464.1016151377544 6000.0

Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/generate.sh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/data/generate.sh	2007-05-30 23:46:37 UTC (rev 7007)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/generate.sh	2007-05-31 00:10:24 UTC (rev 7008)
@@ -145,11 +145,56 @@
     --material=MaterialElasticStrain1D \
     --solution=Solution1DLinear
 
+  python ElasticityExplicit.py \
+    --data.namespace=pylith,feassemble \
+    --data.object=ElasticityExplicitData1DQuadratic \
+    --data.parent=IntegratorData \
+    --mesh=Mesh1DQuadratic \
+    --quadrature=Quadrature1DQuadratic \
+    --material=MaterialElasticStrain1D \
+    --solution=Solution1DQuadratic
+
   # 2-D ----------------------------------------------------------------
 
+  python ElasticityExplicit.py \
+    --data.namespace=pylith,feassemble \
+    --data.object=ElasticityExplicitData2DLinear \
+    --data.parent=IntegratorData \
+    --mesh=Mesh2DLinear \
+    --quadrature=Quadrature2DLinear \
+    --material=ElasticPlaneStrain \
+    --solution=Solution2DLinear
 
+  python ElasticityExplicit.py \
+    --data.namespace=pylith,feassemble \
+    --data.object=ElasticityExplicitData2DQuadratic \
+    --data.parent=IntegratorData \
+    --mesh=Mesh2DQuadratic \
+    --quadrature=Quadrature2DQuadratic \
+    --material=ElasticPlaneStrain \
+    --solution=Solution2DQuadratic
+
+
   # 3-D ----------------------------------------------------------------
 
+  python ElasticityExplicit.py \
+    --data.namespace=pylith,feassemble \
+    --data.object=ElasticityExplicitData3DLinear \
+    --data.parent=IntegratorData \
+    --mesh=Mesh3DLinear \
+    --quadrature=Quadrature3DLinear \
+    --material=ElasticIsotropic3D \
+    --solution=Solution3DLinear
+
+  python ElasticityExplicit.py \
+    --data.namespace=pylith,feassemble \
+    --data.object=ElasticityExplicitData3DQuadratic \
+    --data.parent=IntegratorData \
+    --mesh=Mesh3DQuadratic \
+    --quadrature=Quadrature3DQuadratic \
+    --material=ElasticIsotropic3D \
+    --solution=Solution3DQuadratic
+
 fi
 
 



More information about the cig-commits mailing list