[cig-commits] r16002 - in short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble: . data

brad at geodynamics.org brad at geodynamics.org
Wed Nov 18 17:25:55 PST 2009


Author: brad
Date: 2009-11-18 17:25:54 -0800 (Wed, 18 Nov 2009)
New Revision: 16002

Added:
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DLinear.cc
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DLinear.hh
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DLinear.cc
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DLinear.hh
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DQuadratic.cc
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DQuadratic.hh
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DLinear.cc
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DLinear.hh
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DQuadratic.cc
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DQuadratic.hh
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DLinear.cc
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DLinear.hh
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DQuadratic.cc
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DQuadratic.hh
Removed:
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitGrav.py
Modified:
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/Makefile.am
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicit.py
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeform.py
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/IntegratorElasticity.py
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/feutils.py
   short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/generate.sh
Log:
Cleaned up computing gravitational body forces in elasticity integrator tests. Started adding unit tests for gravity and large deformations.

Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/Makefile.am
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/Makefile.am	2009-11-19 00:50:54 UTC (rev 16001)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/Makefile.am	2009-11-19 01:25:54 UTC (rev 16002)
@@ -74,6 +74,7 @@
 	TestElasticityImplicitLgDeform2DQuadratic.cc \
 	TestElasticityImplicitLgDeform3DLinear.cc \
 	TestElasticityImplicitLgDeform3DQuadratic.cc \
+	TestElasticityImplicitLgDeformGrav1DLinear.cc \
 	test_feassemble.cc
 
 
@@ -107,6 +108,7 @@
 	TestElasticityImplicitLgDeform2DQuadratic.hh \
 	TestElasticityImplicitLgDeform3DLinear.hh \
 	TestElasticityImplicitLgDeform3DQuadratic.hh \
+	TestElasticityImplicitLgDeformGrav1DLinear.hh \
 	TestGeometryPoint1D.hh \
 	TestGeometryPoint2D.hh \
 	TestGeometryPoint3D.hh \
@@ -172,6 +174,7 @@
 	data/ElasticityImplicitLgDeformData2DQuadratic.cc \
 	data/ElasticityImplicitLgDeformData3DLinear.cc \
 	data/ElasticityImplicitLgDeformData3DQuadratic.cc \
+	data/ElasticityImplicitLgDeformGravData1DLinear.cc \
 	data/QuadratureData.cc \
 	data/QuadratureData1DLinear.cc \
 	data/QuadratureData1DQuadratic.cc \
@@ -228,6 +231,7 @@
 	data/ElasticityImplicitLgDeformData2DQuadratic.hh \
 	data/ElasticityImplicitLgDeformData3DLinear.hh \
 	data/ElasticityImplicitLgDeformData3DQuadratic.hh \
+	data/ElasticityImplicitLgDeformGravData1DLinear.hh \
 	data/QuadratureData.hh \
 	data/QuadratureData1DLinear.hh \
 	data/QuadratureData1DQuadratic.hh \

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DLinear.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DLinear.cc	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DLinear.cc	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,56 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestElasticityImplicitLgDeformGrav1DLinear.hh" // Implementation of class methods
+
+#include "data/ElasticityImplicitLgDeformGravData1DLinear.hh"
+
+#include "pylith/topology/Mesh.hh" // USES Quadrature<Mesh>
+#include "pylith/feassemble/Quadrature.hh" // USES Quadrature
+#include "pylith/feassemble/GeometryLine1D.hh" // USES GeometryLine1D
+#include "pylith/materials/ElasticStrain1D.hh" // USES ElasticStrain1D
+#include "spatialdata/spatialdb/GravityField.hh" // USES GravityField
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestElasticityImplicitLgDeformGrav1DLinear );
+
+// ----------------------------------------------------------------------
+// Setup testing data.
+void
+pylith::feassemble::TestElasticityImplicitLgDeformGrav1DLinear::setUp(void)
+{ // setUp
+  TestElasticityImplicitLgDeform::setUp();
+
+  _data = new ElasticityImplicitLgDeformGravData1DLinear();
+  _gravityField = new spatialdata::spatialdb::GravityField();
+  CPPUNIT_ASSERT(0 != _quadrature);
+  CPPUNIT_ASSERT(0 != _gravityField);
+  GeometryLine1D geometry;
+  _quadrature->refGeometry(&geometry);
+
+  const double g = 1.0e8;
+  const double gravityDir[] = { -1.0, 0.0, 0.0};
+  _gravityField->gravAcceleration(g);
+  _gravityField->gravityDir(gravityDir[0], gravityDir[1], gravityDir[2]);
+
+  _material = new materials::ElasticStrain1D;
+  CPPUNIT_ASSERT(0 != _material);
+  
+  CPPUNIT_ASSERT(0 != _data);
+  CPPUNIT_ASSERT_EQUAL(std::string("ElasticStrain1D"),
+		       std::string(_data->matType));
+} // setUp
+
+
+// End of file 

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DLinear.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DLinear.hh	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DLinear.hh	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,59 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestElasticityImplicitLgDeformGrav1DLinear.hh
+ *
+ * @brief C++ TestElasticityImplicitLgDeform object
+ *
+ * C++ unit testing for ElasticityImplicitLgDeform with 1-D linear cells and gravity.
+ */
+
+#if !defined(pylith_feassemble_testelasticityimplicitlgdeformgrav1dlinear_hh)
+#define pylith_feassemble_testelasticityimplicitlgdeformgrav1dlinear_hh
+
+#include "TestElasticityImplicitLgDeform.hh" // ISA TestElasticityImplicitLgDeform
+
+/// Namespace for pylith package
+namespace pylith {
+  namespace feassemble {
+    class TestElasticityImplicitLgDeformGrav1DLinear;
+  } // feassemble
+} // pylith
+
+/// C++ unit testing for ElasticityImplicitLgDeform
+class pylith::feassemble::TestElasticityImplicitLgDeformGrav1DLinear :
+  public TestElasticityImplicitLgDeform
+{ // class TestElasticityImplicitLgDeform1DLinear
+
+  // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+  CPPUNIT_TEST_SUITE( TestElasticityImplicitLgDeformGrav1DLinear );
+
+  CPPUNIT_TEST( testInitialize );
+  CPPUNIT_TEST( testIntegrateResidual );
+  CPPUNIT_TEST( testIntegrateJacobian );
+  CPPUNIT_TEST( testUpdateStateVars );
+
+  CPPUNIT_TEST_SUITE_END();
+
+  // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+  /// Setup testing data.
+  void setUp(void);
+
+}; // class TestElasticityImplicitLgDeformGrav1DLinear
+
+#endif // pylith_feassemble_testelasticityimplicitlgdeformgrav1dlinear_hh
+
+
+// End of file 

Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicit.py
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicit.py	2009-11-19 00:50:54 UTC (rev 16001)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicit.py	2009-11-19 01:25:54 UTC (rev 16002)
@@ -49,7 +49,7 @@
     K = integrator._calculateStiffnessMat()    
 
     residual = -numpy.dot(K, integrator.fieldT+integrator.fieldTIncr)
-    return residual
+    return residual.flatten()
 
 
   def calculateJacobian(self, integrator):

Deleted: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitGrav.py
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitGrav.py	2009-11-19 00:50:54 UTC (rev 16001)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitGrav.py	2009-11-19 01:25:54 UTC (rev 16002)
@@ -1,83 +0,0 @@
-#!/usr/bin/env python
-#
-# ----------------------------------------------------------------------
-#
-#                           Brad T. Aagaard
-#                        U.S. Geological Survey
-#
-# <LicenseText>
-#
-# ----------------------------------------------------------------------
-#
-
-## @file unittests/libtests/feassemble/data/ElasticityImplicitGrav.py
-
-## @brief Python application for generating C++ data files for testing
-## C++ ElasticityImplicitGrav object.
-
-from ElasticityImplicit import ElasticityImplicit
-
-import numpy
-import feutils
-
-# ----------------------------------------------------------------------
-
-# ElasticityImplicitGrav class
-class ElasticityImplicitGrav(ElasticityImplicit):
-  """
-  Python application for generating C++ data files for testing C++
-  ElasticityImplicitGrav object.
-  """
-  
-  # PUBLIC METHODS /////////////////////////////////////////////////////
-  
-  def __init__(self, name="elasticityimplicitgrav"):
-    """
-    Constructor.
-    """
-    ElasticityImplicit.__init__(self, name)
-    return
-  
-
-  # PRIVATE METHODS ////////////////////////////////////////////////////
-
-  def calculateResidual(self, integrator):
-    """
-    Calculate contribution to residual of operator for integrator.
-
-    {r} = -[K]{u(t)}
-    """
-    residual = ElasticityImplicit.calculateResidual(self, integrator)
-    gravityGlobal = self._calculateGravity(integrator)
-    residual += gravityGlobal.reshape(residual.shape)
-    return residual
-
-
-  def _calculateGravity(self, integrator):
-    """
-    Calculate body force vector.
-    """
-    gravityGlobal = numpy.zeros(( integrator.numVertices*integrator.spaceDim ),
-                                dtype=numpy.float64)
-    for cell in integrator.cells:
-      gravityCell = numpy.zeros(integrator.spaceDim*integrator.numBasis)
-      vertices = integrator.vertices[cell, :]
-      (jacobian, jacobianInv, jacobianDet, basisDeriv) = \
-                 feutils.calculateJacobian(integrator.quadrature, vertices)
-      for iQuad in xrange(integrator.numQuadPts):
-        wt = integrator.quadWts[iQuad] * jacobianDet[iQuad] * integrator.density
-        for iBasis in xrange(integrator.numBasis):
-          valI = wt * integrator.basis[iQuad, iBasis]
-          for iDim in xrange(integrator.spaceDim):
-            gravityCell[iDim + iBasis * integrator.spaceDim] += \
-                             valI * integrator.gravityVec[iDim]
-      feutils.assembleVec(gravityGlobal, gravityCell, cell, integrator.spaceDim)
-    return gravityGlobal
-    
-
-# FACTORY //////////////////////////////////////////////////////////////
-def formulation():
-  return ElasticityImplicitGrav()
-
-
-# End of file 

Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeform.py
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeform.py	2009-11-19 00:50:54 UTC (rev 16001)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeform.py	2009-11-19 01:25:54 UTC (rev 16002)
@@ -48,7 +48,7 @@
     """
     import feutils
 
-    residual = numpy.zeros( (integrator.spaceDim*integrator.numVertices, 1),
+    residual = numpy.zeros( (integrator.spaceDim*integrator.numVertices),
                             dtype=numpy.float64)
 
     # Matrix of elasticity values
@@ -68,12 +68,9 @@
         BL = BL0 + BL1
         strain = integrator._calculateStrain(basisDeriv, iQuad, fieldTpdt)
         S = numpy.dot(D, strain.transpose())
-        print "BL:",BL.shape
-        print "S:",S.shape
         cellR -= wt * numpy.dot(BL.transpose(), S)
-        print "S",S
-        print cellR
-      feutils.assembleVec(residual, cellR, cell, integrator.spaceDim)
+      
+      feutils.assembleVec(residual, cellR.flatten(), cell, integrator.spaceDim)
 
     return residual
 

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DLinear.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DLinear.cc	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DLinear.cc	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,135 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application integratorelasticitylgdeform.
+
+#include "ElasticityImplicitLgDeformGravData1DLinear.hh"
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_spaceDim = 1;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_cellDim = 1;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_numVertices = 2;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_numCells = 1;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_numBasis = 2;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_numQuadPts = 1;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_matType = "ElasticStrain1D";
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_matDBFilename = "data/elasticstrain1d.spatialdb";
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_matId = 0;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_matLabel = "elastic strain 1-D";
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_dt =   1.00000000e-02;
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_gravityVec[] = {
+ -1.00000000e+08,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_vertices[] = {
+ -2.50000000e-01,
+  2.00000000e+00,
+};
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_cells[] = {
+0,1,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_verticesRef[] = {
+ -1.00000000e+00,
+  1.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_quadPts[] = {
+  0.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_quadWts[] = {
+  2.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_basis[] = {
+  5.00000000e-01,
+  5.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_basisDerivRef[] = {
+ -5.00000000e-01,
+  5.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_fieldTIncr[] = {
+  1.20000000e+00,
+  1.70000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_fieldT[] = {
+  1.10000000e+00,
+  1.50000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_fieldTmdt[] = {
+  1.00000000e+00,
+  1.30000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_valsResidual[] = {
+ -2.20770000e+11,
+ -3.41730000e+11,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::_valsJacobian[] = {
+  9.76000000e+10,
+ -9.76000000e+10,
+ -9.76000000e+10,
+  9.76000000e+10,
+};
+
+pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::ElasticityImplicitLgDeformGravData1DLinear(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;
+  gravityVec = const_cast<double*>(_gravityVec);
+  vertices = const_cast<double*>(_vertices);
+  cells = const_cast<int*>(_cells);
+  verticesRef = const_cast<double*>(_verticesRef);
+  quadPts = const_cast<double*>(_quadPts);
+  quadWts = const_cast<double*>(_quadWts);
+  basis = const_cast<double*>(_basis);
+  basisDerivRef = const_cast<double*>(_basisDerivRef);
+  fieldTIncr = const_cast<double*>(_fieldTIncr);
+  fieldT = const_cast<double*>(_fieldT);
+  fieldTmdt = const_cast<double*>(_fieldTmdt);
+  valsResidual = const_cast<double*>(_valsResidual);
+  valsJacobian = const_cast<double*>(_valsJacobian);
+} // constructor
+
+pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear::~ElasticityImplicitLgDeformGravData1DLinear(void)
+{}
+
+
+// End of file

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DLinear.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DLinear.hh	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DLinear.hh	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,92 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application integratorelasticitylgdeform.
+
+#if !defined(pylith_feassemble_elasticityimplicitlgdeformgravdata1dlinear_hh)
+#define pylith_feassemble_elasticityimplicitlgdeformgravdata1dlinear_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+  namespace feassemble {
+     class ElasticityImplicitLgDeformGravData1DLinear;
+  } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityImplicitLgDeformGravData1DLinear : public IntegratorData
+{
+
+public: 
+
+  /// Constructor
+  ElasticityImplicitLgDeformGravData1DLinear(void);
+
+  /// Destructor
+  ~ElasticityImplicitLgDeformGravData1DLinear(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 _gravityVec[];
+
+  static const double _vertices[];
+
+  static const int _cells[];
+
+  static const double _verticesRef[];
+
+  static const double _quadPts[];
+
+  static const double _quadWts[];
+
+  static const double _basis[];
+
+  static const double _basisDerivRef[];
+
+  static const double _fieldTIncr[];
+
+  static const double _fieldT[];
+
+  static const double _fieldTmdt[];
+
+  static const double _valsResidual[];
+
+  static const double _valsJacobian[];
+
+};
+
+#endif // pylith_feassemble_elasticityimplicitlgdeformgravdata1dlinear_hh
+
+// End of file

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DQuadratic.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DQuadratic.cc	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DQuadratic.cc	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,155 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application integratorelasticitylgdeform.
+
+#include "ElasticityImplicitLgDeformGravData1DQuadratic.hh"
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_spaceDim = 1;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_cellDim = 1;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_numVertices = 3;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_numCells = 1;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_numBasis = 3;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_numQuadPts = 2;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_matType = "ElasticStrain1D";
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_matDBFilename = "data/elasticstrain1d.spatialdb";
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_matId = 0;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_matLabel = "elastic strain 1-D";
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_dt =   1.00000000e-02;
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_gravityVec[] = {
+ -1.00000000e+08,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_vertices[] = {
+ -2.50000000e-01,
+  2.00000000e+00,
+  8.75000000e-01,
+};
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_cells[] = {
+0,1,2,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_verticesRef[] = {
+ -1.00000000e+00,
+  1.00000000e+00,
+  0.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_quadPts[] = {
+ -5.77350269e-01,
+  5.77350269e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_quadWts[] = {
+  1.00000000e+00,  1.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_basis[] = {
+  4.55341801e-01,
+ -1.22008468e-01,
+  6.66666667e-01,
+ -1.22008468e-01,
+  4.55341801e-01,
+  6.66666667e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_basisDerivRef[] = {
+ -1.07735027e+00,
+ -7.73502692e-02,
+  1.15470054e+00,
+  7.73502692e-02,
+  1.07735027e+00,
+ -1.15470054e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_fieldTIncr[] = {
+  1.20000000e+00,
+  0.00000000e+00,
+  1.70000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_fieldT[] = {
+  1.10000000e+00,
+  1.00000000e-01,
+  1.50000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_fieldTmdt[] = {
+  1.00000000e+00,
+  1.00000000e-01,
+  1.30000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_valsResidual[] = {
+  2.60876283e+11,
+  2.37591344e+11,
+ -1.06096763e+12,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::_valsJacobian[] = {
+  5.56003292e+11,
+  7.76230453e+10,
+ -6.33626337e+11,
+  7.76230453e+10,
+  5.30719342e+11,
+ -6.08342387e+11,
+ -6.33626337e+11,
+ -6.08342387e+11,
+  1.24196872e+12,
+};
+
+pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::ElasticityImplicitLgDeformGravData1DQuadratic(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;
+  gravityVec = const_cast<double*>(_gravityVec);
+  vertices = const_cast<double*>(_vertices);
+  cells = const_cast<int*>(_cells);
+  verticesRef = const_cast<double*>(_verticesRef);
+  quadPts = const_cast<double*>(_quadPts);
+  quadWts = const_cast<double*>(_quadWts);
+  basis = const_cast<double*>(_basis);
+  basisDerivRef = const_cast<double*>(_basisDerivRef);
+  fieldTIncr = const_cast<double*>(_fieldTIncr);
+  fieldT = const_cast<double*>(_fieldT);
+  fieldTmdt = const_cast<double*>(_fieldTmdt);
+  valsResidual = const_cast<double*>(_valsResidual);
+  valsJacobian = const_cast<double*>(_valsJacobian);
+} // constructor
+
+pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic::~ElasticityImplicitLgDeformGravData1DQuadratic(void)
+{}
+
+
+// End of file

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DQuadratic.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DQuadratic.hh	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData1DQuadratic.hh	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,92 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application integratorelasticitylgdeform.
+
+#if !defined(pylith_feassemble_elasticityimplicitlgdeformgravdata1dquadratic_hh)
+#define pylith_feassemble_elasticityimplicitlgdeformgravdata1dquadratic_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+  namespace feassemble {
+     class ElasticityImplicitLgDeformGravData1DQuadratic;
+  } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityImplicitLgDeformGravData1DQuadratic : public IntegratorData
+{
+
+public: 
+
+  /// Constructor
+  ElasticityImplicitLgDeformGravData1DQuadratic(void);
+
+  /// Destructor
+  ~ElasticityImplicitLgDeformGravData1DQuadratic(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 _gravityVec[];
+
+  static const double _vertices[];
+
+  static const int _cells[];
+
+  static const double _verticesRef[];
+
+  static const double _quadPts[];
+
+  static const double _quadWts[];
+
+  static const double _basis[];
+
+  static const double _basisDerivRef[];
+
+  static const double _fieldTIncr[];
+
+  static const double _fieldT[];
+
+  static const double _fieldTmdt[];
+
+  static const double _valsResidual[];
+
+  static const double _valsJacobian[];
+
+};
+
+#endif // pylith_feassemble_elasticityimplicitlgdeformgravdata1dquadratic_hh
+
+// End of file

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DLinear.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DLinear.cc	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DLinear.cc	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,155 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application integratorelasticitylgdeform.
+
+#include "ElasticityImplicitLgDeformGravData2DLinear.hh"
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_spaceDim = 2;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_cellDim = 2;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_numVertices = 3;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_numCells = 1;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_numBasis = 3;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_numQuadPts = 1;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_matType = "ElasticPlaneStrain";
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_matDBFilename = "data/elasticplanestrain.spatialdb";
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_matId = 0;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_matLabel = "elastic strain 2-D";
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_dt =   1.00000000e-02;
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_gravityVec[] = {
+  0.00000000e+00, -1.00000000e+08,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_vertices[] = {
+  2.00000000e-01, -4.00000000e-01,
+  3.00000000e-01,  5.00000000e-01,
+ -1.00000000e+00, -2.00000000e-01,
+};
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_cells[] = {
+0,1,2,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_verticesRef[] = {
+ -1.00000000e+00, -1.00000000e+00,
+  1.00000000e+00, -1.00000000e+00,
+ -1.00000000e+00,  1.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_quadPts[] = {
+ -3.33333333e-01, -3.33333333e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_quadWts[] = {
+  5.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_basis[] = {
+  3.33333333e-01,  3.33333333e-01,
+  3.33333333e-01,};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_basisDerivRef[] = {
+ -5.00000000e-01, -5.00000000e-01,
+  5.00000000e-01,  0.00000000e+00,
+  0.00000000e+00,  5.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_fieldTIncr[] = {
+  1.30000000e+00, -9.00000000e-01,
+  1.40000000e+00,  1.50000000e+00,
+  5.00000000e-01, -9.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_fieldT[] = {
+  1.60000000e+00, -8.00000000e-01,
+  9.00000000e-01,  7.00000000e-01,
+ -2.00000000e-01, -1.10000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_fieldTmdt[] = {
+  8.00000000e-01,  1.00000000e-01,
+  5.00000000e-01,  3.00000000e-01,
+ -1.00000000e-01, -6.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_valsResidual[] = {
+ -3.65540787e+11,  1.04750079e+12,
+  9.00343192e+10, -1.10825548e+12,
+  2.75506468e+11,  2.63796904e+10,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::_valsJacobian[] = {
+  4.36313261e+11, -1.48699027e+11,
+ -2.81223194e+11,  8.77736676e+10,
+ -1.55090067e+11,  6.09253592e+10,
+ -1.48699027e+11,  7.56519651e+11,
+  9.16706846e+10, -6.28762859e+11,
+  5.70283422e+10, -1.27756792e+11,
+ -2.81223194e+11,  9.16706846e+10,
+  2.80835568e+11, -2.94466026e+10,
+  3.87626315e+08, -6.22240820e+10,
+  8.77736676e+10, -6.28762859e+11,
+ -2.94466026e+10,  6.55682896e+11,
+ -5.83270649e+10, -2.69200376e+10,
+ -1.55090067e+11,  5.70283422e+10,
+  3.87626315e+08, -5.83270649e+10,
+  1.54702440e+11,  1.29872276e+09,
+  6.09253592e+10, -1.27756792e+11,
+ -6.22240820e+10, -2.69200376e+10,
+  1.29872276e+09,  1.54676830e+11,
+};
+
+pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::ElasticityImplicitLgDeformGravData2DLinear(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;
+  gravityVec = const_cast<double*>(_gravityVec);
+  vertices = const_cast<double*>(_vertices);
+  cells = const_cast<int*>(_cells);
+  verticesRef = const_cast<double*>(_verticesRef);
+  quadPts = const_cast<double*>(_quadPts);
+  quadWts = const_cast<double*>(_quadWts);
+  basis = const_cast<double*>(_basis);
+  basisDerivRef = const_cast<double*>(_basisDerivRef);
+  fieldTIncr = const_cast<double*>(_fieldTIncr);
+  fieldT = const_cast<double*>(_fieldT);
+  fieldTmdt = const_cast<double*>(_fieldTmdt);
+  valsResidual = const_cast<double*>(_valsResidual);
+  valsJacobian = const_cast<double*>(_valsJacobian);
+} // constructor
+
+pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear::~ElasticityImplicitLgDeformGravData2DLinear(void)
+{}
+
+
+// End of file

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DLinear.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DLinear.hh	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DLinear.hh	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,92 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application integratorelasticitylgdeform.
+
+#if !defined(pylith_feassemble_elasticityimplicitlgdeformgravdata2dlinear_hh)
+#define pylith_feassemble_elasticityimplicitlgdeformgravdata2dlinear_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+  namespace feassemble {
+     class ElasticityImplicitLgDeformGravData2DLinear;
+  } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityImplicitLgDeformGravData2DLinear : public IntegratorData
+{
+
+public: 
+
+  /// Constructor
+  ElasticityImplicitLgDeformGravData2DLinear(void);
+
+  /// Destructor
+  ~ElasticityImplicitLgDeformGravData2DLinear(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 _gravityVec[];
+
+  static const double _vertices[];
+
+  static const int _cells[];
+
+  static const double _verticesRef[];
+
+  static const double _quadPts[];
+
+  static const double _quadWts[];
+
+  static const double _basis[];
+
+  static const double _basisDerivRef[];
+
+  static const double _fieldTIncr[];
+
+  static const double _fieldT[];
+
+  static const double _fieldTmdt[];
+
+  static const double _valsResidual[];
+
+  static const double _valsJacobian[];
+
+};
+
+#endif // pylith_feassemble_elasticityimplicitlgdeformgravdata2dlinear_hh
+
+// End of file

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DQuadratic.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DQuadratic.cc	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DQuadratic.cc	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,282 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application integratorelasticitylgdeform.
+
+#include "ElasticityImplicitLgDeformGravData2DQuadratic.hh"
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_spaceDim = 2;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_cellDim = 2;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_numVertices = 6;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_numCells = 1;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_numBasis = 6;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_numQuadPts = 6;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_matType = "ElasticPlaneStrain";
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_matDBFilename = "data/elasticplanestrain.spatialdb";
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_matId = 0;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_matLabel = "elastic strain 2-D";
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_dt =   1.00000000e-02;
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_gravityVec[] = {
+  0.00000000e+00, -1.00000000e+08,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_vertices[] = {
+ -1.00000000e+00, -1.00000000e+00,
+  1.00000000e+00,  2.00000000e-01,
+ -1.50000000e+00,  5.00000000e-01,
+ -2.50000000e-01,  3.50000000e-01,
+ -1.25000000e+00, -2.50000000e-01,
+  0.00000000e+00, -4.00000000e-01,
+};
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_cells[] = {
+0,1,2,3,4,5,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_verticesRef[] = {
+ -1.00000000e+00, -1.00000000e+00,
+  1.00000000e+00, -1.00000000e+00,
+ -1.00000000e+00,  1.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,
+ -1.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -1.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_quadPts[] = {
+ -7.50000000e-01, -7.50000000e-01,
+  7.50000000e-01, -7.50000000e-01,
+ -7.50000000e-01,  7.50000000e-01,
+  0.00000000e+00, -7.50000000e-01,
+ -7.50000000e-01,  0.00000000e+00,
+  2.50000000e-01,  2.50000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_quadWts[] = {
+  3.33333333e-01,  3.33333333e-01,  3.33333333e-01,  3.33333333e-01,  3.33333333e-01,  3.33333333e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_basis[] = {
+  3.75000000e-01, -9.37500000e-02,
+ -9.37500000e-02,  6.25000000e-02,
+  3.75000000e-01,  3.75000000e-01,
+  0.00000000e+00,  6.56250000e-01,
+ -9.37500000e-02,  4.37500000e-01,
+ -0.00000000e+00, -0.00000000e+00,
+  0.00000000e+00, -9.37500000e-02,
+  6.56250000e-01,  4.37500000e-01,
+ -0.00000000e+00, -0.00000000e+00,
+ -9.37500000e-02,  0.00000000e+00,
+ -9.37500000e-02,  2.50000000e-01,
+  1.87500000e-01,  7.50000000e-01,
+ -9.37500000e-02, -9.37500000e-02,
+  0.00000000e+00,  2.50000000e-01,
+  7.50000000e-01,  1.87500000e-01,
+  3.75000000e-01,  1.56250000e-01,
+  1.56250000e-01,  1.56250000e+00,
+ -6.25000000e-01, -6.25000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_basisDerivRef[] = {
+ -1.00000000e+00, -1.00000000e+00,
+ -2.50000000e-01,  0.00000000e+00,
+  0.00000000e+00, -2.50000000e-01,
+  2.50000000e-01,  2.50000000e-01,
+ -2.50000000e-01,  1.25000000e+00,
+  1.25000000e+00, -2.50000000e-01,
+  5.00000000e-01,  5.00000000e-01,
+  1.25000000e+00,  0.00000000e+00,
+  0.00000000e+00, -2.50000000e-01,
+  2.50000000e-01,  1.75000000e+00,
+ -2.50000000e-01, -2.50000000e-01,
+ -1.75000000e+00, -1.75000000e+00,
+  5.00000000e-01,  5.00000000e-01,
+ -2.50000000e-01,  0.00000000e+00,
+  0.00000000e+00,  1.25000000e+00,
+  1.75000000e+00,  2.50000000e-01,
+ -1.75000000e+00, -1.75000000e+00,
+ -2.50000000e-01, -2.50000000e-01,
+ -2.50000000e-01, -2.50000000e-01,
+  5.00000000e-01,  0.00000000e+00,
+  0.00000000e+00, -2.50000000e-01,
+  2.50000000e-01,  1.00000000e+00,
+ -2.50000000e-01,  5.00000000e-01,
+ -2.50000000e-01, -1.00000000e+00,
+ -2.50000000e-01, -2.50000000e-01,
+ -2.50000000e-01,  0.00000000e+00,
+  0.00000000e+00,  5.00000000e-01,
+  1.00000000e+00,  2.50000000e-01,
+ -1.00000000e+00, -2.50000000e-01,
+  5.00000000e-01, -2.50000000e-01,
+  1.00000000e+00,  1.00000000e+00,
+  7.50000000e-01,  0.00000000e+00,
+  0.00000000e+00,  7.50000000e-01,
+  1.25000000e+00,  1.25000000e+00,
+ -1.25000000e+00, -1.75000000e+00,
+ -1.75000000e+00, -1.25000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_fieldTIncr[] = {
+ -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::ElasticityImplicitLgDeformGravData2DQuadratic::_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::ElasticityImplicitLgDeformGravData2DQuadratic::_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::ElasticityImplicitLgDeformGravData2DQuadratic::_valsResidual[] = {
+  1.03829775e+12,  1.72143634e+12,
+ -7.52244241e+11, -8.67453311e+11,
+  8.03865887e+11,  1.02236991e+12,
+  1.48071362e+12,  5.42069459e+11,
+ -2.20475628e+12, -3.86234073e+12,
+ -3.65876743e+11,  9.93918331e+11,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::_valsJacobian[] = {
+  1.18059576e+12,  5.56624427e+11,
+  2.17020537e+10,  2.82688919e+10,
+  7.03170548e+11,  3.46233237e+11,
+  9.30815156e+11,  3.73904122e+11,
+ -1.97360381e+12, -9.41768992e+11,
+ -8.62679703e+11, -3.63261686e+11,
+  5.56624427e+11,  1.72905310e+12,
+  2.55818801e+10,  7.57022146e+10,
+  3.45077232e+11,  7.84996129e+11,
+  3.77747140e+11,  6.31931179e+11,
+ -9.44649933e+11, -2.68111294e+12,
+ -3.60380746e+11, -5.40569680e+11,
+  2.17020537e+10,  2.55818801e+10,
+  5.70555199e+11,  2.59713039e+11,
+ -2.96119462e+10, -2.59165131e+10,
+ -4.24956826e+11, -1.36798725e+11,
+  1.42337474e+11,  6.73297341e+10,
+ -2.80025954e+11, -1.89909415e+11,
+  2.82688919e+10,  7.57022146e+10,
+  2.59713039e+11,  5.77356324e+11,
+ -2.66709077e+10, -5.44779112e+10,
+ -1.27273335e+11, -2.04209092e+11,
+  6.53971169e+10,  2.26338676e+11,
+ -1.99434806e+11, -6.20710212e+11,
+  7.03170548e+11,  3.45077232e+11,
+ -2.96119462e+10, -2.66709077e+10,
+  9.20384196e+11,  4.11776807e+11,
+  4.71950241e+11,  3.08031050e+11,
+ -1.68844719e+12, -8.05938575e+11,
+ -3.77445853e+11, -2.32275605e+11,
+  3.46233237e+11,  7.84996129e+11,
+ -2.59165131e+10, -5.44779112e+10,
+  4.11776807e+11,  9.45887355e+11,
+  3.13343794e+11,  3.21137311e+11,
+ -8.11251320e+11, -1.83366211e+12,
+ -2.34186006e+11, -1.63880774e+11,
+  9.30815156e+11,  3.77747140e+11,
+ -4.24956826e+11, -1.27273335e+11,
+  4.71950241e+11,  3.13343794e+11,
+  2.66933376e+12,  8.66541719e+11,
+ -1.81944099e+12, -9.28979272e+11,
+ -1.82770134e+12, -5.01380046e+11,
+  3.73904122e+11,  6.31931179e+11,
+ -1.36798725e+11, -2.04209092e+11,
+  3.08031050e+11,  3.21137311e+11,
+  8.66541719e+11,  2.75153025e+12,
+ -9.20742130e+11, -1.64708940e+12,
+ -4.90936036e+11, -1.85330024e+12,
+ -1.97360381e+12, -9.44649933e+11,
+  1.42337474e+11,  6.53971169e+10,
+ -1.68844719e+12, -8.11251320e+11,
+ -1.81944099e+12, -9.20742130e+11,
+  4.26074832e+12,  2.04726998e+12,
+  1.07840620e+12,  5.63976291e+11,
+ -9.41768992e+11, -2.68111294e+12,
+  6.73297341e+10,  2.26338676e+11,
+ -8.05938575e+11, -1.83366211e+12,
+ -9.28979272e+11, -1.64708940e+12,
+  2.04726998e+12,  5.76761534e+12,
+  5.62087130e+11,  1.67910439e+11,
+ -8.62679703e+11, -3.60380746e+11,
+ -2.80025954e+11, -1.99434806e+11,
+ -3.77445853e+11, -2.34186006e+11,
+ -1.82770134e+12, -4.90936036e+11,
+  1.07840620e+12,  5.62087130e+11,
+  2.26944665e+12,  7.22850462e+11,
+ -3.63261686e+11, -5.40569680e+11,
+ -1.89909415e+11, -6.20710212e+11,
+ -2.32275605e+11, -1.63880774e+11,
+ -5.01380046e+11, -1.85330024e+12,
+  5.63976291e+11,  1.67910439e+11,
+  7.22850462e+11,  3.01055047e+12,
+};
+
+pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::ElasticityImplicitLgDeformGravData2DQuadratic(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;
+  gravityVec = const_cast<double*>(_gravityVec);
+  vertices = const_cast<double*>(_vertices);
+  cells = const_cast<int*>(_cells);
+  verticesRef = const_cast<double*>(_verticesRef);
+  quadPts = const_cast<double*>(_quadPts);
+  quadWts = const_cast<double*>(_quadWts);
+  basis = const_cast<double*>(_basis);
+  basisDerivRef = const_cast<double*>(_basisDerivRef);
+  fieldTIncr = const_cast<double*>(_fieldTIncr);
+  fieldT = const_cast<double*>(_fieldT);
+  fieldTmdt = const_cast<double*>(_fieldTmdt);
+  valsResidual = const_cast<double*>(_valsResidual);
+  valsJacobian = const_cast<double*>(_valsJacobian);
+} // constructor
+
+pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic::~ElasticityImplicitLgDeformGravData2DQuadratic(void)
+{}
+
+
+// End of file

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DQuadratic.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DQuadratic.hh	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData2DQuadratic.hh	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,92 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application integratorelasticitylgdeform.
+
+#if !defined(pylith_feassemble_elasticityimplicitlgdeformgravdata2dquadratic_hh)
+#define pylith_feassemble_elasticityimplicitlgdeformgravdata2dquadratic_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+  namespace feassemble {
+     class ElasticityImplicitLgDeformGravData2DQuadratic;
+  } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityImplicitLgDeformGravData2DQuadratic : public IntegratorData
+{
+
+public: 
+
+  /// Constructor
+  ElasticityImplicitLgDeformGravData2DQuadratic(void);
+
+  /// Destructor
+  ~ElasticityImplicitLgDeformGravData2DQuadratic(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 _gravityVec[];
+
+  static const double _vertices[];
+
+  static const int _cells[];
+
+  static const double _verticesRef[];
+
+  static const double _quadPts[];
+
+  static const double _quadWts[];
+
+  static const double _basis[];
+
+  static const double _basisDerivRef[];
+
+  static const double _fieldTIncr[];
+
+  static const double _fieldT[];
+
+  static const double _fieldTmdt[];
+
+  static const double _valsResidual[];
+
+  static const double _valsJacobian[];
+
+};
+
+#endif // pylith_feassemble_elasticityimplicitlgdeformgravdata2dquadratic_hh
+
+// End of file

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DLinear.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DLinear.cc	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DLinear.cc	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,192 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application integratorelasticitylgdeform.
+
+#include "ElasticityImplicitLgDeformGravData3DLinear.hh"
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_spaceDim = 3;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_cellDim = 3;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_numVertices = 4;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_numCells = 1;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_numBasis = 4;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_numQuadPts = 1;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_matType = "ElasticIsotropic3D";
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_matDBFilename = "data/elasticisotropic3d.spatialdb";
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_matId = 0;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_matLabel = "elastic isotropic 3-D";
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_dt =   1.00000000e-02;
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_gravityVec[] = {
+  0.00000000e+00,  0.00000000e+00, -1.00000000e+08,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_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::ElasticityImplicitLgDeformGravData3DLinear::_cells[] = {
+0,1,2,3,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_verticesRef[] = {
+ -1.00000000e+00, -1.00000000e+00, -1.00000000e+00,
+  1.00000000e+00, -1.00000000e+00, -1.00000000e+00,
+ -1.00000000e+00,  1.00000000e+00, -1.00000000e+00,
+ -1.00000000e+00, -1.00000000e+00,  1.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_quadPts[] = {
+ -5.00000000e-01, -5.00000000e-01, -5.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_quadWts[] = {
+  1.33333333e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_basis[] = {
+  2.50000000e-01,  2.50000000e-01,  2.50000000e-01,
+  2.50000000e-01,};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_basisDerivRef[] = {
+ -5.00000000e-01, -5.00000000e-01, -5.00000000e-01,
+  5.00000000e-01,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  5.00000000e-01,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,  5.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_fieldTIncr[] = {
+  3.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::ElasticityImplicitLgDeformGravData3DLinear::_fieldT[] = {
+  8.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::ElasticityImplicitLgDeformGravData3DLinear::_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::ElasticityImplicitLgDeformGravData3DLinear::_valsResidual[] = {
+  2.79474210e+11,  1.80174876e+12,  1.23194350e+12,
+  6.44632598e+11,  4.29759382e+12,  2.85238668e+12,
+ -1.13174893e+12, -6.94850554e+12, -4.68862818e+12,
+  2.07642124e+11,  8.49162957e+11,  4.69797995e+11,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::_valsJacobian[] = {
+  2.94874367e+11,  6.16951570e+10,  3.89461610e+10,
+  5.48150595e+11,  1.11804684e+11,  7.10898629e+10,
+ -9.45152856e+11, -2.08621385e+11, -1.32482083e+11,
+  1.02127894e+11,  3.51215443e+10,  2.24460592e+10,
+  6.16951570e+10,  6.57018660e+11,  2.71425583e+11,
+  1.11804684e+11,  1.23922444e+12,  4.97844328e+11,
+ -2.08621385e+11, -2.12462667e+12, -8.51891691e+11,
+  3.51215443e+10,  2.28383572e+11,  8.26217801e+10,
+  3.89461610e+10,  2.71425583e+11,  4.77828353e+11,
+  7.10898629e+10,  4.97844328e+11,  8.73012939e+11,
+ -1.32482083e+11, -8.51891691e+11, -1.49263907e+12,
+  2.24460592e+10,  8.26217801e+10,  1.41797778e+11,
+  5.48150595e+11,  1.11804684e+11,  7.10898629e+10,
+  1.41837229e+12,  2.89096417e+11,  1.70605497e+11,
+ -2.25396787e+12, -4.94966564e+11, -2.95400181e+11,
+  2.87444987e+11,  9.40654624e+10,  5.37048209e+10,
+  1.11804684e+11,  1.23922444e+12,  4.97844328e+11,
+  2.89096417e+11,  3.27225597e+12,  1.26969767e+12,
+ -4.94966564e+11, -5.16973245e+12, -1.99940566e+12,
+  9.40654624e+10,  6.58252043e+11,  2.31863658e+11,
+  7.10898629e+10,  4.97844328e+11,  8.73012939e+11,
+  1.70605497e+11,  1.26969767e+12,  2.20481950e+12,
+ -2.95400181e+11, -1.99940566e+12, -3.47904176e+12,
+  5.37048209e+10,  2.31863658e+11,  4.01209317e+11,
+ -9.45152856e+11, -2.08621385e+11, -1.32482083e+11,
+ -2.25396787e+12, -4.94966564e+11, -2.95400181e+11,
+  3.68810232e+12,  8.67069202e+11,  5.19506826e+11,
+ -4.88981593e+11, -1.63481253e+11, -9.16245619e+10,
+ -2.08621385e+11, -2.12462667e+12, -8.51891691e+11,
+ -4.94966564e+11, -5.16973245e+12, -1.99940566e+12,
+  8.67069202e+11,  8.39475093e+12,  3.23896409e+12,
+ -1.63481253e+11, -1.10039182e+12, -3.87666745e+11,
+ -1.32482083e+11, -8.51891691e+11, -1.49263907e+12,
+ -2.95400181e+11, -1.99940566e+12, -3.47904176e+12,
+  5.19506826e+11,  3.23896409e+12,  5.64558477e+12,
+ -9.16245619e+10, -3.87666745e+11, -6.73903937e+11,
+  1.02127894e+11,  3.51215443e+10,  2.24460592e+10,
+  2.87444987e+11,  9.40654624e+10,  5.37048209e+10,
+ -4.88981593e+11, -1.63481253e+11, -9.16245619e+10,
+  9.94087115e+10,  3.42942460e+10,  1.54736818e+10,
+  3.51215443e+10,  2.28383572e+11,  8.26217801e+10,
+  9.40654624e+10,  6.58252043e+11,  2.31863658e+11,
+ -1.63481253e+11, -1.10039182e+12, -3.87666745e+11,
+  3.42942460e+10,  2.13756204e+11,  7.31813067e+10,
+  2.24460592e+10,  8.26217801e+10,  1.41797778e+11,
+  5.37048209e+10,  2.31863658e+11,  4.01209317e+11,
+ -9.16245619e+10, -3.87666745e+11, -6.73903937e+11,
+  1.54736818e+10,  7.31813067e+10,  1.30896842e+11,
+};
+
+pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::ElasticityImplicitLgDeformGravData3DLinear(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;
+  gravityVec = const_cast<double*>(_gravityVec);
+  vertices = const_cast<double*>(_vertices);
+  cells = const_cast<int*>(_cells);
+  verticesRef = const_cast<double*>(_verticesRef);
+  quadPts = const_cast<double*>(_quadPts);
+  quadWts = const_cast<double*>(_quadWts);
+  basis = const_cast<double*>(_basis);
+  basisDerivRef = const_cast<double*>(_basisDerivRef);
+  fieldTIncr = const_cast<double*>(_fieldTIncr);
+  fieldT = const_cast<double*>(_fieldT);
+  fieldTmdt = const_cast<double*>(_fieldTmdt);
+  valsResidual = const_cast<double*>(_valsResidual);
+  valsJacobian = const_cast<double*>(_valsJacobian);
+} // constructor
+
+pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear::~ElasticityImplicitLgDeformGravData3DLinear(void)
+{}
+
+
+// End of file

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DLinear.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DLinear.hh	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DLinear.hh	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,92 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application integratorelasticitylgdeform.
+
+#if !defined(pylith_feassemble_elasticityimplicitlgdeformgravdata3dlinear_hh)
+#define pylith_feassemble_elasticityimplicitlgdeformgravdata3dlinear_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+  namespace feassemble {
+     class ElasticityImplicitLgDeformGravData3DLinear;
+  } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityImplicitLgDeformGravData3DLinear : public IntegratorData
+{
+
+public: 
+
+  /// Constructor
+  ElasticityImplicitLgDeformGravData3DLinear(void);
+
+  /// Destructor
+  ~ElasticityImplicitLgDeformGravData3DLinear(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 _gravityVec[];
+
+  static const double _vertices[];
+
+  static const int _cells[];
+
+  static const double _verticesRef[];
+
+  static const double _quadPts[];
+
+  static const double _quadWts[];
+
+  static const double _basis[];
+
+  static const double _basisDerivRef[];
+
+  static const double _fieldTIncr[];
+
+  static const double _fieldT[];
+
+  static const double _fieldTmdt[];
+
+  static const double _valsResidual[];
+
+  static const double _valsJacobian[];
+
+};
+
+#endif // pylith_feassemble_elasticityimplicitlgdeformgravdata3dlinear_hh
+
+// End of file

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DQuadratic.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DQuadratic.cc	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DQuadratic.cc	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,531 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application integratorelasticitylgdeform.
+
+#include "ElasticityImplicitLgDeformGravData3DQuadratic.hh"
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_spaceDim = 3;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_cellDim = 3;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_numVertices = 10;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_numCells = 1;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_numBasis = 10;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_numQuadPts = 4;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_matType = "ElasticIsotropic3D";
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_matDBFilename = "data/elasticisotropic3d.spatialdb";
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_matId = 0;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_matLabel = "elastic isotropic 3-D";
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_dt =   1.00000000e-02;
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_gravityVec[] = {
+  0.00000000e+00,  0.00000000e+00, -1.00000000e+08,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_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,
+  1.50000000e+00, -5.00000000e-01, -2.50000000e-01,
+  2.50000000e-01, -5.00000000e-01, -5.00000000e-01,
+  7.50000000e-01, -2.00000000e+00, -7.50000000e-01,
+ -1.50000000e-01, -7.50000000e-01,  5.00000000e-01,
+  1.10000000e+00, -7.50000000e-01,  7.50000000e-01,
+  6.00000000e-01,  7.50000000e-01,  1.00000000e+00,
+};
+
+const int pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_cells[] = {
+0,1,2,3,4,5,6,7,8,9,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_verticesRef[] = {
+ -1.00000000e+00, -1.00000000e+00, -1.00000000e+00,
+  1.00000000e+00, -1.00000000e+00, -1.00000000e+00,
+ -1.00000000e+00,  1.00000000e+00, -1.00000000e+00,
+ -1.00000000e+00, -1.00000000e+00,  1.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -1.00000000e+00,
+ -1.00000000e+00,  0.00000000e+00, -1.00000000e+00,
+  0.00000000e+00, -1.00000000e+00, -1.00000000e+00,
+ -1.00000000e+00, -1.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -1.00000000e+00,  0.00000000e+00,
+ -1.00000000e+00,  0.00000000e+00,  0.00000000e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_quadPts[] = {
+ -8.00000000e-01, -8.00000000e-01, -8.00000000e-01,
+  5.00000000e-01, -8.00000000e-01, -8.00000000e-01,
+ -8.00000000e-01,  5.00000000e-01, -8.00000000e-01,
+ -8.00000000e-01, -8.00000000e-01,  5.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_quadWts[] = {
+  3.33333333e-01,  3.33333333e-01,  3.33333333e-01,  3.33333333e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_basis[] = {
+  2.80000000e-01, -8.00000000e-02, -8.00000000e-02,
+ -8.00000000e-02,  4.00000000e-02,  2.80000000e-01,
+  2.80000000e-01,  2.80000000e-01,  4.00000000e-02,
+  4.00000000e-02, -4.50000000e-02,  3.75000000e-01,
+ -8.00000000e-02, -8.00000000e-02,  3.00000000e-01,
+  2.00000000e-02,  1.50000000e-01,  2.00000000e-02,
+  3.00000000e-01,  4.00000000e-02, -4.50000000e-02,
+ -8.00000000e-02,  3.75000000e-01, -8.00000000e-02,
+  3.00000000e-01,  1.50000000e-01,  2.00000000e-02,
+  2.00000000e-02,  4.00000000e-02,  3.00000000e-01,
+ -4.50000000e-02, -8.00000000e-02, -8.00000000e-02,
+  3.75000000e-01,  4.00000000e-02,  2.00000000e-02,
+  2.00000000e-02,  1.50000000e-01,  3.00000000e-01,
+  3.00000000e-01,};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_basisDerivRef[] = {
+ -9.00000000e-01, -9.00000000e-01, -9.00000000e-01,
+ -3.00000000e-01,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -3.00000000e-01,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -3.00000000e-01,
+  2.00000000e-01,  2.00000000e-01,  0.00000000e+00,
+ -2.00000000e-01,  1.20000000e+00, -2.00000000e-01,
+  1.20000000e+00, -2.00000000e-01, -2.00000000e-01,
+ -2.00000000e-01, -2.00000000e-01,  1.20000000e+00,
+  2.00000000e-01,  0.00000000e+00,  2.00000000e-01,
+  0.00000000e+00,  2.00000000e-01,  2.00000000e-01,
+  4.00000000e-01,  4.00000000e-01,  4.00000000e-01,
+  1.00000000e+00,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -3.00000000e-01,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -3.00000000e-01,
+  2.00000000e-01,  1.50000000e+00,  0.00000000e+00,
+ -2.00000000e-01, -1.00000000e-01, -2.00000000e-01,
+ -1.40000000e+00, -1.50000000e+00, -1.50000000e+00,
+ -2.00000000e-01, -2.00000000e-01, -1.00000000e-01,
+  2.00000000e-01,  0.00000000e+00,  1.50000000e+00,
+  0.00000000e+00,  2.00000000e-01,  2.00000000e-01,
+  4.00000000e-01,  4.00000000e-01,  4.00000000e-01,
+ -3.00000000e-01,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  1.00000000e+00,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00, -3.00000000e-01,
+  1.50000000e+00,  2.00000000e-01,  0.00000000e+00,
+ -1.50000000e+00, -1.40000000e+00, -1.50000000e+00,
+ -1.00000000e-01, -2.00000000e-01, -2.00000000e-01,
+ -2.00000000e-01, -2.00000000e-01, -1.00000000e-01,
+  2.00000000e-01,  0.00000000e+00,  2.00000000e-01,
+  0.00000000e+00,  2.00000000e-01,  1.50000000e+00,
+  4.00000000e-01,  4.00000000e-01,  4.00000000e-01,
+ -3.00000000e-01,  0.00000000e+00,  0.00000000e+00,
+  0.00000000e+00, -3.00000000e-01,  0.00000000e+00,
+  0.00000000e+00,  0.00000000e+00,  1.00000000e+00,
+  2.00000000e-01,  2.00000000e-01,  0.00000000e+00,
+ -2.00000000e-01, -1.00000000e-01, -2.00000000e-01,
+ -1.00000000e-01, -2.00000000e-01, -2.00000000e-01,
+ -1.50000000e+00, -1.50000000e+00, -1.40000000e+00,
+  1.50000000e+00,  0.00000000e+00,  2.00000000e-01,
+  0.00000000e+00,  1.50000000e+00,  2.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_fieldTIncr[] = {
+  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::ElasticityImplicitLgDeformGravData3DQuadratic::_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::ElasticityImplicitLgDeformGravData3DQuadratic::_fieldTmdt[] = {
+  2.00000000e-01, -3.00000000e-01, -1.00000000e-01,
+ -4.00000000e-01,  2.00000000e-01,  3.00000000e-01,
+ -5.00000000e-01,  2.00000000e-01,  2.00000000e-01,
+ -3.00000000e-01, -8.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, -2.00000000e-01, -9.00000000e-01,
+ -5.00000000e-01, -8.00000000e-01,  4.00000000e-01,
+ -4.00000000e-01,  5.00000000e-01, -7.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_valsResidual[] = {
+  2.83531193e+11,  6.85360097e+11, -7.60839301e+11,
+  8.17609945e+11, -2.46059924e+11,  5.52982643e+11,
+ -1.61369461e+12, -3.33728123e+11, -2.00813431e+12,
+ -3.86612970e+11,  1.55209617e+12, -1.59708576e+12,
+ -8.25945978e+11, -2.06081757e+11, -9.32629697e+11,
+  2.39916408e+12,  1.36233180e+12,  2.35919362e+12,
+ -1.83049591e+12, -1.27565741e+12,  2.69052281e+11,
+  2.60556997e+11, -1.53217232e+12,  1.31884398e+12,
+ -8.95741060e+11,  3.53530714e+12, -4.30653354e+12,
+  1.79162831e+12, -3.54139567e+12,  4.39369174e+12,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::_valsJacobian[] = {
+  4.65661925e+11,  1.45207670e+11,  8.48382894e+10,
+  1.24772472e+11,  7.41894782e+10, -4.42698676e+10,
+  7.18213188e+10,  5.09242305e+09,  4.05530373e+10,
+  9.25950209e+10,  3.01383081e+09,  4.41940539e+10,
+  1.40659877e+11,  7.81646933e+09,  8.55770103e+10,
+  7.55814313e+10,  1.00158408e+11, -5.39884553e+09,
+ -7.04119227e+11, -2.55717104e+11, -3.23748072e+10,
+ -3.27406977e+11, -3.58266405e+10, -1.14846242e+11,
+  1.90099476e+11, -7.46675761e+10,  1.18407263e+10,
+ -1.29665315e+11,  3.07330418e+10, -7.01133548e+10,
+  1.45207670e+11,  4.17879082e+11,  2.69285551e+10,
+  7.41894782e+10,  7.12501045e+10,  1.69326571e+10,
+  5.09242305e+09,  7.79843128e+10,  1.24078373e+09,
+  3.01383081e+09,  1.26067202e+11, -2.62782048e+10,
+  7.81646933e+09,  1.18102474e+11,  2.96832254e+10,
+  1.00158408e+11,  2.69890946e+10,  6.52474095e+10,
+ -2.55717104e+11, -5.58070068e+11, -2.09279922e+10,
+ -3.58266405e+10, -4.64117178e+11,  6.84864638e+10,
+ -7.46675761e+10,  3.28253126e+11, -2.44433188e+11,
+  3.07330418e+10, -1.44338150e+11,  8.31202909e+10,
+  8.48382894e+10,  2.69285551e+10,  4.15301734e+11,
+ -4.42698676e+10,  1.69326571e+10,  7.33047953e+10,
+  4.05530373e+10,  1.24078373e+09,  1.27489728e+11,
+  4.41940539e+10, -2.62782048e+10,  1.51395370e+11,
+  8.55770103e+10,  2.96832254e+10,  2.11321369e+11,
+ -5.39884553e+09,  6.52474095e+10, -1.46463462e+11,
+ -3.23748072e+10, -2.09279922e+10, -5.59853491e+11,
+ -1.14846242e+11,  6.84864638e+10, -5.09095160e+11,
+  1.18407263e+10, -2.44433188e+11,  4.97279724e+11,
+ -7.01133548e+10,  8.31202909e+10, -2.60680607e+11,
+  1.24772472e+11,  7.41894782e+10, -4.42698676e+10,
+  3.18994605e+11,  6.08636475e+10, -5.28381253e+10,
+ -5.95541375e+10,  1.26084960e+10, -4.24114682e+10,
+ -8.37120894e+10,  2.17101919e+10, -9.24436085e+08,
+ -2.46254169e+11, -4.29845346e+10, -4.41618213e+10,
+  3.69282312e+11,  1.07296224e+11,  1.48157570e+11,
+ -5.47553983e+11, -1.78849586e+11,  9.36194643e+10,
+  7.95730371e+10, -7.67652780e+10,  4.79024142e+10,
+ -2.15276680e+11,  8.00666055e+10, -1.77270676e+11,
+  2.59728633e+11, -5.81352446e+10,  7.21969464e+10,
+  7.41894782e+10,  7.12501045e+10,  1.69326571e+10,
+  6.08636475e+10,  3.25267756e+11, -1.22309091e+11,
+  1.26084960e+10, -5.31861531e+10,  1.29709419e+10,
+  2.17101919e+10, -1.52532444e+11,  1.00603438e+11,
+ -4.29845346e+10, -2.62321656e+11,  6.79528717e+10,
+  1.07296224e+11,  3.27288566e+11,  5.30178659e+10,
+ -1.78849586e+11, -4.32757567e+11,  7.65998486e+10,
+ -7.67652780e+10,  1.29553761e+11, -1.26591592e+11,
+  8.00666055e+10, -3.89057716e+11,  1.34140735e+11,
+ -5.81352446e+10,  4.36495348e+11, -2.13317675e+11,
+ -4.42698676e+10,  1.69326571e+10,  7.33047953e+10,
+ -5.28381253e+10, -1.22309091e+11,  4.88759132e+11,
+ -4.24114682e+10,  1.29709419e+10, -6.74464625e+10,
+ -9.24436085e+08,  1.00603438e+11, -1.98419387e+11,
+ -4.41618213e+10,  6.79528717e+10, -3.98133382e+11,
+  1.48157570e+11,  5.30178659e+10,  3.01368983e+11,
+  9.36194643e+10,  7.65998486e+10, -5.77601119e+11,
+  4.79024142e+10, -1.26591592e+11,  1.94445962e+11,
+ -1.77270676e+11,  1.34140735e+11, -2.74232321e+11,
+  7.21969464e+10, -2.13317675e+11,  4.57953800e+11,
+  7.18213188e+10,  5.09242305e+09,  4.05530373e+10,
+ -5.95541375e+10,  1.26084960e+10, -4.24114682e+10,
+  1.10135125e+12,  3.25720553e+11,  3.62390508e+11,
+  2.94017649e+11,  1.23894657e+10,  8.94735240e+10,
+  1.34408493e+10, -4.81163047e+10,  1.60257602e+11,
+ -6.81749121e+11, -2.46273575e+11, -2.38131042e+11,
+  1.52813392e+11,  6.38089974e+10,  2.92728877e+10,
+ -1.19071391e+10,  6.22561142e+10, -3.62572653e+10,
+  2.38104621e+11, -5.73710641e+10, -4.42540169e+09,
+ -1.11833868e+12, -1.30115106e+11, -3.60722383e+11,
+  5.09242305e+09,  7.79843128e+10,  1.24078373e+09,
+  1.26084960e+10, -5.31861531e+10,  1.29709419e+10,
+  3.25720553e+11,  1.09654928e+12,  1.25558927e+11,
+  1.23894657e+10,  4.02203557e+11, -1.25992638e+11,
+ -4.81163047e+10, -2.03145182e+11,  1.24652000e+11,
+ -2.46273575e+11, -6.32348620e+11, -1.80580051e+11,
+  6.38089974e+10,  9.79869768e+10,  3.14800157e+10,
+  6.22561142e+10, -2.38293966e+10,  8.52080054e+10,
+ -5.73710641e+10,  4.92506284e+11, -2.94720961e+11,
+ -1.30115106e+11, -1.25472106e+12,  2.20182976e+11,
+  4.05530373e+10,  1.24078373e+09,  1.27489728e+11,
+ -4.24114682e+10,  1.29709419e+10, -6.74464625e+10,
+  3.62390508e+11,  1.25558927e+11,  1.03669910e+12,
+  8.94735240e+10, -1.25992638e+11,  4.11450418e+11,
+  1.60257602e+11,  1.24652000e+11, -3.17810955e+09,
+ -2.38131042e+11, -1.80580051e+11, -6.28819588e+11,
+  2.92728877e+10,  3.14800157e+10,  3.14543861e+10,
+ -3.62572653e+10,  8.52080054e+10, -1.29228969e+11,
+ -4.42540169e+09, -2.94720961e+11,  5.35392012e+11,
+ -3.60722383e+11,  2.20182976e+11, -1.31381251e+12,
+  9.25950209e+10,  3.01383081e+09,  4.41940539e+10,
+ -8.37120894e+10,  2.17101919e+10, -9.24436085e+08,
+  2.94017649e+11,  1.23894657e+10,  8.94735240e+10,
+  4.97528833e+11, -1.14626728e+10,  6.59882894e+10,
+  6.65491224e+10,  8.47757035e+09,  1.31257632e+10,
+  7.66331934e+10,  8.55959553e+10, -3.73685357e+07,
+ -3.56709943e+10, -2.76429617e+10, -6.19572817e+10,
+ -3.22925718e+11, -5.74029189e+09, -8.83327493e+10,
+  3.17445492e+11, -1.22169413e+11,  1.00263616e+11,
+ -9.02460510e+11,  3.58283248e+10, -1.61793411e+11,
+  3.01383081e+09,  1.26067202e+11, -2.62782048e+10,
+  2.17101919e+10, -1.52532444e+11,  1.00603438e+11,
+  1.23894657e+10,  4.02203557e+11, -1.25992638e+11,
+ -1.14626728e+10,  8.65931363e+11, -3.82661325e+11,
+  8.47757035e+09, -1.28217470e+10,  1.35369129e+10,
+  8.55959553e+10,  3.26503144e+10,  1.22944799e+11,
+ -2.76429617e+10, -3.20097931e+10, -5.88793091e+10,
+ -5.74029189e+09, -4.10305623e+11,  1.11266648e+11,
+ -1.22169413e+11,  7.48622075e+11, -4.24857358e+11,
+  3.58283248e+10, -1.56780490e+12,  6.70317037e+11,
+  4.41940539e+10, -2.62782048e+10,  1.51395370e+11,
+ -9.24436085e+08,  1.00603438e+11, -1.98419387e+11,
+  8.94735240e+10, -1.25992638e+11,  4.11450418e+11,
+  6.59882894e+10, -3.82661325e+11,  8.70711287e+11,
+  1.31257632e+10,  1.35369129e+10,  9.07016473e+10,
+ -3.73685357e+07,  1.22944799e+11, -5.25010034e+10,
+ -6.19572817e+10, -5.88793091e+10,  1.08121328e+10,
+ -8.83327493e+10,  1.11266648e+11, -5.16970075e+11,
+  1.00263616e+11, -4.24857358e+11,  7.55013813e+11,
+ -1.61793411e+11,  6.70317037e+11, -1.52219420e+12,
+  1.40659877e+11,  7.81646933e+09,  8.55770103e+10,
+ -2.46254169e+11, -4.29845346e+10, -4.41618213e+10,
+  1.34408493e+10, -4.81163047e+10,  1.60257602e+11,
+  6.65491224e+10,  8.47757035e+09,  1.31257632e+10,
+  1.16270901e+12,  1.84156516e+11,  1.94618725e+11,
+ -5.72995180e+11, -7.97684286e+10, -3.20409939e+11,
+  2.64947735e+10,  1.68329992e+10, -9.87964535e+09,
+ -2.49889410e+11, -3.10663177e+10, -7.33658238e+10,
+ -1.71088244e+11, -6.30056465e+10,  1.74314405e+11,
+ -1.69626626e+11,  4.76576773e+10, -1.80076276e+11,
+  7.81646933e+09,  1.18102474e+11,  2.96832254e+10,
+ -4.29845346e+10, -2.62321656e+11,  6.79528717e+10,
+ -4.81163047e+10, -2.03145182e+11,  1.24652000e+11,
+  8.47757035e+09, -1.28217470e+10,  1.35369129e+10,
+  1.84156516e+11,  1.16609381e+12, -2.28629589e+11,
+ -7.97684286e+10, -4.65673799e+11, -9.51163063e+10,
+  1.68329992e+10,  7.30677747e+10, -6.02206307e+10,
+ -3.10663177e+10, -2.30487506e+11,  7.81937180e+09,
+ -6.30056465e+10, -2.28430845e+11,  1.98763507e+11,
+  4.76576773e+10,  4.56166756e+10, -5.84413625e+10,
+  8.55770103e+10,  2.96832254e+10,  2.11321369e+11,
+ -4.41618213e+10,  6.79528717e+10, -3.98133382e+11,
+  1.60257602e+11,  1.24652000e+11, -3.17810955e+09,
+  1.31257632e+10,  1.35369129e+10,  9.07016473e+10,
+  1.94618725e+11, -2.28629589e+11,  1.70825144e+12,
+ -3.20409939e+11, -9.51163063e+10, -7.97801243e+11,
+ -9.87964535e+09, -6.02206307e+10,  7.70360435e+10,
+ -7.33658238e+10,  7.81937180e+09, -2.93644299e+11,
+  1.74314405e+11,  1.98763507e+11, -4.10328847e+11,
+ -1.80076276e+11, -5.84413625e+10, -1.84224621e+11,
+  7.55814313e+10,  1.00158408e+11, -5.39884553e+09,
+  3.69282312e+11,  1.07296224e+11,  1.48157570e+11,
+ -6.81749121e+11, -2.46273575e+11, -2.38131042e+11,
+  7.66331934e+10,  8.55959553e+10, -3.73685357e+07,
+ -5.72995180e+11, -7.97684286e+10, -3.20409939e+11,
+  2.45592464e+12,  8.72069906e+11,  7.29084849e+11,
+ -9.75215619e+11, -4.34128069e+11, -2.56910788e+11,
+ -5.51910015e+11, -3.31945132e+11, -1.04698326e+11,
+ -5.96253782e+11, -1.03426849e+11, -1.13624994e+11,
+  4.00702141e+11,  3.04215606e+10,  1.61968884e+11,
+  1.00158408e+11,  2.69890946e+10,  6.52474095e+10,
+  1.07296224e+11,  3.27288566e+11,  5.30178659e+10,
+ -2.46273575e+11, -6.32348620e+11, -1.80580051e+11,
+  8.55959553e+10,  3.26503144e+10,  1.22944799e+11,
+ -7.97684286e+10, -4.65673799e+11, -9.51163063e+10,
+  8.72069906e+11,  2.27130607e+12,  5.76476353e+11,
+ -4.34128069e+11, -7.36984695e+11, -2.23203143e+11,
+ -3.31945132e+11, -4.91827419e+11, -3.22783678e+11,
+ -1.03426849e+11, -7.11586437e+11,  1.31379586e+11,
+  3.04215606e+10,  3.80186919e+11, -1.27382836e+11,
+ -5.39884553e+09,  6.52474095e+10, -1.46463462e+11,
+  1.48157570e+11,  5.30178659e+10,  3.01368983e+11,
+ -2.38131042e+11, -1.80580051e+11, -6.28819588e+11,
+ -3.73685357e+07,  1.22944799e+11, -5.25010034e+10,
+ -3.20409939e+11, -9.51163063e+10, -7.97801243e+11,
+  7.29084849e+11,  5.76476353e+11,  2.14357815e+12,
+ -2.56910788e+11, -2.23203143e+11, -4.02976629e+11,
+ -1.04698326e+11, -3.22783678e+11, -2.22817271e+11,
+ -1.13624994e+11,  1.31379586e+11, -7.44361231e+11,
+  1.61968884e+11, -1.27382836e+11,  5.50793300e+11,
+ -7.04119227e+11, -2.55717104e+11, -3.23748072e+10,
+ -5.47553983e+11, -1.78849586e+11,  9.36194643e+10,
+  1.52813392e+11,  6.38089974e+10,  2.92728877e+10,
+ -3.56709943e+10, -2.76429617e+10, -6.19572817e+10,
+  2.64947735e+10,  1.68329992e+10, -9.87964535e+09,
+ -9.75215619e+11, -4.34128069e+11, -2.56910788e+11,
+  1.89896017e+12,  6.56740815e+11, -8.16178375e+10,
+  3.38393444e+11,  1.64966431e+11,  1.12967809e+11,
+ -3.12949675e+10,  2.44157356e+10,  1.92718403e+11,
+ -1.22806992e+11, -3.04272562e+10,  1.41617951e+10,
+ -2.55717104e+11, -5.58070068e+11, -2.09279922e+10,
+ -1.78849586e+11, -4.32757567e+11,  7.65998486e+10,
+  6.38089974e+10,  9.79869768e+10,  3.14800157e+10,
+ -2.76429617e+10, -3.20097931e+10, -5.88793091e+10,
+  1.68329992e+10,  7.30677747e+10, -6.02206307e+10,
+ -4.34128069e+11, -7.36984695e+11, -2.23203143e+11,
+  6.56740815e+11,  1.40195492e+12, -6.50991546e+10,
+  1.64966431e+11,  4.34421272e+11,  6.47670884e+10,
+  2.44157356e+10, -1.07992730e+11,  2.24564280e+11,
+ -3.04272562e+10, -1.39616091e+11,  3.09189976e+10,
+ -3.23748072e+10, -2.09279922e+10, -5.59853491e+11,
+  9.36194643e+10,  7.65998486e+10, -5.77601119e+11,
+  2.92728877e+10,  3.14800157e+10,  3.14543861e+10,
+ -6.19572817e+10, -5.88793091e+10,  1.08121328e+10,
+ -9.87964535e+09, -6.02206307e+10,  7.70360435e+10,
+ -2.56910788e+11, -2.23203143e+11, -4.02976629e+11,
+ -8.16178375e+10, -6.50991546e+10,  1.51957659e+12,
+  1.12967809e+11,  6.47670884e+10,  3.90219017e+11,
+  1.92718403e+11,  2.24564280e+11, -4.04297886e+11,
+  1.41617951e+10,  3.09189976e+10, -8.43690419e+10,
+ -3.27406977e+11, -3.58266405e+10, -1.14846242e+11,
+  7.95730371e+10, -7.67652780e+10,  4.79024142e+10,
+ -1.19071391e+10,  6.22561142e+10, -3.62572653e+10,
+ -3.22925718e+11, -5.74029189e+09, -8.83327493e+10,
+ -2.49889410e+11, -3.10663177e+10, -7.33658238e+10,
+ -5.51910015e+11, -3.31945132e+11, -1.04698326e+11,
+  3.38393444e+11,  1.64966431e+11,  1.12967809e+11,
+  1.31141204e+12,  1.23926458e+11,  3.32914096e+11,
+ -6.26226600e+11,  2.47475905e+11, -2.25050603e+11,
+  3.60887342e+11, -1.17281247e+11,  1.48766690e+11,
+ -3.58266405e+10, -4.64117178e+11,  6.84864638e+10,
+ -7.67652780e+10,  1.29553761e+11, -1.26591592e+11,
+  6.22561142e+10, -2.38293966e+10,  8.52080054e+10,
+ -5.74029189e+09, -4.10305623e+11,  1.11266648e+11,
+ -3.10663177e+10, -2.30487506e+11,  7.81937180e+09,
+ -3.31945132e+11, -4.91827419e+11, -3.22783678e+11,
+  1.64966431e+11,  4.34421272e+11,  6.47670884e+10,
+  1.23926458e+11,  1.60701662e+12, -2.64550313e+11,
+  2.47475905e+11, -9.92458260e+11,  6.53136619e+11,
+ -1.17281247e+11,  4.42033730e+11, -2.76758613e+11,
+ -1.14846242e+11,  6.84864638e+10, -5.09095160e+11,
+  4.79024142e+10, -1.26591592e+11,  1.94445962e+11,
+ -3.62572653e+10,  8.52080054e+10, -1.29228969e+11,
+ -8.83327493e+10,  1.11266648e+11, -5.16970075e+11,
+ -7.33658238e+10,  7.81937180e+09, -2.93644299e+11,
+ -1.04698326e+11, -3.22783678e+11, -2.22817271e+11,
+  1.12967809e+11,  6.47670884e+10,  3.90219017e+11,
+  3.32914096e+11, -2.64550313e+11,  1.69650893e+12,
+ -2.25050603e+11,  6.53136619e+11, -1.33623672e+12,
+  1.48766690e+11, -2.76758613e+11,  7.26818588e+11,
+  1.90099476e+11, -7.46675761e+10,  1.18407263e+10,
+ -2.15276680e+11,  8.00666055e+10, -1.77270676e+11,
+  2.38104621e+11, -5.73710641e+10, -4.42540169e+09,
+  3.17445492e+11, -1.22169413e+11,  1.00263616e+11,
+ -1.71088244e+11, -6.30056465e+10,  1.74314405e+11,
+ -5.96253782e+11, -1.03426849e+11, -1.13624994e+11,
+ -3.12949675e+10,  2.44157356e+10,  1.92718403e+11,
+ -6.26226600e+11,  2.47475905e+11, -2.25050603e+11,
+  1.97967373e+12, -2.24128696e+11,  2.63978666e+11,
+ -1.08518305e+12,  2.92810999e+11, -2.22744142e+11,
+ -7.46675761e+10,  3.28253126e+11, -2.44433188e+11,
+  8.00666055e+10, -3.89057716e+11,  1.34140735e+11,
+ -5.73710641e+10,  4.92506284e+11, -2.94720961e+11,
+ -1.22169413e+11,  7.48622075e+11, -4.24857358e+11,
+ -6.30056465e+10, -2.28430845e+11,  1.98763507e+11,
+ -1.03426849e+11, -7.11586437e+11,  1.31379586e+11,
+  2.44157356e+10, -1.07992730e+11,  2.24564280e+11,
+  2.47475905e+11, -9.92458260e+11,  6.53136619e+11,
+ -2.24128696e+11,  3.09010212e+12, -1.54522896e+12,
+  2.92810999e+11, -2.22995762e+12,  1.16725574e+12,
+  1.18407263e+10, -2.44433188e+11,  4.97279724e+11,
+ -1.77270676e+11,  1.34140735e+11, -2.74232321e+11,
+ -4.42540169e+09, -2.94720961e+11,  5.35392012e+11,
+  1.00263616e+11, -4.24857358e+11,  7.55013813e+11,
+  1.74314405e+11,  1.98763507e+11, -4.10328847e+11,
+ -1.13624994e+11,  1.31379586e+11, -7.44361231e+11,
+  1.92718403e+11,  2.24564280e+11, -4.04297886e+11,
+ -2.25050603e+11,  6.53136619e+11, -1.33623672e+12,
+  2.63978666e+11, -1.54522896e+12,  3.55709452e+12,
+ -2.22744142e+11,  1.16725574e+12, -2.17532306e+12,
+ -1.29665315e+11,  3.07330418e+10, -7.01133548e+10,
+  2.59728633e+11, -5.81352446e+10,  7.21969464e+10,
+ -1.11833868e+12, -1.30115106e+11, -3.60722383e+11,
+ -9.02460510e+11,  3.58283248e+10, -1.61793411e+11,
+ -1.69626626e+11,  4.76576773e+10, -1.80076276e+11,
+  4.00702141e+11,  3.04215606e+10,  1.61968884e+11,
+ -1.22806992e+11, -3.04272562e+10,  1.41617951e+10,
+  3.60887342e+11, -1.17281247e+11,  1.48766690e+11,
+ -1.08518305e+12,  2.92810999e+11, -2.22744142e+11,
+  2.50676306e+12, -1.01492749e+11,  5.98355251e+11,
+  3.07330418e+10, -1.44338150e+11,  8.31202909e+10,
+ -5.81352446e+10,  4.36495348e+11, -2.13317675e+11,
+ -1.30115106e+11, -1.25472106e+12,  2.20182976e+11,
+  3.58283248e+10, -1.56780490e+12,  6.70317037e+11,
+  4.76576773e+10,  4.56166756e+10, -5.84413625e+10,
+  3.04215606e+10,  3.80186919e+11, -1.27382836e+11,
+ -3.04272562e+10, -1.39616091e+11,  3.09189976e+10,
+ -1.17281247e+11,  4.42033730e+11, -2.76758613e+11,
+  2.92810999e+11, -2.22995762e+12,  1.16725574e+12,
+ -1.01492749e+11,  4.03210515e+12, -1.49589456e+12,
+ -7.01133548e+10,  8.31202909e+10, -2.60680607e+11,
+  7.21969464e+10, -2.13317675e+11,  4.57953800e+11,
+ -3.60722383e+11,  2.20182976e+11, -1.31381251e+12,
+ -1.61793411e+11,  6.70317037e+11, -1.52219420e+12,
+ -1.80076276e+11, -5.84413625e+10, -1.84224621e+11,
+  1.61968884e+11, -1.27382836e+11,  5.50793300e+11,
+  1.41617951e+10,  3.09189976e+10, -8.43690419e+10,
+  1.48766690e+11, -2.76758613e+11,  7.26818588e+11,
+ -2.22744142e+11,  1.16725574e+12, -2.17532306e+12,
+  5.98355251e+11, -1.49589456e+12,  3.80503835e+12,
+};
+
+pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::ElasticityImplicitLgDeformGravData3DQuadratic(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;
+  gravityVec = const_cast<double*>(_gravityVec);
+  vertices = const_cast<double*>(_vertices);
+  cells = const_cast<int*>(_cells);
+  verticesRef = const_cast<double*>(_verticesRef);
+  quadPts = const_cast<double*>(_quadPts);
+  quadWts = const_cast<double*>(_quadWts);
+  basis = const_cast<double*>(_basis);
+  basisDerivRef = const_cast<double*>(_basisDerivRef);
+  fieldTIncr = const_cast<double*>(_fieldTIncr);
+  fieldT = const_cast<double*>(_fieldT);
+  fieldTmdt = const_cast<double*>(_fieldTmdt);
+  valsResidual = const_cast<double*>(_valsResidual);
+  valsJacobian = const_cast<double*>(_valsJacobian);
+} // constructor
+
+pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic::~ElasticityImplicitLgDeformGravData3DQuadratic(void)
+{}
+
+
+// End of file

Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DQuadratic.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DQuadratic.hh	                        (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformGravData3DQuadratic.hh	2009-11-19 01:25:54 UTC (rev 16002)
@@ -0,0 +1,92 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+//                           Brad T. Aagaard
+//                        U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+// DO NOT EDIT THIS FILE
+// This file was generated from python application integratorelasticitylgdeform.
+
+#if !defined(pylith_feassemble_elasticityimplicitlgdeformgravdata3dquadratic_hh)
+#define pylith_feassemble_elasticityimplicitlgdeformgravdata3dquadratic_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+  namespace feassemble {
+     class ElasticityImplicitLgDeformGravData3DQuadratic;
+  } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityImplicitLgDeformGravData3DQuadratic : public IntegratorData
+{
+
+public: 
+
+  /// Constructor
+  ElasticityImplicitLgDeformGravData3DQuadratic(void);
+
+  /// Destructor
+  ~ElasticityImplicitLgDeformGravData3DQuadratic(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 _gravityVec[];
+
+  static const double _vertices[];
+
+  static const int _cells[];
+
+  static const double _verticesRef[];
+
+  static const double _quadPts[];
+
+  static const double _quadWts[];
+
+  static const double _basis[];
+
+  static const double _basisDerivRef[];
+
+  static const double _fieldTIncr[];
+
+  static const double _fieldT[];
+
+  static const double _fieldTmdt[];
+
+  static const double _valsResidual[];
+
+  static const double _valsJacobian[];
+
+};
+
+#endif // pylith_feassemble_elasticityimplicitlgdeformgravdata3dquadratic_hh
+
+// End of file

Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/IntegratorElasticity.py
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/IntegratorElasticity.py	2009-11-19 00:50:54 UTC (rev 16001)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/IntegratorElasticity.py	2009-11-19 01:25:54 UTC (rev 16002)
@@ -39,13 +39,16 @@
     ## properties.
     ##
     ## \b Properties
-    ## @li None
+    ## @li \b useGravity Include gravitational body forces in residual.
     ##
     ## \b Facilities
     ## @li \b formulation Elasticity formulation.
 
     import pyre.inventory
 
+    useGravity = pyre.inventory.bool("use_gravity", default=False)
+    useGravity.meta['tip'] = "Include gravitational body forces in residual."
+
     from ElasticityImplicit import ElasticityImplicit
     formulation = pyre.inventory.facility("formulation",
                                           factory=ElasticityImplicit)
@@ -74,6 +77,7 @@
     Set members using inventory.
     """
     IntegratorApp._configure(self)
+    self.useGravity = self.inventory.useGravity
     self.formulation = self.inventory.formulation
     return
 
@@ -83,6 +87,8 @@
     Calculate contribution to residual of operator for integrator.
     """
     self.valsResidual = self.formulation.calculateResidual(self)
+    if self.useGravity:
+      self.valsResidual += self._calculateGravityVec()
     return
 
 
@@ -147,6 +153,28 @@
     return M
 
 
+  def _calculateGravityVec(self):
+    """
+    Calculate body force vector.
+    """
+    gravityGlobal = numpy.zeros((self.numVertices*self.spaceDim),
+                                dtype=numpy.float64)
+    for cell in self.cells:
+      gravityCell = numpy.zeros((self.spaceDim*self.numBasis))
+      vertices = self.vertices[cell, :]
+      (jacobian, jacobianInv, jacobianDet, basisDeriv) = \
+                 feutils.calculateJacobian(self.quadrature, vertices)
+      for iQuad in xrange(self.numQuadPts):
+        wt = self.quadWts[iQuad] * jacobianDet[iQuad] * self.density
+        for iBasis in xrange(self.numBasis):
+          valI = wt * self.basis[iQuad, iBasis]
+          for iDim in xrange(self.spaceDim):
+            gravityCell[iDim + iBasis * self.spaceDim] += \
+                             valI * self.gravityVec[iDim]
+      feutils.assembleVec(gravityGlobal, gravityCell, cell, self.spaceDim)
+    return gravityGlobal
+    
+
   def _calculateElasticityMat(self):
     """
     Calculate elasticity matrix.

Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/feutils.py
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/feutils.py	2009-11-19 00:50:54 UTC (rev 16001)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/feutils.py	2009-11-19 01:25:54 UTC (rev 16002)
@@ -139,7 +139,7 @@
   """
   Assemble cell vector into global vector.
   """
-  (nrows,ncols) = cellVec.shape
+  (nrows,) = cellVec.shape
   for iR in xrange(nrows/fiberDim):
     ibeginL = iR * fiberDim
     iendL = ibeginL + fiberDim

Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/generate.sh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/generate.sh	2009-11-19 00:50:54 UTC (rev 16001)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/generate.sh	2009-11-19 01:25:54 UTC (rev 16002)
@@ -230,7 +230,8 @@
     --solution=Solution1DQuadratic
 
   python IntegratorElasticity.py \
-    --formulation=ElasticityImplicitGrav \
+    --use_gravity=True \
+    --formulation=ElasticityImplicit \
     --data.namespace=pylith,feassemble \
     --data.object=ElasticityImplicitGravData1DLinear \
     --data.parent=IntegratorData \
@@ -240,7 +241,8 @@
     --solution=Solution1DLinear
 
   python IntegratorElasticity.py \
-    --formulation=ElasticityImplicitGrav \
+    --use_gravity=True \
+    --formulation=ElasticityImplicit \
     --data.namespace=pylith,feassemble \
     --data.object=ElasticityImplicitGravData1DQuadratic \
     --data.parent=IntegratorData \
@@ -272,7 +274,8 @@
     --solution=Solution2DQuadratic
 
   python IntegratorElasticity.py \
-    --formulation=ElasticityImplicitGrav \
+    --use_gravity=True \
+    --formulation=ElasticityImplicit \
     --data.namespace=pylith,feassemble \
     --data.object=ElasticityImplicitGravData2DLinear \
     --data.parent=IntegratorData \
@@ -282,7 +285,8 @@
     --solution=Solution2DLinear
 
   python IntegratorElasticity.py \
-    --formulation=ElasticityImplicitGrav \
+    --use_gravity=True \
+    --formulation=ElasticityImplicit \
     --data.namespace=pylith,feassemble \
     --data.object=ElasticityImplicitGravData2DQuadratic \
     --data.parent=IntegratorData \
@@ -315,7 +319,8 @@
     --solution=Solution3DQuadratic
 
   python IntegratorElasticity.py \
-    --formulation=ElasticityImplicitGrav \
+    --use_gravity=True \
+    --formulation=ElasticityImplicit \
     --data.namespace=pylith,feassemble \
     --data.object=ElasticityImplicitGravData3DLinear \
     --data.parent=IntegratorData \
@@ -325,7 +330,8 @@
     --solution=Solution3DLinear
 
   python IntegratorElasticity.py \
-    --formulation=ElasticityImplicitGrav \
+    --use_gravity=True \
+    --formulation=ElasticityImplicit \
     --data.namespace=pylith,feassemble \
     --data.object=ElasticityImplicitGravData3DQuadratic \
     --data.parent=IntegratorData \
@@ -360,9 +366,9 @@
     --material=MaterialElasticStrain1D \
     --solution=Solution1DQuadratic
 
-if (( 0 )); then
   python IntegratorElasticityLgDeform.py \
-    --formulation=ElasticityImplicitGrav \
+    --use_gravity=True \
+    --formulation=ElasticityImplicitLgDeform \
     --data.namespace=pylith,feassemble \
     --data.object=ElasticityImplicitLgDeformGravData1DLinear \
     --data.parent=IntegratorData \
@@ -372,7 +378,8 @@
     --solution=Solution1DLinear
 
   python IntegratorElasticityLgDeform.py \
-    --formulation=ElasticityImplicitGrav \
+    --use_gravity=True \
+    --formulation=ElasticityImplicitLgDeform \
     --data.namespace=pylith,feassemble \
     --data.object=ElasticityImplicitLgDeformGravData1DQuadratic \
     --data.parent=IntegratorData \
@@ -380,8 +387,8 @@
     --quadrature=Quadrature1DQuadratic \
     --material=MaterialElasticStrain1D \
     --solution=Solution1DQuadratic
-fi
 
+
   # 2-D ----------------------------------------------------------------
 
   python IntegratorElasticityLgDeform.py \
@@ -404,9 +411,9 @@
     --material=ElasticPlaneStrain \
     --solution=Solution2DQuadratic
 
-if (( 0 )); then
   python IntegratorElasticityLgDeform.py \
-    --formulation=ElasticityImplicitGrav \
+    --use_gravity=True \
+    --formulation=ElasticityImplicitLgDeform \
     --data.namespace=pylith,feassemble \
     --data.object=ElasticityImplicitLgDeformGravData2DLinear \
     --data.parent=IntegratorData \
@@ -416,7 +423,8 @@
     --solution=Solution2DLinear
 
   python IntegratorElasticityLgDeform.py \
-    --formulation=ElasticityImplicitGrav \
+    --use_gravity=True \
+    --formulation=ElasticityImplicitLgDeform \
     --data.namespace=pylith,feassemble \
     --data.object=ElasticityImplicitLgDeformGravData2DQuadratic \
     --data.parent=IntegratorData \
@@ -424,7 +432,6 @@
     --quadrature=Quadrature2DQuadratic \
     --material=ElasticPlaneStrain \
     --solution=Solution2DQuadratic
-fi
 
 
   # 3-D ----------------------------------------------------------------
@@ -449,9 +456,9 @@
     --material=ElasticIsotropic3D \
     --solution=Solution3DQuadratic
 
-if (( 0 )); then
   python IntegratorElasticityLgDeform.py \
-    --formulation=ElasticityImplicitGrav \
+    --use_gravity=True \
+    --formulation=ElasticityImplicitLgDeform \
     --data.namespace=pylith,feassemble \
     --data.object=ElasticityImplicitLgDeformGravData3DLinear \
     --data.parent=IntegratorData \
@@ -461,7 +468,8 @@
     --solution=Solution3DLinear
 
   python IntegratorElasticityLgDeform.py \
-    --formulation=ElasticityImplicitGrav \
+    --use_gravity=True \
+    --formulation=ElasticityImplicitLgDeform \
     --data.namespace=pylith,feassemble \
     --data.object=ElasticityImplicitLgDeformGravData3DQuadratic \
     --data.parent=IntegratorData \
@@ -469,7 +477,6 @@
     --quadrature=Quadrature3DQuadratic \
     --material=ElasticIsotropic3D \
     --solution=Solution3DQuadratic
-fi
 
 fi
 



More information about the CIG-COMMITS mailing list