[cig-commits] r16001 - in short/3D/PyLith/branches/pylith-friction: libsrc/feassemble unittests/libtests/feassemble unittests/libtests/feassemble/data
brad at geodynamics.org
brad at geodynamics.org
Wed Nov 18 16:50:56 PST 2009
Author: brad
Date: 2009-11-18 16:50:54 -0800 (Wed, 18 Nov 2009)
New Revision: 16001
Added:
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DLinear.cc
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DLinear.hh
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DQuadratic.cc
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DQuadratic.hh
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeform.py
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DLinear.cc
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DLinear.hh
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DQuadratic.cc
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DQuadratic.hh
Modified:
short/3D/PyLith/branches/pylith-friction/libsrc/feassemble/IntegratorElasticityLgDeform.cc
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/Makefile.am
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform.cc
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform1DLinear.hh
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform1DQuadratic.hh
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform2DLinear.hh
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform2DQuadratic.hh
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData1DLinear.cc
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData1DQuadratic.cc
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData2DLinear.cc
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData2DQuadratic.cc
short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/IntegratorElasticityLgDeform.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:
Fixed test data for integrate residual test for large deformations. Removed debugging output.
Modified: short/3D/PyLith/branches/pylith-friction/libsrc/feassemble/IntegratorElasticityLgDeform.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/libsrc/feassemble/IntegratorElasticityLgDeform.cc 2009-11-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/libsrc/feassemble/IntegratorElasticityLgDeform.cc 2009-11-19 00:50:54 UTC (rev 16001)
@@ -338,9 +338,6 @@
l11 += basisDeriv[iQuad*numBasis+kBasis ] * disp[kBasis ];
for (int iBasis=0; iBasis < numBasis; ++iBasis) {
const double N1 = wt * (1.0 + l11) * basisDeriv[iQuad*numBasis+iBasis ];
- std::cout << "N1: " << N1
- << ", s11: " << s11
- << std::endl;
_cellVector[iBasis*spaceDim ] -= N1*s11;
} // for
} // for
@@ -558,7 +555,7 @@
const int iC = iQuad*numConsts;
const double C1111 = elasticConsts[iC+0];
const double C1122 = elasticConsts[iC+1];
- const double C1112 = elasticConsts[iC+2] / 2.0;
+ const double C1112 = elasticConsts[iC+2] / 2.0; // 2*mu -> mu
const double C2222 = elasticConsts[iC+3];
const double C2212 = elasticConsts[iC+4] / 2.0;
const double C1212 = elasticConsts[iC+5] / 2.0;
@@ -566,7 +563,7 @@
const int iS = iQuad*tensorSize;
const double s11 = stress[iS+0];
const double s22 = stress[iS+1];
- const double s12 = stress[iS+2] * 0.5; // WHY 0.5!!!!
+ const double s12 = stress[iS+2];
double l11 = 0.0;
double l12 = 0.0;
@@ -607,9 +604,6 @@
(l11+1)*Nip*(l12*Njq*C1122 +
((l11+1)*Njq+l12*Njp)*C1112 +
(l11+1)*Njp*C1111);
-
-
-
const double Ki0j1 =
l12*Niq*((l22+1.0)*Njq*C2222 +
(l21*Njq+(l22+1.0)*Njp)*C2212 +
@@ -645,15 +639,6 @@
const int jBlock = (jB);
const int jBlock1 = (jB+1);
- std::cout << "s11: " << s11
- << ", s12: " << s12
- << ", s22: " << s22
- << ", Knl: " << Knl
- << ", Ki0j0: " << Ki0j0
- << ", Ki0j1: " << Ki0j1
- << ", Ki1j0: " << Ki1j0
- << ", Ki1j1: " << Ki1j1
- << std::endl;
_cellMatrix[iBlock +jBlock ] += Ki0j0 + Knl;
_cellMatrix[iBlock +jBlock1] += Ki0j1;
_cellMatrix[iBlock1+jBlock ] += Ki1j0;
@@ -662,13 +647,6 @@
} // for
} // for
PetscLogFlops(numQuadPts*(1+numBasis*(2+numBasis*(3*11+4))));
-
- std::cout << "cellMatrix: ";
- for (int i=0; i < numBasis*spaceDim; ++i) {
- for (int j=0; j < numBasis*spaceDim; ++j)
- std::cout << " " << _cellMatrix[i*numBasis*spaceDim+j];
- std::cout << std::endl;
- } // for
} // _elasticityJacobian2D
// ----------------------------------------------------------------------
@@ -1190,12 +1168,6 @@
(*strain)[iStrain+2] =
0.5 * (deform[iDeform ]*deform[iDeform+1] +
deform[iDeform+2]*deform[iDeform+3]);
- std::cout << "iQuad: " << iQuad
- << ", strain:"
- << " " << (*strain)[iStrain ]
- << " " << (*strain)[iStrain+1]
- << " " << (*strain)[iStrain+2]
- << std::endl;
} // for
} // _calcTotalStrain2D
@@ -1273,30 +1245,10 @@
for (int iBasis=0, iQ=iQuad*numBasis*dim; iBasis < numBasis; ++iBasis)
for (int iDim=0, indexD=0; iDim < dim; ++iDim)
for (int jDim=0; jDim < dim; ++jDim, ++indexD)
- {
(*deform)[iQuad*deformSize+indexD] +=
basisDeriv[iQ+iBasis*dim+jDim] *
(vertices[iBasis*dim+iDim] + disp[iBasis*dim+iDim]);
- std::cout << "vertex: " << vertices[iBasis*dim+iDim]
- << ", disp: " << disp[iBasis*dim+iDim]
- << ", basisDeriv: " << basisDeriv[iQ+iBasis*dim+jDim]
- << std::endl;
- }
- for (int iQuad=0; iQuad < numQuadPts; ++iQuad) {
- std::cout << "\n\niQuad: " << iQuad
- << ", deformation tensor: "
- << std::endl;
- for (int iDim=0; iDim < dim; ++iDim) {
- std::cout << " ";
- for (int jDim=0; jDim < dim; ++jDim) {
- std::cout << " " << (*deform)[iQuad*deformSize+iDim*dim+jDim];
- }
- std::cout << std::endl;
- }
- }
-
-
} // _calcDeformation
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-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/Makefile.am 2009-11-19 00:50:54 UTC (rev 16001)
@@ -72,6 +72,8 @@
TestElasticityImplicitLgDeform1DQuadratic.cc \
TestElasticityImplicitLgDeform2DLinear.cc \
TestElasticityImplicitLgDeform2DQuadratic.cc \
+ TestElasticityImplicitLgDeform3DLinear.cc \
+ TestElasticityImplicitLgDeform3DQuadratic.cc \
test_feassemble.cc
@@ -103,6 +105,8 @@
TestElasticityImplicitLgDeform1DQuadratic.hh \
TestElasticityImplicitLgDeform2DLinear.hh \
TestElasticityImplicitLgDeform2DQuadratic.hh \
+ TestElasticityImplicitLgDeform3DLinear.hh \
+ TestElasticityImplicitLgDeform3DQuadratic.hh \
TestGeometryPoint1D.hh \
TestGeometryPoint2D.hh \
TestGeometryPoint3D.hh \
@@ -166,6 +170,8 @@
data/ElasticityImplicitLgDeformData1DQuadratic.cc \
data/ElasticityImplicitLgDeformData2DLinear.cc \
data/ElasticityImplicitLgDeformData2DQuadratic.cc \
+ data/ElasticityImplicitLgDeformData3DLinear.cc \
+ data/ElasticityImplicitLgDeformData3DQuadratic.cc \
data/QuadratureData.cc \
data/QuadratureData1DLinear.cc \
data/QuadratureData1DQuadratic.cc \
@@ -220,6 +226,8 @@
data/ElasticityImplicitLgDeformData1DQuadratic.hh \
data/ElasticityImplicitLgDeformData2DLinear.hh \
data/ElasticityImplicitLgDeformData2DQuadratic.hh \
+ data/ElasticityImplicitLgDeformData3DLinear.hh \
+ data/ElasticityImplicitLgDeformData3DQuadratic.hh \
data/QuadratureData.hh \
data/QuadratureData1DLinear.hh \
data/QuadratureData1DQuadratic.hh \
Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform.cc 2009-11-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform.cc 2009-11-19 00:50:54 UTC (rev 16001)
@@ -166,7 +166,7 @@
const double* valsE = _data->valsResidual;
const int sizeE = _data->spaceDim * _data->numVertices;
-#if 1 // DEBUGGING
+#if 0 // DEBUGGING
residual.view("RESIDUAL");
std::cout << "RESIDUAL EXPECTED\n";
for (int i=0; i < sizeE; ++i)
Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform1DLinear.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform1DLinear.hh 2009-11-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform1DLinear.hh 2009-11-19 00:50:54 UTC (rev 16001)
@@ -18,8 +18,8 @@
* C++ unit testing for ElasticityImplicitLgDeform with 1-D linear cells.
*/
-#if !defined(pylith_feassemble_testelasticityimplicit1dlinear_hh)
-#define pylith_feassemble_testelasticityimplicit1dlinear_hh
+#if !defined(pylith_feassemble_testelasticityimplicitlgdeform1dlinear_hh)
+#define pylith_feassemble_testelasticityimplicitlgdeform1dlinear_hh
#include "TestElasticityImplicitLgDeform.hh" // ISA TestElasticityImplicitLgDeform
@@ -54,7 +54,7 @@
}; // class TestElasticityImplicitLgDeform1DLinear
-#endif // pylith_feassemble_testelasticityimplicit1dlinear_hh
+#endif // pylith_feassemble_testelasticityimplicitlgdeform1dlinear_hh
// End of file
Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform1DQuadratic.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform1DQuadratic.hh 2009-11-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform1DQuadratic.hh 2009-11-19 00:50:54 UTC (rev 16001)
@@ -18,8 +18,8 @@
* C++ unit testing for ElasticityImplicitLgDeform with 1-D quadratic cells.
*/
-#if !defined(pylith_feassemble_testelasticityimplicit1dquadratic_hh)
-#define pylith_feassemble_testelasticityimplicit1dquadratic_hh
+#if !defined(pylith_feassemble_testelasticityimplicitlgdeform1dquadratic_hh)
+#define pylith_feassemble_testelasticityimplicitlgdeform1dquadratic_hh
#include "TestElasticityImplicitLgDeform.hh" // ISA TestElasticityImplicitLgDeform
@@ -54,7 +54,7 @@
}; // class TestElasticityImplicitLgDeform1DQuadratic
-#endif // pylith_feassemble_testelasticityimplicit1dquadratic_hh
+#endif // pylith_feassemble_testelasticityimplicitlgdeform1dquadratic_hh
// End of file
Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform2DLinear.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform2DLinear.hh 2009-11-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform2DLinear.hh 2009-11-19 00:50:54 UTC (rev 16001)
@@ -18,8 +18,8 @@
* C++ unit testing for ElasticityImplicitLgDeform with 2-D linear cells.
*/
-#if !defined(pylith_feassemble_testelasticityimplicit2dlinear_hh)
-#define pylith_feassemble_testelasticityimplicit2dlinear_hh
+#if !defined(pylith_feassemble_testelasticityimplicitlgdeform2dlinear_hh)
+#define pylith_feassemble_testelasticityimplicitlgdeform2dlinear_hh
#include "TestElasticityImplicitLgDeform.hh" // ISA TestElasticityImplicitLgDeform
@@ -54,7 +54,7 @@
}; // class TestElasticityImplicitLgDeform2DLinear
-#endif // pylith_feassemble_testelasticityimplicit2dlinear_hh
+#endif // pylith_feassemble_testelasticityimplicitlgdeform2dlinear_hh
// End of file
Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform2DQuadratic.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform2DQuadratic.hh 2009-11-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform2DQuadratic.hh 2009-11-19 00:50:54 UTC (rev 16001)
@@ -18,8 +18,8 @@
* C++ unit testing for ElasticityImplicitLgDeform with 2-D quadratic cells.
*/
-#if !defined(pylith_feassemble_testelasticityimplicit2dquadratic_hh)
-#define pylith_feassemble_testelasticityimplicit2dquadratic_hh
+#if !defined(pylith_feassemble_testelasticityimplicitlgdeform2dquadratic_hh)
+#define pylith_feassemble_testelasticityimplicitlgdeform2dquadratic_hh
#include "TestElasticityImplicitLgDeform.hh" // ISA TestElasticityImplicitLgDeform
@@ -54,7 +54,7 @@
}; // class TestElasticityImplicitLgDeform2DQuadratic
-#endif // pylith_feassemble_testelasticityimplicit2dquadratic_hh
+#endif // pylith_feassemble_testelasticityimplicitlgdeform2dquadratic_hh
// End of file
Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DLinear.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DLinear.cc (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DLinear.cc 2009-11-19 00:50:54 UTC (rev 16001)
@@ -0,0 +1,49 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestElasticityImplicitLgDeform3DLinear.hh" // Implementation of class methods
+
+#include "data/ElasticityImplicitLgDeformData3DLinear.hh"
+
+#include "pylith/topology/Mesh.hh" // USES Quadrature<Mesh>
+#include "pylith/feassemble/Quadrature.hh" // USES Quadrature
+#include "pylith/feassemble/GeometryTet3D.hh" // USES GeometryTet3D
+#include "pylith/materials/ElasticIsotropic3D.hh" // USES ElasticIsotropic3D
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestElasticityImplicitLgDeform3DLinear );
+
+// ----------------------------------------------------------------------
+// Setup testing data.
+void
+pylith::feassemble::TestElasticityImplicitLgDeform3DLinear::setUp(void)
+{ // setUp
+ TestElasticityImplicitLgDeform::setUp();
+
+ _data = new ElasticityImplicitLgDeformData3DLinear();
+ _gravityField = 0;
+ CPPUNIT_ASSERT(0 != _quadrature);
+ GeometryTet3D geometry;
+ _quadrature->refGeometry(&geometry);
+
+ _material = new materials::ElasticIsotropic3D;
+ CPPUNIT_ASSERT(0 != _material);
+
+ CPPUNIT_ASSERT(0 != _data);
+ CPPUNIT_ASSERT_EQUAL(std::string("ElasticIsotropic3D"),
+ std::string(_data->matType));
+} // setUp
+
+
+// End of file
Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DLinear.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DLinear.hh (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DLinear.hh 2009-11-19 00:50:54 UTC (rev 16001)
@@ -0,0 +1,60 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DLinear.hh
+ *
+ * @brief C++ TestElasticityImplicitLgDeform object
+ *
+ * C++ unit testing for ElasticityImplicitLgDeform with 1-D linear cells.
+ */
+
+#if !defined(pylith_feassemble_testelasticityimplicitlgdeform3dlinear_hh)
+#define pylith_feassemble_testelasticityimplicitlgdeform3dlinear_hh
+
+#include "TestElasticityImplicitLgDeform.hh" // ISA TestElasticityImplicitLgDeform
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestElasticityImplicitLgDeform3DLinear;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for ElasticityImplicitLgDeform
+class pylith::feassemble::TestElasticityImplicitLgDeform3DLinear :
+ public TestElasticityImplicitLgDeform
+{ // class TestElasticityImplicitLgDeform3DLinear
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestElasticityImplicitLgDeform3DLinear );
+
+ CPPUNIT_TEST( testInitialize );
+ CPPUNIT_TEST( testIntegrateResidual );
+ CPPUNIT_TEST( testIntegrateJacobian );
+ CPPUNIT_TEST( testUpdateStateVars );
+ CPPUNIT_TEST( testStableTimeStep );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup testing data.
+ void setUp(void);
+
+}; // class TestElasticityImplicitLgDeform3DLinear
+
+#endif // pylith_feassemble_testelasticityimplicitlgdeform3dlinear_hh
+
+
+// End of file
Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DQuadratic.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DQuadratic.cc (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DQuadratic.cc 2009-11-19 00:50:54 UTC (rev 16001)
@@ -0,0 +1,49 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestElasticityImplicitLgDeform3DQuadratic.hh" // Implementation of class methods
+
+#include "data/ElasticityImplicitLgDeformData3DQuadratic.hh"
+
+#include "pylith/topology/Mesh.hh" // USES Quadrature<Mesh>
+#include "pylith/feassemble/Quadrature.hh" // USES Quadrature
+#include "pylith/feassemble/GeometryTet3D.hh" // USES GeometryTet3D
+#include "pylith/materials/ElasticIsotropic3D.hh" // USES ElasticIsotropic3D
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestElasticityImplicitLgDeform3DQuadratic );
+
+// ----------------------------------------------------------------------
+// Setup testing data.
+void
+pylith::feassemble::TestElasticityImplicitLgDeform3DQuadratic::setUp(void)
+{ // setUp
+ TestElasticityImplicitLgDeform::setUp();
+
+ _data = new ElasticityImplicitLgDeformData3DQuadratic();
+ _gravityField = 0;
+ CPPUNIT_ASSERT(0 != _quadrature);
+ GeometryTet3D geometry;
+ _quadrature->refGeometry(&geometry);
+
+ _material = new materials::ElasticIsotropic3D;
+ CPPUNIT_ASSERT(0 != _material);
+
+ CPPUNIT_ASSERT(0 != _data);
+ CPPUNIT_ASSERT_EQUAL(std::string("ElasticIsotropic3D"),
+ std::string(_data->matType));
+} // setUp
+
+
+// End of file
Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DQuadratic.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DQuadratic.hh (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DQuadratic.hh 2009-11-19 00:50:54 UTC (rev 16001)
@@ -0,0 +1,60 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestElasticityImplicitLgDeform3DQuadratic.hh
+ *
+ * @brief C++ TestElasticityImplicitLgDeform object
+ *
+ * C++ unit testing for ElasticityImplicitLgDeform with 1-D quadratic cells.
+ */
+
+#if !defined(pylith_feassemble_testelasticityimplicitlgdeform3dquadratic_hh)
+#define pylith_feassemble_testelasticityimplicitlgdeform3dquadratic_hh
+
+#include "TestElasticityImplicitLgDeform.hh" // ISA TestElasticityImplicitLgDeform
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestElasticityImplicitLgDeform3DQuadratic;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for ElasticityImplicitLgDeform
+class pylith::feassemble::TestElasticityImplicitLgDeform3DQuadratic :
+ public TestElasticityImplicitLgDeform
+{ // class TestElasticityImplicitLgDeform3DQuadratic
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestElasticityImplicitLgDeform3DQuadratic );
+
+ CPPUNIT_TEST( testInitialize );
+ CPPUNIT_TEST( testIntegrateResidual );
+ CPPUNIT_TEST( testIntegrateJacobian );
+ CPPUNIT_TEST( testUpdateStateVars );
+ CPPUNIT_TEST( testStableTimeStep );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup testing data.
+ void setUp(void);
+
+}; // class TestElasticityImplicitLgDeform3DQuadratic
+
+#endif // pylith_feassemble_testelasticityimplicitlgdeform3dquadratic_hh
+
+
+// End of file
Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeform.py
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeform.py (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeform.py 2009-11-19 00:50:54 UTC (rev 16001)
@@ -0,0 +1,86 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file unittests/libtests/feassemble/data/ElasticityImplicitLgDeform.py
+
+## @brief Python application for generating C++ data files for testing
+## C++ ElasticityImplicitLgDeform object.
+
+from ElasticityImplicit import ElasticityImplicit
+
+import numpy
+
+# ----------------------------------------------------------------------
+
+# ElasticityImplicitLgDeform class
+class ElasticityImplicitLgDeform(ElasticityImplicit):
+ """
+ Python application for generating C++ data files for testing C++
+ ElasticityImplicitLgDeform object.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self, name="elasticityimplicitlgdeform"):
+ """
+ Constructor.
+ """
+ ElasticityImplicit.__init__(self, name)
+ return
+
+
+ # PRIVATE METHODS ////////////////////////////////////////////////////
+
+ def calculateResidual(self, integrator):
+ """
+ Calculate contribution to residual of operator for integrator.
+
+ {r} = -[K]{u(t)}
+ """
+ import feutils
+
+ residual = numpy.zeros( (integrator.spaceDim*integrator.numVertices, 1),
+ dtype=numpy.float64)
+
+ # Matrix of elasticity values
+ D = integrator._calculateElasticityMat()
+
+ for cell in integrator.cells:
+ cellR = numpy.zeros( (integrator.spaceDim*integrator.numBasis, 1),
+ dtype=numpy.float64)
+ vertices = integrator.vertices[cell, :]
+ (jacobian, jacobianInv, jacobianDet, basisDeriv) = \
+ feutils.calculateJacobian(integrator.quadrature, vertices)
+ fieldTpdt = integrator.fieldT + integrator.fieldTIncr
+ for iQuad in xrange(integrator.numQuadPts):
+ wt = integrator.quadWts[iQuad] * jacobianDet[iQuad]
+ BL0 = integrator._calculateBasisDerivMatLinear0(basisDeriv, iQuad)
+ BL1 = integrator._calculateBasisDerivMatLinear1(basisDeriv, iQuad, fieldTpdt)
+ 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)
+
+ return residual
+
+
+# FACTORY //////////////////////////////////////////////////////////////
+def formulation():
+ return ElasticityImplicitLgDeform()
+
+
+# End of file
Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData1DLinear.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData1DLinear.cc 2009-11-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData1DLinear.cc 2009-11-19 00:50:54 UTC (rev 16001)
@@ -89,8 +89,8 @@
};
const double pylith::feassemble::ElasticityImplicitLgDeformData1DLinear::_valsResidual[] = {
- 8.78400000e+10,
- -8.78400000e+10,
+ 6.04800000e+10,
+ -6.04800000e+10,
};
const double pylith::feassemble::ElasticityImplicitLgDeformData1DLinear::_valsJacobian[] = {
Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData1DQuadratic.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData1DQuadratic.cc 2009-11-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData1DQuadratic.cc 2009-11-19 00:50:54 UTC (rev 16001)
@@ -103,9 +103,9 @@
};
const double pylith::feassemble::ElasticityImplicitLgDeformData1DQuadratic::_valsResidual[] = {
- 7.41034403e+11,
- 1.71509070e+12,
- -2.45612510e+12,
+ 3.54626283e+11,
+ 3.31341344e+11,
+ -6.85967627e+11,
};
const double pylith::feassemble::ElasticityImplicitLgDeformData1DQuadratic::_valsJacobian[] = {
Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData2DLinear.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData2DLinear.cc 2009-11-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData2DLinear.cc 2009-11-19 00:50:54 UTC (rev 16001)
@@ -94,30 +94,30 @@
};
const double pylith::feassemble::ElasticityImplicitLgDeformData2DLinear::_valsResidual[] = {
- -9.10308020e+11, 2.62469069e+12,
- 2.75564148e+11, -2.72579014e+12,
- 6.34743872e+11, 1.01099452e+11,
+ -3.65540787e+11, 1.05895913e+12,
+ 9.00343192e+10, -1.09679715e+12,
+ 2.75506468e+11, 3.78380237e+10,
};
const double pylith::feassemble::ElasticityImplicitLgDeformData2DLinear::_valsJacobian[] = {
- 4.43599494e+11, -1.48699027e+11,
- -2.83545181e+11, 8.77736676e+10,
- -1.60054314e+11, 6.09253592e+10,
- -1.48699027e+11, 7.63805884e+11,
- 9.16706846e+10, -6.31084845e+11,
- 5.70283422e+10, -1.32721039e+11,
- -2.83545181e+11, 9.16706846e+10,
- 2.78913924e+11, -2.94466026e+10,
- 4.63125675e+09, -6.22240820e+10,
- 8.77736676e+10, -6.31084845e+11,
- -2.94466026e+10, 6.53761252e+11,
- -5.83270649e+10, -2.26764071e+10,
- -1.60054314e+11, 5.70283422e+10,
- 4.63125675e+09, -5.83270649e+10,
- 1.55423057e+11, 1.29872276e+09,
- 6.09253592e+10, -1.32721039e+11,
- -6.22240820e+10, -2.26764071e+10,
- 1.29872276e+09, 1.55397446e+11,
+ 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::ElasticityImplicitLgDeformData2DLinear::ElasticityImplicitLgDeformData2DLinear(void)
Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData2DQuadratic.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData2DQuadratic.cc 2009-11-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData2DQuadratic.cc 2009-11-19 00:50:54 UTC (rev 16001)
@@ -164,87 +164,87 @@
};
const double pylith::feassemble::ElasticityImplicitLgDeformData2DQuadratic::_valsResidual[] = {
- 3.39737351e+12, 5.19317954e+12,
- -1.80774474e+12, -2.22000685e+12,
- 2.65665681e+12, 3.51432165e+12,
- 4.77718113e+12, 3.87082081e+12,
- -7.52685354e+12, -1.20475569e+13,
- -1.49661316e+12, 1.68924177e+12,
+ 1.03829775e+12, 1.76362384e+12,
+ -7.52244241e+11, -8.27609561e+11,
+ 8.03865887e+11, 1.06221366e+12,
+ 1.48071362e+12, 7.67069459e+11,
+ -2.20475628e+12, -3.81077823e+12,
+ -3.65876743e+11, 1.04548083e+12,
};
const double pylith::feassemble::ElasticityImplicitLgDeformData2DQuadratic::_valsJacobian[] = {
- 1.21091900e+12, 5.56624427e+11,
- 5.95878737e+10, 2.82688919e+10,
- 6.89616587e+11, 3.46233237e+11,
- 9.22245444e+11, 3.73904122e+11,
- -1.91462842e+12, -9.41768992e+11,
- -9.67740481e+11, -3.63261686e+11,
- 5.56624427e+11, 1.75937634e+12,
- 2.55818801e+10, 1.13588035e+11,
- 3.45077232e+11, 7.71442168e+11,
- 3.77747140e+11, 6.23361467e+11,
- -9.44649933e+11, -2.62213755e+12,
- -3.60380746e+11, -6.45630459e+11,
- 5.95878737e+10, 2.55818801e+10,
- 5.73354183e+11, 2.59713039e+11,
- -8.46433708e+09, -2.59165131e+10,
- -4.03504796e+11, -1.36798725e+11,
- 8.32134883e+10, 6.73297341e+10,
- -3.04186412e+11, -1.89909415e+11,
- 2.82688919e+10, 1.13588035e+11,
- 2.59713039e+11, 5.80155308e+11,
- -2.66709077e+10, -3.33303021e+10,
- -1.27273335e+11, -1.82757062e+11,
- 6.53971169e+10, 1.67214691e+11,
- -1.99434806e+11, -6.44870669e+11,
- 6.89616587e+11, 3.45077232e+11,
- -8.46433708e+09, -2.66709077e+10,
- 9.46393649e+11, 4.11776807e+11,
- 4.22061375e+11, 3.08031050e+11,
- -1.66893291e+12, -8.05938575e+11,
- -3.80674362e+11, -2.32275605e+11,
- 3.46233237e+11, 7.71442168e+11,
- -2.59165131e+10, -3.33303021e+10,
- 4.11776807e+11, 9.71896809e+11,
- 3.13343794e+11, 2.71248445e+11,
- -8.11251320e+11, -1.81414784e+12,
- -2.34186006e+11, -1.67109284e+11,
- 9.22245444e+11, 3.77747140e+11,
- -4.03504796e+11, -1.27273335e+11,
- 4.22061375e+11, 3.13343794e+11,
- 2.67767840e+12, 8.66541719e+11,
- -1.76517544e+12, -9.28979272e+11,
- -1.85330498e+12, -5.01380046e+11,
- 3.73904122e+11, 6.23361467e+11,
- -1.36798725e+11, -1.82757062e+11,
- 3.08031050e+11, 2.71248445e+11,
- 8.66541719e+11, 2.75987489e+12,
- -9.20742130e+11, -1.59282386e+12,
- -4.90936036e+11, -1.87890388e+12,
- -1.91462842e+12, -9.44649933e+11,
- 8.32134883e+10, 6.53971169e+10,
- -1.66893291e+12, -8.11251320e+11,
- -1.76517544e+12, -9.20742130e+11,
- 4.09293769e+12, 2.04726998e+12,
- 1.17258560e+12, 5.63976291e+11,
- -9.41768992e+11, -2.62213755e+12,
- 6.73297341e+10, 1.67214691e+11,
- -8.05938575e+11, -1.81414784e+12,
- -9.28979272e+11, -1.59282386e+12,
- 2.04726998e+12, 5.59980472e+12,
- 5.62087130e+11, 2.62089836e+11,
- -9.67740481e+11, -3.60380746e+11,
- -3.04186412e+11, -1.99434806e+11,
- -3.80674362e+11, -2.34186006e+11,
- -1.85330498e+12, -4.90936036e+11,
- 1.17258560e+12, 5.62087130e+11,
- 2.33332064e+12, 7.22850462e+11,
- -3.63261686e+11, -6.45630459e+11,
- -1.89909415e+11, -6.44870669e+11,
- -2.32275605e+11, -1.67109284e+11,
- -5.01380046e+11, -1.87890388e+12,
- 5.63976291e+11, 2.62089836e+11,
- 7.22850462e+11, 3.07442446e+12,
+ 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::ElasticityImplicitLgDeformData2DQuadratic::ElasticityImplicitLgDeformData2DQuadratic(void)
Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DLinear.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DLinear.cc (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DLinear.cc 2009-11-19 00:50:54 UTC (rev 16001)
@@ -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 "ElasticityImplicitLgDeformData3DLinear.hh"
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_spaceDim = 3;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_cellDim = 3;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_numVertices = 4;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_numCells = 1;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_numBasis = 4;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_numQuadPts = 1;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_matType = "ElasticIsotropic3D";
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_matDBFilename = "data/elasticisotropic3d.spatialdb";
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_matId = 0;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_matLabel = "elastic isotropic 3-D";
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_dt = 1.00000000e-02;
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_gravityVec[] = {
+ 0.00000000e+00, 0.00000000e+00, -1.00000000e+08,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_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::ElasticityImplicitLgDeformData3DLinear::_cells[] = {
+0,1,2,3,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_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::ElasticityImplicitLgDeformData3DLinear::_quadPts[] = {
+ -5.00000000e-01, -5.00000000e-01, -5.00000000e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_quadWts[] = {
+ 1.33333333e+00,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_basis[] = {
+ 2.50000000e-01, 2.50000000e-01, 2.50000000e-01,
+ 2.50000000e-01,};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_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::ElasticityImplicitLgDeformData3DLinear::_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::ElasticityImplicitLgDeformData3DLinear::_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::ElasticityImplicitLgDeformData3DLinear::_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::ElasticityImplicitLgDeformData3DLinear::_valsResidual[] = {
+ 2.79474210e+11, 1.80174876e+12, 1.26556850e+12,
+ 6.44632598e+11, 4.29759382e+12, 2.88601168e+12,
+ -1.13174893e+12, -6.94850554e+12, -4.65500318e+12,
+ 2.07642124e+11, 8.49162957e+11, 5.03422995e+11,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DLinear::_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::ElasticityImplicitLgDeformData3DLinear::ElasticityImplicitLgDeformData3DLinear(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::ElasticityImplicitLgDeformData3DLinear::~ElasticityImplicitLgDeformData3DLinear(void)
+{}
+
+
+// End of file
Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DLinear.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DLinear.hh (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DLinear.hh 2009-11-19 00:50:54 UTC (rev 16001)
@@ -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_elasticityimplicitlgdeformdata3dlinear_hh)
+#define pylith_feassemble_elasticityimplicitlgdeformdata3dlinear_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class ElasticityImplicitLgDeformData3DLinear;
+ } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityImplicitLgDeformData3DLinear : public IntegratorData
+{
+
+public:
+
+ /// Constructor
+ ElasticityImplicitLgDeformData3DLinear(void);
+
+ /// Destructor
+ ~ElasticityImplicitLgDeformData3DLinear(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_elasticityimplicitlgdeformdata3dlinear_hh
+
+// End of file
Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DQuadratic.cc
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DQuadratic.cc (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DQuadratic.cc 2009-11-19 00:50:54 UTC (rev 16001)
@@ -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 "ElasticityImplicitLgDeformData3DQuadratic.hh"
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_spaceDim = 3;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_cellDim = 3;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_numVertices = 10;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_numCells = 1;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_numBasis = 10;
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_numQuadPts = 4;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_matType = "ElasticIsotropic3D";
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_matDBFilename = "data/elasticisotropic3d.spatialdb";
+
+const int pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_matId = 0;
+
+const char* pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_matLabel = "elastic isotropic 3-D";
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_dt = 1.00000000e-02;
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_gravityVec[] = {
+ 0.00000000e+00, 0.00000000e+00, -1.00000000e+08,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_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::ElasticityImplicitLgDeformData3DQuadratic::_cells[] = {
+0,1,2,3,4,5,6,7,8,9,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_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::ElasticityImplicitLgDeformData3DQuadratic::_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::ElasticityImplicitLgDeformData3DQuadratic::_quadWts[] = {
+ 3.33333333e-01, 3.33333333e-01, 3.33333333e-01, 3.33333333e-01,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_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::ElasticityImplicitLgDeformData3DQuadratic::_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::ElasticityImplicitLgDeformData3DQuadratic::_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::ElasticityImplicitLgDeformData3DQuadratic::_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::ElasticityImplicitLgDeformData3DQuadratic::_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::ElasticityImplicitLgDeformData3DQuadratic::_valsResidual[] = {
+ 2.83531193e+11, 6.85360097e+11, -7.35048936e+11,
+ 8.17609945e+11, -2.46059924e+11, 5.76994362e+11,
+ -1.61369461e+12, -3.33728123e+11, -1.98412259e+12,
+ -3.86612970e+11, 1.55209617e+12, -1.57307404e+12,
+ -8.25945978e+11, -2.06081757e+11, -8.11681780e+11,
+ 2.39916408e+12, 1.36233180e+12, 2.44278998e+12,
+ -1.83049591e+12, -1.27565741e+12, 3.52648635e+11,
+ 2.60556997e+11, -1.53217232e+12, 1.40244034e+12,
+ -8.95741060e+11, 3.53530714e+12, -4.18558562e+12,
+ 1.79162831e+12, -3.54139567e+12, 4.51463965e+12,
+};
+
+const double pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic::_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::ElasticityImplicitLgDeformData3DQuadratic::ElasticityImplicitLgDeformData3DQuadratic(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::ElasticityImplicitLgDeformData3DQuadratic::~ElasticityImplicitLgDeformData3DQuadratic(void)
+{}
+
+
+// End of file
Added: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DQuadratic.hh
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DQuadratic.hh (rev 0)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/ElasticityImplicitLgDeformData3DQuadratic.hh 2009-11-19 00:50:54 UTC (rev 16001)
@@ -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_elasticityimplicitlgdeformdata3dquadratic_hh)
+#define pylith_feassemble_elasticityimplicitlgdeformdata3dquadratic_hh
+
+#include "IntegratorData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class ElasticityImplicitLgDeformData3DQuadratic;
+ } // pylith
+} // feassemble
+
+class pylith::feassemble::ElasticityImplicitLgDeformData3DQuadratic : public IntegratorData
+{
+
+public:
+
+ /// Constructor
+ ElasticityImplicitLgDeformData3DQuadratic(void);
+
+ /// Destructor
+ ~ElasticityImplicitLgDeformData3DQuadratic(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_elasticityimplicitlgdeformdata3dquadratic_hh
+
+// End of file
Modified: short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/IntegratorElasticityLgDeform.py
===================================================================
--- short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/IntegratorElasticityLgDeform.py 2009-11-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/IntegratorElasticityLgDeform.py 2009-11-19 00:50:54 UTC (rev 16001)
@@ -70,14 +70,10 @@
BL1 = self._calculateBasisDerivMatLinear1(basisDeriv, iQuad, fieldTpdt)
BL = BL0 + BL1
cellK[:] += wt * numpy.dot(numpy.dot(BL.transpose(), D), BL)
- print "Kl",wt * numpy.dot(numpy.dot(BL.transpose(), D), BL)
BNL = self._calculateBasisDerivMatNonlinear(basisDeriv, iQuad)
strain = self._calculateStrain(basisDeriv, iQuad, fieldTpdt)
S = self._calculateStress(strain, D)
- print "strain",strain
- print "S",S
cellK[:] += wt * numpy.dot(numpy.dot(BNL.transpose(), S), BNL)
- print "K",cellK
feutils.assembleMat(K, cellK, cell, self.spaceDim)
return K
@@ -227,11 +223,55 @@
def _calculateStrain(self, basisDeriv, iQuad, disp):
"""
- Calculte Green-Lagrange strain.
+ Calculte Green-Lagrange strain. Shear strains are twice the
+ Green-Lagrance values for compatibility with computing the strains
+ using the B matrix in the infinitesimal strain case.
"""
if 3 == self.spaceDim:
strain = numpy.zeros( (1,6), dtype=numpy.float64)
+ l11 = 0.0
+ l12 = 0.0
+ l13 = 0.0
+ l21 = 0.0
+ l22 = 0.0
+ l23 = 0.0
+ l31 = 0.0
+ l32 = 0.0
+ l33 = 0.0
+ for kBasis in xrange(self.numBasis):
+ l11 += basisDeriv[iQuad, kBasis, 0]*disp[kBasis*self.spaceDim ]
+ l12 += basisDeriv[iQuad, kBasis, 1]*disp[kBasis*self.spaceDim ]
+ l13 += basisDeriv[iQuad, kBasis, 2]*disp[kBasis*self.spaceDim ]
+ l21 += basisDeriv[iQuad, kBasis, 0]*disp[kBasis*self.spaceDim+1]
+ l22 += basisDeriv[iQuad, kBasis, 1]*disp[kBasis*self.spaceDim+1]
+ l23 += basisDeriv[iQuad, kBasis, 2]*disp[kBasis*self.spaceDim+1]
+ l31 += basisDeriv[iQuad, kBasis, 0]*disp[kBasis*self.spaceDim+2]
+ l32 += basisDeriv[iQuad, kBasis, 1]*disp[kBasis*self.spaceDim+2]
+ l33 += basisDeriv[iQuad, kBasis, 2]*disp[kBasis*self.spaceDim+2]
+ strain[0, 0] = 0.5*(l11*l11 + l21*l21 + l31*l31)
+ strain[0, 1] = 0.5*(l12*l12 + l22*l22 + l32*l32)
+ strain[0, 2] = 0.5*(l13*l13 + l23*l23 + l33*l33)
+ strain[0, 3] = (l11*l12 + l21*l22 + l31*l32) # Use 2*e12 (D has mu)
+ strain[0, 4] = (l12*l13 + l22*l23 + l32*l33)
+ strain[0, 5] = (l11*l13 + l21*l23 + l31*l33)
+ for iBasis in xrange(self.numBasis):
+ strain[0, 0] += \
+ basisDeriv[iQuad, iBasis, 0]*disp[iBasis*self.spaceDim ]
+ strain[0, 1] += \
+ basisDeriv[iQuad, iBasis, 1]*disp[iBasis*self.spaceDim+1]
+ strain[0, 2] += \
+ basisDeriv[iQuad, iBasis, 2]*disp[iBasis*self.spaceDim+2]
+ strain[0, 3] += \
+ (basisDeriv[iQuad, iBasis, 0]*disp[iBasis*self.spaceDim+1] +
+ basisDeriv[iQuad, iBasis, 1]*disp[iBasis*self.spaceDim ])
+ strain[0, 4] += \
+ (basisDeriv[iQuad, iBasis, 1]*disp[iBasis*self.spaceDim+2] +
+ basisDeriv[iQuad, iBasis, 2]*disp[iBasis*self.spaceDim+1])
+ strain[0, 5] += \
+ (basisDeriv[iQuad, iBasis, 0]*disp[iBasis*self.spaceDim+2] +
+ basisDeriv[iQuad, iBasis, 2]*disp[iBasis*self.spaceDim ])
+
elif 2 == self.spaceDim:
strain = numpy.zeros( (1,3), dtype=numpy.float64)
l11 = 0.0
@@ -245,15 +285,15 @@
l22 += basisDeriv[iQuad, kBasis, 1]*disp[kBasis*self.spaceDim+1]
strain[0, 0] = 0.5*(l11*l11 + l21*l21)
strain[0, 1] = 0.5*(l12*l12 + l22*l22)
- strain[0, 2] = 0.5*(l11*l12 + l21*l22)
+ strain[0, 2] = (l11*l12 + l21*l22) # Use 2*e12 (D has mu, not 2*mu)
for iBasis in xrange(self.numBasis):
strain[0, 0] += \
basisDeriv[iQuad, iBasis, 0]*disp[iBasis*self.spaceDim ]
strain[0, 1] += \
basisDeriv[iQuad, iBasis, 1]*disp[iBasis*self.spaceDim+1]
strain[0, 2] += \
- 0.5*(basisDeriv[iQuad, iBasis, 0]*disp[iBasis*self.spaceDim+1] +
- basisDeriv[iQuad, iBasis, 1]*disp[iBasis*self.spaceDim ])
+ (basisDeriv[iQuad, iBasis, 0]*disp[iBasis*self.spaceDim+1] +
+ basisDeriv[iQuad, iBasis, 1]*disp[iBasis*self.spaceDim ])
elif 1 == self.spaceDim:
strain = numpy.zeros( (1,1), dtype=numpy.float64)
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-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/feutils.py 2009-11-19 00:50:54 UTC (rev 16001)
@@ -139,7 +139,7 @@
"""
Assemble cell vector into global vector.
"""
- (nrows,) = cellVec.shape
+ (nrows,ncols) = 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-18 23:05:45 UTC (rev 16000)
+++ short/3D/PyLith/branches/pylith-friction/unittests/libtests/feassemble/data/generate.sh 2009-11-19 00:50:54 UTC (rev 16001)
@@ -341,7 +341,7 @@
# 1-D ----------------------------------------------------------------
python IntegratorElasticityLgDeform.py \
- --formulation=ElasticityImplicit \
+ --formulation=ElasticityImplicitLgDeform \
--data.namespace=pylith,feassemble \
--data.object=ElasticityImplicitLgDeformData1DLinear \
--data.parent=IntegratorData \
@@ -351,7 +351,7 @@
--solution=Solution1DLinear
python IntegratorElasticityLgDeform.py \
- --formulation=ElasticityImplicit \
+ --formulation=ElasticityImplicitLgDeform \
--data.namespace=pylith,feassemble \
--data.object=ElasticityImplicitLgDeformData1DQuadratic \
--data.parent=IntegratorData \
@@ -385,7 +385,7 @@
# 2-D ----------------------------------------------------------------
python IntegratorElasticityLgDeform.py \
- --formulation=ElasticityImplicit \
+ --formulation=ElasticityImplicitLgDeform \
--data.namespace=pylith,feassemble \
--data.object=ElasticityImplicitLgDeformData2DLinear \
--data.parent=IntegratorData \
@@ -395,7 +395,7 @@
--solution=Solution2DLinear
python IntegratorElasticityLgDeform.py \
- --formulation=ElasticityImplicit \
+ --formulation=ElasticityImplicitLgDeform \
--data.namespace=pylith,feassemble \
--data.object=ElasticityImplicitLgDeformData2DQuadratic \
--data.parent=IntegratorData \
@@ -429,9 +429,8 @@
# 3-D ----------------------------------------------------------------
-if (( 0 )); then
python IntegratorElasticityLgDeform.py \
- --formulation=ElasticityImplicit \
+ --formulation=ElasticityImplicitLgDeform \
--data.namespace=pylith,feassemble \
--data.object=ElasticityImplicitLgDeformData3DLinear \
--data.parent=IntegratorData \
@@ -441,7 +440,7 @@
--solution=Solution3DLinear
python IntegratorElasticityLgDeform.py \
- --formulation=ElasticityImplicit \
+ --formulation=ElasticityImplicitLgDeform \
--data.namespace=pylith,feassemble \
--data.object=ElasticityImplicitLgDeformData3DQuadratic \
--data.parent=IntegratorData \
@@ -471,7 +470,6 @@
--material=ElasticIsotropic3D \
--solution=Solution3DQuadratic
fi
-fi
fi
More information about the CIG-COMMITS
mailing list