[cig-commits] r7094 - in short/3D/PyLith/trunk: . libsrc
libsrc/faults libsrc/feassemble libsrc/topology
modulesrc/feassemble pylith pylith/feassemble
pylith/feassemble/geometry pylith/feassemble/quadrature
unittests/libtests/faults unittests/libtests/feassemble
unittests/libtests/feassemble/data
unittests/libtests/topology unittests/libtests/topology/data
unittests/pytests/feassemble
brad at geodynamics.org
brad at geodynamics.org
Thu Jun 7 16:37:29 PDT 2007
Author: brad
Date: 2007-06-07 16:37:26 -0700 (Thu, 07 Jun 2007)
New Revision: 7094
Added:
short/3D/PyLith/trunk/libsrc/feassemble/CellGeometry.cc
short/3D/PyLith/trunk/libsrc/feassemble/CellGeometry.hh
short/3D/PyLith/trunk/libsrc/feassemble/CellGeometry.icc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryHex3D.cc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryHex3D.hh
short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine1D.cc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine1D.hh
short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine2D.cc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine2D.hh
short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine3D.cc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine3D.hh
short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint1D.cc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint1D.hh
short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint2D.cc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint2D.hh
short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint3D.cc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint3D.hh
short/3D/PyLith/trunk/libsrc/feassemble/GeometryQuad2D.cc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryQuad2D.hh
short/3D/PyLith/trunk/libsrc/feassemble/GeometryQuad3D.cc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryQuad3D.hh
short/3D/PyLith/trunk/libsrc/feassemble/GeometryTet3D.cc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryTet3D.hh
short/3D/PyLith/trunk/libsrc/feassemble/GeometryTri2D.cc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryTri2D.hh
short/3D/PyLith/trunk/libsrc/feassemble/GeometryTri3D.cc
short/3D/PyLith/trunk/libsrc/feassemble/GeometryTri3D.hh
short/3D/PyLith/trunk/pylith/feassemble/geometry/
short/3D/PyLith/trunk/pylith/feassemble/geometry/CellGeometry.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryHex3D.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryLine1D.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryLine2D.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryLine3D.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryPoint1D.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryPoint2D.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryPoint3D.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryQuad2D.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryQuad3D.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryTet3D.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryTri2D.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryTri3D.py
short/3D/PyLith/trunk/pylith/feassemble/geometry/__init__.py
short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKinLine2.cc
short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKinLine2.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestCellGeometry.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestCellGeometry.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryHex3D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryHex3D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine1D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine1D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine2D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine2D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine3D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine3D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint1D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint1D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint2D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint2D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint3D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint3D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryQuad2D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryQuad2D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryQuad3D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryQuad3D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTet3D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTet3D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTri2D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTri2D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTri3D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTri3D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/CellGeomData.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/CellGeomData.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataHex3D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataHex3D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine1D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine1D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine2D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine2D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine3D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine3D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint1D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint1D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint2D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint2D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint3D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint3D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataQuad2D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataQuad2D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataQuad3D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataQuad3D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTet3D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTet3D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTri2D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTri2D.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTri3D.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTri3D.hh
short/3D/PyLith/trunk/unittests/pytests/feassemble/TestCellGeometry.py
Removed:
short/3D/PyLith/trunk/libsrc/topology/CellGeometry.cc
short/3D/PyLith/trunk/libsrc/topology/CellGeometry.hh
short/3D/PyLith/trunk/libsrc/topology/CellGeometry.icc
short/3D/PyLith/trunk/libsrc/topology/GeometryHex3D.cc
short/3D/PyLith/trunk/libsrc/topology/GeometryHex3D.hh
short/3D/PyLith/trunk/libsrc/topology/GeometryLine1D.cc
short/3D/PyLith/trunk/libsrc/topology/GeometryLine1D.hh
short/3D/PyLith/trunk/libsrc/topology/GeometryLine2D.cc
short/3D/PyLith/trunk/libsrc/topology/GeometryLine2D.hh
short/3D/PyLith/trunk/libsrc/topology/GeometryLine3D.cc
short/3D/PyLith/trunk/libsrc/topology/GeometryLine3D.hh
short/3D/PyLith/trunk/libsrc/topology/GeometryPoint1D.cc
short/3D/PyLith/trunk/libsrc/topology/GeometryPoint1D.hh
short/3D/PyLith/trunk/libsrc/topology/GeometryPoint2D.cc
short/3D/PyLith/trunk/libsrc/topology/GeometryPoint2D.hh
short/3D/PyLith/trunk/libsrc/topology/GeometryPoint3D.cc
short/3D/PyLith/trunk/libsrc/topology/GeometryPoint3D.hh
short/3D/PyLith/trunk/libsrc/topology/GeometryQuad2D.cc
short/3D/PyLith/trunk/libsrc/topology/GeometryQuad2D.hh
short/3D/PyLith/trunk/libsrc/topology/GeometryQuad3D.cc
short/3D/PyLith/trunk/libsrc/topology/GeometryQuad3D.hh
short/3D/PyLith/trunk/libsrc/topology/GeometryTet3D.cc
short/3D/PyLith/trunk/libsrc/topology/GeometryTet3D.hh
short/3D/PyLith/trunk/libsrc/topology/GeometryTri2D.cc
short/3D/PyLith/trunk/libsrc/topology/GeometryTri2D.hh
short/3D/PyLith/trunk/libsrc/topology/GeometryTri3D.cc
short/3D/PyLith/trunk/libsrc/topology/GeometryTri3D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestCellGeometry.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestCellGeometry.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryHex3D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryHex3D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine1D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine1D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine2D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine2D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine3D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine3D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint1D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint1D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint2D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint2D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint3D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint3D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad2D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad2D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad3D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad3D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTet3D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTet3D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri2D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri2D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri3D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri3D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/CellGeomData.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/CellGeomData.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataHex3D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataHex3D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine1D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine1D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine2D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine2D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine3D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine3D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint1D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint1D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint2D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint2D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint3D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint3D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad2D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad2D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad3D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad3D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTet3D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTet3D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri2D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri2D.hh
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri3D.cc
short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri3D.hh
Modified:
short/3D/PyLith/trunk/TODO
short/3D/PyLith/trunk/libsrc/Makefile.am
short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc
short/3D/PyLith/trunk/libsrc/feassemble/Makefile.am
short/3D/PyLith/trunk/libsrc/feassemble/Quadrature.cc
short/3D/PyLith/trunk/libsrc/feassemble/Quadrature.hh
short/3D/PyLith/trunk/libsrc/topology/Makefile.am
short/3D/PyLith/trunk/modulesrc/feassemble/feassemble.pyxe.src
short/3D/PyLith/trunk/pylith/Makefile.am
short/3D/PyLith/trunk/pylith/feassemble/FIATLagrange.py
short/3D/PyLith/trunk/pylith/feassemble/FIATSimplex.py
short/3D/PyLith/trunk/pylith/feassemble/ReferenceCell.py
short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature.py
short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature1D.py
short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature1Din2D.py
short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature1Din3D.py
short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature2D.py
short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature2Din3D.py
short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature3D.py
short/3D/PyLith/trunk/unittests/libtests/faults/Makefile.am
short/3D/PyLith/trunk/unittests/libtests/faults/TestBruneSlipFn.cc
short/3D/PyLith/trunk/unittests/libtests/faults/TestEqKinSrc.cc
short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKin.cc
short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKin.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/Makefile.am
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DLinear.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DLinear.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DLinear.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DLinear.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DQuadratic.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DQuadratic.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DLinear.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DLinear.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DQuadratic.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DQuadratic.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DLinear.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DLinear.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DQuadratic.cc
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DQuadratic.hh
short/3D/PyLith/trunk/unittests/libtests/feassemble/TestQuadrature.hh
short/3D/PyLith/trunk/unittests/libtests/topology/Makefile.am
short/3D/PyLith/trunk/unittests/pytests/feassemble/TestFIATLagrange.py
short/3D/PyLith/trunk/unittests/pytests/feassemble/TestFIATSimplex.py
short/3D/PyLith/trunk/unittests/pytests/feassemble/TestQuadrature.py
short/3D/PyLith/trunk/unittests/pytests/feassemble/testfeassemble.py
Log:
Added C++ CellGeometry to C++ Quadrature object and Python CellGeometry to Python ReferenceCell. Added necessary bindings for CellGeometry. Updated C++ and Python unit tests accordingly. Cleaned up some C++ unit test code (moved tearDown to parent class).
Modified: short/3D/PyLith/trunk/TODO
===================================================================
--- short/3D/PyLith/trunk/TODO 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/TODO 2007-06-07 23:37:26 UTC (rev 7094)
@@ -28,15 +28,12 @@
i. FaultCohesiveKin
(1) C++ unit tests
- constructor
- eqsrc()
initialize()
integrateResidual()
integrateJacobian()
setConstraintSizes()
setConstraints()
setField()
- _useLagrangeConstraint()
(2) Python unit tests
initialize()
adjustTopology()
Modified: short/3D/PyLith/trunk/libsrc/Makefile.am
===================================================================
--- short/3D/PyLith/trunk/libsrc/Makefile.am 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/Makefile.am 2007-06-07 23:37:26 UTC (rev 7094)
@@ -32,10 +32,23 @@
faults/FaultCohesiveKin.cc \
faults/FaultCohesiveDyn.cc \
faults/SlipTimeFn.cc \
+ feassemble/CellGeometry.cc \
feassemble/Constraint.cc \
feassemble/Elasticity.cc \
feassemble/ElasticityExplicit.cc \
feassemble/ElasticityImplicit.cc \
+ feassemble/GeometryPoint1D.cc \
+ feassemble/GeometryPoint2D.cc \
+ feassemble/GeometryPoint3D.cc \
+ feassemble/GeometryLine1D.cc \
+ feassemble/GeometryLine2D.cc \
+ feassemble/GeometryLine3D.cc \
+ feassemble/GeometryTri2D.cc \
+ feassemble/GeometryTri3D.cc \
+ feassemble/GeometryTet3D.cc \
+ feassemble/GeometryQuad2D.cc \
+ feassemble/GeometryQuad3D.cc \
+ feassemble/GeometryHex3D.cc \
feassemble/Integrator.cc \
feassemble/Quadrature.cc \
feassemble/Quadrature1D.cc \
@@ -64,20 +77,7 @@
meshio/PsetFileBinary.cc \
meshio/SolutionIO.cc \
meshio/SolutionIOVTK.cc \
- topology/CellGeometry.cc \
- topology/FieldsManager.cc \
- topology/GeometryPoint1D.cc \
- topology/GeometryPoint2D.cc \
- topology/GeometryPoint3D.cc \
- topology/GeometryLine1D.cc \
- topology/GeometryLine2D.cc \
- topology/GeometryLine3D.cc \
- topology/GeometryTri2D.cc \
- topology/GeometryTri3D.cc \
- topology/GeometryTet3D.cc \
- topology/GeometryQuad2D.cc \
- topology/GeometryQuad3D.cc \
- topology/GeometryHex3D.cc
+ topology/FieldsManager.cc
if ENABLE_CUBIT
libpylith_la_SOURCES += \
Modified: short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -56,15 +56,15 @@
const double_array& upDir)
{ // initialize
assert(0 != _quadrature);
+ assert(0 != _eqsrc);
assert(0 != _faultMesh);
- assert(0 != _eqsrc);
assert(!_faultMesh->isNull());
if (3 != upDir.size())
throw std::runtime_error("Up direction for fault orientation must be "
"a vector with 3 components.");
- // Allocate section for orientation at all fault vertices
+ // Allocate section for orientation at vertices in fault mesh
ALE::Obj<real_section_type> orientation =
new real_section_type((*_faultMesh)->comm(), (*_faultMesh)->debug());
assert(!orientation.isNull());
Copied: short/3D/PyLith/trunk/libsrc/feassemble/CellGeometry.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/CellGeometry.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/CellGeometry.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/CellGeometry.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,44 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "CellGeometry.hh" // implementation of class methods
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::CellGeometry::CellGeometry(const int cellDim,
+ const int spaceDim,
+ const int numCorners) :
+ _cellDim(cellDim),
+ _spaceDim(spaceDim),
+ _numCorners(numCorners)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::CellGeometry::~CellGeometry(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Copy constructor.
+pylith::feassemble::CellGeometry::CellGeometry(const CellGeometry& g) :
+ _cellDim(g._cellDim),
+ _spaceDim(g._spaceDim),
+ _numCorners(g._numCorners)
+{ // copy constructor
+} // copy constructor
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/CellGeometry.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/CellGeometry.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/CellGeometry.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/CellGeometry.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,123 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/CellGeometry.hh
+ *
+ * @brief C++ abstract base class for cell geometry calculations.
+ */
+
+#if !defined(pylith_feassemble_cellgeometry_hh)
+#define pylith_feassemble_cellgeometry_hh
+
+#include "pylith/utils/arrayfwd.hh" // USES double_array
+
+namespace pylith {
+ namespace feassemble {
+ class CellGeometry;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::CellGeometry
+{ // CellGeometry
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /** Default constructor.
+ *
+ * @param cellDim Dimension of cell.
+ * @param spaceDim Dimension of coordinate space.
+ * @param numCorners Number of corners in cell.
+ */
+ CellGeometry(const int cellDim,
+ const int spaceDim,
+ const int numCorners);
+
+ /// Default destructor.
+ virtual
+ ~CellGeometry(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ virtual
+ CellGeometry* clone(void) const = 0;
+
+ /** Get dimension of cell.
+ *
+ * @returns Spatial dimension of cell.
+ */
+ int cellDim(void) const;
+
+ /** Get dimension of coordinate space.
+ *
+ * @returns Dimension of coordinate space.
+ */
+ int spaceDim(void) const;
+
+ /** Get number of vertices in cell.
+ *
+ * @returns Number of vertices in cell.
+ */
+ int numCorners(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ virtual
+ CellGeometry* geometryLowerDim(void) const = 0;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ virtual
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const = 0;
+
+// PROTECTED ////////////////////////////////////////////////////////////
+protected :
+
+ /** Copy constructor.
+ *
+ * @param g Geometry to copy.
+ */
+ CellGeometry(const CellGeometry& g);
+
+// NOT IMPLEMENTED //////////////////////////////////////////////////////
+private :
+
+ /// Not implemented
+ const CellGeometry& operator=(const CellGeometry& );
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private :
+
+ int _cellDim; ///< Dimension of cell.
+ int _spaceDim; ///< Dimension of coordinate space.
+ int _numCorners; ///< Number of corners in cell.
+
+}; // CellGeometry
+
+#include "CellGeometry.icc" // inline methods
+
+#endif // pylith_feassemble_cellgeometry_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/CellGeometry.icc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/CellGeometry.icc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/CellGeometry.icc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/CellGeometry.icc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,41 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_feassemble_cellgeometry_hh)
+#error "CellGeometry.icc must be included only from CellGeometry.hh"
+#else
+
+// Get dimension of cell.
+inline
+int
+pylith::feassemble::CellGeometry::cellDim(void) const {
+ return _cellDim;
+} // cellDim
+
+// Get dimension of coordinate space.
+inline
+int
+pylith::feassemble::CellGeometry::spaceDim(void) const {
+ return _spaceDim;
+} // spaceDim
+
+// Get number of corners in cell.
+inline
+int
+pylith::feassemble::CellGeometry::numCorners(void) const {
+ return _numCorners;
+} // numCorners
+
+
+#endif
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryHex3D.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryHex3D.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryHex3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryHex3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,134 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "GeometryHex3D.hh" // implementation of class methods
+
+#include "GeometryQuad3D.hh" // USES GeometryQuad3D
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include <assert.h> // USES assert()
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::GeometryHex3D::GeometryHex3D(void) :
+ CellGeometry(3, 3, 8)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::GeometryHex3D::~GeometryHex3D(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Create a copy of geometry.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryHex3D::clone(void) const
+{ // clone
+ return new GeometryHex3D();
+} // clone
+
+// ----------------------------------------------------------------------
+// Get cell geometry for lower dimension cell.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryHex3D::geometryLowerDim(void) const
+{ // geometryLowerDim
+ return new GeometryQuad3D();
+} // geometryLowerDim
+
+// ----------------------------------------------------------------------
+// Compute Jacobian at location in cell.
+void
+pylith::feassemble::GeometryHex3D::jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const
+{ // jacobian
+ assert(0 != jacobian);
+
+ assert(numCorners()*spaceDim() == vertices.size());
+ assert(cellDim() == location.size());
+ assert(spaceDim()*cellDim() == jacobian->size());
+
+ const double x0 = vertices[0];
+ const double y0 = vertices[1];
+ const double z0 = vertices[2];
+
+ const double x1 = vertices[3];
+ const double y1 = vertices[4];
+ const double z1 = vertices[5];
+
+ const double x2 = vertices[6];
+ const double y2 = vertices[7];
+ const double z2 = vertices[8];
+
+ const double x3 = vertices[9];
+ const double y3 = vertices[10];
+ const double z3 = vertices[11];
+
+ const double x4 = vertices[12];
+ const double y4 = vertices[13];
+ const double z4 = vertices[14];
+
+ const double x5 = vertices[15];
+ const double y5 = vertices[16];
+ const double z5 = vertices[17];
+
+ const double x6 = vertices[18];
+ const double y6 = vertices[19];
+ const double z6 = vertices[20];
+
+ const double x7 = vertices[21];
+ const double y7 = vertices[22];
+ const double z7 = vertices[23];
+
+ const double x = location[0];
+ const double y = location[1];
+ const double z = location[2];
+ assert(0 <= x && x <= 1.0);
+ assert(0 <= y && y <= 1.0);
+ assert(0 <= z && z <= 1.0);
+
+ const double f_xy = x2 - x1 - x3 + x0;
+ const double g_xy = y2 - y1 - y3 + y0;
+ const double h_xy = z2 - z1 - z3 + z0;
+
+ const double f_yz = x7 - x3 - x4 + x0;
+ const double g_yz = y7 - y3 - y4 + y0;
+ const double h_yz = z7 - z3 - z4 + z0;
+
+ const double f_xz = x5 - x1 - x4 + x0;
+ const double g_xz = y5 - y1 - y4 + y0;
+ const double h_xz = z5 - z1 - z4 + z0;
+
+ const double f_xyz = x6 - x0 + x1 - x2 + x3 + x4 - x5 - x7;
+ const double g_xyz = y6 - y0 + y1 - y2 + y3 + y4 - y5 - y7;
+ const double h_xyz = z6 - z0 + z1 - z2 + z3 + z4 - z5 - z7;
+
+ (*jacobian)[0] = x1 - x0 + f_xy*y + f_xz*z + f_xyz*y*z;
+ (*jacobian)[1] = x3 - x0 + f_xy*x + f_yz*z + f_xyz*x*z;
+ (*jacobian)[2] = x4 - x0 + f_yz*y + f_xz*x + f_xyz*x*y;
+
+ (*jacobian)[3] = y1 - y0 + g_xy*y + g_xz*z + g_xyz*y*z;
+ (*jacobian)[4] = y3 - y0 + g_xy*x + g_yz*z + g_xyz*x*z;
+ (*jacobian)[5] = y4 - y0 + g_yz*y + g_xz*x + g_xyz*x*y;
+
+ (*jacobian)[6] = z1 - z0 + h_xy*y + h_xz*z + h_xyz*y*z;
+ (*jacobian)[7] = z3 - z0 + h_xy*x + h_yz*z + h_xyz*x*z;
+ (*jacobian)[8] = z4 - z0 + h_yz*y + h_xz*x + h_xyz*x*y;
+} // jacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryHex3D.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryHex3D.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryHex3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryHex3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,71 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/GeometryHex3D.hh
+ *
+ * @brief C++ implementation of cell geometry calculations for 3-D
+ * hexahedral cell.
+ */
+
+#if !defined(pylith_feassemble_geometryhex3d_hh)
+#define pylith_feassemble_geometryhex3d_hh
+
+#include "CellGeometry.hh" // ISA CellGeometry
+
+namespace pylith {
+ namespace feassemble {
+ class GeometryHex3D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeometryHex3D : public CellGeometry
+{ // GeometryHex3D
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Default constructor.
+ GeometryHex3D(void);
+
+ /// Default destructor.
+ ~GeometryHex3D(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ CellGeometry* clone(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ CellGeometry* geometryLowerDim(void) const;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const;
+
+}; // GeometryHex3D
+
+#endif // pylith_feassemble_geometryhex3d_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine1D.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryLine1D.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryLine1D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine1D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,71 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "GeometryLine1D.hh" // implementation of class methods
+
+#include "GeometryPoint1D.hh" // USES GeometryPoint
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include <assert.h> // USES assert()
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::GeometryLine1D::GeometryLine1D(void) :
+ CellGeometry(1, 1, 2)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::GeometryLine1D::~GeometryLine1D(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Create a copy of geometry.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryLine1D::clone(void) const
+{ // clone
+ return new GeometryLine1D();
+} // clone
+
+// ----------------------------------------------------------------------
+// Get cell geometry for lower dimension cell.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryLine1D::geometryLowerDim(void) const
+{ // geometryLowerDim
+ return new GeometryPoint1D();
+} // geometryLowerDim
+
+// ----------------------------------------------------------------------
+// Compute Jacobian at location in cell.
+void
+pylith::feassemble::GeometryLine1D::jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const
+{ // jacobian
+ assert(0 != jacobian);
+
+ assert(numCorners()*spaceDim() == vertices.size());
+ assert(spaceDim()*cellDim() == jacobian->size());
+
+ const double x0 = vertices[0];
+ const double x1 = vertices[1];
+
+ (*jacobian)[0] = x1 - x0;
+} // jacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine1D.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryLine1D.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryLine1D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine1D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,71 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/GeometryLine1D.hh
+ *
+ * @brief C++ implementation of cell geometry calculations for 1-D
+ * line cell.
+ */
+
+#if !defined(pylith_feassemble_geometryline1d_hh)
+#define pylith_feassemble_geometryline1d_hh
+
+#include "CellGeometry.hh" // ISA CellGeometry
+
+namespace pylith {
+ namespace feassemble {
+ class GeometryLine1D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeometryLine1D : public CellGeometry
+{ // GeometryLine1D
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Default constructor.
+ GeometryLine1D(void);
+
+ /// Default destructor.
+ ~GeometryLine1D(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ CellGeometry* clone(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ CellGeometry* geometryLowerDim(void) const;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const;
+
+}; // GeometryLine1D
+
+#endif // pylith_feassemble_geometryline1d_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine2D.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryLine2D.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryLine2D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,75 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "GeometryLine2D.hh" // implementation of class methods
+
+#include "GeometryPoint2D.hh" // USES GeometryPoint
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include <assert.h> // USES assert()
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::GeometryLine2D::GeometryLine2D(void) :
+ CellGeometry(1, 2, 2)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::GeometryLine2D::~GeometryLine2D(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Create a copy of geometry.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryLine2D::clone(void) const
+{ // clone
+ return new GeometryLine2D();
+} // clone
+
+// ----------------------------------------------------------------------
+// Get cell geometry for lower dimension cell.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryLine2D::geometryLowerDim(void) const
+{ // geometryLowerDim
+ return new GeometryPoint2D();
+} // geometryLowerDim
+
+// ----------------------------------------------------------------------
+// Compute Jacobian at location in cell.
+void
+pylith::feassemble::GeometryLine2D::jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const
+{ // jacobian
+ assert(0 != jacobian);
+
+ assert(numCorners()*spaceDim() == vertices.size());
+ assert(spaceDim()*cellDim() == jacobian->size());
+
+ const double x0 = vertices[0];
+ const double y0 = vertices[1];
+
+ const double x1 = vertices[2];
+ const double y1 = vertices[3];
+
+ (*jacobian)[0] = x1 - x0;
+ (*jacobian)[1] = y1 - y0;
+} // jacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine2D.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryLine2D.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryLine2D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,71 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/GeometryLine2D.hh
+ *
+ * @brief C++ implementation of cell geometry calculations for 1-D
+ * line cell in 2-D space.
+ */
+
+#if !defined(pylith_feassemble_geometryline2d_hh)
+#define pylith_feassemble_geometryline2d_hh
+
+#include "CellGeometry.hh" // ISA CellGeometry
+
+namespace pylith {
+ namespace feassemble {
+ class GeometryLine2D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeometryLine2D : public CellGeometry
+{ // GeometryLine2D
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Default constructor.
+ GeometryLine2D(void);
+
+ /// Default destructor.
+ ~GeometryLine2D(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ CellGeometry* clone(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ CellGeometry* geometryLowerDim(void) const;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const;
+
+}; // GeometryLine2D
+
+#endif // pylith_feassemble_geometryline2d_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine3D.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryLine3D.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryLine3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,78 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "GeometryLine3D.hh" // implementation of class methods
+
+#include "GeometryPoint3D.hh" // USES GeometryPoint3D
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include <assert.h> // USES assert()
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::GeometryLine3D::GeometryLine3D(void) :
+ CellGeometry(1, 3, 2)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::GeometryLine3D::~GeometryLine3D(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Create a copy of geometry.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryLine3D::clone(void) const
+{ // clone
+ return new GeometryLine3D();
+} // clone
+
+// ----------------------------------------------------------------------
+// Get cell geometry for lower dimension cell.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryLine3D::geometryLowerDim(void) const
+{ // geometryLowerDim
+ return new GeometryPoint3D();
+} // geometryLowerDim
+
+// ----------------------------------------------------------------------
+// Compute Jacobian at location in cell.
+void
+pylith::feassemble::GeometryLine3D::jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const
+{ // jacobian
+ assert(0 != jacobian);
+
+ assert(numCorners()*spaceDim() == vertices.size());
+ assert(spaceDim()*cellDim() == jacobian->size());
+
+ const double x0 = vertices[0];
+ const double y0 = vertices[1];
+ const double z0 = vertices[2];
+
+ const double x1 = vertices[3];
+ const double y1 = vertices[4];
+ const double z1 = vertices[5];
+
+ (*jacobian)[0] = x1 - x0;
+ (*jacobian)[1] = y1 - y0;
+ (*jacobian)[2] = z1 - z0;
+} // jacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine3D.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryLine3D.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryLine3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryLine3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,71 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/GeometryLine3D.hh
+ *
+ * @brief C++ implementation of cell geometry calculations for 1-D
+ * line cell.
+ */
+
+#if !defined(pylith_feassemble_geometryline3d_hh)
+#define pylith_feassemble_geometryline3d_hh
+
+#include "CellGeometry.hh" // ISA CellGeometry
+
+namespace pylith {
+ namespace feassemble {
+ class GeometryLine3D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeometryLine3D : public CellGeometry
+{ // GeometryLine3D
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Default constructor.
+ GeometryLine3D(void);
+
+ /// Default destructor.
+ ~GeometryLine3D(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ CellGeometry* clone(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ CellGeometry* geometryLowerDim(void) const;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const;
+
+}; // GeometryLine3D
+
+#endif // pylith_feassemble_geometryline3d_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint1D.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryPoint1D.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryPoint1D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint1D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,72 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "GeometryPoint1D.hh" // implementation of class methods
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include <assert.h> // USES assert()
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::GeometryPoint1D::GeometryPoint1D(void) :
+ CellGeometry(0, 1, 1)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::GeometryPoint1D::~GeometryPoint1D(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Copy constructor.
+pylith::feassemble::GeometryPoint1D::GeometryPoint1D(const GeometryPoint1D& g) :
+ CellGeometry(0, 1, 1)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Create a copy of geometry.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryPoint1D::clone(void) const
+{ // clone
+ return new GeometryPoint1D(*this);
+} // clone
+
+// ----------------------------------------------------------------------
+// Get cell geometry for lower dimension cell.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryPoint1D::geometryLowerDim(void) const
+{ // geometryLowerDim
+ return 0;
+} // geometryLowerDim
+
+// ----------------------------------------------------------------------
+// Compute Jacobian at location in cell.
+void
+pylith::feassemble::GeometryPoint1D::jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const
+{ // jacobian
+ assert(0 != jacobian);
+
+ assert(1 == jacobian->size());
+
+ (*jacobian)[0] = 1.0;
+} // jacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint1D.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryPoint1D.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryPoint1D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint1D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,80 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/GeometryPoint1D.hh
+ *
+ * @brief C++ implementation of cell geometry calculations for 0-D
+ * point cell.
+ */
+
+#if !defined(pylith_feassemble_geometrypoint1d_hh)
+#define pylith_feassemble_geometrypoint1d_hh
+
+#include "CellGeometry.hh" // ISA CellGeometry
+
+namespace pylith {
+ namespace feassemble {
+ class GeometryPoint1D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeometryPoint1D : public CellGeometry
+{ // GeometryPoint1D
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Default constructor.
+ GeometryPoint1D(void);
+
+ /// Default destructor.
+ ~GeometryPoint1D(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ CellGeometry* clone(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ CellGeometry* geometryLowerDim(void) const;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const;
+
+// PROTECTED ////////////////////////////////////////////////////////////
+protected :
+
+ /** Copy constructor.
+ *
+ * @param g Geometry to copy.
+ */
+ GeometryPoint1D(const GeometryPoint1D& g);
+
+}; // GeometryPoint1D
+
+#endif // pylith_feassemble_geometrypoint1d_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint2D.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryPoint2D.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryPoint2D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,72 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "GeometryPoint2D.hh" // implementation of class methods
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include <assert.h> // USES assert()
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::GeometryPoint2D::GeometryPoint2D(void) :
+ CellGeometry(0, 2, 1)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::GeometryPoint2D::~GeometryPoint2D(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Copy constructor.
+pylith::feassemble::GeometryPoint2D::GeometryPoint2D(const GeometryPoint2D& g) :
+ CellGeometry(0, 2, 1)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Create a copy of geometry.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryPoint2D::clone(void) const
+{ // clone
+ return new GeometryPoint2D(*this);
+} // clone
+
+// ----------------------------------------------------------------------
+// Get cell geometry for lower dimension cell.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryPoint2D::geometryLowerDim(void) const
+{ // geometryLowerDim
+ return 0;
+} // geometryLowerDim
+
+// ----------------------------------------------------------------------
+// Compute Jacobian at location in cell.
+void
+pylith::feassemble::GeometryPoint2D::jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const
+{ // jacobian
+ assert(0 != jacobian);
+
+ assert(1 == jacobian->size());
+
+ (*jacobian)[0] = 1.0;
+} // jacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint2D.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryPoint2D.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryPoint2D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,80 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/GeometryPoint2D.hh
+ *
+ * @brief C++ implementation of cell geometry calculations for 0-D
+ * point cell.
+ */
+
+#if !defined(pylith_feassemble_geometrypoint2d_hh)
+#define pylith_feassemble_geometrypoint2d_hh
+
+#include "CellGeometry.hh" // ISA CellGeometry
+
+namespace pylith {
+ namespace feassemble {
+ class GeometryPoint2D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeometryPoint2D : public CellGeometry
+{ // GeometryPoint2D
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Default constructor.
+ GeometryPoint2D(void);
+
+ /// Default destructor.
+ ~GeometryPoint2D(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ CellGeometry* clone(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ CellGeometry* geometryLowerDim(void) const;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const;
+
+// PROTECTED ////////////////////////////////////////////////////////////
+protected :
+
+ /** Copy constructor.
+ *
+ * @param g Geometry to copy.
+ */
+ GeometryPoint2D(const GeometryPoint2D& g);
+
+}; // GeometryPoint2D
+
+#endif // pylith_feassemble_geometrypoint2d_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint3D.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryPoint3D.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryPoint3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,72 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "GeometryPoint3D.hh" // implementation of class methods
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include <assert.h> // USES assert()
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::GeometryPoint3D::GeometryPoint3D(void) :
+ CellGeometry(0, 3, 1)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::GeometryPoint3D::~GeometryPoint3D(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Copy constructor.
+pylith::feassemble::GeometryPoint3D::GeometryPoint3D(const GeometryPoint3D& g) :
+ CellGeometry(0, 3, 1)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Create a copy of geometry.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryPoint3D::clone(void) const
+{ // clone
+ return new GeometryPoint3D(*this);
+} // clone
+
+// ----------------------------------------------------------------------
+// Get cell geometry for lower dimension cell.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryPoint3D::geometryLowerDim(void) const
+{ // geometryLowerDim
+ return 0;
+} // geometryLowerDim
+
+// ----------------------------------------------------------------------
+// Compute Jacobian at location in cell.
+void
+pylith::feassemble::GeometryPoint3D::jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const
+{ // jacobian
+ assert(0 != jacobian);
+
+ assert(1 == jacobian->size());
+
+ (*jacobian)[0] = 1.0;
+} // jacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint3D.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryPoint3D.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryPoint3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryPoint3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,80 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/GeometryPoint3D.hh
+ *
+ * @brief C++ implementation of cell geometry calculations for 0-D
+ * point cell.
+ */
+
+#if !defined(pylith_feassemble_geometrypoint3d_hh)
+#define pylith_feassemble_geometrypoint3d_hh
+
+#include "CellGeometry.hh" // ISA CellGeometry
+
+namespace pylith {
+ namespace feassemble {
+ class GeometryPoint3D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeometryPoint3D : public CellGeometry
+{ // GeometryPoint3D
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Default constructor.
+ GeometryPoint3D(void);
+
+ /// Default destructor.
+ ~GeometryPoint3D(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ CellGeometry* clone(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ CellGeometry* geometryLowerDim(void) const;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const;
+
+// PROTECTED ////////////////////////////////////////////////////////////
+protected :
+
+ /** Copy constructor.
+ *
+ * @param g Geometry to copy.
+ */
+ GeometryPoint3D(const GeometryPoint3D& g);
+
+}; // GeometryPoint3D
+
+#endif // pylith_feassemble_geometrypoint3d_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryQuad2D.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryQuad2D.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryQuad2D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryQuad2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,99 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "GeometryQuad2D.hh" // implementation of class methods
+
+#include "GeometryLine2D.hh" // USES GeometryLine2D
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include <assert.h> // USES assert()
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::GeometryQuad2D::GeometryQuad2D(void) :
+ CellGeometry(2, 2, 4)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::GeometryQuad2D::~GeometryQuad2D(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Copy constructor.
+pylith::feassemble::GeometryQuad2D::GeometryQuad2D(const GeometryQuad2D& g) :
+ CellGeometry(2, 2, 4)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Create a copy of geometry.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryQuad2D::clone(void) const
+{ // clone
+ return new GeometryQuad2D(*this);
+} // clone
+
+// ----------------------------------------------------------------------
+// Get cell geometry for lower dimension cell.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryQuad2D::geometryLowerDim(void) const
+{ // geometryLowerDim
+ return new GeometryLine2D();
+} // geometryLowerDim
+
+// ----------------------------------------------------------------------
+// Compute Jacobian at location in cell.
+void
+pylith::feassemble::GeometryQuad2D::jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const
+{ // jacobian
+ assert(0 != jacobian);
+
+ assert(numCorners()*spaceDim() == vertices.size());
+ assert(cellDim() == location.size());
+ assert(spaceDim()*cellDim() == jacobian->size());
+
+ const double x0 = vertices[0];
+ const double y0 = vertices[1];
+
+ const double x1 = vertices[2];
+ const double y1 = vertices[3];
+
+ const double x2 = vertices[4];
+ const double y2 = vertices[5];
+
+ const double x3 = vertices[6];
+ const double y3 = vertices[7];
+
+ const double x = location[0];
+ const double y = location[1];
+ assert(0 <= x && x <= 1.0);
+ assert(0 <= y && y <= 1.0);
+
+ const double f_xy = x2 - x1 - x3 + x0;
+ const double g_xy = y2 - y1 - y3 + y0;
+
+ (*jacobian)[0] = x1 - x0 + f_xy*y;
+ (*jacobian)[1] = x3 - x0 + f_xy*x;
+ (*jacobian)[2] = y1 - y0 + g_xy*y;
+ (*jacobian)[3] = y3 - y0 + g_xy*x;
+} // jacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryQuad2D.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryQuad2D.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryQuad2D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryQuad2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,80 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/GeometryQuad2D.hh
+ *
+ * @brief C++ implementation of cell geometry calculations for 2-D
+ * quadrilateral cell.
+ */
+
+#if !defined(pylith_feassemble_geometryquad2d_hh)
+#define pylith_feassemble_geometryquad2d_hh
+
+#include "CellGeometry.hh" // ISA CellGeometry
+
+namespace pylith {
+ namespace feassemble {
+ class GeometryQuad2D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeometryQuad2D : public CellGeometry
+{ // GeometryQuad2D
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Default constructor.
+ GeometryQuad2D(void);
+
+ /// Default destructor.
+ ~GeometryQuad2D(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ CellGeometry* clone(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ CellGeometry* geometryLowerDim(void) const;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const;
+
+// PROTECTED ////////////////////////////////////////////////////////////
+protected :
+
+ /** Copy constructor.
+ *
+ * @param g Geometry to copy.
+ */
+ GeometryQuad2D(const GeometryQuad2D& g);
+
+}; // GeometryQuad2D
+
+#endif // pylith_feassemble_geometryquad2d_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryQuad3D.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryQuad3D.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryQuad3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryQuad3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,108 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "GeometryQuad3D.hh" // implementation of class methods
+
+#include "GeometryLine3D.hh" // USES GeometryLine3D
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include <assert.h> // USES assert()
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::GeometryQuad3D::GeometryQuad3D(void) :
+ CellGeometry(2, 3, 4)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::GeometryQuad3D::~GeometryQuad3D(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Copy constructor.
+pylith::feassemble::GeometryQuad3D::GeometryQuad3D(const GeometryQuad3D& g) :
+ CellGeometry(2, 3, 4)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Create a copy of geometry.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryQuad3D::clone(void) const
+{ // clone
+ return new GeometryQuad3D(*this);
+} // clone
+
+// ----------------------------------------------------------------------
+// Get cell geometry for lower dimension cell.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryQuad3D::geometryLowerDim(void) const
+{ // geometryLowerDim
+ return new GeometryLine3D();
+} // geometryLowerDim
+
+// ----------------------------------------------------------------------
+// Compute Jacobian at location in cell.
+void
+pylith::feassemble::GeometryQuad3D::jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const
+{ // jacobian
+ assert(0 != jacobian);
+
+ assert(numCorners()*spaceDim() == vertices.size());
+ assert(cellDim() == location.size());
+ assert(spaceDim()*cellDim() == jacobian->size());
+
+ const double x0 = vertices[0];
+ const double y0 = vertices[1];
+ const double z0 = vertices[2];
+
+ const double x1 = vertices[3];
+ const double y1 = vertices[4];
+ const double z1 = vertices[5];
+
+ const double x2 = vertices[6];
+ const double y2 = vertices[7];
+ const double z2 = vertices[8];
+
+ const double x3 = vertices[9];
+ const double y3 = vertices[10];
+ const double z3 = vertices[11];
+
+ const double x = location[0];
+ const double y = location[1];
+ assert(0 <= x && x <= 1.0);
+ assert(0 <= y && y <= 1.0);
+
+ const double f_xy = x2 - x1 - x3 + x0;
+ const double g_xy = y2 - y1 - y3 + y0;
+ const double h_xy = z2 - z1 - z3 + z0;
+
+ (*jacobian)[0] = x1 - x0 + f_xy*y;
+ (*jacobian)[1] = x3 - x0 + f_xy*x;
+
+ (*jacobian)[2] = y1 - y0 + g_xy*y;
+ (*jacobian)[3] = y3 - y0 + g_xy*x;
+
+ (*jacobian)[4] = z1 - z0 + h_xy*y;
+ (*jacobian)[5] = z3 - z0 + h_xy*x;
+} // jacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryQuad3D.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryQuad3D.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryQuad3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryQuad3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,80 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/GeometryQuad3D.hh
+ *
+ * @brief C++ implementation of cell geometry calculations for 2-D
+ * quadrilateral cell in 3-D.
+ */
+
+#if !defined(pylith_feassemble_geometryquad3d_hh)
+#define pylith_feassemble_geometryquad3d_hh
+
+#include "CellGeometry.hh" // ISA CellGeometry
+
+namespace pylith {
+ namespace feassemble {
+ class GeometryQuad3D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeometryQuad3D : public CellGeometry
+{ // GeometryQuad3D
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Default constructor.
+ GeometryQuad3D(void);
+
+ /// Default destructor.
+ ~GeometryQuad3D(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ CellGeometry* clone(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ CellGeometry* geometryLowerDim(void) const;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const;
+
+// PROTECTED ////////////////////////////////////////////////////////////
+protected :
+
+ /** Copy constructor.
+ *
+ * @param g Geometry to copy.
+ */
+ GeometryQuad3D(const GeometryQuad3D& g);
+
+}; // GeometryQuad3D
+
+#endif // pylith_feassemble_geometryquad3d_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryTet3D.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryTet3D.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryTet3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryTet3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,99 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "GeometryTet3D.hh" // implementation of class methods
+
+#include "GeometryTri3D.hh" // USES GeometryTri3D
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include <assert.h> // USES assert()
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::GeometryTet3D::GeometryTet3D(void) :
+ CellGeometry(3, 3, 4)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::GeometryTet3D::~GeometryTet3D(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Copy constructor.
+pylith::feassemble::GeometryTet3D::GeometryTet3D(const GeometryTet3D& g) :
+ CellGeometry(3, 3, 4)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Create a copy of geometry.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryTet3D::clone(void) const
+{ // clone
+ return new GeometryTet3D(*this);
+} // clone
+
+// ----------------------------------------------------------------------
+// Get cell geometry for lower dimension cell.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryTet3D::geometryLowerDim(void) const
+{ // geometryLowerDim
+ return new GeometryTri3D();
+} // geometryLowerDim
+
+// ----------------------------------------------------------------------
+// Compute Jacobian at location in cell.
+void
+pylith::feassemble::GeometryTet3D::jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const
+{ // jacobian
+ assert(0 != jacobian);
+
+ assert(numCorners()*spaceDim() == vertices.size());
+ assert(spaceDim()*cellDim() == jacobian->size());
+
+ const double x0 = vertices[0];
+ const double y0 = vertices[1];
+ const double z0 = vertices[2];
+
+ const double x1 = vertices[3];
+ const double y1 = vertices[4];
+ const double z1 = vertices[5];
+
+ const double x2 = vertices[6];
+ const double y2 = vertices[7];
+ const double z2 = vertices[8];
+
+ const double x3 = vertices[9];
+ const double y3 = vertices[10];
+ const double z3 = vertices[11];
+
+ (*jacobian)[0] = x1 - x0;
+ (*jacobian)[1] = x2 - x0;
+ (*jacobian)[2] = x3 - x0;
+ (*jacobian)[3] = y1 - y0;
+ (*jacobian)[4] = y2 - y0;
+ (*jacobian)[5] = y3 - y0;
+ (*jacobian)[6] = z1 - z0;
+ (*jacobian)[7] = z2 - z0;
+ (*jacobian)[8] = z3 - z0;
+} // jacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryTet3D.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryTet3D.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryTet3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryTet3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,80 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/GeometryTet3D.hh
+ *
+ * @brief C++ implementation of cell geometry calculations for 3-D
+ * tetrahedral cell.
+ */
+
+#if !defined(pylith_feassemble_geometrytet3d_hh)
+#define pylith_feassemble_geometrytet3d_hh
+
+#include "CellGeometry.hh" // ISA CellGeometry
+
+namespace pylith {
+ namespace feassemble {
+ class GeometryTet3D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeometryTet3D : public CellGeometry
+{ // GeometryTet3D
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Default constructor.
+ GeometryTet3D(void);
+
+ /// Default destructor.
+ ~GeometryTet3D(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ CellGeometry* clone(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ CellGeometry* geometryLowerDim(void) const;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const;
+
+// PROTECTED ////////////////////////////////////////////////////////////
+protected :
+
+ /** Copy constructor.
+ *
+ * @param g Geometry to copy.
+ */
+ GeometryTet3D(const GeometryTet3D& g);
+
+}; // GeometryTet3D
+
+#endif // pylith_feassemble_geometrytet3d_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryTri2D.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryTri2D.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryTri2D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryTri2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,87 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "GeometryTri2D.hh" // implementation of class methods
+
+#include "GeometryLine2D.hh" // USES GeometryLine2D
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include <assert.h> // USES assert()
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::GeometryTri2D::GeometryTri2D(void) :
+ CellGeometry(2, 2, 3)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::GeometryTri2D::~GeometryTri2D(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Copy constructor.
+pylith::feassemble::GeometryTri2D::GeometryTri2D(const GeometryTri2D& g) :
+ CellGeometry(2, 2, 3)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Create a copy of geometry.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryTri2D::clone(void) const
+{ // clone
+ return new GeometryTri2D(*this);
+} // clone
+
+// ----------------------------------------------------------------------
+// Get cell geometry for lower dimension cell.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryTri2D::geometryLowerDim(void) const
+{ // geometryLowerDim
+ return new GeometryLine2D();
+} // geometryLowerDim
+
+// ----------------------------------------------------------------------
+// Compute Jacobian at location in cell.
+void
+pylith::feassemble::GeometryTri2D::jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const
+{ // jacobian
+ assert(0 != jacobian);
+
+ assert(numCorners()*spaceDim() == vertices.size());
+ assert(spaceDim()*cellDim() == jacobian->size());
+
+ const double x0 = vertices[0];
+ const double y0 = vertices[1];
+
+ const double x1 = vertices[2];
+ const double y1 = vertices[3];
+
+ const double x2 = vertices[4];
+ const double y2 = vertices[5];
+
+ (*jacobian)[0] = x1 - x0;
+ (*jacobian)[1] = x2 - x0;
+ (*jacobian)[2] = y1 - y0;
+ (*jacobian)[3] = y2 - y0;
+} // jacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryTri2D.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryTri2D.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryTri2D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryTri2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,80 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/GeometryTri2D.hh
+ *
+ * @brief C++ implementation of cell geometry calculations for 2-D
+ * triangular cell.
+ */
+
+#if !defined(pylith_feassemble_geometrytri2d_hh)
+#define pylith_feassemble_geometrytri2d_hh
+
+#include "CellGeometry.hh" // ISA CellGeometry
+
+namespace pylith {
+ namespace feassemble {
+ class GeometryTri2D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeometryTri2D : public CellGeometry
+{ // GeometryTri2D
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Default constructor.
+ GeometryTri2D(void);
+
+ /// Default destructor.
+ ~GeometryTri2D(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ CellGeometry* clone(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ CellGeometry* geometryLowerDim(void) const;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const;
+
+// PROTECTED ////////////////////////////////////////////////////////////
+protected :
+
+ /** Copy constructor.
+ *
+ * @param g Geometry to copy.
+ */
+ GeometryTri2D(const GeometryTri2D& g);
+
+}; // GeometryTri2D
+
+#endif // pylith_feassemble_geometrytri2d_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryTri3D.cc (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryTri3D.cc)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryTri3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryTri3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,94 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include <portinfo>
+
+#include "GeometryTri3D.hh" // implementation of class methods
+
+#include "GeometryLine3D.hh" // USES GeometryLine3D
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include <assert.h> // USES assert()
+
+// ----------------------------------------------------------------------
+// Default constructor.
+pylith::feassemble::GeometryTri3D::GeometryTri3D(void) :
+ CellGeometry(2, 3, 3)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Default destructor.
+pylith::feassemble::GeometryTri3D::~GeometryTri3D(void)
+{ // destructor
+} // destructor
+
+// ----------------------------------------------------------------------
+// Copy constructor.
+pylith::feassemble::GeometryTri3D::GeometryTri3D(const GeometryTri3D& g) :
+ CellGeometry(2, 3, 3)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Create a copy of geometry.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryTri3D::clone(void) const
+{ // clone
+ return new GeometryTri3D(*this);
+} // clone
+
+// ----------------------------------------------------------------------
+// Get cell geometry for lower dimension cell.
+pylith::feassemble::CellGeometry*
+pylith::feassemble::GeometryTri3D::geometryLowerDim(void) const
+{ // geometryLowerDim
+ return new GeometryLine3D();
+} // geometryLowerDim
+
+// ----------------------------------------------------------------------
+// Compute Jacobian at location in cell.
+void
+pylith::feassemble::GeometryTri3D::jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const
+{ // jacobian
+ assert(0 != jacobian);
+
+ assert(numCorners()*spaceDim() == vertices.size());
+ assert(spaceDim()*cellDim() == jacobian->size());
+
+ const double x0 = vertices[0];
+ const double y0 = vertices[1];
+ const double z0 = vertices[2];
+
+ const double x1 = vertices[3];
+ const double y1 = vertices[4];
+ const double z1 = vertices[5];
+
+ const double x2 = vertices[6];
+ const double y2 = vertices[7];
+ const double z2 = vertices[8];
+
+ (*jacobian)[0] = x1 - x0;
+ (*jacobian)[1] = x2 - x0;
+
+ (*jacobian)[2] = y1 - y0;
+ (*jacobian)[3] = y2 - y0;
+
+ (*jacobian)[4] = z1 - z0;
+ (*jacobian)[5] = z2 - z0;
+} // jacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/libsrc/feassemble/GeometryTri3D.hh (from rev 7088, short/3D/PyLith/trunk/libsrc/topology/GeometryTri3D.hh)
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryTri3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/libsrc/feassemble/GeometryTri3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,80 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+/**
+ * @file pylith/feassemble/GeometryTri3D.hh
+ *
+ * @brief C++ implementation of cell geometry calculations for 2-D
+ * triangular cell.
+ */
+
+#if !defined(pylith_feassemble_geometrytri3d_hh)
+#define pylith_feassemble_geometrytri3d_hh
+
+#include "CellGeometry.hh" // ISA CellGeometry
+
+namespace pylith {
+ namespace feassemble {
+ class GeometryTri3D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeometryTri3D : public CellGeometry
+{ // GeometryTri3D
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Default constructor.
+ GeometryTri3D(void);
+
+ /// Default destructor.
+ ~GeometryTri3D(void);
+
+ /** Create a copy of geometry.
+ *
+ * @returns Copy of geometry.
+ */
+ CellGeometry* clone(void) const;
+
+ /** Get cell geometry for lower dimension cell.
+ *
+ * @returns Pointer to cell geometry object corresponding to next
+ * lower dimension, NULL if there is no lower dimension object.
+ */
+ CellGeometry* geometryLowerDim(void) const;
+
+ /** Compute Jacobian at location in cell.
+ *
+ * @param jacobian Jacobian at location.
+ * @param vertices Coordinates of vertices of cell.
+ * @param location Location in reference cell at which to compute Jacobian.
+ */
+ void jacobian(double_array* jacobian,
+ const double_array& vertices,
+ const double_array& location) const;
+
+// PROTECTED ////////////////////////////////////////////////////////////
+protected :
+
+ /** Copy constructor.
+ *
+ * @param g Geometry to copy.
+ */
+ GeometryTri3D(const GeometryTri3D& g);
+
+}; // GeometryTri3D
+
+#endif // pylith_feassemble_geometrytri3d_hh
+
+
+// End of file
Modified: short/3D/PyLith/trunk/libsrc/feassemble/Makefile.am
===================================================================
--- short/3D/PyLith/trunk/libsrc/feassemble/Makefile.am 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/feassemble/Makefile.am 2007-06-07 23:37:26 UTC (rev 7094)
@@ -14,11 +14,25 @@
include $(top_srcdir)/subpackage.am
subpkginclude_HEADERS = \
+ CellGeometry.hh \
+ CellGeometry.icc \
Constraint.hh \
ElasticityExplicit.hh \
ElasticityImplicit.hh \
Integrator.hh \
Elasticity.hh \
+ GeometryPoint1D.hh \
+ GeometryPoint2D.hh \
+ GeometryPoint3D.hh \
+ GeometryLine1D.hh \
+ GeometryLine2D.hh \
+ GeometryLine3D.hh \
+ GeometryTri2D.hh \
+ GeometryTri3D.hh \
+ GeometryTet3D.hh \
+ GeometryQuad2D.hh \
+ GeometryQuad3D.hh \
+ GeometryHex3D.hh \
Quadrature.hh \
Quadrature.icc \
Quadrature1D.hh \
Modified: short/3D/PyLith/trunk/libsrc/feassemble/Quadrature.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/feassemble/Quadrature.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/feassemble/Quadrature.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -14,6 +14,8 @@
#include "Quadrature.hh" // implementation of class methods
+#include "CellGeometry.hh" // USES CellGeometry
+
#include <string.h> // USES memcpy()
#include <assert.h> // USES assert()
#include <stdexcept> // USES std::runtime_error
@@ -26,7 +28,8 @@
_cellDim(0),
_numBasis(0),
_numQuadPts(0),
- _spaceDim(0)
+ _spaceDim(0),
+ _geometry(0)
{ // constructor
} // constructor
@@ -34,6 +37,7 @@
// Destructor
pylith::feassemble::Quadrature::~Quadrature(void)
{ // destructor
+ delete _geometry; _geometry = 0;
} // destructor
// ----------------------------------------------------------------------
@@ -52,8 +56,11 @@
_cellDim(q._cellDim),
_numBasis(q._numBasis),
_numQuadPts(q._numQuadPts),
- _spaceDim(q._spaceDim)
+ _spaceDim(q._spaceDim),
+ _geometry(0)
{ // copy constructor
+ if (0 != q._geometry)
+ _geometry = q._geometry->clone();
} // copy constructor
// ----------------------------------------------------------------------
@@ -141,6 +148,23 @@
} // initialize
// ----------------------------------------------------------------------
+// Set geometry associated with reference cell.
+void
+pylith::feassemble::Quadrature::refGeometry(CellGeometry* const geometry)
+{ // refGeometry
+ delete _geometry; _geometry = (0 != geometry) ? geometry->clone() : 0;
+} // refGeometry
+
+// ----------------------------------------------------------------------
+// Get geometry associated with reference cell.
+const pylith::feassemble::CellGeometry&
+pylith::feassemble::Quadrature::refGeometry(void) const
+{ // refGeometry
+ assert(0 != _geometry);
+ return *_geometry;
+} // refGeometry
+
+// ----------------------------------------------------------------------
// Set entries in geometry arrays to zero.
void
pylith::feassemble::Quadrature::_resetGeometry(void)
@@ -164,4 +188,5 @@
} // if
} // _checkJacobianDet
+
// End of file
Modified: short/3D/PyLith/trunk/libsrc/feassemble/Quadrature.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/feassemble/Quadrature.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/feassemble/Quadrature.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -37,6 +37,8 @@
namespace pylith {
namespace feassemble {
class Quadrature;
+
+ class CellGeometry; // HOLDSA CellGeometry
} // feassemble
} // pylith
@@ -110,6 +112,18 @@
const int numQuadPts,
const int spaceDim);
+ /** Set geometry associated with reference cell.
+ *
+ * @param geometry Geometry of reference cell.
+ */
+ void refGeometry(CellGeometry* const geometry);
+
+ /** Get geometry associated with reference cell.
+ *
+ * @returns Geometry of reference cell.
+ */
+ const CellGeometry& refGeometry(void) const;
+
/** Set minimum allowable determinant of Jacobian.
*
* @param tolerance Minimum allowable value for Jacobian
@@ -329,6 +343,8 @@
int _numQuadPts; ///< Number of quadrature points
int _spaceDim; ///< Number of dimensions in coordinates of cell vertices
+ CellGeometry* _geometry; ///< Geometry of reference cell
+
}; // Quadrature
#include "Quadrature.icc" // inline methods
Deleted: short/3D/PyLith/trunk/libsrc/topology/CellGeometry.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/CellGeometry.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/CellGeometry.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,34 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "CellGeometry.hh" // implementation of class methods
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::CellGeometry::CellGeometry(const int cellDim,
- const int spaceDim,
- const int numCorners) :
- _cellDim(cellDim),
- _spaceDim(spaceDim),
- _numCorners(numCorners)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::CellGeometry::~CellGeometry(void)
-{ // destructor
-} // destructor
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/CellGeometry.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/CellGeometry.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/CellGeometry.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,101 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/CellGeometry.hh
- *
- * @brief C++ abstract base class for cell geometry calculations.
- */
-
-#if !defined(pylith_topology_cellgeometry_hh)
-#define pylith_topology_cellgeometry_hh
-
-#include "pylith/utils/arrayfwd.hh" // USES double_array
-
-namespace pylith {
- namespace topology {
- class CellGeometry;
- } // topology
-} // pylith
-
-class pylith::topology::CellGeometry
-{ // CellGeometry
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /** Default constructor.
- *
- * @param cellDim Dimension of cell.
- * @param spaceDim Dimension of coordinate space.
- * @param numCorners Number of corners in cell.
- */
- CellGeometry(const int cellDim,
- const int spaceDim,
- const int numCorners);
-
- /// Default destructor.
- virtual
- ~CellGeometry(void);
-
- /** Get dimension of cell.
- *
- * @returns Spatial dimension of cell.
- */
- int cellDim(void) const;
-
- /** Get dimension of coordinate space.
- *
- * @returns Dimension of coordinate space.
- */
- int spaceDim(void) const;
-
- /** Get number of vertices in cell.
- *
- * @returns Number of vertices in cell.
- */
- int numCorners(void) const;
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- virtual
- CellGeometry* geometryLowerDim(void) const = 0;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- virtual
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const = 0;
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private :
-
- int _cellDim; ///< Dimension of cell.
- int _spaceDim; ///< Dimension of coordinate space.
- int _numCorners; ///< Number of corners in cell.
-
-}; // CellGeometry
-
-#include "CellGeometry.icc" // inline methods
-
-#endif // pylith_topology_cellgeometry_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/CellGeometry.icc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/CellGeometry.icc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/CellGeometry.icc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,41 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_topology_cellgeometry_hh)
-#error "CellGeometry.icc must be included only from CellGeometry.hh"
-#else
-
-// Get dimension of cell.
-inline
-int
-pylith::topology::CellGeometry::cellDim(void) const {
- return _cellDim;
-} // cellDim
-
-// Get dimension of coordinate space.
-inline
-int
-pylith::topology::CellGeometry::spaceDim(void) const {
- return _spaceDim;
-} // spaceDim
-
-// Get number of corners in cell.
-inline
-int
-pylith::topology::CellGeometry::numCorners(void) const {
- return _numCorners;
-} // numCorners
-
-
-#endif
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryHex3D.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryHex3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryHex3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,126 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "GeometryHex3D.hh" // implementation of class methods
-
-#include "GeometryQuad3D.hh" // USES GeometryQuad3D
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include <assert.h> // USES assert()
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::GeometryHex3D::GeometryHex3D(void) :
- CellGeometry(3, 3, 8)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::GeometryHex3D::~GeometryHex3D(void)
-{ // destructor
-} // destructor
-
-// ----------------------------------------------------------------------
-// Get cell geometry for lower dimension cell.
-pylith::topology::CellGeometry*
-pylith::topology::GeometryHex3D::geometryLowerDim(void) const
-{ // geometryLowerDim
- return new GeometryQuad3D();
-} // geometryLowerDim
-
-// ----------------------------------------------------------------------
-// Compute Jacobian at location in cell.
-void
-pylith::topology::GeometryHex3D::jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const
-{ // jacobian
- assert(0 != jacobian);
-
- assert(numCorners()*spaceDim() == vertices.size());
- assert(cellDim() == location.size());
- assert(spaceDim()*cellDim() == jacobian->size());
-
- const double x0 = vertices[0];
- const double y0 = vertices[1];
- const double z0 = vertices[2];
-
- const double x1 = vertices[3];
- const double y1 = vertices[4];
- const double z1 = vertices[5];
-
- const double x2 = vertices[6];
- const double y2 = vertices[7];
- const double z2 = vertices[8];
-
- const double x3 = vertices[9];
- const double y3 = vertices[10];
- const double z3 = vertices[11];
-
- const double x4 = vertices[12];
- const double y4 = vertices[13];
- const double z4 = vertices[14];
-
- const double x5 = vertices[15];
- const double y5 = vertices[16];
- const double z5 = vertices[17];
-
- const double x6 = vertices[18];
- const double y6 = vertices[19];
- const double z6 = vertices[20];
-
- const double x7 = vertices[21];
- const double y7 = vertices[22];
- const double z7 = vertices[23];
-
- const double x = location[0];
- const double y = location[1];
- const double z = location[2];
- assert(0 <= x && x <= 1.0);
- assert(0 <= y && y <= 1.0);
- assert(0 <= z && z <= 1.0);
-
- const double f_xy = x2 - x1 - x3 + x0;
- const double g_xy = y2 - y1 - y3 + y0;
- const double h_xy = z2 - z1 - z3 + z0;
-
- const double f_yz = x7 - x3 - x4 + x0;
- const double g_yz = y7 - y3 - y4 + y0;
- const double h_yz = z7 - z3 - z4 + z0;
-
- const double f_xz = x5 - x1 - x4 + x0;
- const double g_xz = y5 - y1 - y4 + y0;
- const double h_xz = z5 - z1 - z4 + z0;
-
- const double f_xyz = x6 - x0 + x1 - x2 + x3 + x4 - x5 - x7;
- const double g_xyz = y6 - y0 + y1 - y2 + y3 + y4 - y5 - y7;
- const double h_xyz = z6 - z0 + z1 - z2 + z3 + z4 - z5 - z7;
-
- (*jacobian)[0] = x1 - x0 + f_xy*y + f_xz*z + f_xyz*y*z;
- (*jacobian)[1] = x3 - x0 + f_xy*x + f_yz*z + f_xyz*x*z;
- (*jacobian)[2] = x4 - x0 + f_yz*y + f_xz*x + f_xyz*x*y;
-
- (*jacobian)[3] = y1 - y0 + g_xy*y + g_xz*z + g_xyz*y*z;
- (*jacobian)[4] = y3 - y0 + g_xy*x + g_yz*z + g_xyz*x*z;
- (*jacobian)[5] = y4 - y0 + g_yz*y + g_xz*x + g_xyz*x*y;
-
- (*jacobian)[6] = z1 - z0 + h_xy*y + h_xz*z + h_xyz*y*z;
- (*jacobian)[7] = z3 - z0 + h_xy*x + h_yz*z + h_xyz*x*z;
- (*jacobian)[8] = z4 - z0 + h_yz*y + h_xz*x + h_xyz*x*y;
-} // jacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryHex3D.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryHex3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryHex3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/GeometryHex3D.hh
- *
- * @brief C++ implementation of cell geometry calculations for 3-D
- * hexahedral cell.
- */
-
-#if !defined(pylith_topology_geometryhex3d_hh)
-#define pylith_topology_geometryhex3d_hh
-
-#include "CellGeometry.hh" // ISA CellGeometry
-
-namespace pylith {
- namespace topology {
- class GeometryHex3D;
- } // topology
-} // pylith
-
-class pylith::topology::GeometryHex3D : public CellGeometry
-{ // GeometryHex3D
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Default constructor.
- GeometryHex3D(void);
-
- /// Default destructor.
- ~GeometryHex3D(void);
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- CellGeometry* geometryLowerDim(void) const;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const;
-
-}; // GeometryHex3D
-
-#endif // pylith_topology_geometryhex3d_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryLine1D.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryLine1D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryLine1D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,63 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "GeometryLine1D.hh" // implementation of class methods
-
-#include "GeometryPoint1D.hh" // USES GeometryPoint
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include <assert.h> // USES assert()
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::GeometryLine1D::GeometryLine1D(void) :
- CellGeometry(1, 1, 2)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::GeometryLine1D::~GeometryLine1D(void)
-{ // destructor
-} // destructor
-
-// ----------------------------------------------------------------------
-// Get cell geometry for lower dimension cell.
-pylith::topology::CellGeometry*
-pylith::topology::GeometryLine1D::geometryLowerDim(void) const
-{ // geometryLowerDim
- return new GeometryPoint1D();
-} // geometryLowerDim
-
-// ----------------------------------------------------------------------
-// Compute Jacobian at location in cell.
-void
-pylith::topology::GeometryLine1D::jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const
-{ // jacobian
- assert(0 != jacobian);
-
- assert(numCorners()*spaceDim() == vertices.size());
- assert(spaceDim()*cellDim() == jacobian->size());
-
- const double x0 = vertices[0];
- const double x1 = vertices[1];
-
- (*jacobian)[0] = x1 - x0;
-} // jacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryLine1D.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryLine1D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryLine1D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/GeometryLine1D.hh
- *
- * @brief C++ implementation of cell geometry calculations for 1-D
- * line cell.
- */
-
-#if !defined(pylith_topology_geometryline1d_hh)
-#define pylith_topology_geometryline1d_hh
-
-#include "CellGeometry.hh" // ISA CellGeometry
-
-namespace pylith {
- namespace topology {
- class GeometryLine1D;
- } // topology
-} // pylith
-
-class pylith::topology::GeometryLine1D : public CellGeometry
-{ // GeometryLine1D
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Default constructor.
- GeometryLine1D(void);
-
- /// Default destructor.
- ~GeometryLine1D(void);
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- CellGeometry* geometryLowerDim(void) const;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const;
-
-}; // GeometryLine1D
-
-#endif // pylith_topology_geometryline1d_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryLine2D.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryLine2D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryLine2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,67 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "GeometryLine2D.hh" // implementation of class methods
-
-#include "GeometryPoint2D.hh" // USES GeometryPoint
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include <assert.h> // USES assert()
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::GeometryLine2D::GeometryLine2D(void) :
- CellGeometry(1, 2, 2)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::GeometryLine2D::~GeometryLine2D(void)
-{ // destructor
-} // destructor
-
-// ----------------------------------------------------------------------
-// Get cell geometry for lower dimension cell.
-pylith::topology::CellGeometry*
-pylith::topology::GeometryLine2D::geometryLowerDim(void) const
-{ // geometryLowerDim
- return new GeometryPoint2D();
-} // geometryLowerDim
-
-// ----------------------------------------------------------------------
-// Compute Jacobian at location in cell.
-void
-pylith::topology::GeometryLine2D::jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const
-{ // jacobian
- assert(0 != jacobian);
-
- assert(numCorners()*spaceDim() == vertices.size());
- assert(spaceDim()*cellDim() == jacobian->size());
-
- const double x0 = vertices[0];
- const double y0 = vertices[1];
-
- const double x1 = vertices[2];
- const double y1 = vertices[3];
-
- (*jacobian)[0] = x1 - x0;
- (*jacobian)[1] = y1 - y0;
-} // jacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryLine2D.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryLine2D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryLine2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/GeometryLine2D.hh
- *
- * @brief C++ implementation of cell geometry calculations for 1-D
- * line cell in 2-D space.
- */
-
-#if !defined(pylith_topology_geometryline2d_hh)
-#define pylith_topology_geometryline2d_hh
-
-#include "CellGeometry.hh" // ISA CellGeometry
-
-namespace pylith {
- namespace topology {
- class GeometryLine2D;
- } // topology
-} // pylith
-
-class pylith::topology::GeometryLine2D : public CellGeometry
-{ // GeometryLine2D
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Default constructor.
- GeometryLine2D(void);
-
- /// Default destructor.
- ~GeometryLine2D(void);
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- CellGeometry* geometryLowerDim(void) const;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const;
-
-}; // GeometryLine2D
-
-#endif // pylith_topology_geometryline2d_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryLine3D.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryLine3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryLine3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,70 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "GeometryLine3D.hh" // implementation of class methods
-
-#include "GeometryPoint3D.hh" // USES GeometryPoint3D
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include <assert.h> // USES assert()
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::GeometryLine3D::GeometryLine3D(void) :
- CellGeometry(1, 3, 2)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::GeometryLine3D::~GeometryLine3D(void)
-{ // destructor
-} // destructor
-
-// ----------------------------------------------------------------------
-// Get cell geometry for lower dimension cell.
-pylith::topology::CellGeometry*
-pylith::topology::GeometryLine3D::geometryLowerDim(void) const
-{ // geometryLowerDim
- return new GeometryPoint3D();
-} // geometryLowerDim
-
-// ----------------------------------------------------------------------
-// Compute Jacobian at location in cell.
-void
-pylith::topology::GeometryLine3D::jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const
-{ // jacobian
- assert(0 != jacobian);
-
- assert(numCorners()*spaceDim() == vertices.size());
- assert(spaceDim()*cellDim() == jacobian->size());
-
- const double x0 = vertices[0];
- const double y0 = vertices[1];
- const double z0 = vertices[2];
-
- const double x1 = vertices[3];
- const double y1 = vertices[4];
- const double z1 = vertices[5];
-
- (*jacobian)[0] = x1 - x0;
- (*jacobian)[1] = y1 - y0;
- (*jacobian)[2] = z1 - z0;
-} // jacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryLine3D.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryLine3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryLine3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/GeometryLine3D.hh
- *
- * @brief C++ implementation of cell geometry calculations for 1-D
- * line cell.
- */
-
-#if !defined(pylith_topology_geometryline3d_hh)
-#define pylith_topology_geometryline3d_hh
-
-#include "CellGeometry.hh" // ISA CellGeometry
-
-namespace pylith {
- namespace topology {
- class GeometryLine3D;
- } // topology
-} // pylith
-
-class pylith::topology::GeometryLine3D : public CellGeometry
-{ // GeometryLine3D
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Default constructor.
- GeometryLine3D(void);
-
- /// Default destructor.
- ~GeometryLine3D(void);
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- CellGeometry* geometryLowerDim(void) const;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const;
-
-}; // GeometryLine3D
-
-#endif // pylith_topology_geometryline3d_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryPoint1D.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryPoint1D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryPoint1D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,57 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "GeometryPoint1D.hh" // implementation of class methods
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include <assert.h> // USES assert()
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::GeometryPoint1D::GeometryPoint1D(void) :
- CellGeometry(0, 1, 1)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::GeometryPoint1D::~GeometryPoint1D(void)
-{ // destructor
-} // destructor
-
-// ----------------------------------------------------------------------
-// Get cell geometry for lower dimension cell.
-pylith::topology::CellGeometry*
-pylith::topology::GeometryPoint1D::geometryLowerDim(void) const
-{ // geometryLowerDim
- return 0;
-} // geometryLowerDim
-
-// ----------------------------------------------------------------------
-// Compute Jacobian at location in cell.
-void
-pylith::topology::GeometryPoint1D::jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const
-{ // jacobian
- assert(0 != jacobian);
-
- assert(1 == jacobian->size());
-
- (*jacobian)[0] = 1.0;
-} // jacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryPoint1D.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryPoint1D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryPoint1D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/GeometryPoint1D.hh
- *
- * @brief C++ implementation of cell geometry calculations for 0-D
- * point cell.
- */
-
-#if !defined(pylith_topology_geometrypoint1d_hh)
-#define pylith_topology_geometrypoint1d_hh
-
-#include "CellGeometry.hh" // ISA CellGeometry
-
-namespace pylith {
- namespace topology {
- class GeometryPoint1D;
- } // topology
-} // pylith
-
-class pylith::topology::GeometryPoint1D : public CellGeometry
-{ // GeometryPoint1D
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Default constructor.
- GeometryPoint1D(void);
-
- /// Default destructor.
- ~GeometryPoint1D(void);
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- CellGeometry* geometryLowerDim(void) const;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const;
-
-}; // GeometryPoint1D
-
-#endif // pylith_topology_geometrypoint1d_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryPoint2D.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryPoint2D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryPoint2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,57 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "GeometryPoint2D.hh" // implementation of class methods
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include <assert.h> // USES assert()
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::GeometryPoint2D::GeometryPoint2D(void) :
- CellGeometry(0, 2, 1)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::GeometryPoint2D::~GeometryPoint2D(void)
-{ // destructor
-} // destructor
-
-// ----------------------------------------------------------------------
-// Get cell geometry for lower dimension cell.
-pylith::topology::CellGeometry*
-pylith::topology::GeometryPoint2D::geometryLowerDim(void) const
-{ // geometryLowerDim
- return 0;
-} // geometryLowerDim
-
-// ----------------------------------------------------------------------
-// Compute Jacobian at location in cell.
-void
-pylith::topology::GeometryPoint2D::jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const
-{ // jacobian
- assert(0 != jacobian);
-
- assert(1 == jacobian->size());
-
- (*jacobian)[0] = 1.0;
-} // jacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryPoint2D.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryPoint2D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryPoint2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/GeometryPoint2D.hh
- *
- * @brief C++ implementation of cell geometry calculations for 0-D
- * point cell.
- */
-
-#if !defined(pylith_topology_geometrypoint2d_hh)
-#define pylith_topology_geometrypoint2d_hh
-
-#include "CellGeometry.hh" // ISA CellGeometry
-
-namespace pylith {
- namespace topology {
- class GeometryPoint2D;
- } // topology
-} // pylith
-
-class pylith::topology::GeometryPoint2D : public CellGeometry
-{ // GeometryPoint2D
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Default constructor.
- GeometryPoint2D(void);
-
- /// Default destructor.
- ~GeometryPoint2D(void);
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- CellGeometry* geometryLowerDim(void) const;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const;
-
-}; // GeometryPoint2D
-
-#endif // pylith_topology_geometrypoint2d_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryPoint3D.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryPoint3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryPoint3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,57 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "GeometryPoint3D.hh" // implementation of class methods
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include <assert.h> // USES assert()
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::GeometryPoint3D::GeometryPoint3D(void) :
- CellGeometry(0, 3, 1)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::GeometryPoint3D::~GeometryPoint3D(void)
-{ // destructor
-} // destructor
-
-// ----------------------------------------------------------------------
-// Get cell geometry for lower dimension cell.
-pylith::topology::CellGeometry*
-pylith::topology::GeometryPoint3D::geometryLowerDim(void) const
-{ // geometryLowerDim
- return 0;
-} // geometryLowerDim
-
-// ----------------------------------------------------------------------
-// Compute Jacobian at location in cell.
-void
-pylith::topology::GeometryPoint3D::jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const
-{ // jacobian
- assert(0 != jacobian);
-
- assert(1 == jacobian->size());
-
- (*jacobian)[0] = 1.0;
-} // jacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryPoint3D.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryPoint3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryPoint3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/GeometryPoint3D.hh
- *
- * @brief C++ implementation of cell geometry calculations for 0-D
- * point cell.
- */
-
-#if !defined(pylith_topology_geometrypoint3d_hh)
-#define pylith_topology_geometrypoint3d_hh
-
-#include "CellGeometry.hh" // ISA CellGeometry
-
-namespace pylith {
- namespace topology {
- class GeometryPoint3D;
- } // topology
-} // pylith
-
-class pylith::topology::GeometryPoint3D : public CellGeometry
-{ // GeometryPoint3D
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Default constructor.
- GeometryPoint3D(void);
-
- /// Default destructor.
- ~GeometryPoint3D(void);
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- CellGeometry* geometryLowerDim(void) const;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const;
-
-}; // GeometryPoint3D
-
-#endif // pylith_topology_geometrypoint3d_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryQuad2D.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryQuad2D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryQuad2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,84 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "GeometryQuad2D.hh" // implementation of class methods
-
-#include "GeometryLine2D.hh" // USES GeometryLine2D
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include <assert.h> // USES assert()
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::GeometryQuad2D::GeometryQuad2D(void) :
- CellGeometry(2, 2, 4)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::GeometryQuad2D::~GeometryQuad2D(void)
-{ // destructor
-} // destructor
-
-// ----------------------------------------------------------------------
-// Get cell geometry for lower dimension cell.
-pylith::topology::CellGeometry*
-pylith::topology::GeometryQuad2D::geometryLowerDim(void) const
-{ // geometryLowerDim
- return new GeometryLine2D();
-} // geometryLowerDim
-
-// ----------------------------------------------------------------------
-// Compute Jacobian at location in cell.
-void
-pylith::topology::GeometryQuad2D::jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const
-{ // jacobian
- assert(0 != jacobian);
-
- assert(numCorners()*spaceDim() == vertices.size());
- assert(cellDim() == location.size());
- assert(spaceDim()*cellDim() == jacobian->size());
-
- const double x0 = vertices[0];
- const double y0 = vertices[1];
-
- const double x1 = vertices[2];
- const double y1 = vertices[3];
-
- const double x2 = vertices[4];
- const double y2 = vertices[5];
-
- const double x3 = vertices[6];
- const double y3 = vertices[7];
-
- const double x = location[0];
- const double y = location[1];
- assert(0 <= x && x <= 1.0);
- assert(0 <= y && y <= 1.0);
-
- const double f_xy = x2 - x1 - x3 + x0;
- const double g_xy = y2 - y1 - y3 + y0;
-
- (*jacobian)[0] = x1 - x0 + f_xy*y;
- (*jacobian)[1] = x3 - x0 + f_xy*x;
- (*jacobian)[2] = y1 - y0 + g_xy*y;
- (*jacobian)[3] = y3 - y0 + g_xy*x;
-} // jacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryQuad2D.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryQuad2D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryQuad2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/GeometryQuad2D.hh
- *
- * @brief C++ implementation of cell geometry calculations for 2-D
- * quadrilateral cell.
- */
-
-#if !defined(pylith_topology_geometryquad2d_hh)
-#define pylith_topology_geometryquad2d_hh
-
-#include "CellGeometry.hh" // ISA CellGeometry
-
-namespace pylith {
- namespace topology {
- class GeometryQuad2D;
- } // topology
-} // pylith
-
-class pylith::topology::GeometryQuad2D : public CellGeometry
-{ // GeometryQuad2D
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Default constructor.
- GeometryQuad2D(void);
-
- /// Default destructor.
- ~GeometryQuad2D(void);
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- CellGeometry* geometryLowerDim(void) const;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const;
-
-}; // GeometryQuad2D
-
-#endif // pylith_topology_geometryquad2d_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryQuad3D.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryQuad3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryQuad3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,93 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "GeometryQuad3D.hh" // implementation of class methods
-
-#include "GeometryLine3D.hh" // USES GeometryLine3D
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include <assert.h> // USES assert()
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::GeometryQuad3D::GeometryQuad3D(void) :
- CellGeometry(2, 3, 4)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::GeometryQuad3D::~GeometryQuad3D(void)
-{ // destructor
-} // destructor
-
-// ----------------------------------------------------------------------
-// Get cell geometry for lower dimension cell.
-pylith::topology::CellGeometry*
-pylith::topology::GeometryQuad3D::geometryLowerDim(void) const
-{ // geometryLowerDim
- return new GeometryLine3D();
-} // geometryLowerDim
-
-// ----------------------------------------------------------------------
-// Compute Jacobian at location in cell.
-void
-pylith::topology::GeometryQuad3D::jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const
-{ // jacobian
- assert(0 != jacobian);
-
- assert(numCorners()*spaceDim() == vertices.size());
- assert(cellDim() == location.size());
- assert(spaceDim()*cellDim() == jacobian->size());
-
- const double x0 = vertices[0];
- const double y0 = vertices[1];
- const double z0 = vertices[2];
-
- const double x1 = vertices[3];
- const double y1 = vertices[4];
- const double z1 = vertices[5];
-
- const double x2 = vertices[6];
- const double y2 = vertices[7];
- const double z2 = vertices[8];
-
- const double x3 = vertices[9];
- const double y3 = vertices[10];
- const double z3 = vertices[11];
-
- const double x = location[0];
- const double y = location[1];
- assert(0 <= x && x <= 1.0);
- assert(0 <= y && y <= 1.0);
-
- const double f_xy = x2 - x1 - x3 + x0;
- const double g_xy = y2 - y1 - y3 + y0;
- const double h_xy = z2 - z1 - z3 + z0;
-
- (*jacobian)[0] = x1 - x0 + f_xy*y;
- (*jacobian)[1] = x3 - x0 + f_xy*x;
-
- (*jacobian)[2] = y1 - y0 + g_xy*y;
- (*jacobian)[3] = y3 - y0 + g_xy*x;
-
- (*jacobian)[4] = z1 - z0 + h_xy*y;
- (*jacobian)[5] = z3 - z0 + h_xy*x;
-} // jacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryQuad3D.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryQuad3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryQuad3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/GeometryQuad3D.hh
- *
- * @brief C++ implementation of cell geometry calculations for 2-D
- * quadrilateral cell in 3-D.
- */
-
-#if !defined(pylith_topology_geometryquad3d_hh)
-#define pylith_topology_geometryquad3d_hh
-
-#include "CellGeometry.hh" // ISA CellGeometry
-
-namespace pylith {
- namespace topology {
- class GeometryQuad3D;
- } // topology
-} // pylith
-
-class pylith::topology::GeometryQuad3D : public CellGeometry
-{ // GeometryQuad3D
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Default constructor.
- GeometryQuad3D(void);
-
- /// Default destructor.
- ~GeometryQuad3D(void);
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- CellGeometry* geometryLowerDim(void) const;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const;
-
-}; // GeometryQuad3D
-
-#endif // pylith_topology_geometryquad3d_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryTet3D.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryTet3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryTet3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,84 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "GeometryTet3D.hh" // implementation of class methods
-
-#include "GeometryTri3D.hh" // USES GeometryTri3D
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include <assert.h> // USES assert()
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::GeometryTet3D::GeometryTet3D(void) :
- CellGeometry(3, 3, 4)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::GeometryTet3D::~GeometryTet3D(void)
-{ // destructor
-} // destructor
-
-// ----------------------------------------------------------------------
-// Get cell geometry for lower dimension cell.
-pylith::topology::CellGeometry*
-pylith::topology::GeometryTet3D::geometryLowerDim(void) const
-{ // geometryLowerDim
- return new GeometryTri3D();
-} // geometryLowerDim
-
-// ----------------------------------------------------------------------
-// Compute Jacobian at location in cell.
-void
-pylith::topology::GeometryTet3D::jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const
-{ // jacobian
- assert(0 != jacobian);
-
- assert(numCorners()*spaceDim() == vertices.size());
- assert(spaceDim()*cellDim() == jacobian->size());
-
- const double x0 = vertices[0];
- const double y0 = vertices[1];
- const double z0 = vertices[2];
-
- const double x1 = vertices[3];
- const double y1 = vertices[4];
- const double z1 = vertices[5];
-
- const double x2 = vertices[6];
- const double y2 = vertices[7];
- const double z2 = vertices[8];
-
- const double x3 = vertices[9];
- const double y3 = vertices[10];
- const double z3 = vertices[11];
-
- (*jacobian)[0] = x1 - x0;
- (*jacobian)[1] = x2 - x0;
- (*jacobian)[2] = x3 - x0;
- (*jacobian)[3] = y1 - y0;
- (*jacobian)[4] = y2 - y0;
- (*jacobian)[5] = y3 - y0;
- (*jacobian)[6] = z1 - z0;
- (*jacobian)[7] = z2 - z0;
- (*jacobian)[8] = z3 - z0;
-} // jacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryTet3D.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryTet3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryTet3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/GeometryTet3D.hh
- *
- * @brief C++ implementation of cell geometry calculations for 3-D
- * tetrahedral cell.
- */
-
-#if !defined(pylith_topology_geometrytet3d_hh)
-#define pylith_topology_geometrytet3d_hh
-
-#include "CellGeometry.hh" // ISA CellGeometry
-
-namespace pylith {
- namespace topology {
- class GeometryTet3D;
- } // topology
-} // pylith
-
-class pylith::topology::GeometryTet3D : public CellGeometry
-{ // GeometryTet3D
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Default constructor.
- GeometryTet3D(void);
-
- /// Default destructor.
- ~GeometryTet3D(void);
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- CellGeometry* geometryLowerDim(void) const;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const;
-
-}; // GeometryTet3D
-
-#endif // pylith_topology_geometrytet3d_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryTri2D.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryTri2D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryTri2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,72 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "GeometryTri2D.hh" // implementation of class methods
-
-#include "GeometryLine2D.hh" // USES GeometryLine2D
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include <assert.h> // USES assert()
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::GeometryTri2D::GeometryTri2D(void) :
- CellGeometry(2, 2, 3)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::GeometryTri2D::~GeometryTri2D(void)
-{ // destructor
-} // destructor
-
-// ----------------------------------------------------------------------
-// Get cell geometry for lower dimension cell.
-pylith::topology::CellGeometry*
-pylith::topology::GeometryTri2D::geometryLowerDim(void) const
-{ // geometryLowerDim
- return new GeometryLine2D();
-} // geometryLowerDim
-
-// ----------------------------------------------------------------------
-// Compute Jacobian at location in cell.
-void
-pylith::topology::GeometryTri2D::jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const
-{ // jacobian
- assert(0 != jacobian);
-
- assert(numCorners()*spaceDim() == vertices.size());
- assert(spaceDim()*cellDim() == jacobian->size());
-
- const double x0 = vertices[0];
- const double y0 = vertices[1];
-
- const double x1 = vertices[2];
- const double y1 = vertices[3];
-
- const double x2 = vertices[4];
- const double y2 = vertices[5];
-
- (*jacobian)[0] = x1 - x0;
- (*jacobian)[1] = x2 - x0;
- (*jacobian)[2] = y1 - y0;
- (*jacobian)[3] = y2 - y0;
-} // jacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryTri2D.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryTri2D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryTri2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/GeometryTri2D.hh
- *
- * @brief C++ implementation of cell geometry calculations for 2-D
- * triangular cell.
- */
-
-#if !defined(pylith_topology_geometrytri2d_hh)
-#define pylith_topology_geometrytri2d_hh
-
-#include "CellGeometry.hh" // ISA CellGeometry
-
-namespace pylith {
- namespace topology {
- class GeometryTri2D;
- } // topology
-} // pylith
-
-class pylith::topology::GeometryTri2D : public CellGeometry
-{ // GeometryTri2D
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Default constructor.
- GeometryTri2D(void);
-
- /// Default destructor.
- ~GeometryTri2D(void);
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- CellGeometry* geometryLowerDim(void) const;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const;
-
-}; // GeometryTri2D
-
-#endif // pylith_topology_geometrytri2d_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryTri3D.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryTri3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryTri3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,79 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include <portinfo>
-
-#include "GeometryTri3D.hh" // implementation of class methods
-
-#include "GeometryLine3D.hh" // USES GeometryLine3D
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include <assert.h> // USES assert()
-
-// ----------------------------------------------------------------------
-// Default constructor.
-pylith::topology::GeometryTri3D::GeometryTri3D(void) :
- CellGeometry(2, 3, 3)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Default destructor.
-pylith::topology::GeometryTri3D::~GeometryTri3D(void)
-{ // destructor
-} // destructor
-
-// ----------------------------------------------------------------------
-// Get cell geometry for lower dimension cell.
-pylith::topology::CellGeometry*
-pylith::topology::GeometryTri3D::geometryLowerDim(void) const
-{ // geometryLowerDim
- return new GeometryLine3D();
-} // geometryLowerDim
-
-// ----------------------------------------------------------------------
-// Compute Jacobian at location in cell.
-void
-pylith::topology::GeometryTri3D::jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const
-{ // jacobian
- assert(0 != jacobian);
-
- assert(numCorners()*spaceDim() == vertices.size());
- assert(spaceDim()*cellDim() == jacobian->size());
-
- const double x0 = vertices[0];
- const double y0 = vertices[1];
- const double z0 = vertices[2];
-
- const double x1 = vertices[3];
- const double y1 = vertices[4];
- const double z1 = vertices[5];
-
- const double x2 = vertices[6];
- const double y2 = vertices[7];
- const double z2 = vertices[8];
-
- (*jacobian)[0] = x1 - x0;
- (*jacobian)[1] = x2 - x0;
-
- (*jacobian)[2] = y1 - y0;
- (*jacobian)[3] = y2 - y0;
-
- (*jacobian)[4] = z1 - z0;
- (*jacobian)[5] = z2 - z0;
-} // jacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/libsrc/topology/GeometryTri3D.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/GeometryTri3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/GeometryTri3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,65 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-/**
- * @file pylith/topology/GeometryTri3D.hh
- *
- * @brief C++ implementation of cell geometry calculations for 2-D
- * triangular cell.
- */
-
-#if !defined(pylith_topology_geometrytri3d_hh)
-#define pylith_topology_geometrytri3d_hh
-
-#include "CellGeometry.hh" // ISA CellGeometry
-
-namespace pylith {
- namespace topology {
- class GeometryTri3D;
- } // topology
-} // pylith
-
-class pylith::topology::GeometryTri3D : public CellGeometry
-{ // GeometryTri3D
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Default constructor.
- GeometryTri3D(void);
-
- /// Default destructor.
- ~GeometryTri3D(void);
-
- /** Get cell geometry for lower dimension cell.
- *
- * @returns Pointer to cell geometry object corresponding to next
- * lower dimension, NULL if there is no lower dimension object.
- */
- CellGeometry* geometryLowerDim(void) const;
-
- /** Compute Jacobian at location in cell.
- *
- * @param jacobian Jacobian at location.
- * @param vertices Coordinates of vertices of cell.
- * @param location Location in reference cell at which to compute Jacobian.
- */
- void jacobian(double_array* jacobian,
- const double_array& vertices,
- const double_array& location) const;
-
-}; // GeometryTri3D
-
-#endif // pylith_topology_geometrytri3d_hh
-
-
-// End of file
Modified: short/3D/PyLith/trunk/libsrc/topology/Makefile.am
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/Makefile.am 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/libsrc/topology/Makefile.am 2007-06-07 23:37:26 UTC (rev 7094)
@@ -14,21 +14,7 @@
include $(top_srcdir)/subpackage.am
subpkginclude_HEADERS = \
- CellGeometry.hh \
- CellGeometry.icc \
- FieldsManager.hh \
- GeometryPoint1D.hh \
- GeometryPoint2D.hh \
- GeometryPoint3D.hh \
- GeometryLine1D.hh \
- GeometryLine2D.hh \
- GeometryLine3D.hh \
- GeometryTri2D.hh \
- GeometryTri3D.hh \
- GeometryTet3D.hh \
- GeometryQuad2D.hh \
- GeometryQuad3D.hh \
- GeometryHex3D.hh
+ FieldsManager.hh
noinst_HEADERS =
Modified: short/3D/PyLith/trunk/modulesrc/feassemble/feassemble.pyxe.src
===================================================================
--- short/3D/PyLith/trunk/modulesrc/feassemble/feassemble.pyxe.src 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/modulesrc/feassemble/feassemble.pyxe.src 2007-06-07 23:37:26 UTC (rev 7094)
@@ -11,6 +11,20 @@
#
#header{
+#include "pylith/feassemble/CellGeometry.hh"
+#include "pylith/feassemble/GeometryPoint1D.hh"
+#include "pylith/feassemble/GeometryPoint2D.hh"
+#include "pylith/feassemble/GeometryPoint3D.hh"
+#include "pylith/feassemble/GeometryLine1D.hh"
+#include "pylith/feassemble/GeometryLine2D.hh"
+#include "pylith/feassemble/GeometryLine3D.hh"
+#include "pylith/feassemble/GeometryTri2D.hh"
+#include "pylith/feassemble/GeometryTri3D.hh"
+#include "pylith/feassemble/GeometryQuad2D.hh"
+#include "pylith/feassemble/GeometryQuad3D.hh"
+#include "pylith/feassemble/GeometryTet3D.hh"
+#include "pylith/feassemble/GeometryHex3D.hh"
+
#include "pylith/feassemble/Quadrature.hh"
#include "pylith/feassemble/Quadrature1D.hh"
#include "pylith/feassemble/Quadrature1Din2D.hh"
@@ -46,6 +60,19 @@
void* malloc(size_t size)
void free(void* mem)
+cdef void CellGeometry_destructor(void* obj):
+ """
+ Destroy CellGeometry object.
+ """
+ # create shim for destructor
+ #embed{ void CellGeometry_destructor_cpp(void* objVptr)
+ pylith::feassemble::CellGeometry* pQ =
+ (pylith::feassemble::CellGeometry*) objVptr;
+ delete pQ;
+ #}embed
+ CellGeometry_destructor_cpp(obj)
+ return
+
cdef void Quadrature_destructor(void* obj):
"""
Destroy Quadrature object.
@@ -88,6 +115,352 @@
# ----------------------------------------------------------------------
+cdef class CellGeometry:
+
+ cdef void* thisptr # Pointer to C++ object
+ cdef readonly object handle # PyCObject holding pointer to C++ object
+ cdef readonly object name # Identifier for object base type
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ self.handle = None
+ self.thisptr = NULL
+ self.name = "pylith_feassemble_CellGeometry"
+ return
+
+
+ def _createHandle(self):
+ """Wrap pointer to C++ object in PyCObject."""
+ return PyCObject_FromVoidPtr(self.thisptr, CellGeometry_destructor)
+
+
+# ----------------------------------------------------------------------
+cdef class GeometryPoint1D(CellGeometry):
+
+ def __init__(self):
+ """Constructor."""
+ # create shim for constructor
+ #embed{ void* GeometryPoint1D_constructor()
+ void* result = 0;
+ try {
+ result = (void*)(new pylith::feassemble::GeometryPoint1D);
+ assert(0 != result);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ return result;
+ #}embed
+
+ CellGeometry.__init__(self)
+ self.thisptr = GeometryPoint1D_constructor()
+ self.handle = self._createHandle()
+ return
+
+
+# ----------------------------------------------------------------------
+cdef class GeometryPoint2D(CellGeometry):
+
+ def __init__(self):
+ """Constructor."""
+ # create shim for constructor
+ #embed{ void* GeometryPoint2D_constructor()
+ void* result = 0;
+ try {
+ result = (void*)(new pylith::feassemble::GeometryPoint2D);
+ assert(0 != result);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ return result;
+ #}embed
+
+ CellGeometry.__init__(self)
+ self.thisptr = GeometryPoint2D_constructor()
+ self.handle = self._createHandle()
+ return
+
+
+# ----------------------------------------------------------------------
+cdef class GeometryPoint3D(CellGeometry):
+
+ def __init__(self):
+ """Constructor."""
+ # create shim for constructor
+ #embed{ void* GeometryPoint3D_constructor()
+ void* result = 0;
+ try {
+ result = (void*)(new pylith::feassemble::GeometryPoint3D);
+ assert(0 != result);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ return result;
+ #}embed
+
+ CellGeometry.__init__(self)
+ self.thisptr = GeometryPoint3D_constructor()
+ self.handle = self._createHandle()
+ return
+
+
+# ----------------------------------------------------------------------
+cdef class GeometryLine1D(CellGeometry):
+
+ def __init__(self):
+ """Constructor."""
+ # create shim for constructor
+ #embed{ void* GeometryLine1D_constructor()
+ void* result = 0;
+ try {
+ result = (void*)(new pylith::feassemble::GeometryLine1D);
+ assert(0 != result);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ return result;
+ #}embed
+
+ CellGeometry.__init__(self)
+ self.thisptr = GeometryLine1D_constructor()
+ self.handle = self._createHandle()
+ return
+
+
+# ----------------------------------------------------------------------
+cdef class GeometryLine2D(CellGeometry):
+
+ def __init__(self):
+ """Constructor."""
+ # create shim for constructor
+ #embed{ void* GeometryLine2D_constructor()
+ void* result = 0;
+ try {
+ result = (void*)(new pylith::feassemble::GeometryLine2D);
+ assert(0 != result);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ return result;
+ #}embed
+
+ CellGeometry.__init__(self)
+ self.thisptr = GeometryLine2D_constructor()
+ self.handle = self._createHandle()
+ return
+
+
+# ----------------------------------------------------------------------
+cdef class GeometryLine3D(CellGeometry):
+
+ def __init__(self):
+ """Constructor."""
+ # create shim for constructor
+ #embed{ void* GeometryLine3D_constructor()
+ void* result = 0;
+ try {
+ result = (void*)(new pylith::feassemble::GeometryLine3D);
+ assert(0 != result);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ return result;
+ #}embed
+
+ CellGeometry.__init__(self)
+ self.thisptr = GeometryLine3D_constructor()
+ self.handle = self._createHandle()
+ return
+
+
+# ----------------------------------------------------------------------
+cdef class GeometryTri2D(CellGeometry):
+
+ def __init__(self):
+ """Constructor."""
+ # create shim for constructor
+ #embed{ void* GeometryTri2D_constructor()
+ void* result = 0;
+ try {
+ result = (void*)(new pylith::feassemble::GeometryTri2D);
+ assert(0 != result);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ return result;
+ #}embed
+
+ CellGeometry.__init__(self)
+ self.thisptr = GeometryTri2D_constructor()
+ self.handle = self._createHandle()
+ return
+
+
+# ----------------------------------------------------------------------
+cdef class GeometryTri3D(CellGeometry):
+
+ def __init__(self):
+ """Constructor."""
+ # create shim for constructor
+ #embed{ void* GeometryTri3D_constructor()
+ void* result = 0;
+ try {
+ result = (void*)(new pylith::feassemble::GeometryTri3D);
+ assert(0 != result);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ return result;
+ #}embed
+
+ CellGeometry.__init__(self)
+ self.thisptr = GeometryTri3D_constructor()
+ self.handle = self._createHandle()
+ return
+
+
+# ----------------------------------------------------------------------
+cdef class GeometryQuad2D(CellGeometry):
+
+ def __init__(self):
+ """Constructor."""
+ # create shim for constructor
+ #embed{ void* GeometryQuad2D_constructor()
+ void* result = 0;
+ try {
+ result = (void*)(new pylith::feassemble::GeometryQuad2D);
+ assert(0 != result);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ return result;
+ #}embed
+
+ CellGeometry.__init__(self)
+ self.thisptr = GeometryQuad2D_constructor()
+ self.handle = self._createHandle()
+ return
+
+
+# ----------------------------------------------------------------------
+cdef class GeometryQuad3D(CellGeometry):
+
+ def __init__(self):
+ """Constructor."""
+ # create shim for constructor
+ #embed{ void* GeometryQuad3D_constructor()
+ void* result = 0;
+ try {
+ result = (void*)(new pylith::feassemble::GeometryQuad3D);
+ assert(0 != result);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ return result;
+ #}embed
+
+ CellGeometry.__init__(self)
+ self.thisptr = GeometryQuad3D_constructor()
+ self.handle = self._createHandle()
+ return
+
+
+# ----------------------------------------------------------------------
+cdef class GeometryTet3D(CellGeometry):
+
+ def __init__(self):
+ """Constructor."""
+ # create shim for constructor
+ #embed{ void* GeometryTet3D_constructor()
+ void* result = 0;
+ try {
+ result = (void*)(new pylith::feassemble::GeometryTet3D);
+ assert(0 != result);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ return result;
+ #}embed
+
+ CellGeometry.__init__(self)
+ self.thisptr = GeometryTet3D_constructor()
+ self.handle = self._createHandle()
+ return
+
+
+# ----------------------------------------------------------------------
+cdef class GeometryHex3D(CellGeometry):
+
+ def __init__(self):
+ """Constructor."""
+ # create shim for constructor
+ #embed{ void* GeometryHex3D_constructor()
+ void* result = 0;
+ try {
+ result = (void*)(new pylith::feassemble::GeometryHex3D);
+ assert(0 != result);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ return result;
+ #}embed
+
+ CellGeometry.__init__(self)
+ self.thisptr = GeometryHex3D_constructor()
+ self.handle = self._createHandle()
+ return
+
+
+# ----------------------------------------------------------------------
cdef class Quadrature:
cdef void* thisptr # Pointer to C++ object
@@ -266,6 +639,34 @@
return Quadrature_minJacobian_get(self.thisptr)
+ property refGeometry:
+ def __set__(self, value):
+ """
+ Set geometry associated with reference cell.
+ """
+ # create shim for method 'refGeometry'
+ #embed{ void Quadrature_refGeometry_set(void* objVptr, void* geomVptr)
+ try {
+ assert(0 != objVptr);
+ assert(0 != geomVptr);
+ pylith::feassemble::CellGeometry* geom =
+ (pylith::feassemble::CellGeometry*) geomVptr;
+ ((pylith::feassemble::Quadrature*) objVptr)->refGeometry(geom);
+ } catch (const std::exception& err) {
+ PyErr_SetString(PyExc_RuntimeError,
+ const_cast<char*>(err.what()));
+ } catch (...) {
+ PyErr_SetString(PyExc_RuntimeError,
+ "Caught unknown C++ exception.");
+ } // try/catch
+ #}embed
+ if not value.name == "pylith_feassemble_CellGeometry":
+ raise TypeError, \
+ "Argument must be extension module type " \
+ "'pylith::feassemble::CellGeometry'."
+ Quadrature_refGeometry_set(self.thisptr, ptrFromHandle(value))
+
+
# ----------------------------------------------------------------------
cdef class Quadrature1D(Quadrature):
Modified: short/3D/PyLith/trunk/pylith/Makefile.am
===================================================================
--- short/3D/PyLith/trunk/pylith/Makefile.am 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/Makefile.am 2007-06-07 23:37:26 UTC (rev 7094)
@@ -34,6 +34,7 @@
feassemble/Integrator.py \
feassemble/IntegratorElasticity.py \
feassemble/ReferenceCell.py \
+ feassemble/quadrature/__init__.py \
feassemble/quadrature/Quadrature.py \
feassemble/quadrature/Quadrature1D.py \
feassemble/quadrature/Quadrature1Din2D.py \
@@ -41,7 +42,20 @@
feassemble/quadrature/Quadrature2D.py \
feassemble/quadrature/Quadrature2Din3D.py \
feassemble/quadrature/Quadrature3D.py \
- feassemble/quadrature/__init__.py \
+ feassemble/geometry/__init__.py \
+ feassemble/geometry/CellGeometry.py \
+ feassemble/geometry/GeometryPoint1D.py \
+ feassemble/geometry/GeometryPoint2D.py \
+ feassemble/geometry/GeometryPoint3D.py \
+ feassemble/geometry/GeometryLine1D.py \
+ feassemble/geometry/GeometryLine2D.py \
+ feassemble/geometry/GeometryLine3D.py \
+ feassemble/geometry/GeometryTri2D.py \
+ feassemble/geometry/GeometryTri3D.py \
+ feassemble/geometry/GeometryQuad2D.py \
+ feassemble/geometry/GeometryQuad3D.py \
+ feassemble/geometry/GeometryTet3D.py \
+ feassemble/geometry/GeometryHex3D.py \
materials/__init__.py \
materials/ElasticMaterial.py \
materials/ElasticIsotropic3D.py \
Modified: short/3D/PyLith/trunk/pylith/feassemble/FIATLagrange.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/FIATLagrange.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/FIATLagrange.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -77,100 +77,114 @@
return
- def initialize(self):
+ def initialize(self, spaceDim):
"""
Initialize reference finite-element cell from a tensor product of
1-D Lagrange elements.
"""
- quadrature = self._setupQuadrature()
- element = self._setupElement()
- dim = self.cellDim
+ self._setupGeometry(spaceDim)
+
+ if self.cellDim > 0:
+ quadrature = self._setupQuadrature()
+ element = self._setupElement()
+ dim = self.cellDim
- # Get coordinates of vertices (dual basis)
- vertices = numpy.array(self._setupVertices(element))
+ # Get coordinates of vertices (dual basis)
+ vertices = numpy.array(self._setupVertices(element))
- # Evaluate basis functions at quadrature points
- quadpts = numpy.array(quadrature.get_points())
- quadwts = numpy.array(quadrature.get_weights())
- numQuadPts = len(quadpts)
- basis = numpy.array(element.function_space().tabulate(quadrature.get_points())).transpose()
- numBasisFns = len(element.function_space())
+ # Evaluate basis functions at quadrature points
+ quadpts = numpy.array(quadrature.get_points())
+ quadwts = numpy.array(quadrature.get_weights())
+ numQuadPts = len(quadpts)
+ basis = numpy.array(element.function_space().tabulate(quadrature.get_points())).transpose()
+ numBasisFns = len(element.function_space())
- # Evaluate derivatives of basis functions at quadrature points
- basisDeriv = numpy.array([element.function_space().deriv_all(d).tabulate(quadrature.get_points()) \
- for d in range(1)]).transpose()
+ # Evaluate derivatives of basis functions at quadrature points
+ basisDeriv = numpy.array([element.function_space().deriv_all(d).tabulate(quadrature.get_points()) \
+ for d in range(1)]).transpose()
- self.numQuadPts = numQuadPts**dim
- self.numCorners = numBasisFns**dim
+ self.numQuadPts = numQuadPts**dim
+ self.numCorners = numBasisFns**dim
- if dim == 1:
- self.vertices = numpy.array(vertices)
- self.quadPts = quadpts
- self.quadWts = quadwts
- self.basis = basis
- self.basisDeriv = basisDeriv
- else:
- if dim == 2:
- self.vertices = numpy.zeros((numBasisFns, numBasisFns, dim))
- for q in range(numBasisFns):
- for r in range(numBasisFns):
- self.vertices[q][r][0] = vertices[r]
- self.vertices[q][r][1] = vertices[q]
+ if dim == 1:
+ self.vertices = numpy.array(vertices)
+ self.quadPts = quadpts
+ self.quadWts = quadwts
+ self.basis = basis
+ self.basisDeriv = basisDeriv
+ else:
+ if dim == 2:
+ self.vertices = numpy.zeros((numBasisFns, numBasisFns, dim))
+ for q in range(numBasisFns):
+ for r in range(numBasisFns):
+ self.vertices[q][r][0] = vertices[r]
+ self.vertices[q][r][1] = vertices[q]
- self.quadPts = numpy.zeros((numQuadPts, numQuadPts, dim))
- self.quadWts = numpy.zeros((numQuadPts, numQuadPts))
- self.basis = numpy.zeros((numQuadPts, numQuadPts,
- numBasisFns, numBasisFns))
- self.basisDeriv = numpy.zeros((numQuadPts, numQuadPts,
- numBasisFns, numBasisFns, dim))
- for q in range(numQuadPts):
- for r in range(numQuadPts):
- self.quadPts[q][r][0] = quadpts[r]
- self.quadPts[q][r][1] = quadpts[q]
- self.quadWts[q][r] = quadwts[r]*quadwts[q]
- for f in range(numBasisFns):
- for g in range(numBasisFns):
- self.basis[q][r][f][g] = basis[r][g]*basis[q][f]
- self.basisDeriv[q][r][f][g][0] = basisDeriv[r][g][0]*basis[q][f]
- self.basisDeriv[q][r][f][g][1] = basis[r][g]*basisDeriv[q][f][0]
- elif dim == 3:
- self.vertices = numpy.zeros((numBasisFns, numBasisFns, numBasisFns,
- dim))
- for q in range(numBasisFns):
- for r in range(numBasisFns):
- for s in range(numBasisFns):
- self.vertices[q][r][s][0] = vertices[s]
- self.vertices[q][r][s][1] = vertices[r]
- self.vertices[q][r][s][2] = vertices[q]
-
- self.quadPts = numpy.zeros((numQuadPts, numQuadPts,
- numQuadPts, dim))
- self.quadWts = numpy.zeros((numQuadPts, numQuadPts, numQuadPts))
- self.basis = numpy.zeros((numQuadPts, numQuadPts, numQuadPts,
- numBasisFns, numBasisFns, numBasisFns))
- self.basisDeriv = numpy.zeros((numQuadPts, numQuadPts, numQuadPts,
- numBasisFns, numBasisFns, numBasisFns,
- dim))
- for q in range(numQuadPts):
- for r in range(numQuadPts):
- for s in range(numQuadPts):
- self.quadPts[q][r][s][0] = quadpts[s]
- self.quadPts[q][r][s][1] = quadpts[r]
- self.quadPts[q][r][s][2] = quadpts[q]
- self.quadWts[q][r][s] = quadwts[s]*quadwts[r]*quadwts[q]
+ self.quadPts = numpy.zeros((numQuadPts, numQuadPts, dim))
+ self.quadWts = numpy.zeros((numQuadPts, numQuadPts))
+ self.basis = numpy.zeros((numQuadPts, numQuadPts,
+ numBasisFns, numBasisFns))
+ self.basisDeriv = numpy.zeros((numQuadPts, numQuadPts,
+ numBasisFns, numBasisFns, dim))
+ for q in range(numQuadPts):
+ for r in range(numQuadPts):
+ self.quadPts[q][r][0] = quadpts[r]
+ self.quadPts[q][r][1] = quadpts[q]
+ self.quadWts[q][r] = quadwts[r]*quadwts[q]
for f in range(numBasisFns):
for g in range(numBasisFns):
- for h in range(numBasisFns):
- self.basis[q][r][s][f][g][h] = basis[s][h]*basis[r][g]*basis[q][f]
- self.basisDeriv[q][r][s][f][g][h][0] = basisDeriv[s][h][0]*basis[r][g]*basis[q][f]
- self.basisDeriv[q][r][s][f][g][h][1] = basis[s][h]*basisDeriv[r][g][0]*basis[q][f]
- self.basisDeriv[q][r][s][f][g][h][2] = basis[s][h]*basis[r][g]*basisDeriv[q][f][0]
- self.vertices = numpy.reshape(self.vertices, (self.numCorners, dim))
- self.quadPts = numpy.reshape(self.quadPts, (self.numQuadPts, dim))
- self.quadWts = numpy.reshape(self.quadWts, (self.numQuadPts))
- self.basis = numpy.reshape(self.basis, (self.numQuadPts, self.numCorners))
- self.basisDeriv = numpy.reshape(self.basisDeriv, (self.numQuadPts, self.numCorners, dim))
+ self.basis[q][r][f][g] = basis[r][g]*basis[q][f]
+ self.basisDeriv[q][r][f][g][0] = basisDeriv[r][g][0]*basis[q][f]
+ self.basisDeriv[q][r][f][g][1] = basis[r][g]*basisDeriv[q][f][0]
+ elif dim == 3:
+ self.vertices = numpy.zeros((numBasisFns, numBasisFns, numBasisFns,
+ dim))
+ for q in range(numBasisFns):
+ for r in range(numBasisFns):
+ for s in range(numBasisFns):
+ self.vertices[q][r][s][0] = vertices[s]
+ self.vertices[q][r][s][1] = vertices[r]
+ self.vertices[q][r][s][2] = vertices[q]
+ self.quadPts = numpy.zeros((numQuadPts, numQuadPts,
+ numQuadPts, dim))
+ self.quadWts = numpy.zeros((numQuadPts, numQuadPts, numQuadPts))
+ self.basis = numpy.zeros((numQuadPts, numQuadPts, numQuadPts,
+ numBasisFns, numBasisFns, numBasisFns))
+ self.basisDeriv = numpy.zeros((numQuadPts, numQuadPts, numQuadPts,
+ numBasisFns, numBasisFns, numBasisFns,
+ dim))
+ for q in range(numQuadPts):
+ for r in range(numQuadPts):
+ for s in range(numQuadPts):
+ self.quadPts[q][r][s][0] = quadpts[s]
+ self.quadPts[q][r][s][1] = quadpts[r]
+ self.quadPts[q][r][s][2] = quadpts[q]
+ self.quadWts[q][r][s] = quadwts[s]*quadwts[r]*quadwts[q]
+ for f in range(numBasisFns):
+ for g in range(numBasisFns):
+ for h in range(numBasisFns):
+ self.basis[q][r][s][f][g][h] = basis[s][h]*basis[r][g]*basis[q][f]
+ self.basisDeriv[q][r][s][f][g][h][0] = basisDeriv[s][h][0]*basis[r][g]*basis[q][f]
+ self.basisDeriv[q][r][s][f][g][h][1] = basis[s][h]*basisDeriv[r][g][0]*basis[q][f]
+ self.basisDeriv[q][r][s][f][g][h][2] = basis[s][h]*basis[r][g]*basisDeriv[q][f][0]
+ self.vertices = numpy.reshape(self.vertices, (self.numCorners, dim))
+ self.quadPts = numpy.reshape(self.quadPts, (self.numQuadPts, dim))
+ self.quadWts = numpy.reshape(self.quadWts, (self.numQuadPts))
+ self.basis = numpy.reshape(self.basis, (self.numQuadPts, self.numCorners))
+ self.basisDeriv = numpy.reshape(self.basisDeriv, (self.numQuadPts, self.numCorners, dim))
+ else:
+ # Need 0-D quadrature for boundary conditions of 1-D meshes
+ self.cellDim = 0
+ self.numCorners = 1
+ self.numQuadPts = 1
+ self.basis = numpy.array([1.0])
+ self.basisDeriv = numpy.array([1.0])
+ self.quadPts = numpy.array([0.0])
+ self.quadWts = numpy.array([1.0])
+
+ self._info.line("Cell geometry: ")
+ self._info.line(self.geometry)
self._info.line("Vertices: ")
self._info.line(self.vertices)
self._info.line("Quad pts:")
@@ -203,6 +217,48 @@
return
+ def _setupGeometry(self, spaceDim):
+ """
+ Setup reference cell geometry object.
+ """
+ self.geometry = None
+ if 3 == self.cellDim:
+ if 3 == spaceDim:
+ from geometry.GeometryHex3D import GeometryHex3D
+ self.geometry = GeometryHex3D()
+ elif 2 == self.cellDim:
+ if 2 == spaceDim:
+ from geometry.GeometryQuad2D import GeometryQuad2D
+ self.geometry = GeometryQuad2D()
+ elif 3 == spaceDim:
+ from geometry.GeometryQuad3D import GeometryQuad3D
+ self.geometry = GeometryQuad3D()
+ elif 1 == self.cellDim:
+ if 1 == spaceDim:
+ from geometry.GeometryLine1D import GeometryLine1D
+ self.geometry = GeometryLine1D()
+ elif 2 == spaceDim:
+ from geometry.GeometryLine2D import GeometryLine2D
+ self.geometry = GeometryLine2D()
+ elif 3 == spaceDim:
+ from geometry.GeometryLine3D import GeometryLine3D
+ self.geometry = GeometryLine3D()
+ elif 0 == self.cellDim:
+ if 1 == spaceDim:
+ from geometry.GeometryPoint1D import GeometryPoint1D
+ self.geometry = GeometryPoint1D()
+ elif 2 == spaceDim:
+ from geometry.GeometryPoint2D import GeometryPoint2D
+ self.geometry = GeometryPoint2D()
+ elif 3 == spaceDim:
+ from geometry.GeometryPoint3D import GeometryPoint3D
+ self.geometry = GeometryPoint3D()
+ if None == self.geometry:
+ raise ValueError("Could not set shape of cell for '%s' in spatial " \
+ "dimension '%s'." % (self.name, spaceDim))
+ return
+
+
def _setupQuadrature(self):
"""
Setup quadrature rule for reference cell.
Modified: short/3D/PyLith/trunk/pylith/feassemble/FIATSimplex.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/FIATSimplex.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/FIATSimplex.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -25,10 +25,11 @@
name = shape.lower()
if not ("tetrahedron" == name or
"triangle" == name or
- "line" == name):
+ "line" == name or
+ "point" == name):
raise ValueError("Unknown shape '%s' for reference finite-element " \
"cell.\n" \
- "Known shapes: 'tetrahedron', 'triangle', 'line'" % \
+ "Known shapes: 'tetrahedron', 'triangle', 'line', 'point'" % \
name)
return name
@@ -80,41 +81,55 @@
return
- def initialize(self):
+ def initialize(self, spaceDim):
"""
Initialize reference finite-element cell.
"""
- quadrature = self._setupQuadrature()
- basisFns = self._setupBasisFns()
+ self._setupGeometry(spaceDim)
- # Get coordinates of vertices (dual basis)
- self.vertices = numpy.array(self._setupVertices(), dtype=numpy.float64)
+ if "point" != self.shape.lower():
+ quadrature = self._setupQuadrature()
+ basisFns = self._setupBasisFns()
- # Evaluate basis functions at quadrature points
- quadpts = quadrature.get_points()
- basis = numpy.array(basisFns.tabulate(quadpts)).transpose()
- self.basis = numpy.reshape(basis.flatten(), basis.shape)
+ # Get coordinates of vertices (dual basis)
+ self.vertices = numpy.array(self._setupVertices(), dtype=numpy.float64)
- # Evaluate derivatives of basis functions at quadrature points
- import FIAT.shapes
- dim = FIAT.shapes.dimension(basisFns.base.shape)
- basisDeriv = numpy.array([basisFns.deriv_all(d).tabulate(quadpts) \
- for d in range(dim)]).transpose()
- self.basisDeriv = numpy.reshape(basisDeriv.flatten(), basisDeriv.shape)
+ # Evaluate basis functions at quadrature points
+ quadpts = quadrature.get_points()
+ basis = numpy.array(basisFns.tabulate(quadpts)).transpose()
+ self.basis = numpy.reshape(basis.flatten(), basis.shape)
- self.quadPts = numpy.array(quadrature.get_points())
- self.quadWts = numpy.array(quadrature.get_weights())
+ # Evaluate derivatives of basis functions at quadrature points
+ import FIAT.shapes
+ dim = FIAT.shapes.dimension(basisFns.base.shape)
+ basisDeriv = numpy.array([basisFns.deriv_all(d).tabulate(quadpts) \
+ for d in range(dim)]).transpose()
+ self.basisDeriv = numpy.reshape(basisDeriv.flatten(), basisDeriv.shape)
- self.cellDim = dim
- self.numCorners = len(basisFns)
- self.numQuadPts = len(quadrature.get_weights())
+ self.quadPts = numpy.array(quadrature.get_points())
+ self.quadWts = numpy.array(quadrature.get_weights())
+ self.cellDim = dim
+ self.numCorners = len(basisFns)
+ self.numQuadPts = len(quadrature.get_weights())
+ else:
+ # Need 0-D quadrature for boundary conditions of 1-D meshes
+ self.cellDim = 0
+ self.numCorners = 1
+ self.numQuadPts = 1
+ self.basis = numpy.array([1.0])
+ self.basisDeriv = numpy.array([1.0])
+ self.quadPts = numpy.array([0.0])
+ self.quadWts = numpy.array([1.0])
+
+ self._info.line("Cell geometry: ")
+ self._info.line(self.geometry)
self._info.line("Vertices: ")
self._info.line(self.vertices)
self._info.line("Quad pts:")
- self._info.line(quadrature.get_points())
+ self._info.line(self.quadPts)
self._info.line("Quad wts:")
- self._info.line(quadrature.get_weights())
+ self._info.line(self.quadWts)
self._info.line("Basis fns @ quad pts ):")
self._info.line(self.basis)
self._info.line("Basis fn derivatives @ quad pts:")
@@ -138,10 +153,54 @@
return
+ def _setupGeometry(self, spaceDim):
+ """
+ Setup reference cell geometry object.
+ """
+ self.geometry = None
+ name = self.shape.lower()
+ if "tetrahedron" == name:
+ if 3 == spaceDim:
+ from geometry.GeometryTet3D import GeometryTet3D
+ self.geometry = GeometryTet3D()
+ elif "triangle" == name:
+ if 2 == spaceDim:
+ from geometry.GeometryTri2D import GeometryTri2D
+ self.geometry = GeometryTri2D()
+ elif 3 == spaceDim:
+ from geometry.GeometryTri3D import GeometryTri3D
+ self.geometry = GeometryTri3D()
+ elif "line" == name:
+ if 1 == spaceDim:
+ from geometry.GeometryLine1D import GeometryLine1D
+ self.geometry = GeometryLine1D()
+ elif 2 == spaceDim:
+ from geometry.GeometryLine2D import GeometryLine2D
+ self.geometry = GeometryLine2D()
+ elif 3 == spaceDim:
+ from geometry.GeometryLine3D import GeometryLine3D
+ self.geometry = GeometryLine3D()
+ elif "point" == name:
+ if 1 == spaceDim:
+ from geometry.GeometryPoint1D import GeometryPoint1D
+ self.geometry = GeometryPoint1D()
+ elif 2 == spaceDim:
+ from geometry.GeometryPoint2D import GeometryPoint2D
+ self.geometry = GeometryPoint2D()
+ elif 3 == spaceDim:
+ from geometry.GeometryPoint3D import GeometryPoint3D
+ self.geometry = GeometryPoint3D()
+ if None == self.geometry:
+ raise ValueError("Could not set shape of cell for '%s' in spatial " \
+ "dimension '%s'." % (self.name, spaceDim))
+ return
+
+
def _setupQuadrature(self):
"""
Setup quadrature rule for reference cell.
"""
+
import FIAT.quadrature
return FIAT.quadrature.make_quadrature_by_degree(self._getShape(),
self.order)
@@ -175,6 +234,8 @@
shape = FIAT.shapes.TRIANGLE
elif "line" == name:
shape = FIAT.shapes.LINE
+ elif "point" == name:
+ shape = None
else:
raise ValueError("Unknown shape '%s' for reference finite-element " \
"cell.\n" \
Modified: short/3D/PyLith/trunk/pylith/feassemble/ReferenceCell.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/ReferenceCell.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/ReferenceCell.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,6 +36,8 @@
"""
Component.__init__(self, name, facility="reference_cell")
+ self.geometry = None # Geometry of reference cell
+
self.basisVert = None # numpy array w/basis fns at vertices
self.basisDerivVert = None # numpy array w/basis fn derivs at vertices
self.basisQuad = None # numpy array w/basis fns at quad pts
@@ -50,7 +52,7 @@
return
- def initialize(self):
+ def initialize(self, spaceDim):
"""
Initialize reference finite-element cell.
"""
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/CellGeometry.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/CellGeometry.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/CellGeometry.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,34 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/CellGeometry.py
+##
+## @brief Python abstract base class for geometry of a finite-element cell.
+
+# ----------------------------------------------------------------------
+# CellGeometry class
+class CellGeometry(object):
+ """
+ Python abstract base class for geometry of a finite-element cell.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ self.cppHandle = None
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryHex3D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryHex3D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryHex3D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,37 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/GeometryHex3D.py
+##
+## @brief Python object for geometry of a 3-D hexahedral
+## finite-element cell in 3-D.
+
+# ----------------------------------------------------------------------
+# GeometryHex3D class
+class GeometryHex3D(object):
+ """
+ Python object for geometry of a 3-D hexahedral finite-element cell
+ in 3-D.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ import pylith.feassemble.feassemble as bindings
+ self.cppHandle = bindings.GeometryHex3D()
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryLine1D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryLine1D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryLine1D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,36 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/GeometryLine1D.py
+##
+## @brief Python object for geometry of a 1-D line finite-element cell
+## in 1-D.
+
+# ----------------------------------------------------------------------
+# GeometryLine1D class
+class GeometryLine1D(object):
+ """
+ Python object for geometry of a 1-D line finite-element cell in 1-D.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ import pylith.feassemble.feassemble as bindings
+ self.cppHandle = bindings.GeometryLine1D()
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryLine2D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryLine2D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryLine2D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,36 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/GeometryLine2D.py
+##
+## @brief Python object for geometry of a 1-D line finite-element cell
+## in 2-D.
+
+# ----------------------------------------------------------------------
+# GeometryLine2D class
+class GeometryLine2D(object):
+ """
+ Python object for geometry of a 1-D line finite-element cell in 2-D.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ import pylith.feassemble.feassemble as bindings
+ self.cppHandle = bindings.GeometryLine2D()
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryLine3D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryLine3D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryLine3D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,35 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/GeometryLine3D.py
+##
+## @brief Python object for geometry of a 1-D line finite-element cell in 3-D.
+
+# ----------------------------------------------------------------------
+# GeometryLine3D class
+class GeometryLine3D(object):
+ """
+ Python object for geometry of a 1-D finite-element cell in 3-D.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ import pylith.feassemble.feassemble as bindings
+ self.cppHandle = bindings.GeometryLine3D()
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryPoint1D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryPoint1D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryPoint1D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,35 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/GeometryPoint1D.py
+##
+## @brief Python object for geometry of a 0-D finite-element cell in 1-D.
+
+# ----------------------------------------------------------------------
+# GeometryPoint1D class
+class GeometryPoint1D(object):
+ """
+ Python object for geometry of a 0-D finite-element cell in 1-D.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ import pylith.feassemble.feassemble as bindings
+ self.cppHandle = bindings.GeometryPoint1D()
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryPoint2D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryPoint2D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryPoint2D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,35 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/GeometryPoint2D.py
+##
+## @brief Python object for geometry of a 0-D finite-element cell in 2-D.
+
+# ----------------------------------------------------------------------
+# GeometryPoint2D class
+class GeometryPoint2D(object):
+ """
+ Python object for geometry of a 0-D finite-element cell in 2-D.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ import pylith.feassemble.feassemble as bindings
+ self.cppHandle = bindings.GeometryPoint2D()
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryPoint3D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryPoint3D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryPoint3D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,35 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/GeometryPoint3D.py
+##
+## @brief Python object for geometry of a 0-D finite-element cell in 3-D.
+
+# ----------------------------------------------------------------------
+# GeometryPoint3D class
+class GeometryPoint3D(object):
+ """
+ Python object for geometry of a 0-D finite-element cell in 3-D.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ import pylith.feassemble.feassemble as bindings
+ self.cppHandle = bindings.GeometryPoint3D()
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryQuad2D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryQuad2D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryQuad2D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,37 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/GeometryQuad2D.py
+##
+## @brief Python object for geometry of a 2-D quadrilateral
+## finite-element cell in 2-D.
+
+# ----------------------------------------------------------------------
+# GeometryQuad2D class
+class GeometryQuad2D(object):
+ """
+ Python object for geometry of a 2-D quadrilateral finite-element
+ cell in 2-D.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ import pylith.feassemble.feassemble as bindings
+ self.cppHandle = bindings.GeometryQuad2D()
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryQuad3D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryQuad3D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryQuad3D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,37 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/GeometryQuad3D.py
+##
+## @brief Python object for geometry of a 2-D quadrilateral
+## finite-element cell in 3-D.
+
+# ----------------------------------------------------------------------
+# GeometryQuad3D class
+class GeometryQuad3D(object):
+ """
+ Python object for geometry of a 2-D quadrilateral finite-element
+ cell in 3-D.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ import pylith.feassemble.feassemble as bindings
+ self.cppHandle = bindings.GeometryQuad3D()
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryTet3D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryTet3D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryTet3D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,37 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/GeometryTet3D.py
+##
+## @brief Python object for geometry of a 3-D tetrahedral
+## finite-element cell in 3-D.
+
+# ----------------------------------------------------------------------
+# GeometryTet3D class
+class GeometryTet3D(object):
+ """
+ Python object for geometry of a 3-D tetrahedral finite-element cell
+ in 3-D.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ import pylith.feassemble.feassemble as bindings
+ self.cppHandle = bindings.GeometryTet3D()
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryTri2D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryTri2D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryTri2D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,37 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/GeometryTri2D.py
+##
+## @brief Python object for geometry of a 2-D triangular
+## finite-element cell in 2-D.
+
+# ----------------------------------------------------------------------
+# GeometryTri2D class
+class GeometryTri2D(object):
+ """
+ Python object for geometry of a 2-D triangular finite-element cell
+ in 2-D.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ import pylith.feassemble.feassemble as bindings
+ self.cppHandle = bindings.GeometryTri2D()
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryTri3D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryTri3D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/GeometryTri3D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,37 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/GeometryTri3D.py
+##
+## @brief Python object for geometry of a 2-D triangular
+## finite-element cell in 3-D.
+
+# ----------------------------------------------------------------------
+# GeometryTri3D class
+class GeometryTri3D(object):
+ """
+ Python object for geometry of a 2-D triangular finite-element cell
+ in 3-D.
+ """
+
+ # PUBLIC METHODS /////////////////////////////////////////////////////
+
+ def __init__(self):
+ """
+ Constructor.
+ """
+ import pylith.feassemble.feassemble as bindings
+ self.cppHandle = bindings.GeometryTri3D()
+ return
+
+
+# End of file
Added: short/3D/PyLith/trunk/pylith/feassemble/geometry/__init__.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/geometry/__init__.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/geometry/__init__.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,33 @@
+#!/usr/bin/env python
+#
+# ----------------------------------------------------------------------
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# <LicenseText>
+#
+# ----------------------------------------------------------------------
+#
+
+## @file pylith/feassemble/geometry/__init__.py
+##
+## @brief Python PyLith finite-element assembler geometry module
+## initialization
+
+__all__ = ['CellGeometry',
+ 'GeometryPoint1D',
+ 'GeometryPoint2D',
+ 'GeometryPoint3D',
+ 'GeometryLine1D',
+ 'GeometryLine2D',
+ 'GeometryLine3D',
+ 'GeometryTri2D',
+ 'GeometryTri3D',
+ 'GeometryQuad2D',
+ 'GeometryQuad3D',
+ 'GeometryTet3D',
+ 'GeometryHex3D']
+
+
+# End of file
Modified: short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -10,7 +10,7 @@
# ----------------------------------------------------------------------
#
-## @file pylith/feassemble/Qudrature.py
+## @file pylith/feassemble/quadrature/Qudrature.py
##
## @brief Python abstract base class for integrating over
## finite-elements using quadrature.
@@ -77,21 +77,22 @@
self.cppHandle.minJacobian = self.minJacobian
self._info.log("Initializing reference cell.")
- c = self.cell
- c.initialize()
+ cell = self.cell
+ cell.initialize(self.spaceDim)
- if c.cellDim != self.cellDim:
+ if cell.cellDim != self.cellDim:
raise TypeError("Dimension of reference cell '%d' does not match "
"dimension of quadrature implementation '%d'." % \
- (c.cellDim, self.cellDim))
+ (cell.cellDim, self.cellDim))
self._info.log("Initializing C++ quadrature.")
- self.cppHandle.initialize(c.vertices,
- c.basis, c.basisDeriv,
- c.quadPts, c.quadWts,
- c.cellDim, c.numCorners, c.numQuadPts,
+ self.cppHandle.initialize(cell.vertices,
+ cell.basis, cell.basisDeriv,
+ cell.quadPts, cell.quadWts,
+ cell.cellDim, cell.numCorners, cell.numQuadPts,
self.spaceDim)
+ self.cppHandle.refGeometry = cell.geometry.cppHandle
return
Modified: short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature1D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature1D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature1D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -10,7 +10,7 @@
# ----------------------------------------------------------------------
#
-## @file pylith/feassemble/Qudrature1D.py
+## @file pylith/feassemble/quadrature/Qudrature1D.py
##
## @brief Python object implementing 1-D integration in 1-D space
## using numerical quadrature.
Modified: short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature1Din2D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature1Din2D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature1Din2D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -10,7 +10,7 @@
# ----------------------------------------------------------------------
#
-## @file pylith/feassemble/Qudrature1Din2D.py
+## @file pylith/feassemble/quadrature/Qudrature1Din2D.py
##
## @brief Python object implementing 1-D integration in 2-D space
## using numerical quadrature.
Modified: short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature1Din3D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature1Din3D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature1Din3D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -10,7 +10,7 @@
# ----------------------------------------------------------------------
#
-## @file pylith/feassemble/Qudrature1Din3D.py
+## @file pylith/feassemble/quadrature/Qudrature1Din3D.py
##
## @brief Python object implementing 1-D integration in 3-D space
## using numerical quadrature.
Modified: short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature2D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature2D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature2D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -10,7 +10,7 @@
# ----------------------------------------------------------------------
#
-## @file pylith/feassemble/Qudrature2D.py
+## @file pylith/feassemble/quadrature/Qudrature2D.py
##
## @brief Python object implementing 2-D integration in 2-D space
## using numerical quadrature.
Modified: short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature2Din3D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature2Din3D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature2Din3D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -10,7 +10,7 @@
# ----------------------------------------------------------------------
#
-## @file pylith/feassemble/Qudrature2Din3D.py
+## @file pylith/feassemble/quadrature/Qudrature2Din3D.py
##
## @brief Python object implementing 2-D integration in 3-D space
## using numerical quadrature.
Modified: short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature3D.py
===================================================================
--- short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature3D.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/pylith/feassemble/quadrature/Quadrature3D.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -10,7 +10,7 @@
# ----------------------------------------------------------------------
#
-## @file pylith/feassemble/Qudrature3D.py
+## @file pylith/feassemble/quadrature/Qudrature3D.py
##
## @brief Python object implementing 3-D integration in 3-D space
## using numerical quadrature.
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/Makefile.am
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/Makefile.am 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/Makefile.am 2007-06-07 23:37:26 UTC (rev 7094)
@@ -26,6 +26,7 @@
TestFault.cc \
TestFaultCohesive.cc \
TestFaultCohesiveKin.cc \
+ TestFaultCohesiveKinLine2.cc \
test_faults.cc
noinst_HEADERS = \
@@ -33,7 +34,8 @@
TestEqKinSrc.hh \
TestFault.hh \
TestFaultCohesive.hh \
- TestFaultCohesiveKin.hh
+ TestFaultCohesiveKin.hh \
+ TestFaultCohesiveKinLine2.hh
# Source files associated with testing data
testfaults_SOURCES += \
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/TestBruneSlipFn.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/TestBruneSlipFn.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/TestBruneSlipFn.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -24,7 +24,6 @@
#include "spatialdata/spatialdb/SimpleDB.hh" // USES SimpleDB
#include "spatialdata/spatialdb/SimpleIOAscii.hh" // USES SimpleIOAscii
-#include <stdexcept> // TEMPORARY
// ----------------------------------------------------------------------
CPPUNIT_TEST_SUITE_REGISTRATION( pylith::faults::TestBruneSlipFn );
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/TestEqKinSrc.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/TestEqKinSrc.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/TestEqKinSrc.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -25,7 +25,6 @@
#include "spatialdata/spatialdb/SimpleDB.hh" // USES SimpleDB
#include "spatialdata/spatialdb/SimpleIOAscii.hh" // USES SimpleIOAscii
-#include <stdexcept> // TEMPORARY
// ----------------------------------------------------------------------
CPPUNIT_TEST_SUITE_REGISTRATION( pylith::faults::TestEqKinSrc );
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKin.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKin.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKin.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -16,8 +16,96 @@
#include "pylith/faults/FaultCohesiveKin.hh" // USES FaultCohesiveKin
+#include "pylith/faults/EqKinSrc.hh" // USES EqKinSrc
+
+#include <stdexcept> // TEMPORARY
// ----------------------------------------------------------------------
CPPUNIT_TEST_SUITE_REGISTRATION( pylith::faults::TestFaultCohesiveKin );
+// ----------------------------------------------------------------------
+// Test constructor.
+void
+pylith::faults::TestFaultCohesiveKin::testConstructor(void)
+{ // testConstructor
+ FaultCohesiveKin fault;
+} // testConstructor
+// ----------------------------------------------------------------------
+// Test eqsrc().
+void
+pylith::faults::TestFaultCohesiveKin::testEqsrc(void)
+{ // testEqsrc
+ FaultCohesiveKin fault;
+
+ EqKinSrc eqsrc;
+ fault.eqsrc(&eqsrc);
+ CPPUNIT_ASSERT(&eqsrc == fault._eqsrc);
+} // testEqsrc
+
+// ----------------------------------------------------------------------
+// Test useLagrangeConstraints().
+void
+pylith::faults::TestFaultCohesiveKin::testUseLagrangeConstraints(void)
+{ // testUseLagrangeConstraints
+ FaultCohesiveKin fault;
+ CPPUNIT_ASSERT_EQUAL(true, fault._useLagrangeConstraints());
+} // testUseLagrangeConstraints
+
+// ----------------------------------------------------------------------
+// Test initialize().
+void
+pylith::faults::TestFaultCohesiveKin::testInitialize(void)
+{ // testInitialize
+ throw std::logic_error("Unit test not implemented.");
+} // testInitialize
+
+// ----------------------------------------------------------------------
+// Test integrateResidual().
+void
+pylith::faults::TestFaultCohesiveKin::testIntegrateResidual(void)
+{ // testIntegrateResidual
+ throw std::logic_error("Unit test not implemented.");
+} // testIntegrateResidual
+
+// ----------------------------------------------------------------------
+// Test integrateJacobian().
+void
+pylith::faults::TestFaultCohesiveKin::testIntegrateJacobian(void)
+{ // testIntegrateJacobian
+ throw std::logic_error("Unit test not implemented.");
+} // testIntegrateJacobian
+
+// ----------------------------------------------------------------------
+// Test setConstraintSizes().
+void
+pylith::faults::TestFaultCohesiveKin::testSetConstraintSizes(void)
+{ // testSetConstraintSizes
+ throw std::logic_error("Unit test not implemented.");
+} // testSetConstraintSizes
+
+// ----------------------------------------------------------------------
+// Test setConstraints().
+void
+pylith::faults::TestFaultCohesiveKin::testSetConstraints(void)
+{ // testSetConstraints
+ throw std::logic_error("Unit test not implemented.");
+} // testSetConstraints
+
+// ----------------------------------------------------------------------
+// Test setField().
+void
+pylith::faults::TestFaultCohesiveKin::testSetField(void)
+{ // testSetField
+ throw std::logic_error("Unit test not implemented.");
+} // testSetField
+
+// ----------------------------------------------------------------------
+// Initialize FaultCohesiveKin interface condition.
+void
+pylith::faults::TestFaultCohesiveKin::_initialize(ALE::Obj<ALE::Mesh>* mesh,
+ FaultCohesiveKin* const fault) const
+{ // _initialize
+} // _initialize
+
+
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKin.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKin.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKin.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -21,26 +21,79 @@
#if !defined(pylith_faults_testfaultcohesivekin_hh)
#define pylith_faults_testfaultcohesivekin_hh
-#include "TestFaultCohesive.hh"
+#include <cppunit/extensions/HelperMacros.h>
+#include "pylith/utils/sievefwd.hh" // USES PETSc Mesh
+
/// Namespace for pylith package
namespace pylith {
namespace faults {
class TestFaultCohesiveKin;
+
+ class FaultCohesiveKin; // USES FaultCohesiveKin
+ class FaultCohesiveKinData; // HOLDSA FaultCohesiveKinData
} // faults
} // pylith
/// C++ unit testing for FaultCohesiveKin
-class pylith::faults::TestFaultCohesiveKin : public TestFaultCohesive
+class pylith::faults::TestFaultCohesiveKin : public CppUnit::TestFixture
{ // class TestFaultCohesiveKin
// CPPUNIT TEST SUITE /////////////////////////////////////////////////
CPPUNIT_TEST_SUITE( TestFaultCohesiveKin );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testEqsrc );
+ CPPUNIT_TEST( testUseLagrangeConstraints );
+
CPPUNIT_TEST_SUITE_END();
+ // PROTECTED MEMBERS //////////////////////////////////////////////////
+protected :
+
+ FaultCohesiveKinData* _data; ///< Data for testing
+
// PUBLIC METHODS /////////////////////////////////////////////////////
public :
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test eqsrc().
+ void testEqsrc(void);
+
+ /// Test useLagrangeConstraints().
+ void testUseLagrangeConstraints(void);
+
+ /// Test initialize().
+ void testInitialize(void);
+
+ /// Test integrateResidual().
+ void testIntegrateResidual(void);
+
+ /// Test integrateJacobian().
+ void testIntegrateJacobian(void);
+
+ /// Test setConstraintSizes().
+ void testSetConstraintSizes(void);
+
+ /// Test setConstraints().
+ void testSetConstraints(void);
+
+ /// Test setField().
+ void testSetField(void);
+
+ // PRIVATE METHODS ////////////////////////////////////////////////////
+private :
+
+ /** Initialize FaultCohesiveKin interface condition.
+ *
+ * @param mesh PETSc mesh to initialize
+ * @param fault Cohesive fault interface condition to initialize.
+ */
+ void _initialize(ALE::Obj<ALE::Mesh>* mesh,
+ FaultCohesiveKin* const fault) const;
+
}; // class TestFaultCohesiveKin
#endif // pylith_faults_testfaultcohesivekin_hh
Added: short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKinLine2.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKinLine2.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKinLine2.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,39 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestFaultCohesiveKinLine2.hh" // Implementation of class methods
+
+//#include "data/FaultCohesiveKinDataLine2.hh" // USES DirichletDataLine2
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::faults::TestFaultCohesiveKinLine2 );
+
+// ----------------------------------------------------------------------
+// Setup testing data.
+void
+pylith::faults::TestFaultCohesiveKinLine2::setUp(void)
+{ // setUp
+ //_data = new FaultCohesiveKinDataLine2();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Tear down testing data.
+void
+pylith::faults::TestFaultCohesiveKinLine2::tearDown(void)
+{ // tearDown
+ //delete _data;
+} // tearDown
+
+
+// End of file
Added: short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKinLine2.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKinLine2.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveKinLine2.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,63 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/faults/TestFaultCohesiveKinLine2.hh
+ *
+ * @brief C++ TestFaultCohesiveKinLine2 object.
+ *
+ * C++ unit testing for FaultCohesiveKin for mesh with 1-D line cells.
+ */
+
+#if !defined(pylith_faults_testfaultcohesivekinline2_hh)
+#define pylith_faults_testfaultcohesivekinline2_hh
+
+#include "TestFaultCohesiveKin.hh" // ISA TestFaultCohesiveKin
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace faults {
+ class TestFaultCohesiveKinLine2;
+ } // bc
+} // pylith
+
+/// C++ unit testing for FaultCohesiveKin for mesh with 1-D line cells.
+class pylith::faults::TestFaultCohesiveKinLine2 : public TestFaultCohesiveKin
+{ // class TestFaultCohesiveKinLine2
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestFaultCohesiveKinLine2 );
+
+ CPPUNIT_TEST( testInitialize );
+ CPPUNIT_TEST( testIntegrateResidual );
+ CPPUNIT_TEST( testIntegrateJacobian );
+ CPPUNIT_TEST( testSetConstraintSizes );
+ CPPUNIT_TEST( testSetConstraints );
+ CPPUNIT_TEST( testSetField );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup testing data.
+ void setUp(void);
+
+ /// Tear down testing data.
+ void tearDown(void);
+
+}; // class TestFaultCohesiveKinLine2
+
+#endif // pylith_faults_testfaultcohesiveline2_hh
+
+
+// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/Makefile.am
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/Makefile.am 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/Makefile.am 2007-06-07 23:37:26 UTC (rev 7094)
@@ -21,6 +21,7 @@
# Primary source files
testfeassemble_SOURCES = \
+ TestCellGeometry.cc \
TestElasticity.cc \
TestElasticityExplicit.cc \
TestElasticityExplicit1DLinear.cc \
@@ -36,6 +37,18 @@
TestElasticityImplicit2DQuadratic.cc \
TestElasticityImplicit3DLinear.cc \
TestElasticityImplicit3DQuadratic.cc \
+ TestGeometryPoint1D.cc \
+ TestGeometryPoint2D.cc \
+ TestGeometryPoint3D.cc \
+ TestGeometryLine1D.cc \
+ TestGeometryLine2D.cc \
+ TestGeometryLine3D.cc \
+ TestGeometryTri2D.cc \
+ TestGeometryTri3D.cc \
+ TestGeometryQuad2D.cc \
+ TestGeometryQuad3D.cc \
+ TestGeometryTet3D.cc \
+ TestGeometryHex3D.cc \
TestIntegrator.cc \
TestQuadrature.cc \
TestQuadrature1D.cc \
@@ -46,6 +59,7 @@
test_feassemble.cc
noinst_HEADERS = \
+ TestCellGeometry.hh \
TestElasticity.hh \
TestElasticityExplicit.hh \
TestElasticityExplicit1DLinear.hh \
@@ -61,6 +75,18 @@
TestElasticityImplicit2DQuadratic.hh \
TestElasticityImplicit3DLinear.hh \
TestElasticityImplicit3DQuadratic.hh \
+ TestGeometryPoint1D.hh \
+ TestGeometryPoint2D.hh \
+ TestGeometryPoint3D.hh \
+ TestGeometryLine1D.hh \
+ TestGeometryLine2D.hh \
+ TestGeometryLine3D.hh \
+ TestGeometryTri2D.hh \
+ TestGeometryTri3D.hh \
+ TestGeometryQuad2D.hh \
+ TestGeometryQuad3D.hh \
+ TestGeometryTet3D.hh \
+ TestGeometryHex3D.hh \
TestIntegrator.hh \
TestQuadrature.hh \
TestQuadrature1D.hh \
@@ -71,6 +97,19 @@
# Source files associated with testing data
testfeassemble_SOURCES += \
+ data/CellGeomData.cc \
+ data/GeomDataPoint1D.cc \
+ data/GeomDataPoint2D.cc \
+ data/GeomDataPoint3D.cc \
+ data/GeomDataLine1D.cc \
+ data/GeomDataLine2D.cc \
+ data/GeomDataLine3D.cc \
+ data/GeomDataTri2D.cc \
+ data/GeomDataTri3D.cc \
+ data/GeomDataQuad2D.cc \
+ data/GeomDataQuad3D.cc \
+ data/GeomDataTet3D.cc \
+ data/GeomDataHex3D.cc \
data/IntegratorData.cc \
data/ElasticityExplicitData1DLinear.cc \
data/ElasticityExplicitData1DQuadratic.cc \
@@ -102,6 +141,19 @@
data/QuadratureData3DQuadratic.cc
noinst_HEADERS += \
+ data/CellGeomData.hh \
+ data/GeomDataPoint1D.hh \
+ data/GeomDataPoint2D.hh \
+ data/GeomDataPoint3D.hh \
+ data/GeomDataLine1D.hh \
+ data/GeomDataLine2D.hh \
+ data/GeomDataLine3D.hh \
+ data/GeomDataTri2D.hh \
+ data/GeomDataTri3D.hh \
+ data/GeomDataQuad2D.hh \
+ data/GeomDataQuad3D.hh \
+ data/GeomDataTet3D.hh \
+ data/GeomDataHex3D.hh \
data/IntegratorData.hh \
data/ElasticityExplicitData1DLinear.hh \
data/ElasticityExplicitData1DQuadratic.hh \
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestCellGeometry.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestCellGeometry.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestCellGeometry.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestCellGeometry.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,121 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestCellGeometry.hh" // Implementation of class methods
+
+#include "pylith/feassemble/CellGeometry.hh" // USES CellGeometry
+#include "pylith/utils/array.hh" // USES double_array
+
+#include "data/CellGeomData.hh" // USES CellGeomData
+
+// ----------------------------------------------------------------------
+// Setup data.
+void
+pylith::feassemble::TestCellGeometry::setUp(void)
+{ // setUp
+ _object = 0;
+ _data = 0;
+} // setUp
+
+// ----------------------------------------------------------------------
+// Tear down test data.
+void
+pylith::feassemble::TestCellGeometry::tearDown(void)
+{ // tearDown
+ delete _object; _object = 0;
+ delete _data; _data = 0;
+} // tearDown
+
+// ----------------------------------------------------------------------
+// Test clone()
+void
+pylith::feassemble::TestCellGeometry::testClone(void)
+{ // testClone
+ CellGeometry* copy = _object->clone();
+ CPPUNIT_ASSERT_EQUAL(_object->cellDim(), copy->cellDim());
+ CPPUNIT_ASSERT_EQUAL(_object->spaceDim(), copy->spaceDim());
+ CPPUNIT_ASSERT_EQUAL(_object->numCorners(), copy->numCorners());
+ delete copy; copy = 0;
+} // testClone
+
+// ----------------------------------------------------------------------
+// Test cellDim().
+void
+pylith::feassemble::TestCellGeometry::testCellDim(void)
+{ // testCellDim
+ CPPUNIT_ASSERT(0 != _object);
+ CPPUNIT_ASSERT(0 != _data);
+ CPPUNIT_ASSERT_EQUAL(_data->cellDim, _object->cellDim());
+} // testCellDim
+
+// ----------------------------------------------------------------------
+// Test spaceDim().
+void
+pylith::feassemble::TestCellGeometry::testSpaceDim(void)
+{ // _testSpaceDim
+ CPPUNIT_ASSERT(0 != _object);
+ CPPUNIT_ASSERT(0 != _data);
+ CPPUNIT_ASSERT_EQUAL(_data->spaceDim, _object->spaceDim());
+} // _testSpaceDim
+
+// ----------------------------------------------------------------------
+// Test numCorners().
+void
+pylith::feassemble::TestCellGeometry::testNumCorners(void)
+{ // testNumCorners
+ CPPUNIT_ASSERT(0 != _object);
+ CPPUNIT_ASSERT(0 != _data);
+ CPPUNIT_ASSERT_EQUAL(_data->numCorners, _object->numCorners());
+} // testNumConers
+
+// ----------------------------------------------------------------------
+// Test jacobian().
+void
+pylith::feassemble::TestCellGeometry::testJacobian(void)
+{ // testJacobian
+ CPPUNIT_ASSERT(0 != _object);
+ CPPUNIT_ASSERT(0 != _data);
+
+ const int cellDim = _data->cellDim;
+ const int spaceDim = _data->spaceDim;
+ const int numCorners = _data->numCorners;
+
+ const int numLocs = _data->numLocs;
+
+ CPPUNIT_ASSERT_EQUAL(cellDim, _object->cellDim());
+ CPPUNIT_ASSERT_EQUAL(spaceDim, _object->spaceDim());
+ CPPUNIT_ASSERT_EQUAL(numCorners, _object->numCorners());
+
+ double_array jacobian(cellDim*spaceDim);
+ for (int iLoc=0; iLoc < numLocs; ++iLoc) {
+ double_array vertices(_data->vertices, numCorners*spaceDim);
+ double_array location(&_data->locations[iLoc*cellDim], cellDim);
+
+ _object->jacobian(&jacobian, vertices, location);
+
+ const int size = jacobian.size();
+ const int index = iLoc*cellDim*spaceDim;
+ const double tolerance = 1.0e-06;
+ for (int i=0; i < size; ++i)
+ if (_data->jacobian[index+i] < 1.0)
+ CPPUNIT_ASSERT_DOUBLES_EQUAL(_data->jacobian[index+i], jacobian[i],
+ tolerance);
+ else
+ CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0, jacobian[i]/_data->jacobian[index+i],
+ tolerance);
+ } // for
+} // testJacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestCellGeometry.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestCellGeometry.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestCellGeometry.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestCellGeometry.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,74 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestCellGeometry.hh
+ *
+ * @brief C++ TestCellGeometry object
+ *
+ * C++ unit testing for CellGeometry.
+ */
+
+#if !defined(pylith_feassemble_testcellgeometry_hh)
+#define pylith_feassemble_testcellgeometry_hh
+
+#include <cppunit/extensions/HelperMacros.h>
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestCellGeometry;
+
+ class CellGeometry;
+ class CellGeomData;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for TestCellGeometry
+class pylith::feassemble::TestCellGeometry : public CppUnit::TestFixture
+{ // class TestCellGeometry
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Tear down data.
+ void tearDown(void);
+
+ /// Test clone().
+ void testClone(void);
+
+ /// Test cellDim().
+ void testCellDim(void);
+
+ /// Test spaceDim().
+ void testSpaceDim(void);
+
+ /// Test numCorners().
+ void testNumCorners(void);
+
+ /// Test jacobian().
+ void testJacobian(void);
+
+// PROTECTED MEMBERS ////////////////////////////////////////////////////
+protected :
+
+ CellGeometry* _object; ///< Test subject.
+ CellGeomData* _data; ///< Test data.
+
+}; // class TestCellGeometry
+
+#endif // pylith_feassemble_testcellgeometry_hh
+
+// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -31,6 +31,26 @@
CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestElasticityExplicit );
// ----------------------------------------------------------------------
+// Setup testing data.
+void
+pylith::feassemble::TestElasticityExplicit::setUp(void)
+{ // setUp
+ _data = 0;
+ _quadrature = 0;
+ _material = 0;
+} // setUp
+
+// ----------------------------------------------------------------------
+// Tear down testing data.
+void
+pylith::feassemble::TestElasticityExplicit::tearDown(void)
+{ // tearDown
+ delete _data; _data = 0;
+ delete _quadrature; _quadrature = 0;
+ delete _material; _material = 0;
+} // tearDown
+
+// ----------------------------------------------------------------------
// Test constructor.
void
pylith::feassemble::TestElasticityExplicit::testConstructor(void)
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -62,6 +62,12 @@
// PUBLIC METHODS /////////////////////////////////////////////////////
public :
+ /// Setup testing data.
+ void setUp(void);
+
+ /// Tear down testing data.
+ void tearDown(void);
+
/// Test constructor.
void testConstructor(void);
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DLinear.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DLinear.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DLinear.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,15 +36,5 @@
std::string(_data->matType));
} // setUp
-// ----------------------------------------------------------------------
-// Tear down testing data.
-void
-pylith::feassemble::TestElasticityExplicit1DLinear::tearDown(void)
-{ // tearDown
- delete _data;
- delete _quadrature;
- delete _material;
-} // tearDown
-
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DLinear.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DLinear.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DLinear.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -50,9 +50,6 @@
/// Setup testing data.
void setUp(void);
- /// Tear down testing data.
- void tearDown(void);
-
}; // class TestElasticityExplicit1DLinear
#endif // pylith_feassemble_testelasticityexplicit1dlinear_hh
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,15 +36,5 @@
std::string(_data->matType));
} // setUp
-// ----------------------------------------------------------------------
-// Tear down testing data.
-void
-pylith::feassemble::TestElasticityExplicit1DQuadratic::tearDown(void)
-{ // tearDown
- delete _data;
- delete _quadrature;
- delete _material;
-} // tearDown
-
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit1DQuadratic.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -50,9 +50,6 @@
/// Setup testing data.
void setUp(void);
- /// Tear down testing data.
- void tearDown(void);
-
}; // class TestElasticityExplicit1DQuadratic
#endif // pylith_feassemble_testelasticityexplicit1dquadratic_hh
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,15 +36,5 @@
std::string(_data->matType));
} // setUp
-// ----------------------------------------------------------------------
-// Tear down testing data.
-void
-pylith::feassemble::TestElasticityExplicit2DLinear::tearDown(void)
-{ // tearDown
- delete _data;
- delete _quadrature;
- delete _material;
-} // tearDown
-
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DLinear.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -50,9 +50,6 @@
/// Setup testing data.
void setUp(void);
- /// Tear down testing data.
- void tearDown(void);
-
}; // class TestElasticityExplicit2DLinear
#endif // pylith_feassemble_testelasticityexplicit2dlinear_hh
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,15 +36,5 @@
std::string(_data->matType));
} // setUp
-// ----------------------------------------------------------------------
-// Tear down testing data.
-void
-pylith::feassemble::TestElasticityExplicit2DQuadratic::tearDown(void)
-{ // tearDown
- delete _data;
- delete _quadrature;
- delete _material;
-} // tearDown
-
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit2DQuadratic.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -50,9 +50,6 @@
/// Setup testing data.
void setUp(void);
- /// Tear down testing data.
- void tearDown(void);
-
}; // class TestElasticityExplicit2DQuadratic
#endif // pylith_feassemble_testelasticityexplicit2dquadratic_hh
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,15 +36,5 @@
std::string(_data->matType));
} // setUp
-// ----------------------------------------------------------------------
-// Tear down testing data.
-void
-pylith::feassemble::TestElasticityExplicit3DLinear::tearDown(void)
-{ // tearDown
- delete _data;
- delete _quadrature;
- delete _material;
-} // tearDown
-
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DLinear.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -50,9 +50,6 @@
/// Setup testing data.
void setUp(void);
- /// Tear down testing data.
- void tearDown(void);
-
}; // class TestElasticityExplicit3DLinear
#endif // pylith_feassemble_testelasticityexplicit3dlinear_hh
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,15 +36,5 @@
std::string(_data->matType));
} // setUp
-// ----------------------------------------------------------------------
-// Tear down testing data.
-void
-pylith::feassemble::TestElasticityExplicit3DQuadratic::tearDown(void)
-{ // tearDown
- delete _data;
- delete _quadrature;
- delete _material;
-} // tearDown
-
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityExplicit3DQuadratic.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -50,9 +50,6 @@
/// Setup testing data.
void setUp(void);
- /// Tear down testing data.
- void tearDown(void);
-
}; // class TestElasticityExplicit3DQuadratic
#endif // pylith_feassemble_testelasticityexplicit3dquadratic_hh
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -31,6 +31,26 @@
CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestElasticityImplicit );
// ----------------------------------------------------------------------
+// Setup testing data.
+void
+pylith::feassemble::TestElasticityImplicit::setUp(void)
+{ // setUp
+ _data = 0;
+ _quadrature = 0;
+ _material = 0;
+} // setUp
+
+// ----------------------------------------------------------------------
+// Tear down testing data.
+void
+pylith::feassemble::TestElasticityImplicit::tearDown(void)
+{ // tearDown
+ delete _data; _data = 0;
+ delete _quadrature; _quadrature = 0;
+ delete _material; _material = 0;
+} // tearDown
+
+// ----------------------------------------------------------------------
// Test constructor.
void
pylith::feassemble::TestElasticityImplicit::testConstructor(void)
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -62,6 +62,12 @@
// PUBLIC METHODS /////////////////////////////////////////////////////
public :
+ /// Setup testing data.
+ void setUp(void);
+
+ /// Tear down testing data.
+ void tearDown(void);
+
/// Test constructor.
void testConstructor(void);
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DLinear.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DLinear.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DLinear.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,15 +36,5 @@
std::string(_data->matType));
} // setUp
-// ----------------------------------------------------------------------
-// Tear down testing data.
-void
-pylith::feassemble::TestElasticityImplicit1DLinear::tearDown(void)
-{ // tearDown
- delete _data;
- delete _quadrature;
- delete _material;
-} // tearDown
-
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DLinear.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DLinear.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DLinear.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -50,9 +50,6 @@
/// Setup testing data.
void setUp(void);
- /// Tear down testing data.
- void tearDown(void);
-
}; // class TestElasticityImplicit1DLinear
#endif // pylith_feassemble_testelasticityimplicit1dlinear_hh
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DQuadratic.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DQuadratic.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,15 +36,5 @@
std::string(_data->matType));
} // setUp
-// ----------------------------------------------------------------------
-// Tear down testing data.
-void
-pylith::feassemble::TestElasticityImplicit1DQuadratic::tearDown(void)
-{ // tearDown
- delete _data;
- delete _quadrature;
- delete _material;
-} // tearDown
-
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DQuadratic.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit1DQuadratic.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -50,9 +50,6 @@
/// Setup testing data.
void setUp(void);
- /// Tear down testing data.
- void tearDown(void);
-
}; // class TestElasticityImplicit1DQuadratic
#endif // pylith_feassemble_testelasticityimplicit1dquadratic_hh
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DLinear.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DLinear.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DLinear.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,15 +36,5 @@
std::string(_data->matType));
} // setUp
-// ----------------------------------------------------------------------
-// Tear down testing data.
-void
-pylith::feassemble::TestElasticityImplicit2DLinear::tearDown(void)
-{ // tearDown
- delete _data;
- delete _quadrature;
- delete _material;
-} // tearDown
-
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DLinear.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DLinear.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DLinear.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -50,9 +50,6 @@
/// Setup testing data.
void setUp(void);
- /// Tear down testing data.
- void tearDown(void);
-
}; // class TestElasticityImplicit2DLinear
#endif // pylith_feassemble_testelasticityimplicit2dlinear_hh
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DQuadratic.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DQuadratic.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,15 +36,5 @@
std::string(_data->matType));
} // setUp
-// ----------------------------------------------------------------------
-// Tear down testing data.
-void
-pylith::feassemble::TestElasticityImplicit2DQuadratic::tearDown(void)
-{ // tearDown
- delete _data;
- delete _quadrature;
- delete _material;
-} // tearDown
-
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DQuadratic.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit2DQuadratic.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -50,9 +50,6 @@
/// Setup testing data.
void setUp(void);
- /// Tear down testing data.
- void tearDown(void);
-
}; // class TestElasticityImplicit2DQuadratic
#endif // pylith_feassemble_testelasticityimplicit2dquadratic_hh
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DLinear.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DLinear.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DLinear.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,15 +36,5 @@
std::string(_data->matType));
} // setUp
-// ----------------------------------------------------------------------
-// Tear down testing data.
-void
-pylith::feassemble::TestElasticityImplicit3DLinear::tearDown(void)
-{ // tearDown
- delete _data;
- delete _quadrature;
- delete _material;
-} // tearDown
-
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DLinear.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DLinear.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DLinear.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -50,9 +50,6 @@
/// Setup testing data.
void setUp(void);
- /// Tear down testing data.
- void tearDown(void);
-
}; // class TestElasticityImplicit3DLinear
#endif // pylith_feassemble_testelasticityimplicit3dlinear_hh
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DQuadratic.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DQuadratic.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DQuadratic.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -36,15 +36,5 @@
std::string(_data->matType));
} // setUp
-// ----------------------------------------------------------------------
-// Tear down testing data.
-void
-pylith::feassemble::TestElasticityImplicit3DQuadratic::tearDown(void)
-{ // tearDown
- delete _data;
- delete _quadrature;
- delete _material;
-} // tearDown
-
// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DQuadratic.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DQuadratic.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestElasticityImplicit3DQuadratic.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -50,9 +50,6 @@
/// Setup testing data.
void setUp(void);
- /// Tear down testing data.
- void tearDown(void);
-
}; // class TestElasticityImplicit3DQuadratic
#endif // pylith_feassemble_testelasticityimplicit3dquadratic_hh
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryHex3D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryHex3D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryHex3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryHex3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,58 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestGeometryHex3D.hh" // Implementation of class methods
+
+#include "pylith/feassemble/GeometryHex3D.hh"
+#include "pylith/feassemble/GeometryQuad3D.hh"
+#include "pylith/feassemble/GeometryPoint2D.hh"
+
+#include "data/GeomDataHex3D.hh"
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestGeometryHex3D );
+
+// ----------------------------------------------------------------------
+// Setup test data.
+void
+pylith::feassemble::TestGeometryHex3D::setUp(void)
+{ // setUp
+ _object = new GeometryHex3D();
+ _data = new GeomDataHex3D();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Test constructor
+void
+pylith::feassemble::TestGeometryHex3D::testConstructor(void)
+{ // testConstructor
+ GeometryHex3D geometry;
+} // testConstructor
+
+// ----------------------------------------------------------------------
+// Test geometryLowerDim().
+void
+pylith::feassemble::TestGeometryHex3D::testGeomLowerDim(void)
+{ // testGeomLowerDim
+ GeometryHex3D geometry;
+ CellGeometry* geometryLD = geometry.geometryLowerDim();
+ GeometryQuad3D* geometryPt = dynamic_cast<GeometryQuad3D*>(geometryLD);
+ CPPUNIT_ASSERT(0 != geometryPt);
+ GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
+ CPPUNIT_ASSERT(0 == geometryPt2);
+ delete geometryLD; geometryLD = 0;
+} // testGeomLowerDim
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryHex3D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryHex3D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryHex3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryHex3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,67 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestGeometryHex3D.hh
+ *
+ * @brief C++ TestGeometryHex3D object
+ *
+ * C++ unit testing for TopologyAscii.
+ */
+
+#if !defined(pylith_feassemble_testgeometryhex3d_hh)
+#define pylith_feassemble_testgeometryhex3d_hh
+
+#include "TestCellGeometry.hh"
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestGeometryHex3D;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for GeometryHex3D
+class pylith::feassemble::TestGeometryHex3D : public TestCellGeometry
+{ // class TestGeometryHex3D
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestGeometryHex3D );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testClone );
+ CPPUNIT_TEST( testGeomLowerDim );
+
+ CPPUNIT_TEST( testCellDim );
+ CPPUNIT_TEST( testSpaceDim );
+ CPPUNIT_TEST( testNumCorners );
+ CPPUNIT_TEST( testJacobian );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test geometryLowerDim().
+ void testGeomLowerDim(void);
+
+}; // class TestGeometryHex3D
+
+#endif // pylith_feassemble_testgeometryhex3d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine1D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine1D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine1D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine1D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,58 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestGeometryLine1D.hh" // Implementation of class methods
+
+#include "pylith/feassemble/GeometryLine1D.hh"
+#include "pylith/feassemble/GeometryPoint1D.hh"
+#include "pylith/feassemble/GeometryPoint2D.hh"
+
+#include "data/GeomDataLine1D.hh"
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestGeometryLine1D );
+
+// ----------------------------------------------------------------------
+// Setup test data.
+void
+pylith::feassemble::TestGeometryLine1D::setUp(void)
+{ // setUp
+ _object = new GeometryLine1D();
+ _data = new GeomDataLine1D();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Test constructor
+void
+pylith::feassemble::TestGeometryLine1D::testConstructor(void)
+{ // testConstructor
+ GeometryLine1D geometry;
+} // testConstructor
+
+// ----------------------------------------------------------------------
+// Test geometryLowerDim().
+void
+pylith::feassemble::TestGeometryLine1D::testGeomLowerDim(void)
+{ // testGeomLowerDim
+ GeometryLine1D geometry;
+ CellGeometry* geometryLD = geometry.geometryLowerDim();
+ GeometryPoint1D* geometryPt = dynamic_cast<GeometryPoint1D*>(geometryLD);
+ CPPUNIT_ASSERT(0 != geometryPt);
+ GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
+ CPPUNIT_ASSERT(0 == geometryPt2);
+ delete geometryLD; geometryLD = 0;
+} // testGeomLowerDim
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine1D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine1D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine1D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine1D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,67 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestGeometryLine1D.hh
+ *
+ * @brief C++ TestGeometryLine1D object
+ *
+ * C++ unit testing for TopologyAscii.
+ */
+
+#if !defined(pylith_feassemble_testgeometryline1d_hh)
+#define pylith_feassemble_testgeometryline1d_hh
+
+#include "TestCellGeometry.hh"
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestGeometryLine1D;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for GeometryLine1D
+class pylith::feassemble::TestGeometryLine1D : public TestCellGeometry
+{ // class TestGeometryLine1D
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestGeometryLine1D );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testClone );
+ CPPUNIT_TEST( testGeomLowerDim );
+
+ CPPUNIT_TEST( testCellDim );
+ CPPUNIT_TEST( testSpaceDim );
+ CPPUNIT_TEST( testNumCorners );
+ CPPUNIT_TEST( testJacobian );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test geometryLowerDim().
+ void testGeomLowerDim(void);
+
+}; // class TestGeometryLine1D
+
+#endif // pylith_feassemble_testgeometryline1d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine2D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine2D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine2D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,58 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestGeometryLine2D.hh" // Implementation of class methods
+
+#include "pylith/feassemble/GeometryLine2D.hh"
+#include "pylith/feassemble/GeometryPoint2D.hh"
+#include "pylith/feassemble/GeometryPoint1D.hh"
+
+#include "data/GeomDataLine2D.hh"
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestGeometryLine2D );
+
+// ----------------------------------------------------------------------
+// Setup test data.
+void
+pylith::feassemble::TestGeometryLine2D::setUp(void)
+{ // setUp
+ _object = new GeometryLine2D();
+ _data = new GeomDataLine2D();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Test constructor
+void
+pylith::feassemble::TestGeometryLine2D::testConstructor(void)
+{ // testConstructor
+ GeometryLine2D geometry;
+} // testConstructor
+
+// ----------------------------------------------------------------------
+// Test geometryLowerDim().
+void
+pylith::feassemble::TestGeometryLine2D::testGeomLowerDim(void)
+{ // testGeomLowerDim
+ GeometryLine2D geometry;
+ CellGeometry* geometryLD = geometry.geometryLowerDim();
+ GeometryPoint2D* geometryPt = dynamic_cast<GeometryPoint2D*>(geometryLD);
+ CPPUNIT_ASSERT(0 != geometryPt);
+ GeometryPoint1D* geometryPt2 = dynamic_cast<GeometryPoint1D*>(geometryLD);
+ CPPUNIT_ASSERT(0 == geometryPt2);
+ delete geometryLD; geometryLD = 0;
+} // testGeomLowerDim
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine2D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine2D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine2D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,67 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestGeometryLine2D.hh
+ *
+ * @brief C++ TestGeometryLine2D object
+ *
+ * C++ unit testing for TopologyAscii.
+ */
+
+#if !defined(pylith_feassemble_testgeometryline2d_hh)
+#define pylith_feassemble_testgeometryline2d_hh
+
+#include "TestCellGeometry.hh"
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestGeometryLine2D;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for GeometryLine2D
+class pylith::feassemble::TestGeometryLine2D : public TestCellGeometry
+{ // class TestGeometryLine2D
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestGeometryLine2D );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testClone );
+ CPPUNIT_TEST( testGeomLowerDim );
+
+ CPPUNIT_TEST( testCellDim );
+ CPPUNIT_TEST( testSpaceDim );
+ CPPUNIT_TEST( testNumCorners );
+ CPPUNIT_TEST( testJacobian );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test geometryLowerDim().
+ void testGeomLowerDim(void);
+
+}; // class TestGeometryLine2D
+
+#endif // pylith_feassemble_testgeometryline2d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine3D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine3D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,58 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestGeometryLine3D.hh" // Implementation of class methods
+
+#include "pylith/feassemble/GeometryLine3D.hh"
+#include "pylith/feassemble/GeometryPoint3D.hh"
+#include "pylith/feassemble/GeometryPoint2D.hh"
+
+#include "data/GeomDataLine3D.hh"
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestGeometryLine3D );
+
+// ----------------------------------------------------------------------
+// Setup test data.
+void
+pylith::feassemble::TestGeometryLine3D::setUp(void)
+{ // setUp
+ _object = new GeometryLine3D();
+ _data = new GeomDataLine3D();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Test constructor
+void
+pylith::feassemble::TestGeometryLine3D::testConstructor(void)
+{ // testConstructor
+ GeometryLine3D geometry;
+} // testConstructor
+
+// ----------------------------------------------------------------------
+// Test geometryLowerDim().
+void
+pylith::feassemble::TestGeometryLine3D::testGeomLowerDim(void)
+{ // testGeomLowerDim
+ GeometryLine3D geometry;
+ CellGeometry* geometryLD = geometry.geometryLowerDim();
+ GeometryPoint3D* geometryPt = dynamic_cast<GeometryPoint3D*>(geometryLD);
+ CPPUNIT_ASSERT(0 != geometryPt);
+ GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
+ CPPUNIT_ASSERT(0 == geometryPt2);
+ delete geometryLD; geometryLD = 0;
+} // testGeomLowerDim
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine3D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine3D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryLine3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,67 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestGeometryLine3D.hh
+ *
+ * @brief C++ TestGeometryLine3D object
+ *
+ * C++ unit testing for TopologyAscii.
+ */
+
+#if !defined(pylith_feassemble_testgeometryline3d_hh)
+#define pylith_feassemble_testgeometryline3d_hh
+
+#include "TestCellGeometry.hh"
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestGeometryLine3D;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for GeometryLine3D
+class pylith::feassemble::TestGeometryLine3D : public TestCellGeometry
+{ // class TestGeometryLine3D
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestGeometryLine3D );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testClone );
+ CPPUNIT_TEST( testGeomLowerDim );
+
+ CPPUNIT_TEST( testCellDim );
+ CPPUNIT_TEST( testSpaceDim );
+ CPPUNIT_TEST( testNumCorners );
+ CPPUNIT_TEST( testJacobian );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test geometryLowerDim().
+ void testGeomLowerDim(void);
+
+}; // class TestGeometryLine3D
+
+#endif // pylith_feassemble_testgeometryline3d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint1D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint1D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint1D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint1D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,83 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestGeometryPoint1D.hh" // Implementation of class methods
+
+#include "pylith/feassemble/GeometryPoint1D.hh"
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include "data/GeomDataPoint1D.hh"
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestGeometryPoint1D );
+
+// ----------------------------------------------------------------------
+// Setup test data.
+void
+pylith::feassemble::TestGeometryPoint1D::setUp(void)
+{ // setUp
+ _object = new GeometryPoint1D();
+ _data = new GeomDataPoint1D();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Test constructor
+void
+pylith::feassemble::TestGeometryPoint1D::testConstructor(void)
+{ // testConstructor
+ GeometryPoint1D geometry;
+} // testConstructor
+
+// ----------------------------------------------------------------------
+// Test geometryLowerDim().
+void
+pylith::feassemble::TestGeometryPoint1D::testGeomLowerDim(void)
+{ // testGeomLowerDim
+ GeometryPoint1D geometry;
+ CellGeometry* geometryLD = geometry.geometryLowerDim();
+ CPPUNIT_ASSERT(0 == geometryLD);
+ delete geometryLD; geometryLD = 0;
+} // testGeomLowerDim
+
+// ----------------------------------------------------------------------
+// Test jacobian().
+void
+pylith::feassemble::TestGeometryPoint1D::testJacobian(void)
+{ // testJacobian
+ GeometryPoint1D geometry;
+ GeomDataPoint1D data;
+
+ const int cellDim = data.cellDim;
+ const int spaceDim = data.spaceDim;
+ const int numCorners = data.numCorners;
+
+ const int numLocs = data.numLocs;
+
+ CPPUNIT_ASSERT_EQUAL(cellDim, geometry.cellDim());
+ CPPUNIT_ASSERT_EQUAL(spaceDim, geometry.spaceDim());
+ CPPUNIT_ASSERT_EQUAL(numCorners, geometry.numCorners());
+
+ double_array jacobian(1);
+ for (int iLoc=0; iLoc < numLocs; ++iLoc) {
+ double_array vertices(data.vertices, numCorners*spaceDim);
+ double_array location(&data.locations[iLoc], 1);
+
+ geometry.jacobian(&jacobian, vertices, location);
+ CPPUNIT_ASSERT_EQUAL(1.0, jacobian[0]);
+ } //for
+} // testJacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint1D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint1D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint1D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint1D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,70 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestGeometryPoint1D.hh
+ *
+ * @brief C++ TestGeometryPoint1D object
+ *
+ * C++ unit testing for TopologyAscii.
+ */
+
+#if !defined(pylith_feassemble_testgeometrypoint1d_hh)
+#define pylith_feassemble_testgeometrypoint1d_hh
+
+#include "TestCellGeometry.hh"
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestGeometryPoint1D;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for GeometryPoint1D
+class pylith::feassemble::TestGeometryPoint1D : public TestCellGeometry
+{ // class TestGeometryPoint1D
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestGeometryPoint1D );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testClone );
+ CPPUNIT_TEST( testGeomLowerDim );
+
+ CPPUNIT_TEST( testCellDim );
+ CPPUNIT_TEST( testSpaceDim );
+ CPPUNIT_TEST( testNumCorners );
+ CPPUNIT_TEST( testJacobian );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test geometryLowerDim().
+ void testGeomLowerDim(void);
+
+ /// Test jacobian().
+ void testJacobian(void);
+
+}; // class TestGeometryPoint1D
+
+#endif // pylith_feassemble_testgeometrypoint1d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint2D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint2D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint2D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,83 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestGeometryPoint2D.hh" // Implementation of class methods
+
+#include "pylith/feassemble/GeometryPoint2D.hh"
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include "data/GeomDataPoint2D.hh"
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestGeometryPoint2D );
+
+// ----------------------------------------------------------------------
+// Setup test data.
+void
+pylith::feassemble::TestGeometryPoint2D::setUp(void)
+{ // setUp
+ _object = new GeometryPoint2D();
+ _data = new GeomDataPoint2D();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Test constructor
+void
+pylith::feassemble::TestGeometryPoint2D::testConstructor(void)
+{ // testConstructor
+ GeometryPoint2D geometry;
+} // testConstructor
+
+// ----------------------------------------------------------------------
+// Test geometryLowerDim().
+void
+pylith::feassemble::TestGeometryPoint2D::testGeomLowerDim(void)
+{ // testGeomLowerDim
+ GeometryPoint2D geometry;
+ CellGeometry* geometryLD = geometry.geometryLowerDim();
+ CPPUNIT_ASSERT(0 == geometryLD);
+ delete geometryLD; geometryLD = 0;
+} // testGeomLowerDim
+
+// ----------------------------------------------------------------------
+// Test jacobian().
+void
+pylith::feassemble::TestGeometryPoint2D::testJacobian(void)
+{ // testJacobian
+ GeometryPoint2D geometry;
+ GeomDataPoint2D data;
+
+ const int cellDim = data.cellDim;
+ const int spaceDim = data.spaceDim;
+ const int numCorners = data.numCorners;
+
+ const int numLocs = data.numLocs;
+
+ CPPUNIT_ASSERT_EQUAL(cellDim, geometry.cellDim());
+ CPPUNIT_ASSERT_EQUAL(spaceDim, geometry.spaceDim());
+ CPPUNIT_ASSERT_EQUAL(numCorners, geometry.numCorners());
+
+ double_array jacobian(1);
+ for (int iLoc=0; iLoc < numLocs; ++iLoc) {
+ double_array vertices(data.vertices, numCorners*spaceDim);
+ double_array location(&data.locations[iLoc], 1);
+
+ geometry.jacobian(&jacobian, vertices, location);
+ CPPUNIT_ASSERT_EQUAL(1.0, jacobian[0]);
+ } //for
+} // testJacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint2D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint2D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint2D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,70 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestGeometryPoint2D.hh
+ *
+ * @brief C++ TestGeometryPoint2D object
+ *
+ * C++ unit testing for TopologyAscii.
+ */
+
+#if !defined(pylith_feassemble_testgeometrypoint2d_hh)
+#define pylith_feassemble_testgeometrypoint2d_hh
+
+#include "TestCellGeometry.hh"
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestGeometryPoint2D;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for GeometryPoint2D
+class pylith::feassemble::TestGeometryPoint2D : public TestCellGeometry
+{ // class TestGeometryPoint2D
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestGeometryPoint2D );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testClone );
+ CPPUNIT_TEST( testGeomLowerDim );
+
+ CPPUNIT_TEST( testCellDim );
+ CPPUNIT_TEST( testSpaceDim );
+ CPPUNIT_TEST( testNumCorners );
+ CPPUNIT_TEST( testJacobian );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test geometryLowerDim().
+ void testGeomLowerDim(void);
+
+ /// Test jacobian().
+ void testJacobian(void);
+
+}; // class TestGeometryPoint2D
+
+#endif // pylith_feassemble_testgeometrypoint2d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint3D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint3D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,83 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestGeometryPoint3D.hh" // Implementation of class methods
+
+#include "pylith/feassemble/GeometryPoint3D.hh"
+
+#include "pylith/utils/array.hh" // USES double_array
+
+#include "data/GeomDataPoint3D.hh"
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestGeometryPoint3D );
+
+// ----------------------------------------------------------------------
+// Setup test data.
+void
+pylith::feassemble::TestGeometryPoint3D::setUp(void)
+{ // setUp
+ _object = new GeometryPoint3D();
+ _data = new GeomDataPoint3D();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Test constructor
+void
+pylith::feassemble::TestGeometryPoint3D::testConstructor(void)
+{ // testConstructor
+ GeometryPoint3D geometry;
+} // testConstructor
+
+// ----------------------------------------------------------------------
+// Test geometryLowerDim().
+void
+pylith::feassemble::TestGeometryPoint3D::testGeomLowerDim(void)
+{ // testGeomLowerDim
+ GeometryPoint3D geometry;
+ CellGeometry* geometryLD = geometry.geometryLowerDim();
+ CPPUNIT_ASSERT(0 == geometryLD);
+ delete geometryLD; geometryLD = 0;
+} // testGeomLowerDim
+
+// ----------------------------------------------------------------------
+// Test jacobian().
+void
+pylith::feassemble::TestGeometryPoint3D::testJacobian(void)
+{ // testJacobian
+ GeometryPoint3D geometry;
+ GeomDataPoint3D data;
+
+ const int cellDim = data.cellDim;
+ const int spaceDim = data.spaceDim;
+ const int numCorners = data.numCorners;
+
+ const int numLocs = data.numLocs;
+
+ CPPUNIT_ASSERT_EQUAL(cellDim, geometry.cellDim());
+ CPPUNIT_ASSERT_EQUAL(spaceDim, geometry.spaceDim());
+ CPPUNIT_ASSERT_EQUAL(numCorners, geometry.numCorners());
+
+ double_array jacobian(1);
+ for (int iLoc=0; iLoc < numLocs; ++iLoc) {
+ double_array vertices(data.vertices, numCorners*spaceDim);
+ double_array location(&data.locations[iLoc], 1);
+
+ geometry.jacobian(&jacobian, vertices, location);
+ CPPUNIT_ASSERT_EQUAL(1.0, jacobian[0]);
+ } //for
+} // testJacobian
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint3D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint3D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryPoint3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,71 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestGeometryPoint3D.hh
+ *
+ * @brief C++ TestGeometryPoint3D object
+ *
+ * C++ unit testing for TopologyAscii.
+ */
+
+#if !defined(pylith_feassemble_testgeometrypoint3d_hh)
+#define pylith_feassemble_testgeometrypoint3d_hh
+
+#include "TestCellGeometry.hh"
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestGeometryPoint3D;
+ class CellGeomData;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for Quadrature3D
+class pylith::feassemble::TestGeometryPoint3D : public TestCellGeometry
+{ // class TestGeometryPoint3D
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestGeometryPoint3D );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testClone );
+ CPPUNIT_TEST( testGeomLowerDim );
+
+ CPPUNIT_TEST( testCellDim );
+ CPPUNIT_TEST( testSpaceDim );
+ CPPUNIT_TEST( testNumCorners );
+ CPPUNIT_TEST( testJacobian );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test geometryLowerDim().
+ void testGeomLowerDim(void);
+
+ /// Test jacobian().
+ void testJacobian(void);
+
+}; // class TestGeometryPoint3D
+
+#endif // pylith_feassemble_testgeometrypoint3d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryQuad2D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad2D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad2D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryQuad2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,58 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestGeometryQuad2D.hh" // Implementation of class methods
+
+#include "pylith/feassemble/GeometryQuad2D.hh"
+#include "pylith/feassemble/GeometryLine2D.hh"
+#include "pylith/feassemble/GeometryPoint2D.hh"
+
+#include "data/GeomDataQuad2D.hh"
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestGeometryQuad2D );
+
+// ----------------------------------------------------------------------
+// Setup test data.
+void
+pylith::feassemble::TestGeometryQuad2D::setUp(void)
+{ // setUp
+ _object = new GeometryQuad2D();
+ _data = new GeomDataQuad2D();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Test constructor
+void
+pylith::feassemble::TestGeometryQuad2D::testConstructor(void)
+{ // testConstructor
+ GeometryQuad2D geometry;
+} // testConstructor
+
+// ----------------------------------------------------------------------
+// Test geometryLowerDim().
+void
+pylith::feassemble::TestGeometryQuad2D::testGeomLowerDim(void)
+{ // testGeomLowerDim
+ GeometryQuad2D geometry;
+ CellGeometry* geometryLD = geometry.geometryLowerDim();
+ GeometryLine2D* geometryPt = dynamic_cast<GeometryLine2D*>(geometryLD);
+ CPPUNIT_ASSERT(0 != geometryPt);
+ GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
+ CPPUNIT_ASSERT(0 == geometryPt2);
+ delete geometryLD; geometryLD = 0;
+} // testGeomLowerDim
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryQuad2D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad2D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad2D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryQuad2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,68 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestGeometryQuad2D.hh
+ *
+ * @brief C++ TestGeometryQuad2D object
+ *
+ * C++ unit testing for TopologyAscii.
+ */
+
+#if !defined(pylith_feassemble_testgeometryquad2d_hh)
+#define pylith_feassemble_testgeometryquad2d_hh
+
+#include "TestCellGeometry.hh"
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestGeometryQuad2D;
+ class CellGeomData;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for Quadrature2D
+class pylith::feassemble::TestGeometryQuad2D : public TestCellGeometry
+{ // class TestGeometryQuad2D
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestGeometryQuad2D );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testClone );
+ CPPUNIT_TEST( testGeomLowerDim );
+
+ CPPUNIT_TEST( testCellDim );
+ CPPUNIT_TEST( testSpaceDim );
+ CPPUNIT_TEST( testNumCorners );
+ CPPUNIT_TEST( testJacobian );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test geometryLowerDim().
+ void testGeomLowerDim(void);
+
+}; // class TestGeometryQuad2D
+
+#endif // pylith_feassemble_testgeometryquad2d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryQuad3D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad3D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryQuad3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,58 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestGeometryQuad3D.hh" // Implementation of class methods
+
+#include "pylith/feassemble/GeometryQuad3D.hh"
+#include "pylith/feassemble/GeometryLine3D.hh"
+#include "pylith/feassemble/GeometryPoint2D.hh"
+
+#include "data/GeomDataQuad3D.hh"
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestGeometryQuad3D );
+
+// ----------------------------------------------------------------------
+// Setup test data.
+void
+pylith::feassemble::TestGeometryQuad3D::setUp(void)
+{ // setUp
+ _object = new GeometryQuad3D();
+ _data = new GeomDataQuad3D();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Test constructor
+void
+pylith::feassemble::TestGeometryQuad3D::testConstructor(void)
+{ // testConstructor
+ GeometryQuad3D geometry;
+} // testConstructor
+
+// ----------------------------------------------------------------------
+// Test geometryLowerDim().
+void
+pylith::feassemble::TestGeometryQuad3D::testGeomLowerDim(void)
+{ // testGeomLowerDim
+ GeometryQuad3D geometry;
+ CellGeometry* geometryLD = geometry.geometryLowerDim();
+ GeometryLine3D* geometryPt = dynamic_cast<GeometryLine3D*>(geometryLD);
+ CPPUNIT_ASSERT(0 != geometryPt);
+ GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
+ CPPUNIT_ASSERT(0 == geometryPt2);
+ delete geometryLD; geometryLD = 0;
+} // testGeomLowerDim
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryQuad3D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad3D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryQuad3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,68 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestGeometryQuad3D.hh
+ *
+ * @brief C++ TestGeometryQuad3D object
+ *
+ * C++ unit testing for TopologyAscii.
+ */
+
+#if !defined(pylith_feassemble_testgeometryquad3d_hh)
+#define pylith_feassemble_testgeometryquad3d_hh
+
+#include "TestCellGeometry.hh"
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestGeometryQuad3D;
+ class CellGeomData;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for Quadrature3D
+class pylith::feassemble::TestGeometryQuad3D : public TestCellGeometry
+{ // class TestGeometryQuad3D
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestGeometryQuad3D );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testClone );
+ CPPUNIT_TEST( testGeomLowerDim );
+
+ CPPUNIT_TEST( testCellDim );
+ CPPUNIT_TEST( testSpaceDim );
+ CPPUNIT_TEST( testNumCorners );
+ CPPUNIT_TEST( testJacobian );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test geometryLowerDim().
+ void testGeomLowerDim(void);
+
+}; // class TestGeometryQuad3D
+
+#endif // pylith_feassemble_testgeometryquad3d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTet3D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTet3D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTet3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTet3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,58 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestGeometryTet3D.hh" // Implementation of class methods
+
+#include "pylith/feassemble/GeometryTet3D.hh"
+#include "pylith/feassemble/GeometryTri3D.hh"
+#include "pylith/feassemble/GeometryPoint2D.hh"
+
+#include "data/GeomDataTet3D.hh"
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestGeometryTet3D );
+
+// ----------------------------------------------------------------------
+// Setup test data.
+void
+pylith::feassemble::TestGeometryTet3D::setUp(void)
+{ // setUp
+ _object = new GeometryTet3D();
+ _data = new GeomDataTet3D();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Test constructor
+void
+pylith::feassemble::TestGeometryTet3D::testConstructor(void)
+{ // testConstructor
+ GeometryTet3D geometry;
+} // testConstructor
+
+// ----------------------------------------------------------------------
+// Test geometryLowerDim().
+void
+pylith::feassemble::TestGeometryTet3D::testGeomLowerDim(void)
+{ // testGeomLowerDim
+ GeometryTet3D geometry;
+ CellGeometry* geometryLD = geometry.geometryLowerDim();
+ GeometryTri3D* geometryPt = dynamic_cast<GeometryTri3D*>(geometryLD);
+ CPPUNIT_ASSERT(0 != geometryPt);
+ GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
+ CPPUNIT_ASSERT(0 == geometryPt2);
+ delete geometryLD; geometryLD = 0;
+} // testGeomLowerDim
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTet3D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTet3D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTet3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTet3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,68 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestGeometryTet3D.hh
+ *
+ * @brief C++ TestGeometryTet3D object
+ *
+ * C++ unit testing for TopologyAscii.
+ */
+
+#if !defined(pylith_feassemble_testgeometrytet3d_hh)
+#define pylith_feassemble_testgeometrytet3d_hh
+
+#include "TestCellGeometry.hh"
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestGeometryTet3D;
+ class CellGeomData;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for Quadrature3D
+class pylith::feassemble::TestGeometryTet3D : public TestCellGeometry
+{ // class TestGeometryTet3D
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestGeometryTet3D );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testClone );
+ CPPUNIT_TEST( testGeomLowerDim );
+
+ CPPUNIT_TEST( testCellDim );
+ CPPUNIT_TEST( testSpaceDim );
+ CPPUNIT_TEST( testNumCorners );
+ CPPUNIT_TEST( testJacobian );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test geometryLowerDim().
+ void testGeomLowerDim(void);
+
+}; // class TestGeometryTet3D
+
+#endif // pylith_feassemble_testgeometrytet3d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTri2D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri2D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri2D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTri2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,58 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestGeometryTri2D.hh" // Implementation of class methods
+
+#include "pylith/feassemble/GeometryTri2D.hh"
+#include "pylith/feassemble/GeometryLine2D.hh"
+#include "pylith/feassemble/GeometryPoint2D.hh"
+
+#include "data/GeomDataTri2D.hh"
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestGeometryTri2D );
+
+// ----------------------------------------------------------------------
+// Setup test data.
+void
+pylith::feassemble::TestGeometryTri2D::setUp(void)
+{ // setUp
+ _object = new GeometryTri2D();
+ _data = new GeomDataTri2D();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Test constructor
+void
+pylith::feassemble::TestGeometryTri2D::testConstructor(void)
+{ // testConstructor
+ GeometryTri2D geometry;
+} // testConstructor
+
+// ----------------------------------------------------------------------
+// Test geometryLowerDim().
+void
+pylith::feassemble::TestGeometryTri2D::testGeomLowerDim(void)
+{ // testGeomLowerDim
+ GeometryTri2D geometry;
+ CellGeometry* geometryLD = geometry.geometryLowerDim();
+ GeometryLine2D* geometryPt = dynamic_cast<GeometryLine2D*>(geometryLD);
+ CPPUNIT_ASSERT(0 != geometryPt);
+ GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
+ CPPUNIT_ASSERT(0 == geometryPt2);
+ delete geometryLD; geometryLD = 0;
+} // testGeomLowerDim
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTri2D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri2D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri2D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTri2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,68 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestGeometryTri2D.hh
+ *
+ * @brief C++ TestGeometryTri2D object
+ *
+ * C++ unit testing for TopologyAscii.
+ */
+
+#if !defined(pylith_feassemble_testgeometrytri2d_hh)
+#define pylith_feassemble_testgeometrytri2d_hh
+
+#include "TestCellGeometry.hh"
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestGeometryTri2D;
+ class CellGeomData;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for Quadrature2D
+class pylith::feassemble::TestGeometryTri2D : public TestCellGeometry
+{ // class TestGeometryTri2D
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestGeometryTri2D );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testClone );
+ CPPUNIT_TEST( testGeomLowerDim );
+
+ CPPUNIT_TEST( testCellDim );
+ CPPUNIT_TEST( testSpaceDim );
+ CPPUNIT_TEST( testNumCorners );
+ CPPUNIT_TEST( testJacobian );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test geometryLowerDim().
+ void testGeomLowerDim(void);
+
+}; // class TestGeometryTri2D
+
+#endif // pylith_feassemble_testgeometrytri2d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTri3D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri3D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTri3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,58 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+#include <portinfo>
+
+#include "TestGeometryTri3D.hh" // Implementation of class methods
+
+#include "pylith/feassemble/GeometryTri3D.hh"
+#include "pylith/feassemble/GeometryLine3D.hh"
+#include "pylith/feassemble/GeometryPoint2D.hh"
+
+#include "data/GeomDataTri3D.hh"
+
+// ----------------------------------------------------------------------
+CPPUNIT_TEST_SUITE_REGISTRATION( pylith::feassemble::TestGeometryTri3D );
+
+// ----------------------------------------------------------------------
+// Setup test data.
+void
+pylith::feassemble::TestGeometryTri3D::setUp(void)
+{ // setUp
+ _object = new GeometryTri3D();
+ _data = new GeomDataTri3D();
+} // setUp
+
+// ----------------------------------------------------------------------
+// Test constructor
+void
+pylith::feassemble::TestGeometryTri3D::testConstructor(void)
+{ // testConstructor
+ GeometryTri3D geometry;
+} // testConstructor
+
+// ----------------------------------------------------------------------
+// Test geometryLowerDim().
+void
+pylith::feassemble::TestGeometryTri3D::testGeomLowerDim(void)
+{ // testGeomLowerDim
+ GeometryTri3D geometry;
+ CellGeometry* geometryLD = geometry.geometryLowerDim();
+ GeometryLine3D* geometryPt = dynamic_cast<GeometryLine3D*>(geometryLD);
+ CPPUNIT_ASSERT(0 != geometryPt);
+ GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
+ CPPUNIT_ASSERT(0 == geometryPt2);
+ delete geometryLD; geometryLD = 0;
+} // testGeomLowerDim
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTri3D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri3D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestGeometryTri3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,68 @@
+// -*- C++ -*-
+//
+// ----------------------------------------------------------------------
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ----------------------------------------------------------------------
+//
+
+/**
+ * @file unittests/libtests/feassemble/TestGeometryTri3D.hh
+ *
+ * @brief C++ TestGeometryTri3D object
+ *
+ * C++ unit testing for TopologyAscii.
+ */
+
+#if !defined(pylith_feassemble_testgeometrytri3d_hh)
+#define pylith_feassemble_testgeometrytri3d_hh
+
+#include "TestCellGeometry.hh"
+
+/// Namespace for pylith package
+namespace pylith {
+ namespace feassemble {
+ class TestGeometryTri3D;
+ class CellGeomData;
+ } // feassemble
+} // pylith
+
+/// C++ unit testing for Quadrature3D
+class pylith::feassemble::TestGeometryTri3D : public TestCellGeometry
+{ // class TestGeometryTri3D
+
+ // CPPUNIT TEST SUITE /////////////////////////////////////////////////
+ CPPUNIT_TEST_SUITE( TestGeometryTri3D );
+
+ CPPUNIT_TEST( testConstructor );
+ CPPUNIT_TEST( testClone );
+ CPPUNIT_TEST( testGeomLowerDim );
+
+ CPPUNIT_TEST( testCellDim );
+ CPPUNIT_TEST( testSpaceDim );
+ CPPUNIT_TEST( testNumCorners );
+ CPPUNIT_TEST( testJacobian );
+
+ CPPUNIT_TEST_SUITE_END();
+
+ // PUBLIC METHODS /////////////////////////////////////////////////////
+public :
+
+ /// Setup data.
+ void setUp(void);
+
+ /// Test constructor.
+ void testConstructor(void);
+
+ /// Test geometryLowerDim().
+ void testGeomLowerDim(void);
+
+}; // class TestGeometryTri3D
+
+#endif // pylith_feassemble_testgeometrytri3d_hh
+
+// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/feassemble/TestQuadrature.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/feassemble/TestQuadrature.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/TestQuadrature.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -38,6 +38,7 @@
// CPPUNIT TEST SUITE /////////////////////////////////////////////////
CPPUNIT_TEST_SUITE( TestQuadrature );
+
CPPUNIT_TEST( testClone );
CPPUNIT_TEST( testMinJacobian );
CPPUNIT_TEST( testInitialize );
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/CellGeomData.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/CellGeomData.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/CellGeomData.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/CellGeomData.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,35 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "CellGeomData.hh"
+
+// ----------------------------------------------------------------------
+// Constructor
+pylith::feassemble::CellGeomData::CellGeomData(void) :
+ cellDim(0),
+ spaceDim(0),
+ numCorners(0),
+ numLocs(0),
+ vertices(0),
+ locations(0),
+ jacobian(0)
+{ // constructor
+} // constructor
+
+// ----------------------------------------------------------------------
+// Destructor
+pylith::feassemble::CellGeomData::~CellGeomData(void)
+{ // destructor
+} // destructor
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/CellGeomData.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/CellGeomData.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/CellGeomData.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/CellGeomData.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,52 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_feassemble_cellgeomdata_hh)
+#define pylith_feassemble_cellgeomdata_hh
+
+namespace pylith {
+ namespace feassemble {
+ class CellGeomData;
+ } // pylith
+} // feassemble
+
+class pylith::feassemble::CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public :
+
+ /// Constructor
+ CellGeomData(void);
+
+ /// Destructor
+ ~CellGeomData(void);
+
+// PUBLIC MEMBERS ///////////////////////////////////////////////////////
+public:
+
+ int cellDim; ///< Number of dimensions associated with cell
+ int spaceDim; ///< Number of dimensions in vertex coordinates
+ int numCorners; ///< Number of vertices in cell
+
+ int numLocs; ///< Number of locations
+
+ double* vertices; ///< Coordinates of vertices of cell
+ double* locations; ///< Locations where Jacobian is computed
+ double* jacobian; ///< Jacobian at locations
+
+};
+
+#endif // pylith_feassemble_cellgeomdata_hh
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataHex3D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataHex3D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataHex3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataHex3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,73 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "GeomDataHex3D.hh"
+
+const int pylith::feassemble::GeomDataHex3D::_cellDim = 3;
+
+const int pylith::feassemble::GeomDataHex3D::_spaceDim = 3;
+
+const int pylith::feassemble::GeomDataHex3D::_numCorners = 8;
+
+const int pylith::feassemble::GeomDataHex3D::_numLocs = 9;
+
+const double pylith::feassemble::GeomDataHex3D::_vertices[] = {
+ -1.3, -1.4, -0.8,
+ 1.2, -1.5, -0.9,
+ 1.4, 0.7, -1.2,
+ -1.6, 0.4, -0.5,
+ -1.7, -0.8, 1.8,
+ 2.1, -1.7, 0.6,
+ 2.3, 0.2, 1.9,
+ -1.8, 0.3, 2.2
+};
+
+const double pylith::feassemble::GeomDataHex3D::_locations[] = {
+ 0.0, 0.0, 0.0,
+ 1.0, 0.0, 0.0,
+ 0.0, 1.0, 0.0,
+ 1.0, 1.0, 0.0,
+ 0.0, 0.0, 1.0,
+ 1.0, 0.0, 1.0,
+ 0.0, 1.0, 1.0,
+ 1.0, 1.0, 1.0,
+ 0.2, 0.8, 0.7
+};
+
+const double pylith::feassemble::GeomDataHex3D::_jacobian[] = {
+ 2.5, -0.3, -0.4, -0.1, 1.8, 0.6, -0.1, 0.3, 2.6,
+ 2.5, 0.2, 0.9, -0.1, 2.2, -0.2, -0.1, -0.3, 1.5,
+ 3.0, -0.3, -0.2, 0.3, 1.8, -0.1, -0.7, 0.3, 2.7,
+ 3.0, 0.2, 0.9, 0.3, 2.2, -0.5, -0.7, -0.3, 3.1,
+ 3.8, -0.1, -0.4, -0.9, 1.1, 0.6, -1.2, 0.4, 2.6,
+ 3.8, 0.2, 0.9, -0.9, 1.9, -0.2, -1.2, 1.3, 1.5,
+ 4.1, -0.1, -0.2, -0.1, 1.1, -0.1, -0.3, 0.4, 2.7,
+ 4.1, 0.2, 0.9, -0.1, 1.9, -0.5, -0.3, 1.3, 3.1,
+ 3.698, -0.088, -0.012, -0.116, 1.446, -0.056, -0.51, 0.46, 2.7
+};
+
+pylith::feassemble::GeomDataHex3D::GeomDataHex3D(void)
+{ // constructor
+ cellDim = _cellDim;
+ spaceDim = _spaceDim;
+ numCorners = _numCorners;
+ numLocs = _numLocs;
+ vertices = const_cast<double*>(_vertices);
+ locations = const_cast<double*>(_locations);
+ jacobian = const_cast<double*>(_jacobian);
+} // constructor
+
+pylith::feassemble::GeomDataHex3D::~GeomDataHex3D(void)
+{}
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataHex3D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataHex3D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataHex3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataHex3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_meshio_geomdatahex3d_hh)
+#define pylith_meshio_geomdatahex3d_hh
+
+#include "CellGeomData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class GeomDataHex3D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeomDataHex3D : public CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public:
+
+ /// Constructor
+ GeomDataHex3D(void);
+
+ /// Destructor
+ ~GeomDataHex3D(void);
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private:
+
+ static const int _cellDim; ///< Number of dimensions associated with cell
+ static const int _spaceDim; ///< Number of dimensions in vertex coordinates
+ static const int _numCorners; ///< Number of vertices in cell
+
+ static const int _numLocs; ///< Number of locations for computing Jacobian
+
+ static const double _vertices[]; ///< Coordinates of cell's vertices
+ static const double _locations[]; ///< Locations to compute Jacobian
+ static const double _jacobian[]; ///< Jacobian at locations
+
+};
+
+#endif // pylith_meshio_geomdatahex3d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine1D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine1D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine1D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine1D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "GeomDataLine1D.hh"
+
+const int pylith::feassemble::GeomDataLine1D::_cellDim = 1;
+
+const int pylith::feassemble::GeomDataLine1D::_spaceDim = 1;
+
+const int pylith::feassemble::GeomDataLine1D::_numCorners = 2;
+
+const int pylith::feassemble::GeomDataLine1D::_numLocs = 2;
+
+const double pylith::feassemble::GeomDataLine1D::_vertices[] = {
+ 1.2,
+ 4.5
+};
+
+const double pylith::feassemble::GeomDataLine1D::_locations[] = {
+ 0.345,
+ 0.459
+};
+
+const double pylith::feassemble::GeomDataLine1D::_jacobian[] = {
+ 3.3,
+ 3.3
+};
+
+pylith::feassemble::GeomDataLine1D::GeomDataLine1D(void)
+{ // constructor
+ cellDim = _cellDim;
+ spaceDim = _spaceDim;
+ numCorners = _numCorners;
+ numLocs = _numLocs;
+ vertices = const_cast<double*>(_vertices);
+ locations = const_cast<double*>(_locations);
+ jacobian = const_cast<double*>(_jacobian);
+} // constructor
+
+pylith::feassemble::GeomDataLine1D::~GeomDataLine1D(void)
+{}
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine1D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine1D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine1D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine1D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_meshio_geomdataline1d_hh)
+#define pylith_meshio_geomdataline1d_hh
+
+#include "CellGeomData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class GeomDataLine1D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeomDataLine1D : public CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public:
+
+ /// Constructor
+ GeomDataLine1D(void);
+
+ /// Destructor
+ ~GeomDataLine1D(void);
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private:
+
+ static const int _cellDim; ///< Number of dimensions associated with cell
+ static const int _spaceDim; ///< Number of dimensions in vertex coordinates
+ static const int _numCorners; ///< Number of vertices in cell
+
+ static const int _numLocs; ///< Number of locations for computing Jacobian
+
+ static const double _vertices[]; ///< Coordinates of cell's vertices
+ static const double _locations[]; ///< Locations to compute Jacobian
+ static const double _jacobian[]; ///< Jacobian at locations
+
+};
+
+#endif // pylith_meshio_geomdataline1d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine2D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine2D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine2D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "GeomDataLine2D.hh"
+
+const int pylith::feassemble::GeomDataLine2D::_cellDim = 1;
+
+const int pylith::feassemble::GeomDataLine2D::_spaceDim = 2;
+
+const int pylith::feassemble::GeomDataLine2D::_numCorners = 2;
+
+const int pylith::feassemble::GeomDataLine2D::_numLocs = 2;
+
+const double pylith::feassemble::GeomDataLine2D::_vertices[] = {
+ 1.2, 2.4,
+ 4.5, -1.4
+};
+
+const double pylith::feassemble::GeomDataLine2D::_locations[] = {
+ 0.345,
+ 0.459
+};
+
+const double pylith::feassemble::GeomDataLine2D::_jacobian[] = {
+ 3.3, -3.8,
+ 3.3, -3.8
+};
+
+pylith::feassemble::GeomDataLine2D::GeomDataLine2D(void)
+{ // constructor
+ cellDim = _cellDim;
+ spaceDim = _spaceDim;
+ numCorners = _numCorners;
+ numLocs = _numLocs;
+ vertices = const_cast<double*>(_vertices);
+ locations = const_cast<double*>(_locations);
+ jacobian = const_cast<double*>(_jacobian);
+} // constructor
+
+pylith::feassemble::GeomDataLine2D::~GeomDataLine2D(void)
+{}
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine2D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine2D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine2D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_meshio_geomdataline2d_hh)
+#define pylith_meshio_geomdataline2d_hh
+
+#include "CellGeomData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class GeomDataLine2D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeomDataLine2D : public CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public:
+
+ /// Constructor
+ GeomDataLine2D(void);
+
+ /// Destructor
+ ~GeomDataLine2D(void);
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private:
+
+ static const int _cellDim; ///< Number of dimensions associated with cell
+ static const int _spaceDim; ///< Number of dimensions in vertex coordinates
+ static const int _numCorners; ///< Number of vertices in cell
+
+ static const int _numLocs; ///< Number of locations for computing Jacobian
+
+ static const double _vertices[]; ///< Coordinates of cell's vertices
+ static const double _locations[]; ///< Locations to compute Jacobian
+ static const double _jacobian[]; ///< Jacobian at locations
+
+};
+
+#endif // pylith_meshio_geomdataline2d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine3D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine3D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "GeomDataLine3D.hh"
+
+const int pylith::feassemble::GeomDataLine3D::_cellDim = 1;
+
+const int pylith::feassemble::GeomDataLine3D::_spaceDim = 3;
+
+const int pylith::feassemble::GeomDataLine3D::_numCorners = 2;
+
+const int pylith::feassemble::GeomDataLine3D::_numLocs = 2;
+
+const double pylith::feassemble::GeomDataLine3D::_vertices[] = {
+ 1.2, 2.3, 2.4,
+ 4.5, -1.5, 5.3
+};
+
+const double pylith::feassemble::GeomDataLine3D::_locations[] = {
+ 0.345,
+ 0.459
+};
+
+const double pylith::feassemble::GeomDataLine3D::_jacobian[] = {
+ 3.3, -3.8, 2.9,
+ 3.3, -3.8, 2.9
+};
+
+pylith::feassemble::GeomDataLine3D::GeomDataLine3D(void)
+{ // constructor
+ cellDim = _cellDim;
+ spaceDim = _spaceDim;
+ numCorners = _numCorners;
+ numLocs = _numLocs;
+ vertices = const_cast<double*>(_vertices);
+ locations = const_cast<double*>(_locations);
+ jacobian = const_cast<double*>(_jacobian);
+} // constructor
+
+pylith::feassemble::GeomDataLine3D::~GeomDataLine3D(void)
+{}
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine3D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine3D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataLine3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_meshio_geomdataline3d_hh)
+#define pylith_meshio_geomdataline3d_hh
+
+#include "CellGeomData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class GeomDataLine3D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeomDataLine3D : public CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public:
+
+ /// Constructor
+ GeomDataLine3D(void);
+
+ /// Destructor
+ ~GeomDataLine3D(void);
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private:
+
+ static const int _cellDim; ///< Number of dimensions associated with cell
+ static const int _spaceDim; ///< Number of dimensions in vertex coordinates
+ static const int _numCorners; ///< Number of vertices in cell
+
+ static const int _numLocs; ///< Number of locations for computing Jacobian
+
+ static const double _vertices[]; ///< Coordinates of cell's vertices
+ static const double _locations[]; ///< Locations to compute Jacobian
+ static const double _jacobian[]; ///< Jacobian at locations
+
+};
+
+#endif // pylith_meshio_geomdataline3d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint1D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint1D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint1D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint1D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "GeomDataPoint1D.hh"
+
+const int pylith::feassemble::GeomDataPoint1D::_cellDim = 0;
+
+const int pylith::feassemble::GeomDataPoint1D::_spaceDim = 1;
+
+const int pylith::feassemble::GeomDataPoint1D::_numCorners = 1;
+
+const int pylith::feassemble::GeomDataPoint1D::_numLocs = 2;
+
+const double pylith::feassemble::GeomDataPoint1D::_vertices[] = {
+ 1.2,
+ 4.5
+};
+
+const double pylith::feassemble::GeomDataPoint1D::_locations[] = {
+ 0.0,
+ 0.0
+};
+
+const double pylith::feassemble::GeomDataPoint1D::_jacobian[] = {
+ 1.0,
+ 1.0
+};
+
+pylith::feassemble::GeomDataPoint1D::GeomDataPoint1D(void)
+{ // constructor
+ cellDim = _cellDim;
+ spaceDim = _spaceDim;
+ numCorners = _numCorners;
+ numLocs = _numLocs;
+ vertices = const_cast<double*>(_vertices);
+ locations = const_cast<double*>(_locations);
+ jacobian = const_cast<double*>(_jacobian);
+} // constructor
+
+pylith::feassemble::GeomDataPoint1D::~GeomDataPoint1D(void)
+{}
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint1D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint1D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint1D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint1D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_meshio_geomdatapoint1d_hh)
+#define pylith_meshio_geomdatapoint1d_hh
+
+#include "CellGeomData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class GeomDataPoint1D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeomDataPoint1D : public CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public:
+
+ /// Constructor
+ GeomDataPoint1D(void);
+
+ /// Destructor
+ ~GeomDataPoint1D(void);
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private:
+
+ static const int _cellDim; ///< Number of dimensions associated with cell
+ static const int _spaceDim; ///< Number of dimensions in vertex coordinates
+ static const int _numCorners; ///< Number of vertices in cell
+
+ static const int _numLocs; ///< Number of locations for computing Jacobian
+
+ static const double _vertices[]; ///< Coordinates of cell's vertices
+ static const double _locations[]; ///< Locations to compute Jacobian
+ static const double _jacobian[]; ///< Jacobian at locations
+
+};
+
+#endif // pylith_meshio_geomdatapoint1d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint2D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint2D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint2D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "GeomDataPoint2D.hh"
+
+const int pylith::feassemble::GeomDataPoint2D::_cellDim = 0;
+
+const int pylith::feassemble::GeomDataPoint2D::_spaceDim = 2;
+
+const int pylith::feassemble::GeomDataPoint2D::_numCorners = 1;
+
+const int pylith::feassemble::GeomDataPoint2D::_numLocs = 2;
+
+const double pylith::feassemble::GeomDataPoint2D::_vertices[] = {
+ 1.3, 5.4,
+ 4.1, 7.5
+};
+
+const double pylith::feassemble::GeomDataPoint2D::_locations[] = {
+ 0.0,
+ 0.0
+};
+
+const double pylith::feassemble::GeomDataPoint2D::_jacobian[] = {
+ 1.0,
+ 1.0
+};
+
+pylith::feassemble::GeomDataPoint2D::GeomDataPoint2D(void)
+{ // constructor
+ cellDim = _cellDim;
+ spaceDim = _spaceDim;
+ numCorners = _numCorners;
+ numLocs = _numLocs;
+ vertices = const_cast<double*>(_vertices);
+ locations = const_cast<double*>(_locations);
+ jacobian = const_cast<double*>(_jacobian);
+} // constructor
+
+pylith::feassemble::GeomDataPoint2D::~GeomDataPoint2D(void)
+{}
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint2D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint2D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint2D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_meshio_geomdatapoint2d_hh)
+#define pylith_meshio_geomdatapoint2d_hh
+
+#include "CellGeomData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class GeomDataPoint2D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeomDataPoint2D : public CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public:
+
+ /// Constructor
+ GeomDataPoint2D(void);
+
+ /// Destructor
+ ~GeomDataPoint2D(void);
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private:
+
+ static const int _cellDim; ///< Number of dimensions associated with cell
+ static const int _spaceDim; ///< Number of dimensions in vertex coordinates
+ static const int _numCorners; ///< Number of vertices in cell
+
+ static const int _numLocs; ///< Number of locations for computing Jacobian
+
+ static const double _vertices[]; ///< Coordinates of cell's vertices
+ static const double _locations[]; ///< Locations to compute Jacobian
+ static const double _jacobian[]; ///< Jacobian at locations
+
+};
+
+#endif // pylith_meshio_geomdatapoint2d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint3D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint3D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "GeomDataPoint3D.hh"
+
+const int pylith::feassemble::GeomDataPoint3D::_cellDim = 0;
+
+const int pylith::feassemble::GeomDataPoint3D::_spaceDim = 3;
+
+const int pylith::feassemble::GeomDataPoint3D::_numCorners = 1;
+
+const int pylith::feassemble::GeomDataPoint3D::_numLocs = 2;
+
+const double pylith::feassemble::GeomDataPoint3D::_vertices[] = {
+ 1.22, 4.35, 6.56,
+ 4.45, 5.62, 2.55
+};
+
+const double pylith::feassemble::GeomDataPoint3D::_locations[] = {
+ 0.0,
+ 0.0
+};
+
+const double pylith::feassemble::GeomDataPoint3D::_jacobian[] = {
+ 1.0,
+ 1.0
+};
+
+pylith::feassemble::GeomDataPoint3D::GeomDataPoint3D(void)
+{ // constructor
+ cellDim = _cellDim;
+ spaceDim = _spaceDim;
+ numCorners = _numCorners;
+ numLocs = _numLocs;
+ vertices = const_cast<double*>(_vertices);
+ locations = const_cast<double*>(_locations);
+ jacobian = const_cast<double*>(_jacobian);
+} // constructor
+
+pylith::feassemble::GeomDataPoint3D::~GeomDataPoint3D(void)
+{}
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint3D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint3D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataPoint3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_meshio_geomdatapoint3d_hh)
+#define pylith_meshio_geomdatapoint3d_hh
+
+#include "CellGeomData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class GeomDataPoint3D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeomDataPoint3D : public CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public:
+
+ /// Constructor
+ GeomDataPoint3D(void);
+
+ /// Destructor
+ ~GeomDataPoint3D(void);
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private:
+
+ static const int _cellDim; ///< Number of dimensions associated with cell
+ static const int _spaceDim; ///< Number of dimensions in vertex coordinates
+ static const int _numCorners; ///< Number of vertices in cell
+
+ static const int _numLocs; ///< Number of locations for computing Jacobian
+
+ static const double _vertices[]; ///< Coordinates of cell's vertices
+ static const double _locations[]; ///< Locations to compute Jacobian
+ static const double _jacobian[]; ///< Jacobian at locations
+
+};
+
+#endif // pylith_meshio_geomdatapoint3d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataQuad2D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad2D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad2D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataQuad2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,61 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "GeomDataQuad2D.hh"
+
+const int pylith::feassemble::GeomDataQuad2D::_cellDim = 2;
+
+const int pylith::feassemble::GeomDataQuad2D::_spaceDim = 2;
+
+const int pylith::feassemble::GeomDataQuad2D::_numCorners = 4;
+
+const int pylith::feassemble::GeomDataQuad2D::_numLocs = 5;
+
+const double pylith::feassemble::GeomDataQuad2D::_vertices[] = {
+ 0.3, 0.1,
+ 0.8, -0.2,
+ 0.7, 1.2,
+ -0.1, 1.6
+};
+
+const double pylith::feassemble::GeomDataQuad2D::_locations[] = {
+ 0.0, 0.0,
+ 1.0, 0.0,
+ 0.0, 1.0,
+ 1.0, 1.0,
+ 0.4, 0.7
+};
+
+const double pylith::feassemble::GeomDataQuad2D::_jacobian[] = {
+ 0.5, -0.4, -0.3, 1.5,
+ 0.5, -0.1, -0.3, 1.4,
+ 0.8, -0.4, -0.4, 1.5,
+ 0.8, -0.1, -0.4, 1.4,
+ 0.71, -0.28, -0.37, 1.46
+};
+
+pylith::feassemble::GeomDataQuad2D::GeomDataQuad2D(void)
+{ // constructor
+ cellDim = _cellDim;
+ spaceDim = _spaceDim;
+ numCorners = _numCorners;
+ numLocs = _numLocs;
+ vertices = const_cast<double*>(_vertices);
+ locations = const_cast<double*>(_locations);
+ jacobian = const_cast<double*>(_jacobian);
+} // constructor
+
+pylith::feassemble::GeomDataQuad2D::~GeomDataQuad2D(void)
+{}
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataQuad2D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad2D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad2D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataQuad2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_meshio_geomdataquad2d_hh)
+#define pylith_meshio_geomdataquad2d_hh
+
+#include "CellGeomData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class GeomDataQuad2D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeomDataQuad2D : public CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public:
+
+ /// Constructor
+ GeomDataQuad2D(void);
+
+ /// Destructor
+ ~GeomDataQuad2D(void);
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private:
+
+ static const int _cellDim; ///< Number of dimensions associated with cell
+ static const int _spaceDim; ///< Number of dimensions in vertex coordinates
+ static const int _numCorners; ///< Number of vertices in cell
+
+ static const int _numLocs; ///< Number of locations for computing Jacobian
+
+ static const double _vertices[]; ///< Coordinates of cell's vertices
+ static const double _locations[]; ///< Locations to compute Jacobian
+ static const double _jacobian[]; ///< Jacobian at locations
+
+};
+
+#endif // pylith_meshio_geomdataquad2d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataQuad3D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad3D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataQuad3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,61 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "GeomDataQuad3D.hh"
+
+const int pylith::feassemble::GeomDataQuad3D::_cellDim = 2;
+
+const int pylith::feassemble::GeomDataQuad3D::_spaceDim = 3;
+
+const int pylith::feassemble::GeomDataQuad3D::_numCorners = 4;
+
+const int pylith::feassemble::GeomDataQuad3D::_numLocs = 5;
+
+const double pylith::feassemble::GeomDataQuad3D::_vertices[] = {
+ 1.1, -0.9, 0.1,
+ 1.0, 0.7, 0.8,
+ -0.4, 0.6, 1.2,
+ -0.3, -1.3, -0.1
+};
+
+const double pylith::feassemble::GeomDataQuad3D::_locations[] = {
+ 0.0, 0.0,
+ 1.0, 0.0,
+ 0.0, 1.0,
+ 1.0, 1.0,
+ 0.3, 0.8
+};
+
+const double pylith::feassemble::GeomDataQuad3D::_jacobian[] = {
+ -0.1, -1.4, 1.6, -0.4, 0.7, -0.2,
+ -0.1, -1.4, 1.6, -0.1, 0.7, 0.4,
+ -0.1, -1.4, 1.9, -0.4, 1.3, -0.2,
+ -0.1, -1.4, 1.9, -0.1, 1.3, 0.4,
+ -0.1, -1.4, 1.84, -0.31, 1.18, -0.02
+};
+
+pylith::feassemble::GeomDataQuad3D::GeomDataQuad3D(void)
+{ // constructor
+ cellDim = _cellDim;
+ spaceDim = _spaceDim;
+ numCorners = _numCorners;
+ numLocs = _numLocs;
+ vertices = const_cast<double*>(_vertices);
+ locations = const_cast<double*>(_locations);
+ jacobian = const_cast<double*>(_jacobian);
+} // constructor
+
+pylith::feassemble::GeomDataQuad3D::~GeomDataQuad3D(void)
+{}
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataQuad3D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad3D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataQuad3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_meshio_geomdataquad3d_hh)
+#define pylith_meshio_geomdataquad3d_hh
+
+#include "CellGeomData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class GeomDataQuad3D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeomDataQuad3D : public CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public:
+
+ /// Constructor
+ GeomDataQuad3D(void);
+
+ /// Destructor
+ ~GeomDataQuad3D(void);
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private:
+
+ static const int _cellDim; ///< Number of dimensions associated with cell
+ static const int _spaceDim; ///< Number of dimensions in vertex coordinates
+ static const int _numCorners; ///< Number of vertices in cell
+
+ static const int _numLocs; ///< Number of locations for computing Jacobian
+
+ static const double _vertices[]; ///< Coordinates of cell's vertices
+ static const double _locations[]; ///< Locations to compute Jacobian
+ static const double _jacobian[]; ///< Jacobian at locations
+
+};
+
+#endif // pylith_meshio_geomdataquad3d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTet3D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTet3D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTet3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTet3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,55 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "GeomDataTet3D.hh"
+
+const int pylith::feassemble::GeomDataTet3D::_cellDim = 3;
+
+const int pylith::feassemble::GeomDataTet3D::_spaceDim = 3;
+
+const int pylith::feassemble::GeomDataTet3D::_numCorners = 4;
+
+const int pylith::feassemble::GeomDataTet3D::_numLocs = 2;
+
+const double pylith::feassemble::GeomDataTet3D::_vertices[] = {
+ -1.3, -0.8, 0.2,
+ 2.1, -0.7, 0.1,
+ -1.0, 2.4, -0.3,
+ -0.1, 0.2, 3.0
+};
+
+const double pylith::feassemble::GeomDataTet3D::_locations[] = {
+ 0.345, 0.397, 0.319,
+ 0.459, 0.727, 0.693
+};
+
+const double pylith::feassemble::GeomDataTet3D::_jacobian[] = {
+ 3.4, 0.3, 1.2, 0.1, 3.2, 1.0, -0.1, -0.5, 2.8,
+ 3.4, 0.3, 1.2, 0.1, 3.2, 1.0, -0.1, -0.5, 2.8
+};
+
+pylith::feassemble::GeomDataTet3D::GeomDataTet3D(void)
+{ // constructor
+ cellDim = _cellDim;
+ spaceDim = _spaceDim;
+ numCorners = _numCorners;
+ numLocs = _numLocs;
+ vertices = const_cast<double*>(_vertices);
+ locations = const_cast<double*>(_locations);
+ jacobian = const_cast<double*>(_jacobian);
+} // constructor
+
+pylith::feassemble::GeomDataTet3D::~GeomDataTet3D(void)
+{}
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTet3D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTet3D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTet3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTet3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_meshio_geomdatatet3d_hh)
+#define pylith_meshio_geomdatatet3d_hh
+
+#include "CellGeomData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class GeomDataTet3D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeomDataTet3D : public CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public:
+
+ /// Constructor
+ GeomDataTet3D(void);
+
+ /// Destructor
+ ~GeomDataTet3D(void);
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private:
+
+ static const int _cellDim; ///< Number of dimensions associated with cell
+ static const int _spaceDim; ///< Number of dimensions in vertex coordinates
+ static const int _numCorners; ///< Number of vertices in cell
+
+ static const int _numLocs; ///< Number of locations for computing Jacobian
+
+ static const double _vertices[]; ///< Coordinates of cell's vertices
+ static const double _locations[]; ///< Locations to compute Jacobian
+ static const double _jacobian[]; ///< Jacobian at locations
+
+};
+
+#endif // pylith_meshio_geomdatatet3d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTri2D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri2D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri2D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTri2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,54 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "GeomDataTri2D.hh"
+
+const int pylith::feassemble::GeomDataTri2D::_cellDim = 2;
+
+const int pylith::feassemble::GeomDataTri2D::_spaceDim = 2;
+
+const int pylith::feassemble::GeomDataTri2D::_numCorners = 3;
+
+const int pylith::feassemble::GeomDataTri2D::_numLocs = 2;
+
+const double pylith::feassemble::GeomDataTri2D::_vertices[] = {
+ 1.0, 1.2,
+ 3.0, 2.0,
+ 1.5, 4.0
+};
+
+const double pylith::feassemble::GeomDataTri2D::_locations[] = {
+ 0.345, 0.397,
+ 0.459, 0.727
+};
+
+const double pylith::feassemble::GeomDataTri2D::_jacobian[] = {
+ 2.0, 0.5, 0.8, 2.8,
+ 2.0, 0.5, 0.8, 2.8
+};
+
+pylith::feassemble::GeomDataTri2D::GeomDataTri2D(void)
+{ // constructor
+ cellDim = _cellDim;
+ spaceDim = _spaceDim;
+ numCorners = _numCorners;
+ numLocs = _numLocs;
+ vertices = const_cast<double*>(_vertices);
+ locations = const_cast<double*>(_locations);
+ jacobian = const_cast<double*>(_jacobian);
+} // constructor
+
+pylith::feassemble::GeomDataTri2D::~GeomDataTri2D(void)
+{}
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTri2D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri2D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri2D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTri2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_meshio_geomdatatri2d_hh)
+#define pylith_meshio_geomdatatri2d_hh
+
+#include "CellGeomData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class GeomDataTri2D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeomDataTri2D : public CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public:
+
+ /// Constructor
+ GeomDataTri2D(void);
+
+ /// Destructor
+ ~GeomDataTri2D(void);
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private:
+
+ static const int _cellDim; ///< Number of dimensions associated with cell
+ static const int _spaceDim; ///< Number of dimensions in vertex coordinates
+ static const int _numCorners; ///< Number of vertices in cell
+
+ static const int _numLocs; ///< Number of locations for computing Jacobian
+
+ static const double _vertices[]; ///< Coordinates of cell's vertices
+ static const double _locations[]; ///< Locations to compute Jacobian
+ static const double _jacobian[]; ///< Jacobian at locations
+
+};
+
+#endif // pylith_meshio_geomdatatri2d_hh
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTri3D.cc (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri3D.cc)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri3D.cc 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTri3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,54 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#include "GeomDataTri3D.hh"
+
+const int pylith::feassemble::GeomDataTri3D::_cellDim = 2;
+
+const int pylith::feassemble::GeomDataTri3D::_spaceDim = 3;
+
+const int pylith::feassemble::GeomDataTri3D::_numCorners = 3;
+
+const int pylith::feassemble::GeomDataTri3D::_numLocs = 2;
+
+const double pylith::feassemble::GeomDataTri3D::_vertices[] = {
+ 1.2, 1.3, -0.4,
+ -0.3, -1.7, 0.1,
+ -0.1, 0.4, 1.4
+};
+
+const double pylith::feassemble::GeomDataTri3D::_locations[] = {
+ 0.345, 0.397,
+ 0.459, 0.727
+};
+
+const double pylith::feassemble::GeomDataTri3D::_jacobian[] = {
+ -1.5, -1.3, -3.0, -0.9, 0.5, 1.8,
+ -1.5, -1.3, -3.0, -0.9, 0.5, 1.8
+};
+
+pylith::feassemble::GeomDataTri3D::GeomDataTri3D(void)
+{ // constructor
+ cellDim = _cellDim;
+ spaceDim = _spaceDim;
+ numCorners = _numCorners;
+ numLocs = _numLocs;
+ vertices = const_cast<double*>(_vertices);
+ locations = const_cast<double*>(_locations);
+ jacobian = const_cast<double*>(_jacobian);
+} // constructor
+
+pylith::feassemble::GeomDataTri3D::~GeomDataTri3D(void)
+{}
+
+
+// End of file
Copied: short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTri3D.hh (from rev 7088, short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri3D.hh)
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri3D.hh 2007-06-07 14:02:13 UTC (rev 7088)
+++ short/3D/PyLith/trunk/unittests/libtests/feassemble/data/GeomDataTri3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,53 @@
+// -*- C++ -*-
+//
+// ======================================================================
+//
+// Brad T. Aagaard
+// U.S. Geological Survey
+//
+// {LicenseText}
+//
+// ======================================================================
+//
+
+#if !defined(pylith_meshio_geomdatatri3d_hh)
+#define pylith_meshio_geomdatatri3d_hh
+
+#include "CellGeomData.hh"
+
+namespace pylith {
+ namespace feassemble {
+ class GeomDataTri3D;
+ } // feassemble
+} // pylith
+
+class pylith::feassemble::GeomDataTri3D : public CellGeomData
+{
+
+// PUBLIC METHODS ///////////////////////////////////////////////////////
+public:
+
+ /// Constructor
+ GeomDataTri3D(void);
+
+ /// Destructor
+ ~GeomDataTri3D(void);
+
+// PRIVATE MEMBERS //////////////////////////////////////////////////////
+private:
+
+ static const int _cellDim; ///< Number of dimensions associated with cell
+ static const int _spaceDim; ///< Number of dimensions in vertex coordinates
+ static const int _numCorners; ///< Number of vertices in cell
+
+ static const int _numLocs; ///< Number of locations for computing Jacobian
+
+ static const double _vertices[]; ///< Coordinates of cell's vertices
+ static const double _locations[]; ///< Locations to compute Jacobian
+ static const double _jacobian[]; ///< Jacobian at locations
+
+};
+
+#endif // pylith_meshio_geomdatatri3d_hh
+
+// End of file
Modified: short/3D/PyLith/trunk/unittests/libtests/topology/Makefile.am
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/Makefile.am 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/Makefile.am 2007-06-07 23:37:26 UTC (rev 7094)
@@ -21,68 +21,16 @@
# Primary source files
testtopology_SOURCES = \
- TestCellGeometry.cc \
TestFieldsManager.cc \
- TestGeometryPoint1D.cc \
- TestGeometryPoint2D.cc \
- TestGeometryPoint3D.cc \
- TestGeometryLine1D.cc \
- TestGeometryLine2D.cc \
- TestGeometryLine3D.cc \
- TestGeometryTri2D.cc \
- TestGeometryTri3D.cc \
- TestGeometryQuad2D.cc \
- TestGeometryQuad3D.cc \
- TestGeometryTet3D.cc \
- TestGeometryHex3D.cc \
test_topology.cc
noinst_HEADERS =
- TestCellGeometry.hh \
- TestFieldsManager.hh \
- TestGeometryPoint1D.hh \
- TestGeometryPoint2D.hh \
- TestGeometryPoint3D.hh \
- TestGeometryLine1D.hh \
- TestGeometryLine2D.hh \
- TestGeometryLine3D.hh \
- TestGeometryTri2D.hh \
- TestGeometryTri3D.hh \
- TestGeometryQuad2D.hh \
- TestGeometryQuad3D.hh \
- TestGeometryTet3D.hh \
- TestGeometryHex3D.hh
+ TestFieldsManager.hh
# Source files associated with testing data
-testtopology_SOURCES += \
- data/CellGeomData.cc \
- data/GeomDataPoint1D.cc \
- data/GeomDataPoint2D.cc \
- data/GeomDataPoint3D.cc \
- data/GeomDataLine1D.cc \
- data/GeomDataLine2D.cc \
- data/GeomDataLine3D.cc \
- data/GeomDataTri2D.cc \
- data/GeomDataTri3D.cc \
- data/GeomDataQuad2D.cc \
- data/GeomDataQuad3D.cc \
- data/GeomDataTet3D.cc \
- data/GeomDataHex3D.cc
+testtopology_SOURCES +=
noinst_HEADERS +=
- data/CellGeomData.hh \
- data/GeometryDataPoint1D.hh \
- data/GeometryDataPoint2D.hh \
- data/GeometryDataPoint3D.hh \
- data/GeometryDataLine1D.hh \
- data/GeometryDataLine2D.hh \
- data/GeometryDataLine3D.hh \
- data/GeometryDataTri2D.hh \
- data/GeometryDataTri3D.hh \
- data/GeometryDataQuad2D.hh \
- data/GeometryDataQuad3D.hh \
- data/GeometryDataTet3D.hh \
- data/GeometryDataHex3D.hh
testtopology_LDFLAGS = $(PETSC_LIB) $(PYTHON_BLDLIBRARY)
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestCellGeometry.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestCellGeometry.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestCellGeometry.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,86 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestCellGeometry.hh" // Implementation of class methods
-
-#include "pylith/topology/CellGeometry.hh" // USES CellGeometry
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/CellGeomData.hh" // USES CellGeomData
-
-// ----------------------------------------------------------------------
-// Test cellDim().
-void
-pylith::topology::TestCellGeometry::_testCellDim(const CellGeometry& geometry,
- const CellGeomData& data)
-{ // _testCellDim
- CPPUNIT_ASSERT_EQUAL(data.cellDim, geometry.cellDim());
-} // _testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim().
-void
-pylith::topology::TestCellGeometry::_testSpaceDim(const CellGeometry& geometry,
- const CellGeomData& data)
-{ // _testSpaceDim
- CPPUNIT_ASSERT_EQUAL(data.spaceDim, geometry.spaceDim());
-} // _testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners().
-void
-pylith::topology::TestCellGeometry::_testNumCorners(const CellGeometry& geometry,
- const CellGeomData& data)
-{ // _testNumCorners
- CPPUNIT_ASSERT_EQUAL(data.numCorners, geometry.numCorners());
-} // _testNumConers
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestCellGeometry::_testJacobian(const CellGeometry* geometry,
- const CellGeomData& data)
-{ // _testJacobian
- const int cellDim = data.cellDim;
- const int spaceDim = data.spaceDim;
- const int numCorners = data.numCorners;
-
- const int numLocs = data.numLocs;
-
- CPPUNIT_ASSERT_EQUAL(cellDim, geometry->cellDim());
- CPPUNIT_ASSERT_EQUAL(spaceDim, geometry->spaceDim());
- CPPUNIT_ASSERT_EQUAL(numCorners, geometry->numCorners());
-
- double_array jacobian(cellDim*spaceDim);
- for (int iLoc=0; iLoc < numLocs; ++iLoc) {
- double_array vertices(data.vertices, numCorners*spaceDim);
- double_array location(&data.locations[iLoc*cellDim], cellDim);
-
- geometry->jacobian(&jacobian, vertices, location);
-
- const int size = jacobian.size();
- const int index = iLoc*cellDim*spaceDim;
- const double tolerance = 1.0e-06;
- for (int i=0; i < size; ++i)
- if (data.jacobian[index+i] < 1.0)
- CPPUNIT_ASSERT_DOUBLES_EQUAL(data.jacobian[index+i], jacobian[i],
- tolerance);
- else
- CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0, jacobian[i]/data.jacobian[index+i],
- tolerance);
- } // for
-} // _testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestCellGeometry.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestCellGeometry.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestCellGeometry.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,81 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestCellGeometry.hh
- *
- * @brief C++ TestCellGeometry object
- *
- * C++ unit testing for CellGeometry.
- */
-
-#if !defined(pylith_topology_testcellgeometry_hh)
-#define pylith_topology_testcellgeometry_hh
-
-#include <cppunit/extensions/HelperMacros.h>
-
-#include "pylith/utils/sievefwd.hh" // USES PETSc Mesh
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestCellGeometry;
- class CellGeometry;
-
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for TestCellGeometry
-class pylith::topology::TestCellGeometry : public CppUnit::TestFixture
-{ // class TestCellGeometry
-
-// PROTECTED METHODS ////////////////////////////////////////////////////
-protected :
-
- /** Test cellDim().
- *
- * @param geometry CellGeometry object.
- * @param data Geometry data.
- */
- void _testCellDim(const CellGeometry& geometry,
- const CellGeomData& data);
-
- /** Test spaceDim().
- *
- * @param geometry CellGeometry object.
- * @param data Geometry data.
- */
- void _testSpaceDim(const CellGeometry& geometry,
- const CellGeomData& data);
-
- /** Test numCorners().
- *
- * @param geometry CellGeometry object.
- * @param data Geometry data.
- */
- void _testNumCorners(const CellGeometry& geometry,
- const CellGeomData& data);
-
- /** Test jacobian().
- *
- * @param geometry CellGeometry object.
- * @param data Geometry data.
- */
- void _testJacobian(const CellGeometry* geometry,
- const CellGeomData& data);
-
-}; // class TestCellGeometry
-
-#endif // pylith_topology_testcellgeometry_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryHex3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryHex3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryHex3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,92 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestGeometryHex3D.hh" // Implementation of class methods
-
-#include "pylith/topology/GeometryHex3D.hh"
-#include "pylith/topology/GeometryQuad3D.hh"
-#include "pylith/topology/GeometryPoint2D.hh"
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/GeomDataHex3D.hh"
-
-// ----------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_REGISTRATION( pylith::topology::TestGeometryHex3D );
-
-// ----------------------------------------------------------------------
-// Test constructor
-void
-pylith::topology::TestGeometryHex3D::testConstructor(void)
-{ // testConstructor
- GeometryHex3D geometry;
-} // testConstructor
-
-// ----------------------------------------------------------------------
-// Test cellDim()
-void
-pylith::topology::TestGeometryHex3D::testCellDim(void)
-{ // testCellDim
- GeometryHex3D geometry;
- GeomDataHex3D data;
- _testCellDim(geometry, data);
-} // testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim()
-void
-pylith::topology::TestGeometryHex3D::testSpaceDim(void)
-{ // testSpaceDim
- GeometryHex3D geometry;
- GeomDataHex3D data;
- _testSpaceDim(geometry, data);
-} // testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners()
-void
-pylith::topology::TestGeometryHex3D::testNumCorners(void)
-{ // testNumCorners
- GeometryHex3D geometry;
- GeomDataHex3D data;
- _testNumCorners(geometry, data);
-} // testNumCorners
-
-// ----------------------------------------------------------------------
-// Test geometryLowerDim().
-void
-pylith::topology::TestGeometryHex3D::testGeomLowerDim(void)
-{ // testGeomLowerDim
- GeometryHex3D geometry;
- CellGeometry* geometryLD = geometry.geometryLowerDim();
- GeometryQuad3D* geometryPt = dynamic_cast<GeometryQuad3D*>(geometryLD);
- CPPUNIT_ASSERT(0 != geometryPt);
- GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
- CPPUNIT_ASSERT(0 == geometryPt2);
- delete geometryLD; geometryLD = 0;
-} // testGeomLowerDim
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestGeometryHex3D::testJacobian(void)
-{ // testJacobian
- GeometryHex3D geometry;
- GeomDataHex3D data;
-
- _testJacobian(&geometry, data);
-} // testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryHex3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryHex3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryHex3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestGeometryHex3D.hh
- *
- * @brief C++ TestGeometryHex3D object
- *
- * C++ unit testing for TopologyAscii.
- */
-
-#if !defined(pylith_topology_testgeometryhex3d_hh)
-#define pylith_topology_testgeometryhex3d_hh
-
-#include "TestCellGeometry.hh"
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestGeometryHex3D;
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for Quadrature3D
-class pylith::topology::TestGeometryHex3D : public TestCellGeometry
-{ // class TestGeometryHex3D
-
- // CPPUNIT TEST SUITE /////////////////////////////////////////////////
- CPPUNIT_TEST_SUITE( TestGeometryHex3D );
- CPPUNIT_TEST( testConstructor );
- CPPUNIT_TEST( testCellDim );
- CPPUNIT_TEST( testSpaceDim );
- CPPUNIT_TEST( testNumCorners );
- CPPUNIT_TEST( testGeomLowerDim );
- CPPUNIT_TEST( testJacobian );
- CPPUNIT_TEST_SUITE_END();
-
- // PUBLIC METHODS /////////////////////////////////////////////////////
-public :
-
- /// Test constructor
- void testConstructor(void);
-
- /// Test cellDim()
- void testCellDim(void);
-
- /// Test spaceDim()
- void testSpaceDim(void);
-
- /// Test numCorners()
- void testNumCorners(void);
-
- /// Test geometryLowerDim().
- void testGeomLowerDim(void);
-
- /// Test jacobian().
- void testJacobian(void);
-
-}; // class TestGeometryHex3D
-
-#endif // pylith_topology_testgeometryhex3d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine1D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine1D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine1D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,92 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestGeometryLine1D.hh" // Implementation of class methods
-
-#include "pylith/topology/GeometryLine1D.hh"
-#include "pylith/topology/GeometryPoint1D.hh"
-#include "pylith/topology/GeometryPoint2D.hh"
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/GeomDataLine1D.hh"
-
-// ----------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_REGISTRATION( pylith::topology::TestGeometryLine1D );
-
-// ----------------------------------------------------------------------
-// Test constructor
-void
-pylith::topology::TestGeometryLine1D::testConstructor(void)
-{ // testConstructor
- GeometryLine1D geometry;
-} // testConstructor
-
-// ----------------------------------------------------------------------
-// Test cellDim()
-void
-pylith::topology::TestGeometryLine1D::testCellDim(void)
-{ // testCellDim
- GeometryLine1D geometry;
- GeomDataLine1D data;
- _testCellDim(geometry, data);
-} // testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim()
-void
-pylith::topology::TestGeometryLine1D::testSpaceDim(void)
-{ // testSpaceDim
- GeometryLine1D geometry;
- GeomDataLine1D data;
- _testSpaceDim(geometry, data);
-} // testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners()
-void
-pylith::topology::TestGeometryLine1D::testNumCorners(void)
-{ // testNumCorners
- GeometryLine1D geometry;
- GeomDataLine1D data;
- _testNumCorners(geometry, data);
-} // testNumCorners
-
-// ----------------------------------------------------------------------
-// Test geometryLowerDim().
-void
-pylith::topology::TestGeometryLine1D::testGeomLowerDim(void)
-{ // testGeomLowerDim
- GeometryLine1D geometry;
- CellGeometry* geometryLD = geometry.geometryLowerDim();
- GeometryPoint1D* geometryPt = dynamic_cast<GeometryPoint1D*>(geometryLD);
- CPPUNIT_ASSERT(0 != geometryPt);
- GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
- CPPUNIT_ASSERT(0 == geometryPt2);
- delete geometryLD; geometryLD = 0;
-} // testGeomLowerDim
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestGeometryLine1D::testJacobian(void)
-{ // testJacobian
- GeometryLine1D geometry;
- GeomDataLine1D data;
-
- _testJacobian(&geometry, data);
-} // testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine1D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine1D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine1D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestGeometryLine1D.hh
- *
- * @brief C++ TestGeometryLine1D object
- *
- * C++ unit testing for TopologyAscii.
- */
-
-#if !defined(pylith_topology_testgeometryline1d_hh)
-#define pylith_topology_testgeometryline1d_hh
-
-#include "TestCellGeometry.hh"
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestGeometryLine1D;
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for Quadrature1D
-class pylith::topology::TestGeometryLine1D : public TestCellGeometry
-{ // class TestGeometryLine1D
-
- // CPPUNIT TEST SUITE /////////////////////////////////////////////////
- CPPUNIT_TEST_SUITE( TestGeometryLine1D );
- CPPUNIT_TEST( testConstructor );
- CPPUNIT_TEST( testCellDim );
- CPPUNIT_TEST( testSpaceDim );
- CPPUNIT_TEST( testNumCorners );
- CPPUNIT_TEST( testGeomLowerDim );
- CPPUNIT_TEST( testJacobian );
- CPPUNIT_TEST_SUITE_END();
-
- // PUBLIC METHODS /////////////////////////////////////////////////////
-public :
-
- /// Test constructor
- void testConstructor(void);
-
- /// Test cellDim()
- void testCellDim(void);
-
- /// Test spaceDim()
- void testSpaceDim(void);
-
- /// Test numCorners()
- void testNumCorners(void);
-
- /// Test geometryLowerDim().
- void testGeomLowerDim(void);
-
- /// Test jacobian().
- void testJacobian(void);
-
-}; // class TestGeometryLine1D
-
-#endif // pylith_topology_testgeometryline1d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine2D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine2D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,92 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestGeometryLine2D.hh" // Implementation of class methods
-
-#include "pylith/topology/GeometryLine2D.hh"
-#include "pylith/topology/GeometryPoint2D.hh"
-#include "pylith/topology/GeometryPoint1D.hh"
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/GeomDataLine2D.hh"
-
-// ----------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_REGISTRATION( pylith::topology::TestGeometryLine2D );
-
-// ----------------------------------------------------------------------
-// Test constructor
-void
-pylith::topology::TestGeometryLine2D::testConstructor(void)
-{ // testConstructor
- GeometryLine2D geometry;
-} // testConstructor
-
-// ----------------------------------------------------------------------
-// Test cellDim()
-void
-pylith::topology::TestGeometryLine2D::testCellDim(void)
-{ // testCellDim
- GeometryLine2D geometry;
- GeomDataLine2D data;
- _testCellDim(geometry, data);
-} // testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim()
-void
-pylith::topology::TestGeometryLine2D::testSpaceDim(void)
-{ // testSpaceDim
- GeometryLine2D geometry;
- GeomDataLine2D data;
- _testSpaceDim(geometry, data);
-} // testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners()
-void
-pylith::topology::TestGeometryLine2D::testNumCorners(void)
-{ // testNumCorners
- GeometryLine2D geometry;
- GeomDataLine2D data;
- _testNumCorners(geometry, data);
-} // testNumCorners
-
-// ----------------------------------------------------------------------
-// Test geometryLowerDim().
-void
-pylith::topology::TestGeometryLine2D::testGeomLowerDim(void)
-{ // testGeomLowerDim
- GeometryLine2D geometry;
- CellGeometry* geometryLD = geometry.geometryLowerDim();
- GeometryPoint2D* geometryPt = dynamic_cast<GeometryPoint2D*>(geometryLD);
- CPPUNIT_ASSERT(0 != geometryPt);
- GeometryPoint1D* geometryPt2 = dynamic_cast<GeometryPoint1D*>(geometryLD);
- CPPUNIT_ASSERT(0 == geometryPt2);
- delete geometryLD; geometryLD = 0;
-} // testGeomLowerDim
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestGeometryLine2D::testJacobian(void)
-{ // testJacobian
- GeometryLine2D geometry;
- GeomDataLine2D data;
-
- _testJacobian(&geometry, data);
-} // testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine2D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine2D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestGeometryLine2D.hh
- *
- * @brief C++ TestGeometryLine2D object
- *
- * C++ unit testing for TopologyAscii.
- */
-
-#if !defined(pylith_topology_testgeometryline2d_hh)
-#define pylith_topology_testgeometryline2d_hh
-
-#include "TestCellGeometry.hh"
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestGeometryLine2D;
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for Quadrature2D
-class pylith::topology::TestGeometryLine2D : public TestCellGeometry
-{ // class TestGeometryLine2D
-
- // CPPUNIT TEST SUITE /////////////////////////////////////////////////
- CPPUNIT_TEST_SUITE( TestGeometryLine2D );
- CPPUNIT_TEST( testConstructor );
- CPPUNIT_TEST( testCellDim );
- CPPUNIT_TEST( testSpaceDim );
- CPPUNIT_TEST( testNumCorners );
- CPPUNIT_TEST( testGeomLowerDim );
- CPPUNIT_TEST( testJacobian );
- CPPUNIT_TEST_SUITE_END();
-
- // PUBLIC METHODS /////////////////////////////////////////////////////
-public :
-
- /// Test constructor
- void testConstructor(void);
-
- /// Test cellDim()
- void testCellDim(void);
-
- /// Test spaceDim()
- void testSpaceDim(void);
-
- /// Test numCorners()
- void testNumCorners(void);
-
- /// Test geometryLowerDim().
- void testGeomLowerDim(void);
-
- /// Test jacobian().
- void testJacobian(void);
-
-}; // class TestGeometryLine2D
-
-#endif // pylith_topology_testgeometryline2d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,92 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestGeometryLine3D.hh" // Implementation of class methods
-
-#include "pylith/topology/GeometryLine3D.hh"
-#include "pylith/topology/GeometryPoint3D.hh"
-#include "pylith/topology/GeometryPoint2D.hh"
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/GeomDataLine3D.hh"
-
-// ----------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_REGISTRATION( pylith::topology::TestGeometryLine3D );
-
-// ----------------------------------------------------------------------
-// Test constructor
-void
-pylith::topology::TestGeometryLine3D::testConstructor(void)
-{ // testConstructor
- GeometryLine3D geometry;
-} // testConstructor
-
-// ----------------------------------------------------------------------
-// Test cellDim()
-void
-pylith::topology::TestGeometryLine3D::testCellDim(void)
-{ // testCellDim
- GeometryLine3D geometry;
- GeomDataLine3D data;
- _testCellDim(geometry, data);
-} // testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim()
-void
-pylith::topology::TestGeometryLine3D::testSpaceDim(void)
-{ // testSpaceDim
- GeometryLine3D geometry;
- GeomDataLine3D data;
- _testSpaceDim(geometry, data);
-} // testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners()
-void
-pylith::topology::TestGeometryLine3D::testNumCorners(void)
-{ // testNumCorners
- GeometryLine3D geometry;
- GeomDataLine3D data;
- _testNumCorners(geometry, data);
-} // testNumCorners
-
-// ----------------------------------------------------------------------
-// Test geometryLowerDim().
-void
-pylith::topology::TestGeometryLine3D::testGeomLowerDim(void)
-{ // testGeomLowerDim
- GeometryLine3D geometry;
- CellGeometry* geometryLD = geometry.geometryLowerDim();
- GeometryPoint3D* geometryPt = dynamic_cast<GeometryPoint3D*>(geometryLD);
- CPPUNIT_ASSERT(0 != geometryPt);
- GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
- CPPUNIT_ASSERT(0 == geometryPt2);
- delete geometryLD; geometryLD = 0;
-} // testGeomLowerDim
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestGeometryLine3D::testJacobian(void)
-{ // testJacobian
- GeometryLine3D geometry;
- GeomDataLine3D data;
-
- _testJacobian(&geometry, data);
-} // testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryLine3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestGeometryLine3D.hh
- *
- * @brief C++ TestGeometryLine3D object
- *
- * C++ unit testing for TopologyAscii.
- */
-
-#if !defined(pylith_topology_testgeometryline3d_hh)
-#define pylith_topology_testgeometryline3d_hh
-
-#include "TestCellGeometry.hh"
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestGeometryLine3D;
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for Quadrature3D
-class pylith::topology::TestGeometryLine3D : public TestCellGeometry
-{ // class TestGeometryLine3D
-
- // CPPUNIT TEST SUITE /////////////////////////////////////////////////
- CPPUNIT_TEST_SUITE( TestGeometryLine3D );
- CPPUNIT_TEST( testConstructor );
- CPPUNIT_TEST( testCellDim );
- CPPUNIT_TEST( testSpaceDim );
- CPPUNIT_TEST( testNumCorners );
- CPPUNIT_TEST( testGeomLowerDim );
- CPPUNIT_TEST( testJacobian );
- CPPUNIT_TEST_SUITE_END();
-
- // PUBLIC METHODS /////////////////////////////////////////////////////
-public :
-
- /// Test constructor
- void testConstructor(void);
-
- /// Test cellDim()
- void testCellDim(void);
-
- /// Test spaceDim()
- void testSpaceDim(void);
-
- /// Test numCorners()
- void testNumCorners(void);
-
- /// Test geometryLowerDim().
- void testGeomLowerDim(void);
-
- /// Test jacobian().
- void testJacobian(void);
-
-}; // class TestGeometryLine3D
-
-#endif // pylith_topology_testgeometryline3d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint1D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint1D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint1D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,103 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestGeometryPoint1D.hh" // Implementation of class methods
-
-#include "pylith/topology/GeometryPoint1D.hh"
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/GeomDataPoint1D.hh"
-
-// ----------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_REGISTRATION( pylith::topology::TestGeometryPoint1D );
-
-// ----------------------------------------------------------------------
-// Test constructor
-void
-pylith::topology::TestGeometryPoint1D::testConstructor(void)
-{ // testConstructor
- GeometryPoint1D geometry;
-} // testConstructor
-
-// ----------------------------------------------------------------------
-// Test cellDim()
-void
-pylith::topology::TestGeometryPoint1D::testCellDim(void)
-{ // testCellDim
- GeometryPoint1D geometry;
- GeomDataPoint1D data;
- _testCellDim(geometry, data);
-} // testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim()
-void
-pylith::topology::TestGeometryPoint1D::testSpaceDim(void)
-{ // testSpaceDim
- GeometryPoint1D geometry;
- GeomDataPoint1D data;
- _testSpaceDim(geometry, data);
-} // testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners()
-void
-pylith::topology::TestGeometryPoint1D::testNumCorners(void)
-{ // testNumCorners
- GeometryPoint1D geometry;
- GeomDataPoint1D data;
- _testNumCorners(geometry, data);
-} // testNumCorners
-
-// ----------------------------------------------------------------------
-// Test geometryLowerDim().
-void
-pylith::topology::TestGeometryPoint1D::testGeomLowerDim(void)
-{ // testGeomLowerDim
- GeometryPoint1D geometry;
- CellGeometry* geometryLD = geometry.geometryLowerDim();
- CPPUNIT_ASSERT(0 == geometryLD);
- delete geometryLD; geometryLD = 0;
-} // testGeomLowerDim
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestGeometryPoint1D::testJacobian(void)
-{ // testJacobian
- GeometryPoint1D geometry;
- GeomDataPoint1D data;
-
- const int cellDim = data.cellDim;
- const int spaceDim = data.spaceDim;
- const int numCorners = data.numCorners;
-
- const int numLocs = data.numLocs;
-
- CPPUNIT_ASSERT_EQUAL(cellDim, geometry.cellDim());
- CPPUNIT_ASSERT_EQUAL(spaceDim, geometry.spaceDim());
- CPPUNIT_ASSERT_EQUAL(numCorners, geometry.numCorners());
-
- double_array jacobian(1);
- for (int iLoc=0; iLoc < numLocs; ++iLoc) {
- double_array vertices(data.vertices, numCorners*spaceDim);
- double_array location(&data.locations[iLoc], 1);
-
- geometry.jacobian(&jacobian, vertices, location);
- CPPUNIT_ASSERT_EQUAL(1.0, jacobian[0]);
- } //for
-} // testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint1D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint1D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint1D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestGeometryPoint1D.hh
- *
- * @brief C++ TestGeometryPoint1D object
- *
- * C++ unit testing for TopologyAscii.
- */
-
-#if !defined(pylith_topology_testgeometrypoint1d_hh)
-#define pylith_topology_testgeometrypoint1d_hh
-
-#include "TestCellGeometry.hh"
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestGeometryPoint1D;
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for Quadrature1D
-class pylith::topology::TestGeometryPoint1D : public TestCellGeometry
-{ // class TestGeometryPoint1D
-
- // CPPUNIT TEST SUITE /////////////////////////////////////////////////
- CPPUNIT_TEST_SUITE( TestGeometryPoint1D );
- CPPUNIT_TEST( testConstructor );
- CPPUNIT_TEST( testCellDim );
- CPPUNIT_TEST( testSpaceDim );
- CPPUNIT_TEST( testNumCorners );
- CPPUNIT_TEST( testGeomLowerDim );
- CPPUNIT_TEST( testJacobian );
- CPPUNIT_TEST_SUITE_END();
-
- // PUBLIC METHODS /////////////////////////////////////////////////////
-public :
-
- /// Test constructor
- void testConstructor(void);
-
- /// Test cellDim()
- void testCellDim(void);
-
- /// Test spaceDim()
- void testSpaceDim(void);
-
- /// Test numCorners()
- void testNumCorners(void);
-
- /// Test geometryLowerDim().
- void testGeomLowerDim(void);
-
- /// Test jacobian().
- void testJacobian(void);
-
-}; // class TestGeometryPoint1D
-
-#endif // pylith_topology_testgeometrypoint1d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint2D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint2D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,103 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestGeometryPoint2D.hh" // Implementation of class methods
-
-#include "pylith/topology/GeometryPoint2D.hh"
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/GeomDataPoint2D.hh"
-
-// ----------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_REGISTRATION( pylith::topology::TestGeometryPoint2D );
-
-// ----------------------------------------------------------------------
-// Test constructor
-void
-pylith::topology::TestGeometryPoint2D::testConstructor(void)
-{ // testConstructor
- GeometryPoint2D geometry;
-} // testConstructor
-
-// ----------------------------------------------------------------------
-// Test cellDim()
-void
-pylith::topology::TestGeometryPoint2D::testCellDim(void)
-{ // testCellDim
- GeometryPoint2D geometry;
- GeomDataPoint2D data;
- _testCellDim(geometry, data);
-} // testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim()
-void
-pylith::topology::TestGeometryPoint2D::testSpaceDim(void)
-{ // testSpaceDim
- GeometryPoint2D geometry;
- GeomDataPoint2D data;
- _testSpaceDim(geometry, data);
-} // testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners()
-void
-pylith::topology::TestGeometryPoint2D::testNumCorners(void)
-{ // testNumCorners
- GeometryPoint2D geometry;
- GeomDataPoint2D data;
- _testNumCorners(geometry, data);
-} // testNumCorners
-
-// ----------------------------------------------------------------------
-// Test geometryLowerDim().
-void
-pylith::topology::TestGeometryPoint2D::testGeomLowerDim(void)
-{ // testGeomLowerDim
- GeometryPoint2D geometry;
- CellGeometry* geometryLD = geometry.geometryLowerDim();
- CPPUNIT_ASSERT(0 == geometryLD);
- delete geometryLD; geometryLD = 0;
-} // testGeomLowerDim
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestGeometryPoint2D::testJacobian(void)
-{ // testJacobian
- GeometryPoint2D geometry;
- GeomDataPoint2D data;
-
- const int cellDim = data.cellDim;
- const int spaceDim = data.spaceDim;
- const int numCorners = data.numCorners;
-
- const int numLocs = data.numLocs;
-
- CPPUNIT_ASSERT_EQUAL(cellDim, geometry.cellDim());
- CPPUNIT_ASSERT_EQUAL(spaceDim, geometry.spaceDim());
- CPPUNIT_ASSERT_EQUAL(numCorners, geometry.numCorners());
-
- double_array jacobian(1);
- for (int iLoc=0; iLoc < numLocs; ++iLoc) {
- double_array vertices(data.vertices, numCorners*spaceDim);
- double_array location(&data.locations[iLoc], 1);
-
- geometry.jacobian(&jacobian, vertices, location);
- CPPUNIT_ASSERT_EQUAL(1.0, jacobian[0]);
- } //for
-} // testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint2D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint2D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestGeometryPoint2D.hh
- *
- * @brief C++ TestGeometryPoint2D object
- *
- * C++ unit testing for TopologyAscii.
- */
-
-#if !defined(pylith_topology_testgeometrypoint2d_hh)
-#define pylith_topology_testgeometrypoint2d_hh
-
-#include "TestCellGeometry.hh"
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestGeometryPoint2D;
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for Quadrature2D
-class pylith::topology::TestGeometryPoint2D : public TestCellGeometry
-{ // class TestGeometryPoint2D
-
- // CPPUNIT TEST SUITE /////////////////////////////////////////////////
- CPPUNIT_TEST_SUITE( TestGeometryPoint2D );
- CPPUNIT_TEST( testConstructor );
- CPPUNIT_TEST( testCellDim );
- CPPUNIT_TEST( testSpaceDim );
- CPPUNIT_TEST( testNumCorners );
- CPPUNIT_TEST( testGeomLowerDim );
- CPPUNIT_TEST( testJacobian );
- CPPUNIT_TEST_SUITE_END();
-
- // PUBLIC METHODS /////////////////////////////////////////////////////
-public :
-
- /// Test constructor
- void testConstructor(void);
-
- /// Test cellDim()
- void testCellDim(void);
-
- /// Test spaceDim()
- void testSpaceDim(void);
-
- /// Test numCorners()
- void testNumCorners(void);
-
- /// Test geometryLowerDim().
- void testGeomLowerDim(void);
-
- /// Test jacobian().
- void testJacobian(void);
-
-}; // class TestGeometryPoint2D
-
-#endif // pylith_topology_testgeometrypoint2d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,103 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestGeometryPoint3D.hh" // Implementation of class methods
-
-#include "pylith/topology/GeometryPoint3D.hh"
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/GeomDataPoint3D.hh"
-
-// ----------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_REGISTRATION( pylith::topology::TestGeometryPoint3D );
-
-// ----------------------------------------------------------------------
-// Test constructor
-void
-pylith::topology::TestGeometryPoint3D::testConstructor(void)
-{ // testConstructor
- GeometryPoint3D geometry;
-} // testConstructor
-
-// ----------------------------------------------------------------------
-// Test cellDim()
-void
-pylith::topology::TestGeometryPoint3D::testCellDim(void)
-{ // testCellDim
- GeometryPoint3D geometry;
- GeomDataPoint3D data;
- _testCellDim(geometry, data);
-} // testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim()
-void
-pylith::topology::TestGeometryPoint3D::testSpaceDim(void)
-{ // testSpaceDim
- GeometryPoint3D geometry;
- GeomDataPoint3D data;
- _testSpaceDim(geometry, data);
-} // testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners()
-void
-pylith::topology::TestGeometryPoint3D::testNumCorners(void)
-{ // testNumCorners
- GeometryPoint3D geometry;
- GeomDataPoint3D data;
- _testNumCorners(geometry, data);
-} // testNumCorners
-
-// ----------------------------------------------------------------------
-// Test geometryLowerDim().
-void
-pylith::topology::TestGeometryPoint3D::testGeomLowerDim(void)
-{ // testGeomLowerDim
- GeometryPoint3D geometry;
- CellGeometry* geometryLD = geometry.geometryLowerDim();
- CPPUNIT_ASSERT(0 == geometryLD);
- delete geometryLD; geometryLD = 0;
-} // testGeomLowerDim
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestGeometryPoint3D::testJacobian(void)
-{ // testJacobian
- GeometryPoint3D geometry;
- GeomDataPoint3D data;
-
- const int cellDim = data.cellDim;
- const int spaceDim = data.spaceDim;
- const int numCorners = data.numCorners;
-
- const int numLocs = data.numLocs;
-
- CPPUNIT_ASSERT_EQUAL(cellDim, geometry.cellDim());
- CPPUNIT_ASSERT_EQUAL(spaceDim, geometry.spaceDim());
- CPPUNIT_ASSERT_EQUAL(numCorners, geometry.numCorners());
-
- double_array jacobian(1);
- for (int iLoc=0; iLoc < numLocs; ++iLoc) {
- double_array vertices(data.vertices, numCorners*spaceDim);
- double_array location(&data.locations[iLoc], 1);
-
- geometry.jacobian(&jacobian, vertices, location);
- CPPUNIT_ASSERT_EQUAL(1.0, jacobian[0]);
- } //for
-} // testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryPoint3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestGeometryPoint3D.hh
- *
- * @brief C++ TestGeometryPoint3D object
- *
- * C++ unit testing for TopologyAscii.
- */
-
-#if !defined(pylith_topology_testgeometrypoint3d_hh)
-#define pylith_topology_testgeometrypoint3d_hh
-
-#include "TestCellGeometry.hh"
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestGeometryPoint3D;
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for Quadrature3D
-class pylith::topology::TestGeometryPoint3D : public TestCellGeometry
-{ // class TestGeometryPoint3D
-
- // CPPUNIT TEST SUITE /////////////////////////////////////////////////
- CPPUNIT_TEST_SUITE( TestGeometryPoint3D );
- CPPUNIT_TEST( testConstructor );
- CPPUNIT_TEST( testCellDim );
- CPPUNIT_TEST( testSpaceDim );
- CPPUNIT_TEST( testNumCorners );
- CPPUNIT_TEST( testGeomLowerDim );
- CPPUNIT_TEST( testJacobian );
- CPPUNIT_TEST_SUITE_END();
-
- // PUBLIC METHODS /////////////////////////////////////////////////////
-public :
-
- /// Test constructor
- void testConstructor(void);
-
- /// Test cellDim()
- void testCellDim(void);
-
- /// Test spaceDim()
- void testSpaceDim(void);
-
- /// Test numCorners()
- void testNumCorners(void);
-
- /// Test geometryLowerDim().
- void testGeomLowerDim(void);
-
- /// Test jacobian().
- void testJacobian(void);
-
-}; // class TestGeometryPoint3D
-
-#endif // pylith_topology_testgeometrypoint3d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad2D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad2D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,92 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestGeometryQuad2D.hh" // Implementation of class methods
-
-#include "pylith/topology/GeometryQuad2D.hh"
-#include "pylith/topology/GeometryLine2D.hh"
-#include "pylith/topology/GeometryPoint2D.hh"
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/GeomDataQuad2D.hh"
-
-// ----------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_REGISTRATION( pylith::topology::TestGeometryQuad2D );
-
-// ----------------------------------------------------------------------
-// Test constructor
-void
-pylith::topology::TestGeometryQuad2D::testConstructor(void)
-{ // testConstructor
- GeometryQuad2D geometry;
-} // testConstructor
-
-// ----------------------------------------------------------------------
-// Test cellDim()
-void
-pylith::topology::TestGeometryQuad2D::testCellDim(void)
-{ // testCellDim
- GeometryQuad2D geometry;
- GeomDataQuad2D data;
- _testCellDim(geometry, data);
-} // testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim()
-void
-pylith::topology::TestGeometryQuad2D::testSpaceDim(void)
-{ // testSpaceDim
- GeometryQuad2D geometry;
- GeomDataQuad2D data;
- _testSpaceDim(geometry, data);
-} // testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners()
-void
-pylith::topology::TestGeometryQuad2D::testNumCorners(void)
-{ // testNumCorners
- GeometryQuad2D geometry;
- GeomDataQuad2D data;
- _testNumCorners(geometry, data);
-} // testNumCorners
-
-// ----------------------------------------------------------------------
-// Test geometryLowerDim().
-void
-pylith::topology::TestGeometryQuad2D::testGeomLowerDim(void)
-{ // testGeomLowerDim
- GeometryQuad2D geometry;
- CellGeometry* geometryLD = geometry.geometryLowerDim();
- GeometryLine2D* geometryPt = dynamic_cast<GeometryLine2D*>(geometryLD);
- CPPUNIT_ASSERT(0 != geometryPt);
- GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
- CPPUNIT_ASSERT(0 == geometryPt2);
- delete geometryLD; geometryLD = 0;
-} // testGeomLowerDim
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestGeometryQuad2D::testJacobian(void)
-{ // testJacobian
- GeometryQuad2D geometry;
- GeomDataQuad2D data;
-
- _testJacobian(&geometry, data);
-} // testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad2D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad2D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestGeometryQuad2D.hh
- *
- * @brief C++ TestGeometryQuad2D object
- *
- * C++ unit testing for TopologyAscii.
- */
-
-#if !defined(pylith_topology_testgeometryquad2d_hh)
-#define pylith_topology_testgeometryquad2d_hh
-
-#include "TestCellGeometry.hh"
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestGeometryQuad2D;
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for Quadrature2D
-class pylith::topology::TestGeometryQuad2D : public TestCellGeometry
-{ // class TestGeometryQuad2D
-
- // CPPUNIT TEST SUITE /////////////////////////////////////////////////
- CPPUNIT_TEST_SUITE( TestGeometryQuad2D );
- CPPUNIT_TEST( testConstructor );
- CPPUNIT_TEST( testCellDim );
- CPPUNIT_TEST( testSpaceDim );
- CPPUNIT_TEST( testNumCorners );
- CPPUNIT_TEST( testGeomLowerDim );
- CPPUNIT_TEST( testJacobian );
- CPPUNIT_TEST_SUITE_END();
-
- // PUBLIC METHODS /////////////////////////////////////////////////////
-public :
-
- /// Test constructor
- void testConstructor(void);
-
- /// Test cellDim()
- void testCellDim(void);
-
- /// Test spaceDim()
- void testSpaceDim(void);
-
- /// Test numCorners()
- void testNumCorners(void);
-
- /// Test geometryLowerDim().
- void testGeomLowerDim(void);
-
- /// Test jacobian().
- void testJacobian(void);
-
-}; // class TestGeometryQuad2D
-
-#endif // pylith_topology_testgeometryquad2d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,92 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestGeometryQuad3D.hh" // Implementation of class methods
-
-#include "pylith/topology/GeometryQuad3D.hh"
-#include "pylith/topology/GeometryLine3D.hh"
-#include "pylith/topology/GeometryPoint2D.hh"
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/GeomDataQuad3D.hh"
-
-// ----------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_REGISTRATION( pylith::topology::TestGeometryQuad3D );
-
-// ----------------------------------------------------------------------
-// Test constructor
-void
-pylith::topology::TestGeometryQuad3D::testConstructor(void)
-{ // testConstructor
- GeometryQuad3D geometry;
-} // testConstructor
-
-// ----------------------------------------------------------------------
-// Test cellDim()
-void
-pylith::topology::TestGeometryQuad3D::testCellDim(void)
-{ // testCellDim
- GeometryQuad3D geometry;
- GeomDataQuad3D data;
- _testCellDim(geometry, data);
-} // testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim()
-void
-pylith::topology::TestGeometryQuad3D::testSpaceDim(void)
-{ // testSpaceDim
- GeometryQuad3D geometry;
- GeomDataQuad3D data;
- _testSpaceDim(geometry, data);
-} // testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners()
-void
-pylith::topology::TestGeometryQuad3D::testNumCorners(void)
-{ // testNumCorners
- GeometryQuad3D geometry;
- GeomDataQuad3D data;
- _testNumCorners(geometry, data);
-} // testNumCorners
-
-// ----------------------------------------------------------------------
-// Test geometryLowerDim().
-void
-pylith::topology::TestGeometryQuad3D::testGeomLowerDim(void)
-{ // testGeomLowerDim
- GeometryQuad3D geometry;
- CellGeometry* geometryLD = geometry.geometryLowerDim();
- GeometryLine3D* geometryPt = dynamic_cast<GeometryLine3D*>(geometryLD);
- CPPUNIT_ASSERT(0 != geometryPt);
- GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
- CPPUNIT_ASSERT(0 == geometryPt2);
- delete geometryLD; geometryLD = 0;
-} // testGeomLowerDim
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestGeometryQuad3D::testJacobian(void)
-{ // testJacobian
- GeometryQuad3D geometry;
- GeomDataQuad3D data;
-
- _testJacobian(&geometry, data);
-} // testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryQuad3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestGeometryQuad3D.hh
- *
- * @brief C++ TestGeometryQuad3D object
- *
- * C++ unit testing for TopologyAscii.
- */
-
-#if !defined(pylith_topology_testgeometryquad3d_hh)
-#define pylith_topology_testgeometryquad3d_hh
-
-#include "TestCellGeometry.hh"
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestGeometryQuad3D;
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for Quadrature3D
-class pylith::topology::TestGeometryQuad3D : public TestCellGeometry
-{ // class TestGeometryQuad3D
-
- // CPPUNIT TEST SUITE /////////////////////////////////////////////////
- CPPUNIT_TEST_SUITE( TestGeometryQuad3D );
- CPPUNIT_TEST( testConstructor );
- CPPUNIT_TEST( testCellDim );
- CPPUNIT_TEST( testSpaceDim );
- CPPUNIT_TEST( testNumCorners );
- CPPUNIT_TEST( testGeomLowerDim );
- CPPUNIT_TEST( testJacobian );
- CPPUNIT_TEST_SUITE_END();
-
- // PUBLIC METHODS /////////////////////////////////////////////////////
-public :
-
- /// Test constructor
- void testConstructor(void);
-
- /// Test cellDim()
- void testCellDim(void);
-
- /// Test spaceDim()
- void testSpaceDim(void);
-
- /// Test numCorners()
- void testNumCorners(void);
-
- /// Test geometryLowerDim().
- void testGeomLowerDim(void);
-
- /// Test jacobian().
- void testJacobian(void);
-
-}; // class TestGeometryQuad3D
-
-#endif // pylith_topology_testgeometryquad3d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTet3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTet3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTet3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,92 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestGeometryTet3D.hh" // Implementation of class methods
-
-#include "pylith/topology/GeometryTet3D.hh"
-#include "pylith/topology/GeometryTri3D.hh"
-#include "pylith/topology/GeometryPoint2D.hh"
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/GeomDataTet3D.hh"
-
-// ----------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_REGISTRATION( pylith::topology::TestGeometryTet3D );
-
-// ----------------------------------------------------------------------
-// Test constructor
-void
-pylith::topology::TestGeometryTet3D::testConstructor(void)
-{ // testConstructor
- GeometryTet3D geometry;
-} // testConstructor
-
-// ----------------------------------------------------------------------
-// Test cellDim()
-void
-pylith::topology::TestGeometryTet3D::testCellDim(void)
-{ // testCellDim
- GeometryTet3D geometry;
- GeomDataTet3D data;
- _testCellDim(geometry, data);
-} // testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim()
-void
-pylith::topology::TestGeometryTet3D::testSpaceDim(void)
-{ // testSpaceDim
- GeometryTet3D geometry;
- GeomDataTet3D data;
- _testSpaceDim(geometry, data);
-} // testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners()
-void
-pylith::topology::TestGeometryTet3D::testNumCorners(void)
-{ // testNumCorners
- GeometryTet3D geometry;
- GeomDataTet3D data;
- _testNumCorners(geometry, data);
-} // testNumCorners
-
-// ----------------------------------------------------------------------
-// Test geometryLowerDim().
-void
-pylith::topology::TestGeometryTet3D::testGeomLowerDim(void)
-{ // testGeomLowerDim
- GeometryTet3D geometry;
- CellGeometry* geometryLD = geometry.geometryLowerDim();
- GeometryTri3D* geometryPt = dynamic_cast<GeometryTri3D*>(geometryLD);
- CPPUNIT_ASSERT(0 != geometryPt);
- GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
- CPPUNIT_ASSERT(0 == geometryPt2);
- delete geometryLD; geometryLD = 0;
-} // testGeomLowerDim
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestGeometryTet3D::testJacobian(void)
-{ // testJacobian
- GeometryTet3D geometry;
- GeomDataTet3D data;
-
- _testJacobian(&geometry, data);
-} // testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTet3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTet3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTet3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestGeometryTet3D.hh
- *
- * @brief C++ TestGeometryTet3D object
- *
- * C++ unit testing for TopologyAscii.
- */
-
-#if !defined(pylith_topology_testgeometrytet3d_hh)
-#define pylith_topology_testgeometrytet3d_hh
-
-#include "TestCellGeometry.hh"
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestGeometryTet3D;
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for Quadrature3D
-class pylith::topology::TestGeometryTet3D : public TestCellGeometry
-{ // class TestGeometryTet3D
-
- // CPPUNIT TEST SUITE /////////////////////////////////////////////////
- CPPUNIT_TEST_SUITE( TestGeometryTet3D );
- CPPUNIT_TEST( testConstructor );
- CPPUNIT_TEST( testCellDim );
- CPPUNIT_TEST( testSpaceDim );
- CPPUNIT_TEST( testNumCorners );
- CPPUNIT_TEST( testGeomLowerDim );
- CPPUNIT_TEST( testJacobian );
- CPPUNIT_TEST_SUITE_END();
-
- // PUBLIC METHODS /////////////////////////////////////////////////////
-public :
-
- /// Test constructor
- void testConstructor(void);
-
- /// Test cellDim()
- void testCellDim(void);
-
- /// Test spaceDim()
- void testSpaceDim(void);
-
- /// Test numCorners()
- void testNumCorners(void);
-
- /// Test geometryLowerDim().
- void testGeomLowerDim(void);
-
- /// Test jacobian().
- void testJacobian(void);
-
-}; // class TestGeometryTet3D
-
-#endif // pylith_topology_testgeometrytet3d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri2D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri2D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,92 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestGeometryTri2D.hh" // Implementation of class methods
-
-#include "pylith/topology/GeometryTri2D.hh"
-#include "pylith/topology/GeometryLine2D.hh"
-#include "pylith/topology/GeometryPoint2D.hh"
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/GeomDataTri2D.hh"
-
-// ----------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_REGISTRATION( pylith::topology::TestGeometryTri2D );
-
-// ----------------------------------------------------------------------
-// Test constructor
-void
-pylith::topology::TestGeometryTri2D::testConstructor(void)
-{ // testConstructor
- GeometryTri2D geometry;
-} // testConstructor
-
-// ----------------------------------------------------------------------
-// Test cellDim()
-void
-pylith::topology::TestGeometryTri2D::testCellDim(void)
-{ // testCellDim
- GeometryTri2D geometry;
- GeomDataTri2D data;
- _testCellDim(geometry, data);
-} // testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim()
-void
-pylith::topology::TestGeometryTri2D::testSpaceDim(void)
-{ // testSpaceDim
- GeometryTri2D geometry;
- GeomDataTri2D data;
- _testSpaceDim(geometry, data);
-} // testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners()
-void
-pylith::topology::TestGeometryTri2D::testNumCorners(void)
-{ // testNumCorners
- GeometryTri2D geometry;
- GeomDataTri2D data;
- _testNumCorners(geometry, data);
-} // testNumCorners
-
-// ----------------------------------------------------------------------
-// Test geometryLowerDim().
-void
-pylith::topology::TestGeometryTri2D::testGeomLowerDim(void)
-{ // testGeomLowerDim
- GeometryTri2D geometry;
- CellGeometry* geometryLD = geometry.geometryLowerDim();
- GeometryLine2D* geometryPt = dynamic_cast<GeometryLine2D*>(geometryLD);
- CPPUNIT_ASSERT(0 != geometryPt);
- GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
- CPPUNIT_ASSERT(0 == geometryPt2);
- delete geometryLD; geometryLD = 0;
-} // testGeomLowerDim
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestGeometryTri2D::testJacobian(void)
-{ // testJacobian
- GeometryTri2D geometry;
- GeomDataTri2D data;
-
- _testJacobian(&geometry, data);
-} // testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri2D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri2D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestGeometryTri2D.hh
- *
- * @brief C++ TestGeometryTri2D object
- *
- * C++ unit testing for TopologyAscii.
- */
-
-#if !defined(pylith_topology_testgeometrytri2d_hh)
-#define pylith_topology_testgeometrytri2d_hh
-
-#include "TestCellGeometry.hh"
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestGeometryTri2D;
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for Quadrature2D
-class pylith::topology::TestGeometryTri2D : public TestCellGeometry
-{ // class TestGeometryTri2D
-
- // CPPUNIT TEST SUITE /////////////////////////////////////////////////
- CPPUNIT_TEST_SUITE( TestGeometryTri2D );
- CPPUNIT_TEST( testConstructor );
- CPPUNIT_TEST( testCellDim );
- CPPUNIT_TEST( testSpaceDim );
- CPPUNIT_TEST( testNumCorners );
- CPPUNIT_TEST( testGeomLowerDim );
- CPPUNIT_TEST( testJacobian );
- CPPUNIT_TEST_SUITE_END();
-
- // PUBLIC METHODS /////////////////////////////////////////////////////
-public :
-
- /// Test constructor
- void testConstructor(void);
-
- /// Test cellDim()
- void testCellDim(void);
-
- /// Test spaceDim()
- void testSpaceDim(void);
-
- /// Test numCorners()
- void testNumCorners(void);
-
- /// Test geometryLowerDim().
- void testGeomLowerDim(void);
-
- /// Test jacobian().
- void testJacobian(void);
-
-}; // class TestGeometryTri2D
-
-#endif // pylith_topology_testgeometrytri2d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,92 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-#include <portinfo>
-
-#include "TestGeometryTri3D.hh" // Implementation of class methods
-
-#include "pylith/topology/GeometryTri3D.hh"
-#include "pylith/topology/GeometryLine3D.hh"
-#include "pylith/topology/GeometryPoint2D.hh"
-
-#include "pylith/utils/array.hh" // USES double_array
-
-#include "data/GeomDataTri3D.hh"
-
-// ----------------------------------------------------------------------
-CPPUNIT_TEST_SUITE_REGISTRATION( pylith::topology::TestGeometryTri3D );
-
-// ----------------------------------------------------------------------
-// Test constructor
-void
-pylith::topology::TestGeometryTri3D::testConstructor(void)
-{ // testConstructor
- GeometryTri3D geometry;
-} // testConstructor
-
-// ----------------------------------------------------------------------
-// Test cellDim()
-void
-pylith::topology::TestGeometryTri3D::testCellDim(void)
-{ // testCellDim
- GeometryTri3D geometry;
- GeomDataTri3D data;
- _testCellDim(geometry, data);
-} // testCellDim
-
-// ----------------------------------------------------------------------
-// Test spaceDim()
-void
-pylith::topology::TestGeometryTri3D::testSpaceDim(void)
-{ // testSpaceDim
- GeometryTri3D geometry;
- GeomDataTri3D data;
- _testSpaceDim(geometry, data);
-} // testSpaceDim
-
-// ----------------------------------------------------------------------
-// Test numCorners()
-void
-pylith::topology::TestGeometryTri3D::testNumCorners(void)
-{ // testNumCorners
- GeometryTri3D geometry;
- GeomDataTri3D data;
- _testNumCorners(geometry, data);
-} // testNumCorners
-
-// ----------------------------------------------------------------------
-// Test geometryLowerDim().
-void
-pylith::topology::TestGeometryTri3D::testGeomLowerDim(void)
-{ // testGeomLowerDim
- GeometryTri3D geometry;
- CellGeometry* geometryLD = geometry.geometryLowerDim();
- GeometryLine3D* geometryPt = dynamic_cast<GeometryLine3D*>(geometryLD);
- CPPUNIT_ASSERT(0 != geometryPt);
- GeometryPoint2D* geometryPt2 = dynamic_cast<GeometryPoint2D*>(geometryLD);
- CPPUNIT_ASSERT(0 == geometryPt2);
- delete geometryLD; geometryLD = 0;
-} // testGeomLowerDim
-
-// ----------------------------------------------------------------------
-// Test jacobian().
-void
-pylith::topology::TestGeometryTri3D::testJacobian(void)
-{ // testJacobian
- GeometryTri3D geometry;
- GeomDataTri3D data;
-
- _testJacobian(&geometry, data);
-} // testJacobian
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/TestGeometryTri3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ----------------------------------------------------------------------
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ----------------------------------------------------------------------
-//
-
-/**
- * @file unittests/libtests/topology/TestGeometryTri3D.hh
- *
- * @brief C++ TestGeometryTri3D object
- *
- * C++ unit testing for TopologyAscii.
- */
-
-#if !defined(pylith_topology_testgeometrytri3d_hh)
-#define pylith_topology_testgeometrytri3d_hh
-
-#include "TestCellGeometry.hh"
-
-/// Namespace for pylith package
-namespace pylith {
- namespace topology {
- class TestGeometryTri3D;
- class CellGeomData;
- } // topology
-} // pylith
-
-/// C++ unit testing for Quadrature3D
-class pylith::topology::TestGeometryTri3D : public TestCellGeometry
-{ // class TestGeometryTri3D
-
- // CPPUNIT TEST SUITE /////////////////////////////////////////////////
- CPPUNIT_TEST_SUITE( TestGeometryTri3D );
- CPPUNIT_TEST( testConstructor );
- CPPUNIT_TEST( testCellDim );
- CPPUNIT_TEST( testSpaceDim );
- CPPUNIT_TEST( testNumCorners );
- CPPUNIT_TEST( testGeomLowerDim );
- CPPUNIT_TEST( testJacobian );
- CPPUNIT_TEST_SUITE_END();
-
- // PUBLIC METHODS /////////////////////////////////////////////////////
-public :
-
- /// Test constructor
- void testConstructor(void);
-
- /// Test cellDim()
- void testCellDim(void);
-
- /// Test spaceDim()
- void testSpaceDim(void);
-
- /// Test numCorners()
- void testNumCorners(void);
-
- /// Test geometryLowerDim().
- void testGeomLowerDim(void);
-
- /// Test jacobian().
- void testJacobian(void);
-
-}; // class TestGeometryTri3D
-
-#endif // pylith_topology_testgeometrytri3d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/CellGeomData.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/CellGeomData.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/CellGeomData.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,35 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "CellGeomData.hh"
-
-// ----------------------------------------------------------------------
-// Constructor
-pylith::topology::CellGeomData::CellGeomData(void) :
- cellDim(0),
- spaceDim(0),
- numCorners(0),
- numLocs(0),
- vertices(0),
- locations(0),
- jacobian(0)
-{ // constructor
-} // constructor
-
-// ----------------------------------------------------------------------
-// Destructor
-pylith::topology::CellGeomData::~CellGeomData(void)
-{ // destructor
-} // destructor
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/CellGeomData.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/CellGeomData.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/CellGeomData.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,52 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_topology_cellgeomdata_hh)
-#define pylith_topology_cellgeomdata_hh
-
-namespace pylith {
- namespace topology {
- class CellGeomData;
- } // pylith
-} // topology
-
-class pylith::topology::CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public :
-
- /// Constructor
- CellGeomData(void);
-
- /// Destructor
- ~CellGeomData(void);
-
-// PUBLIC MEMBERS ///////////////////////////////////////////////////////
-public:
-
- int cellDim; ///< Number of dimensions associated with cell
- int spaceDim; ///< Number of dimensions in vertex coordinates
- int numCorners; ///< Number of vertices in cell
-
- int numLocs; ///< Number of locations
-
- double* vertices; ///< Coordinates of vertices of cell
- double* locations; ///< Locations where Jacobian is computed
- double* jacobian; ///< Jacobian at locations
-
-};
-
-#endif // pylith_topology_cellgeomdata_hh
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataHex3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataHex3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataHex3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,73 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "GeomDataHex3D.hh"
-
-const int pylith::topology::GeomDataHex3D::_cellDim = 3;
-
-const int pylith::topology::GeomDataHex3D::_spaceDim = 3;
-
-const int pylith::topology::GeomDataHex3D::_numCorners = 8;
-
-const int pylith::topology::GeomDataHex3D::_numLocs = 9;
-
-const double pylith::topology::GeomDataHex3D::_vertices[] = {
- -1.3, -1.4, -0.8,
- 1.2, -1.5, -0.9,
- 1.4, 0.7, -1.2,
- -1.6, 0.4, -0.5,
- -1.7, -0.8, 1.8,
- 2.1, -1.7, 0.6,
- 2.3, 0.2, 1.9,
- -1.8, 0.3, 2.2
-};
-
-const double pylith::topology::GeomDataHex3D::_locations[] = {
- 0.0, 0.0, 0.0,
- 1.0, 0.0, 0.0,
- 0.0, 1.0, 0.0,
- 1.0, 1.0, 0.0,
- 0.0, 0.0, 1.0,
- 1.0, 0.0, 1.0,
- 0.0, 1.0, 1.0,
- 1.0, 1.0, 1.0,
- 0.2, 0.8, 0.7
-};
-
-const double pylith::topology::GeomDataHex3D::_jacobian[] = {
- 2.5, -0.3, -0.4, -0.1, 1.8, 0.6, -0.1, 0.3, 2.6,
- 2.5, 0.2, 0.9, -0.1, 2.2, -0.2, -0.1, -0.3, 1.5,
- 3.0, -0.3, -0.2, 0.3, 1.8, -0.1, -0.7, 0.3, 2.7,
- 3.0, 0.2, 0.9, 0.3, 2.2, -0.5, -0.7, -0.3, 3.1,
- 3.8, -0.1, -0.4, -0.9, 1.1, 0.6, -1.2, 0.4, 2.6,
- 3.8, 0.2, 0.9, -0.9, 1.9, -0.2, -1.2, 1.3, 1.5,
- 4.1, -0.1, -0.2, -0.1, 1.1, -0.1, -0.3, 0.4, 2.7,
- 4.1, 0.2, 0.9, -0.1, 1.9, -0.5, -0.3, 1.3, 3.1,
- 3.698, -0.088, -0.012, -0.116, 1.446, -0.056, -0.51, 0.46, 2.7
-};
-
-pylith::topology::GeomDataHex3D::GeomDataHex3D(void)
-{ // constructor
- cellDim = _cellDim;
- spaceDim = _spaceDim;
- numCorners = _numCorners;
- numLocs = _numLocs;
- vertices = const_cast<double*>(_vertices);
- locations = const_cast<double*>(_locations);
- jacobian = const_cast<double*>(_jacobian);
-} // constructor
-
-pylith::topology::GeomDataHex3D::~GeomDataHex3D(void)
-{}
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataHex3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataHex3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataHex3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_meshio_geomdatahex3d_hh)
-#define pylith_meshio_geomdatahex3d_hh
-
-#include "CellGeomData.hh"
-
-namespace pylith {
- namespace topology {
- class GeomDataHex3D;
- } // topology
-} // pylith
-
-class pylith::topology::GeomDataHex3D : public CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public:
-
- /// Constructor
- GeomDataHex3D(void);
-
- /// Destructor
- ~GeomDataHex3D(void);
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private:
-
- static const int _cellDim; ///< Number of dimensions associated with cell
- static const int _spaceDim; ///< Number of dimensions in vertex coordinates
- static const int _numCorners; ///< Number of vertices in cell
-
- static const int _numLocs; ///< Number of locations for computing Jacobian
-
- static const double _vertices[]; ///< Coordinates of cell's vertices
- static const double _locations[]; ///< Locations to compute Jacobian
- static const double _jacobian[]; ///< Jacobian at locations
-
-};
-
-#endif // pylith_meshio_geomdatahex3d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine1D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine1D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine1D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "GeomDataLine1D.hh"
-
-const int pylith::topology::GeomDataLine1D::_cellDim = 1;
-
-const int pylith::topology::GeomDataLine1D::_spaceDim = 1;
-
-const int pylith::topology::GeomDataLine1D::_numCorners = 2;
-
-const int pylith::topology::GeomDataLine1D::_numLocs = 2;
-
-const double pylith::topology::GeomDataLine1D::_vertices[] = {
- 1.2,
- 4.5
-};
-
-const double pylith::topology::GeomDataLine1D::_locations[] = {
- 0.345,
- 0.459
-};
-
-const double pylith::topology::GeomDataLine1D::_jacobian[] = {
- 3.3,
- 3.3
-};
-
-pylith::topology::GeomDataLine1D::GeomDataLine1D(void)
-{ // constructor
- cellDim = _cellDim;
- spaceDim = _spaceDim;
- numCorners = _numCorners;
- numLocs = _numLocs;
- vertices = const_cast<double*>(_vertices);
- locations = const_cast<double*>(_locations);
- jacobian = const_cast<double*>(_jacobian);
-} // constructor
-
-pylith::topology::GeomDataLine1D::~GeomDataLine1D(void)
-{}
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine1D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine1D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine1D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_meshio_geomdataline1d_hh)
-#define pylith_meshio_geomdataline1d_hh
-
-#include "CellGeomData.hh"
-
-namespace pylith {
- namespace topology {
- class GeomDataLine1D;
- } // topology
-} // pylith
-
-class pylith::topology::GeomDataLine1D : public CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public:
-
- /// Constructor
- GeomDataLine1D(void);
-
- /// Destructor
- ~GeomDataLine1D(void);
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private:
-
- static const int _cellDim; ///< Number of dimensions associated with cell
- static const int _spaceDim; ///< Number of dimensions in vertex coordinates
- static const int _numCorners; ///< Number of vertices in cell
-
- static const int _numLocs; ///< Number of locations for computing Jacobian
-
- static const double _vertices[]; ///< Coordinates of cell's vertices
- static const double _locations[]; ///< Locations to compute Jacobian
- static const double _jacobian[]; ///< Jacobian at locations
-
-};
-
-#endif // pylith_meshio_geomdataline1d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine2D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine2D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "GeomDataLine2D.hh"
-
-const int pylith::topology::GeomDataLine2D::_cellDim = 1;
-
-const int pylith::topology::GeomDataLine2D::_spaceDim = 2;
-
-const int pylith::topology::GeomDataLine2D::_numCorners = 2;
-
-const int pylith::topology::GeomDataLine2D::_numLocs = 2;
-
-const double pylith::topology::GeomDataLine2D::_vertices[] = {
- 1.2, 2.4,
- 4.5, -1.4
-};
-
-const double pylith::topology::GeomDataLine2D::_locations[] = {
- 0.345,
- 0.459
-};
-
-const double pylith::topology::GeomDataLine2D::_jacobian[] = {
- 3.3, -3.8,
- 3.3, -3.8
-};
-
-pylith::topology::GeomDataLine2D::GeomDataLine2D(void)
-{ // constructor
- cellDim = _cellDim;
- spaceDim = _spaceDim;
- numCorners = _numCorners;
- numLocs = _numLocs;
- vertices = const_cast<double*>(_vertices);
- locations = const_cast<double*>(_locations);
- jacobian = const_cast<double*>(_jacobian);
-} // constructor
-
-pylith::topology::GeomDataLine2D::~GeomDataLine2D(void)
-{}
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine2D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine2D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_meshio_geomdataline2d_hh)
-#define pylith_meshio_geomdataline2d_hh
-
-#include "CellGeomData.hh"
-
-namespace pylith {
- namespace topology {
- class GeomDataLine2D;
- } // topology
-} // pylith
-
-class pylith::topology::GeomDataLine2D : public CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public:
-
- /// Constructor
- GeomDataLine2D(void);
-
- /// Destructor
- ~GeomDataLine2D(void);
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private:
-
- static const int _cellDim; ///< Number of dimensions associated with cell
- static const int _spaceDim; ///< Number of dimensions in vertex coordinates
- static const int _numCorners; ///< Number of vertices in cell
-
- static const int _numLocs; ///< Number of locations for computing Jacobian
-
- static const double _vertices[]; ///< Coordinates of cell's vertices
- static const double _locations[]; ///< Locations to compute Jacobian
- static const double _jacobian[]; ///< Jacobian at locations
-
-};
-
-#endif // pylith_meshio_geomdataline2d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "GeomDataLine3D.hh"
-
-const int pylith::topology::GeomDataLine3D::_cellDim = 1;
-
-const int pylith::topology::GeomDataLine3D::_spaceDim = 3;
-
-const int pylith::topology::GeomDataLine3D::_numCorners = 2;
-
-const int pylith::topology::GeomDataLine3D::_numLocs = 2;
-
-const double pylith::topology::GeomDataLine3D::_vertices[] = {
- 1.2, 2.3, 2.4,
- 4.5, -1.5, 5.3
-};
-
-const double pylith::topology::GeomDataLine3D::_locations[] = {
- 0.345,
- 0.459
-};
-
-const double pylith::topology::GeomDataLine3D::_jacobian[] = {
- 3.3, -3.8, 2.9,
- 3.3, -3.8, 2.9
-};
-
-pylith::topology::GeomDataLine3D::GeomDataLine3D(void)
-{ // constructor
- cellDim = _cellDim;
- spaceDim = _spaceDim;
- numCorners = _numCorners;
- numLocs = _numLocs;
- vertices = const_cast<double*>(_vertices);
- locations = const_cast<double*>(_locations);
- jacobian = const_cast<double*>(_jacobian);
-} // constructor
-
-pylith::topology::GeomDataLine3D::~GeomDataLine3D(void)
-{}
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataLine3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_meshio_geomdataline3d_hh)
-#define pylith_meshio_geomdataline3d_hh
-
-#include "CellGeomData.hh"
-
-namespace pylith {
- namespace topology {
- class GeomDataLine3D;
- } // topology
-} // pylith
-
-class pylith::topology::GeomDataLine3D : public CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public:
-
- /// Constructor
- GeomDataLine3D(void);
-
- /// Destructor
- ~GeomDataLine3D(void);
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private:
-
- static const int _cellDim; ///< Number of dimensions associated with cell
- static const int _spaceDim; ///< Number of dimensions in vertex coordinates
- static const int _numCorners; ///< Number of vertices in cell
-
- static const int _numLocs; ///< Number of locations for computing Jacobian
-
- static const double _vertices[]; ///< Coordinates of cell's vertices
- static const double _locations[]; ///< Locations to compute Jacobian
- static const double _jacobian[]; ///< Jacobian at locations
-
-};
-
-#endif // pylith_meshio_geomdataline3d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint1D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint1D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint1D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "GeomDataPoint1D.hh"
-
-const int pylith::topology::GeomDataPoint1D::_cellDim = 0;
-
-const int pylith::topology::GeomDataPoint1D::_spaceDim = 1;
-
-const int pylith::topology::GeomDataPoint1D::_numCorners = 1;
-
-const int pylith::topology::GeomDataPoint1D::_numLocs = 2;
-
-const double pylith::topology::GeomDataPoint1D::_vertices[] = {
- 1.2,
- 4.5
-};
-
-const double pylith::topology::GeomDataPoint1D::_locations[] = {
- 0.0,
- 0.0
-};
-
-const double pylith::topology::GeomDataPoint1D::_jacobian[] = {
- 1.0,
- 1.0
-};
-
-pylith::topology::GeomDataPoint1D::GeomDataPoint1D(void)
-{ // constructor
- cellDim = _cellDim;
- spaceDim = _spaceDim;
- numCorners = _numCorners;
- numLocs = _numLocs;
- vertices = const_cast<double*>(_vertices);
- locations = const_cast<double*>(_locations);
- jacobian = const_cast<double*>(_jacobian);
-} // constructor
-
-pylith::topology::GeomDataPoint1D::~GeomDataPoint1D(void)
-{}
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint1D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint1D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint1D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_meshio_geomdatapoint1d_hh)
-#define pylith_meshio_geomdatapoint1d_hh
-
-#include "CellGeomData.hh"
-
-namespace pylith {
- namespace topology {
- class GeomDataPoint1D;
- } // topology
-} // pylith
-
-class pylith::topology::GeomDataPoint1D : public CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public:
-
- /// Constructor
- GeomDataPoint1D(void);
-
- /// Destructor
- ~GeomDataPoint1D(void);
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private:
-
- static const int _cellDim; ///< Number of dimensions associated with cell
- static const int _spaceDim; ///< Number of dimensions in vertex coordinates
- static const int _numCorners; ///< Number of vertices in cell
-
- static const int _numLocs; ///< Number of locations for computing Jacobian
-
- static const double _vertices[]; ///< Coordinates of cell's vertices
- static const double _locations[]; ///< Locations to compute Jacobian
- static const double _jacobian[]; ///< Jacobian at locations
-
-};
-
-#endif // pylith_meshio_geomdatapoint1d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint2D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint2D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "GeomDataPoint2D.hh"
-
-const int pylith::topology::GeomDataPoint2D::_cellDim = 0;
-
-const int pylith::topology::GeomDataPoint2D::_spaceDim = 2;
-
-const int pylith::topology::GeomDataPoint2D::_numCorners = 1;
-
-const int pylith::topology::GeomDataPoint2D::_numLocs = 2;
-
-const double pylith::topology::GeomDataPoint2D::_vertices[] = {
- 1.3, 5.4,
- 4.1, 7.5
-};
-
-const double pylith::topology::GeomDataPoint2D::_locations[] = {
- 0.0,
- 0.0
-};
-
-const double pylith::topology::GeomDataPoint2D::_jacobian[] = {
- 1.0,
- 1.0
-};
-
-pylith::topology::GeomDataPoint2D::GeomDataPoint2D(void)
-{ // constructor
- cellDim = _cellDim;
- spaceDim = _spaceDim;
- numCorners = _numCorners;
- numLocs = _numLocs;
- vertices = const_cast<double*>(_vertices);
- locations = const_cast<double*>(_locations);
- jacobian = const_cast<double*>(_jacobian);
-} // constructor
-
-pylith::topology::GeomDataPoint2D::~GeomDataPoint2D(void)
-{}
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint2D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint2D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_meshio_geomdatapoint2d_hh)
-#define pylith_meshio_geomdatapoint2d_hh
-
-#include "CellGeomData.hh"
-
-namespace pylith {
- namespace topology {
- class GeomDataPoint2D;
- } // topology
-} // pylith
-
-class pylith::topology::GeomDataPoint2D : public CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public:
-
- /// Constructor
- GeomDataPoint2D(void);
-
- /// Destructor
- ~GeomDataPoint2D(void);
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private:
-
- static const int _cellDim; ///< Number of dimensions associated with cell
- static const int _spaceDim; ///< Number of dimensions in vertex coordinates
- static const int _numCorners; ///< Number of vertices in cell
-
- static const int _numLocs; ///< Number of locations for computing Jacobian
-
- static const double _vertices[]; ///< Coordinates of cell's vertices
- static const double _locations[]; ///< Locations to compute Jacobian
- static const double _jacobian[]; ///< Jacobian at locations
-
-};
-
-#endif // pylith_meshio_geomdatapoint2d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "GeomDataPoint3D.hh"
-
-const int pylith::topology::GeomDataPoint3D::_cellDim = 0;
-
-const int pylith::topology::GeomDataPoint3D::_spaceDim = 3;
-
-const int pylith::topology::GeomDataPoint3D::_numCorners = 1;
-
-const int pylith::topology::GeomDataPoint3D::_numLocs = 2;
-
-const double pylith::topology::GeomDataPoint3D::_vertices[] = {
- 1.22, 4.35, 6.56,
- 4.45, 5.62, 2.55
-};
-
-const double pylith::topology::GeomDataPoint3D::_locations[] = {
- 0.0,
- 0.0
-};
-
-const double pylith::topology::GeomDataPoint3D::_jacobian[] = {
- 1.0,
- 1.0
-};
-
-pylith::topology::GeomDataPoint3D::GeomDataPoint3D(void)
-{ // constructor
- cellDim = _cellDim;
- spaceDim = _spaceDim;
- numCorners = _numCorners;
- numLocs = _numLocs;
- vertices = const_cast<double*>(_vertices);
- locations = const_cast<double*>(_locations);
- jacobian = const_cast<double*>(_jacobian);
-} // constructor
-
-pylith::topology::GeomDataPoint3D::~GeomDataPoint3D(void)
-{}
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataPoint3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_meshio_geomdatapoint3d_hh)
-#define pylith_meshio_geomdatapoint3d_hh
-
-#include "CellGeomData.hh"
-
-namespace pylith {
- namespace topology {
- class GeomDataPoint3D;
- } // topology
-} // pylith
-
-class pylith::topology::GeomDataPoint3D : public CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public:
-
- /// Constructor
- GeomDataPoint3D(void);
-
- /// Destructor
- ~GeomDataPoint3D(void);
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private:
-
- static const int _cellDim; ///< Number of dimensions associated with cell
- static const int _spaceDim; ///< Number of dimensions in vertex coordinates
- static const int _numCorners; ///< Number of vertices in cell
-
- static const int _numLocs; ///< Number of locations for computing Jacobian
-
- static const double _vertices[]; ///< Coordinates of cell's vertices
- static const double _locations[]; ///< Locations to compute Jacobian
- static const double _jacobian[]; ///< Jacobian at locations
-
-};
-
-#endif // pylith_meshio_geomdatapoint3d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad2D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad2D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,61 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "GeomDataQuad2D.hh"
-
-const int pylith::topology::GeomDataQuad2D::_cellDim = 2;
-
-const int pylith::topology::GeomDataQuad2D::_spaceDim = 2;
-
-const int pylith::topology::GeomDataQuad2D::_numCorners = 4;
-
-const int pylith::topology::GeomDataQuad2D::_numLocs = 5;
-
-const double pylith::topology::GeomDataQuad2D::_vertices[] = {
- 0.3, 0.1,
- 0.8, -0.2,
- 0.7, 1.2,
- -0.1, 1.6
-};
-
-const double pylith::topology::GeomDataQuad2D::_locations[] = {
- 0.0, 0.0,
- 1.0, 0.0,
- 0.0, 1.0,
- 1.0, 1.0,
- 0.4, 0.7
-};
-
-const double pylith::topology::GeomDataQuad2D::_jacobian[] = {
- 0.5, -0.4, -0.3, 1.5,
- 0.5, -0.1, -0.3, 1.4,
- 0.8, -0.4, -0.4, 1.5,
- 0.8, -0.1, -0.4, 1.4,
- 0.71, -0.28, -0.37, 1.46
-};
-
-pylith::topology::GeomDataQuad2D::GeomDataQuad2D(void)
-{ // constructor
- cellDim = _cellDim;
- spaceDim = _spaceDim;
- numCorners = _numCorners;
- numLocs = _numLocs;
- vertices = const_cast<double*>(_vertices);
- locations = const_cast<double*>(_locations);
- jacobian = const_cast<double*>(_jacobian);
-} // constructor
-
-pylith::topology::GeomDataQuad2D::~GeomDataQuad2D(void)
-{}
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad2D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad2D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_meshio_geomdataquad2d_hh)
-#define pylith_meshio_geomdataquad2d_hh
-
-#include "CellGeomData.hh"
-
-namespace pylith {
- namespace topology {
- class GeomDataQuad2D;
- } // topology
-} // pylith
-
-class pylith::topology::GeomDataQuad2D : public CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public:
-
- /// Constructor
- GeomDataQuad2D(void);
-
- /// Destructor
- ~GeomDataQuad2D(void);
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private:
-
- static const int _cellDim; ///< Number of dimensions associated with cell
- static const int _spaceDim; ///< Number of dimensions in vertex coordinates
- static const int _numCorners; ///< Number of vertices in cell
-
- static const int _numLocs; ///< Number of locations for computing Jacobian
-
- static const double _vertices[]; ///< Coordinates of cell's vertices
- static const double _locations[]; ///< Locations to compute Jacobian
- static const double _jacobian[]; ///< Jacobian at locations
-
-};
-
-#endif // pylith_meshio_geomdataquad2d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,61 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "GeomDataQuad3D.hh"
-
-const int pylith::topology::GeomDataQuad3D::_cellDim = 2;
-
-const int pylith::topology::GeomDataQuad3D::_spaceDim = 3;
-
-const int pylith::topology::GeomDataQuad3D::_numCorners = 4;
-
-const int pylith::topology::GeomDataQuad3D::_numLocs = 5;
-
-const double pylith::topology::GeomDataQuad3D::_vertices[] = {
- 1.1, -0.9, 0.1,
- 1.0, 0.7, 0.8,
- -0.4, 0.6, 1.2,
- -0.3, -1.3, -0.1
-};
-
-const double pylith::topology::GeomDataQuad3D::_locations[] = {
- 0.0, 0.0,
- 1.0, 0.0,
- 0.0, 1.0,
- 1.0, 1.0,
- 0.3, 0.8
-};
-
-const double pylith::topology::GeomDataQuad3D::_jacobian[] = {
- -0.1, -1.4, 1.6, -0.4, 0.7, -0.2,
- -0.1, -1.4, 1.6, -0.1, 0.7, 0.4,
- -0.1, -1.4, 1.9, -0.4, 1.3, -0.2,
- -0.1, -1.4, 1.9, -0.1, 1.3, 0.4,
- -0.1, -1.4, 1.84, -0.31, 1.18, -0.02
-};
-
-pylith::topology::GeomDataQuad3D::GeomDataQuad3D(void)
-{ // constructor
- cellDim = _cellDim;
- spaceDim = _spaceDim;
- numCorners = _numCorners;
- numLocs = _numLocs;
- vertices = const_cast<double*>(_vertices);
- locations = const_cast<double*>(_locations);
- jacobian = const_cast<double*>(_jacobian);
-} // constructor
-
-pylith::topology::GeomDataQuad3D::~GeomDataQuad3D(void)
-{}
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataQuad3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_meshio_geomdataquad3d_hh)
-#define pylith_meshio_geomdataquad3d_hh
-
-#include "CellGeomData.hh"
-
-namespace pylith {
- namespace topology {
- class GeomDataQuad3D;
- } // topology
-} // pylith
-
-class pylith::topology::GeomDataQuad3D : public CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public:
-
- /// Constructor
- GeomDataQuad3D(void);
-
- /// Destructor
- ~GeomDataQuad3D(void);
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private:
-
- static const int _cellDim; ///< Number of dimensions associated with cell
- static const int _spaceDim; ///< Number of dimensions in vertex coordinates
- static const int _numCorners; ///< Number of vertices in cell
-
- static const int _numLocs; ///< Number of locations for computing Jacobian
-
- static const double _vertices[]; ///< Coordinates of cell's vertices
- static const double _locations[]; ///< Locations to compute Jacobian
- static const double _jacobian[]; ///< Jacobian at locations
-
-};
-
-#endif // pylith_meshio_geomdataquad3d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTet3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTet3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTet3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,55 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "GeomDataTet3D.hh"
-
-const int pylith::topology::GeomDataTet3D::_cellDim = 3;
-
-const int pylith::topology::GeomDataTet3D::_spaceDim = 3;
-
-const int pylith::topology::GeomDataTet3D::_numCorners = 4;
-
-const int pylith::topology::GeomDataTet3D::_numLocs = 2;
-
-const double pylith::topology::GeomDataTet3D::_vertices[] = {
- -1.3, -0.8, 0.2,
- 2.1, -0.7, 0.1,
- -1.0, 2.4, -0.3,
- -0.1, 0.2, 3.0
-};
-
-const double pylith::topology::GeomDataTet3D::_locations[] = {
- 0.345, 0.397, 0.319,
- 0.459, 0.727, 0.693
-};
-
-const double pylith::topology::GeomDataTet3D::_jacobian[] = {
- 3.4, 0.3, 1.2, 0.1, 3.2, 1.0, -0.1, -0.5, 2.8,
- 3.4, 0.3, 1.2, 0.1, 3.2, 1.0, -0.1, -0.5, 2.8
-};
-
-pylith::topology::GeomDataTet3D::GeomDataTet3D(void)
-{ // constructor
- cellDim = _cellDim;
- spaceDim = _spaceDim;
- numCorners = _numCorners;
- numLocs = _numLocs;
- vertices = const_cast<double*>(_vertices);
- locations = const_cast<double*>(_locations);
- jacobian = const_cast<double*>(_jacobian);
-} // constructor
-
-pylith::topology::GeomDataTet3D::~GeomDataTet3D(void)
-{}
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTet3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTet3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTet3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_meshio_geomdatatet3d_hh)
-#define pylith_meshio_geomdatatet3d_hh
-
-#include "CellGeomData.hh"
-
-namespace pylith {
- namespace topology {
- class GeomDataTet3D;
- } // topology
-} // pylith
-
-class pylith::topology::GeomDataTet3D : public CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public:
-
- /// Constructor
- GeomDataTet3D(void);
-
- /// Destructor
- ~GeomDataTet3D(void);
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private:
-
- static const int _cellDim; ///< Number of dimensions associated with cell
- static const int _spaceDim; ///< Number of dimensions in vertex coordinates
- static const int _numCorners; ///< Number of vertices in cell
-
- static const int _numLocs; ///< Number of locations for computing Jacobian
-
- static const double _vertices[]; ///< Coordinates of cell's vertices
- static const double _locations[]; ///< Locations to compute Jacobian
- static const double _jacobian[]; ///< Jacobian at locations
-
-};
-
-#endif // pylith_meshio_geomdatatet3d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri2D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri2D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri2D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,54 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "GeomDataTri2D.hh"
-
-const int pylith::topology::GeomDataTri2D::_cellDim = 2;
-
-const int pylith::topology::GeomDataTri2D::_spaceDim = 2;
-
-const int pylith::topology::GeomDataTri2D::_numCorners = 3;
-
-const int pylith::topology::GeomDataTri2D::_numLocs = 2;
-
-const double pylith::topology::GeomDataTri2D::_vertices[] = {
- 1.0, 1.2,
- 3.0, 2.0,
- 1.5, 4.0
-};
-
-const double pylith::topology::GeomDataTri2D::_locations[] = {
- 0.345, 0.397,
- 0.459, 0.727
-};
-
-const double pylith::topology::GeomDataTri2D::_jacobian[] = {
- 2.0, 0.5, 0.8, 2.8,
- 2.0, 0.5, 0.8, 2.8
-};
-
-pylith::topology::GeomDataTri2D::GeomDataTri2D(void)
-{ // constructor
- cellDim = _cellDim;
- spaceDim = _spaceDim;
- numCorners = _numCorners;
- numLocs = _numLocs;
- vertices = const_cast<double*>(_vertices);
- locations = const_cast<double*>(_locations);
- jacobian = const_cast<double*>(_jacobian);
-} // constructor
-
-pylith::topology::GeomDataTri2D::~GeomDataTri2D(void)
-{}
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri2D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri2D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri2D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_meshio_geomdatatri2d_hh)
-#define pylith_meshio_geomdatatri2d_hh
-
-#include "CellGeomData.hh"
-
-namespace pylith {
- namespace topology {
- class GeomDataTri2D;
- } // topology
-} // pylith
-
-class pylith::topology::GeomDataTri2D : public CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public:
-
- /// Constructor
- GeomDataTri2D(void);
-
- /// Destructor
- ~GeomDataTri2D(void);
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private:
-
- static const int _cellDim; ///< Number of dimensions associated with cell
- static const int _spaceDim; ///< Number of dimensions in vertex coordinates
- static const int _numCorners; ///< Number of vertices in cell
-
- static const int _numLocs; ///< Number of locations for computing Jacobian
-
- static const double _vertices[]; ///< Coordinates of cell's vertices
- static const double _locations[]; ///< Locations to compute Jacobian
- static const double _jacobian[]; ///< Jacobian at locations
-
-};
-
-#endif // pylith_meshio_geomdatatri2d_hh
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri3D.cc 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri3D.cc 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,54 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#include "GeomDataTri3D.hh"
-
-const int pylith::topology::GeomDataTri3D::_cellDim = 2;
-
-const int pylith::topology::GeomDataTri3D::_spaceDim = 3;
-
-const int pylith::topology::GeomDataTri3D::_numCorners = 3;
-
-const int pylith::topology::GeomDataTri3D::_numLocs = 2;
-
-const double pylith::topology::GeomDataTri3D::_vertices[] = {
- 1.2, 1.3, -0.4,
- -0.3, -1.7, 0.1,
- -0.1, 0.4, 1.4
-};
-
-const double pylith::topology::GeomDataTri3D::_locations[] = {
- 0.345, 0.397,
- 0.459, 0.727
-};
-
-const double pylith::topology::GeomDataTri3D::_jacobian[] = {
- -1.5, -1.3, -3.0, -0.9, 0.5, 1.8,
- -1.5, -1.3, -3.0, -0.9, 0.5, 1.8
-};
-
-pylith::topology::GeomDataTri3D::GeomDataTri3D(void)
-{ // constructor
- cellDim = _cellDim;
- spaceDim = _spaceDim;
- numCorners = _numCorners;
- numLocs = _numLocs;
- vertices = const_cast<double*>(_vertices);
- locations = const_cast<double*>(_locations);
- jacobian = const_cast<double*>(_jacobian);
-} // constructor
-
-pylith::topology::GeomDataTri3D::~GeomDataTri3D(void)
-{}
-
-
-// End of file
Deleted: short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri3D.hh 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/libtests/topology/data/GeomDataTri3D.hh 2007-06-07 23:37:26 UTC (rev 7094)
@@ -1,53 +0,0 @@
-// -*- C++ -*-
-//
-// ======================================================================
-//
-// Brad T. Aagaard
-// U.S. Geological Survey
-//
-// {LicenseText}
-//
-// ======================================================================
-//
-
-#if !defined(pylith_meshio_geomdatatri3d_hh)
-#define pylith_meshio_geomdatatri3d_hh
-
-#include "CellGeomData.hh"
-
-namespace pylith {
- namespace topology {
- class GeomDataTri3D;
- } // topology
-} // pylith
-
-class pylith::topology::GeomDataTri3D : public CellGeomData
-{
-
-// PUBLIC METHODS ///////////////////////////////////////////////////////
-public:
-
- /// Constructor
- GeomDataTri3D(void);
-
- /// Destructor
- ~GeomDataTri3D(void);
-
-// PRIVATE MEMBERS //////////////////////////////////////////////////////
-private:
-
- static const int _cellDim; ///< Number of dimensions associated with cell
- static const int _spaceDim; ///< Number of dimensions in vertex coordinates
- static const int _numCorners; ///< Number of vertices in cell
-
- static const int _numLocs; ///< Number of locations for computing Jacobian
-
- static const double _vertices[]; ///< Coordinates of cell's vertices
- static const double _locations[]; ///< Locations to compute Jacobian
- static const double _jacobian[]; ///< Jacobian at locations
-
-};
-
-#endif // pylith_meshio_geomdatatri3d_hh
-
-// End of file
Added: short/3D/PyLith/trunk/unittests/pytests/feassemble/TestCellGeometry.py
===================================================================
--- short/3D/PyLith/trunk/unittests/pytests/feassemble/TestCellGeometry.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/pytests/feassemble/TestCellGeometry.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -0,0 +1,84 @@
+#!/usr/bin/env python
+#
+# ======================================================================
+#
+# Brad T. Aagaard
+# U.S. Geological Survey
+#
+# {LicenseText}
+#
+# ======================================================================
+#
+
+## @file unittests/pytests/feassemble/TestCellGeometry.py
+
+## @brief Unit testing of Python CellGeometry object.
+
+import unittest
+import numpy
+
+from pylith.feassemble.geometry.GeometryPoint1D import GeometryPoint1D
+from pylith.feassemble.geometry.GeometryPoint2D import GeometryPoint2D
+from pylith.feassemble.geometry.GeometryPoint3D import GeometryPoint3D
+from pylith.feassemble.geometry.GeometryLine1D import GeometryLine1D
+from pylith.feassemble.geometry.GeometryLine2D import GeometryLine2D
+from pylith.feassemble.geometry.GeometryLine3D import GeometryLine3D
+from pylith.feassemble.geometry.GeometryTri2D import GeometryTri2D
+from pylith.feassemble.geometry.GeometryTri3D import GeometryTri3D
+from pylith.feassemble.geometry.GeometryQuad2D import GeometryQuad2D
+from pylith.feassemble.geometry.GeometryQuad3D import GeometryQuad3D
+from pylith.feassemble.geometry.GeometryTet3D import GeometryTet3D
+from pylith.feassemble.geometry.GeometryHex3D import GeometryHex3D
+
+
+# ----------------------------------------------------------------------
+class TestCellGeometry(unittest.TestCase):
+ """
+ Unit testing of Python CellGeometry object.
+ """
+
+ def test_constructors(self):
+ """
+ Test constructors for cell geometry objects.
+ """
+
+ geometry = GeometryPoint1D()
+ self.failIfEqual(None, geometry.cppHandle)
+
+ geometry = GeometryPoint2D()
+ self.failIfEqual(None, geometry.cppHandle)
+
+ geometry = GeometryPoint3D()
+ self.failIfEqual(None, geometry.cppHandle)
+
+ geometry = GeometryLine1D()
+ self.failIfEqual(None, geometry.cppHandle)
+
+ geometry = GeometryLine2D()
+ self.failIfEqual(None, geometry.cppHandle)
+
+ geometry = GeometryLine3D()
+ self.failIfEqual(None, geometry.cppHandle)
+
+ geometry = GeometryTri2D()
+ self.failIfEqual(None, geometry.cppHandle)
+
+ geometry = GeometryTri3D()
+ self.failIfEqual(None, geometry.cppHandle)
+
+ geometry = GeometryQuad2D()
+ self.failIfEqual(None, geometry.cppHandle)
+
+ geometry = GeometryQuad3D()
+ self.failIfEqual(None, geometry.cppHandle)
+
+ geometry = GeometryTet3D()
+ self.failIfEqual(None, geometry.cppHandle)
+
+ geometry = GeometryHex3D()
+ self.failIfEqual(None, geometry.cppHandle)
+
+ return
+
+
+# End of file
Modified: short/3D/PyLith/trunk/unittests/pytests/feassemble/TestFIATLagrange.py
===================================================================
--- short/3D/PyLith/trunk/unittests/pytests/feassemble/TestFIATLagrange.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/pytests/feassemble/TestFIATLagrange.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -356,7 +356,6 @@
Unit testing of FIATLagrange object.
"""
-
def test_initialize_line2(self):
"""
Test initialize() with line2 cell.
@@ -366,10 +365,12 @@
cell.cellDim = 1
cell.degree = 1
cell.order = 1
- cell.initialize()
+ cell.initialize(spaceDim=1)
cellE = Line2()
self._checkVals(cellE, cell)
+ from pylith.feassemble.geometry.GeometryLine1D import GeometryLine1D
+ self.assertTrue(isinstance(cell.geometry, GeometryLine1D))
return
@@ -382,10 +383,12 @@
cell.cellDim = 1
cell.degree = 2
cell.order = 2
- cell.initialize()
+ cell.initialize(spaceDim=2)
cellE = Line3()
self._checkVals(cellE, cell)
+ from pylith.feassemble.geometry.GeometryLine2D import GeometryLine2D
+ self.assertTrue(isinstance(cell.geometry, GeometryLine2D))
return
@@ -398,10 +401,12 @@
cell.cellDim = 2
cell.degree = 1
cell.order = 2
- cell.initialize()
+ cell.initialize(spaceDim=2)
cellE = Quad4()
self._checkVals(cellE, cell)
+ from pylith.feassemble.geometry.GeometryQuad2D import GeometryQuad2D
+ self.assertTrue(isinstance(cell.geometry, GeometryQuad2D))
return
@@ -414,10 +419,12 @@
cell.cellDim = 3
cell.degree = 1
cell.order = 2
- cell.initialize()
+ cell.initialize(spaceDim=3)
cellE = Hex8()
self._checkVals(cellE, cell)
+ from pylith.feassemble.geometry.GeometryHex3D import GeometryHex3D
+ self.assertTrue(isinstance(cell.geometry, GeometryHex3D))
return
Modified: short/3D/PyLith/trunk/unittests/pytests/feassemble/TestFIATSimplex.py
===================================================================
--- short/3D/PyLith/trunk/unittests/pytests/feassemble/TestFIATSimplex.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/pytests/feassemble/TestFIATSimplex.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -307,10 +307,12 @@
cell.shape = "line"
cell.degree = 1
cell.order = 1
- cell.initialize()
+ cell.initialize(spaceDim=1)
cellE = Line2()
self._checkVals(cellE, cell)
+ from pylith.feassemble.geometry.GeometryLine1D import GeometryLine1D
+ self.assertTrue(isinstance(cell.geometry, GeometryLine1D))
return
@@ -322,10 +324,12 @@
cell.shape = "line"
cell.degree = 2
cell.order = 2
- cell.initialize()
+ cell.initialize(spaceDim=2)
cellE = Line3()
self._checkVals(cellE, cell)
+ from pylith.feassemble.geometry.GeometryLine2D import GeometryLine2D
+ self.assertTrue(isinstance(cell.geometry, GeometryLine2D))
return
@@ -337,10 +341,12 @@
cell.shape = "triangle"
cell.degree = 1
cell.order = 1
- cell.initialize()
+ cell.initialize(spaceDim=2)
cellE = Tri3()
self._checkVals(cellE, cell)
+ from pylith.feassemble.geometry.GeometryTri2D import GeometryTri2D
+ self.assertTrue(isinstance(cell.geometry, GeometryTri2D))
return
@@ -352,10 +358,12 @@
cell.shape = "tetrahedron"
cell.degree = 1
cell.order = 1
- cell.initialize()
+ cell.initialize(spaceDim=3)
cellE = Tet4()
self._checkVals(cellE, cell)
+ from pylith.feassemble.geometry.GeometryTet3D import GeometryTet3D
+ self.assertTrue(isinstance(cell.geometry, GeometryTet3D))
return
Modified: short/3D/PyLith/trunk/unittests/pytests/feassemble/TestQuadrature.py
===================================================================
--- short/3D/PyLith/trunk/unittests/pytests/feassemble/TestQuadrature.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/pytests/feassemble/TestQuadrature.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -111,6 +111,9 @@
quadPts = testmodule.quadPtsRef(quadrature.cppHandle)
test_double(self, quadPtsE, quadPts)
+
+ from pylith.feassemble.geometry.GeometryLine1D import GeometryLine1D
+ self.assertTrue(isinstance(quadrature.cell.geometry, GeometryLine1D))
return
@@ -122,32 +125,32 @@
q = Quadrature1D()
self.assertEqual(1, q.spaceDim)
self.assertEqual(1, q.cellDim)
- self.failIf(None == q.cppHandle)
+ self.failIfEqual(None, q.cppHandle)
q = Quadrature1Din2D()
self.assertEqual(2, q.spaceDim)
self.assertEqual(1, q.cellDim)
- self.failIf(None == q.cppHandle)
+ self.failIfEqual(None, q.cppHandle)
q = Quadrature1Din3D()
self.assertEqual(3, q.spaceDim)
self.assertEqual(1, q.cellDim)
- self.failIf(None == q.cppHandle)
+ self.failIfEqual(None, q.cppHandle)
q = Quadrature2D()
self.assertEqual(2, q.spaceDim)
self.assertEqual(2, q.cellDim)
- self.failIf(None == q.cppHandle)
+ self.failIfEqual(None, q.cppHandle)
q = Quadrature2Din3D()
self.assertEqual(3, q.spaceDim)
self.assertEqual(2, q.cellDim)
- self.failIf(None == q.cppHandle)
+ self.failIfEqual(None, q.cppHandle)
q = Quadrature3D()
self.assertEqual(3, q.spaceDim)
self.assertEqual(3, q.cellDim)
- self.failIf(None == q.cppHandle)
+ self.failIfEqual(None, q.cppHandle)
return
Modified: short/3D/PyLith/trunk/unittests/pytests/feassemble/testfeassemble.py
===================================================================
--- short/3D/PyLith/trunk/unittests/pytests/feassemble/testfeassemble.py 2007-06-07 22:09:07 UTC (rev 7093)
+++ short/3D/PyLith/trunk/unittests/pytests/feassemble/testfeassemble.py 2007-06-07 23:37:26 UTC (rev 7094)
@@ -54,6 +54,9 @@
suite = unittest.TestSuite()
+ from TestCellGeometry import TestCellGeometry
+ suite.addTest(unittest.makeSuite(TestCellGeometry))
+
from TestFIATSimplex import TestFIATSimplex
suite.addTest(unittest.makeSuite(TestFIATSimplex))
More information about the cig-commits
mailing list