[cig-commits] r16704 - in short/3D/PyLith/trunk: . unittests/libtests/bc unittests/libtests/materials unittests/pytests/bc unittests/pytests/materials

brad at geodynamics.org brad at geodynamics.org
Fri May 14 09:34:00 PDT 2010


Author: brad
Date: 2010-05-14 09:34:00 -0700 (Fri, 14 May 2010)
New Revision: 16704

Modified:
   short/3D/PyLith/trunk/TODO
   short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBC.cc
   short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBC.hh
   short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCLine2.hh
   short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCLine2b.hh
   short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCQuad4.hh
   short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCTet4.hh
   short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCTri3.hh
   short/3D/PyLith/trunk/unittests/libtests/materials/TestDruckerPrager3D.cc
   short/3D/PyLith/trunk/unittests/libtests/materials/TestDruckerPrager3D.hh
   short/3D/PyLith/trunk/unittests/libtests/materials/TestMaterial.cc
   short/3D/PyLith/trunk/unittests/libtests/materials/TestMaterial.hh
   short/3D/PyLith/trunk/unittests/pytests/bc/TestDirichletBC.py
   short/3D/PyLith/trunk/unittests/pytests/materials/TestMaterial.py
Log:
Added C++ and Python unit tests for Material::isJacobianSymmetric() and DirichletBC::numDimConstrained().

Modified: short/3D/PyLith/trunk/TODO
===================================================================
--- short/3D/PyLith/trunk/TODO	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/TODO	2010-05-14 16:34:00 UTC (rev 16704)
@@ -6,10 +6,6 @@
 
 MAIN PRIORITIES
 
-* unittests
-  isJacobianSymmetric() (materials)
-  numDimConstrained() (DirichletBC)
-
 * Drucker-Prager elastoplastic
 
 * Use node set names in MeshIOCubit.
@@ -19,9 +15,6 @@
 * Friction template
   viscous (velocity proportional friction)
 
-* Output
-  MATT - Will try moving std::ostringstream outside of loop
-
 * Better preconditioning
   + Need settings for Schur complement
 
@@ -110,7 +103,7 @@
 SECONDARY PRIORITIES
 ----------------------------------------------------------------------
 
-* Output to HDF5 files
+* Output to VTK XML files w/data values as binary
 
 * Uniform global refinement for tets with faults
 

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBC.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBC.cc	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBC.cc	2010-05-14 16:34:00 UTC (rev 16704)
@@ -120,6 +120,19 @@
 } // testInitialize
 
 // ----------------------------------------------------------------------
+// Test numDimConstrained().
+void
+pylith::bc::TestDirichletBC::testNumDimConstrained(void)
+{ // testNumDimConstrained
+  topology::Mesh mesh;
+  DirichletBC bc;
+  _initialize(&mesh, &bc);
+  CPPUNIT_ASSERT(0 != _data);
+
+  CPPUNIT_ASSERT_EQUAL(_data->numFixedDOF, bc.numDimConstrained());
+} // testNumDimConstrained
+
+// ----------------------------------------------------------------------
 // Test setConstraintSizes().
 void
 pylith::bc::TestDirichletBC::testSetConstraintSizes(void)

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBC.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBC.hh	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBC.hh	2010-05-14 16:34:00 UTC (rev 16704)
@@ -60,6 +60,9 @@
   /// Test initialize().
   void testInitialize(void);
 
+  /// Test numDimConstrained().
+  void testNumDimConstrained(void);
+
   /// Test setConstraintSizes().
   void testSetConstraintSizes(void);
 

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCLine2.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCLine2.hh	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCLine2.hh	2010-05-14 16:34:00 UTC (rev 16704)
@@ -38,6 +38,7 @@
   CPPUNIT_TEST_SUB_SUITE( TestDirichletBCLine2, TestDirichletBC );
 
   CPPUNIT_TEST( testInitialize );
+  CPPUNIT_TEST( testNumDimConstrained );
   CPPUNIT_TEST( testSetConstraintSizes );
   CPPUNIT_TEST( testSetConstraints );
   CPPUNIT_TEST( testSetField );

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCLine2b.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCLine2b.hh	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCLine2b.hh	2010-05-14 16:34:00 UTC (rev 16704)
@@ -36,10 +36,13 @@
 
   // CPPUNIT TEST SUITE /////////////////////////////////////////////////
   CPPUNIT_TEST_SUB_SUITE( TestDirichletBCLine2b, TestDirichletBC );
+
   CPPUNIT_TEST( testInitialize );
+  CPPUNIT_TEST( testNumDimConstrained );
   CPPUNIT_TEST( testSetConstraintSizes );
   CPPUNIT_TEST( testSetConstraints );
   CPPUNIT_TEST( testSetField );
+
   CPPUNIT_TEST_SUITE_END();
 
   // PUBLIC METHODS /////////////////////////////////////////////////////

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCQuad4.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCQuad4.hh	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCQuad4.hh	2010-05-14 16:34:00 UTC (rev 16704)
@@ -38,6 +38,7 @@
   CPPUNIT_TEST_SUB_SUITE( TestDirichletBCQuad4, TestDirichletBC );
 
   CPPUNIT_TEST( testInitialize );
+  CPPUNIT_TEST( testNumDimConstrained );
   CPPUNIT_TEST( testSetConstraintSizes );
   CPPUNIT_TEST( testSetConstraints );
   CPPUNIT_TEST( testSetField );

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCTet4.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCTet4.hh	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCTet4.hh	2010-05-14 16:34:00 UTC (rev 16704)
@@ -38,6 +38,7 @@
   CPPUNIT_TEST_SUB_SUITE( TestDirichletBCTet4, TestDirichletBC );
 
   CPPUNIT_TEST( testInitialize );
+  CPPUNIT_TEST( testNumDimConstrained );
   CPPUNIT_TEST( testSetConstraintSizes );
   CPPUNIT_TEST( testSetConstraints );
   CPPUNIT_TEST( testSetField );

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCTri3.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCTri3.hh	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCTri3.hh	2010-05-14 16:34:00 UTC (rev 16704)
@@ -38,6 +38,7 @@
   CPPUNIT_TEST_SUB_SUITE( TestDirichletBCTri3, TestDirichletBC );
 
   CPPUNIT_TEST( testInitialize );
+  CPPUNIT_TEST( testNumDimConstrained );
   CPPUNIT_TEST( testSetConstraintSizes );
   CPPUNIT_TEST( testSetConstraints );
   CPPUNIT_TEST( testSetField );

Modified: short/3D/PyLith/trunk/unittests/libtests/materials/TestDruckerPrager3D.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/materials/TestDruckerPrager3D.cc	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/libtests/materials/TestDruckerPrager3D.cc	2010-05-14 16:34:00 UTC (rev 16704)
@@ -211,5 +211,17 @@
   CPPUNIT_ASSERT(material.hasStateVar("plastic_strain"));
 } // testHasStateVar
 
+// ----------------------------------------------------------------------
+// Test _dbToProperties().
+void
+pylith::materials::TestDruckerPrager3D::testDBToProperties(void)
+{ // testDBToProperties
+  CPPUNIT_ASSERT(0 != _material);
+  
+  TestMaterial::testDBToProperties();
 
+  CPPUNIT_ASSERT_EQUAL(false, _material->isJacobianSymmetric());
+} // testDBToProperties
+
+
 // End of file 

Modified: short/3D/PyLith/trunk/unittests/libtests/materials/TestDruckerPrager3D.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/materials/TestDruckerPrager3D.hh	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/libtests/materials/TestDruckerPrager3D.hh	2010-05-14 16:34:00 UTC (rev 16704)
@@ -109,6 +109,9 @@
   /// Test hasStateVar()
   void testHasStateVar(void);
 
+  /// Test _dbToProperties() and check flag for symmetry of Jacobian.
+  void testDBToProperties(void);
+
 }; // class TestDruckerPrager3D
 
 #endif // pylith_materials_testdruckerprager3d_hh

Modified: short/3D/PyLith/trunk/unittests/libtests/materials/TestMaterial.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/materials/TestMaterial.cc	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/libtests/materials/TestMaterial.cc	2010-05-14 16:34:00 UTC (rev 16704)
@@ -145,6 +145,20 @@
 } // testNeedNewJacobian
 
 // ----------------------------------------------------------------------
+// Test isJacobianSymmetric()
+void
+pylith::materials::TestMaterial::testIsJacobianSymmetric(void)
+{ // testIsJacobianSymmetric
+  ElasticIsotropic3D material;
+
+  CPPUNIT_ASSERT_EQUAL(true, material.isJacobianSymmetric());
+
+  bool flag = false;
+  material._isJacobianSymmetric = flag;
+  CPPUNIT_ASSERT_EQUAL(flag, material.isJacobianSymmetric());
+} // testIsJacobianSymmetric
+
+// ----------------------------------------------------------------------
 // Test initialize()
 void
 pylith::materials::TestMaterial::testInitialize(void)

Modified: short/3D/PyLith/trunk/unittests/libtests/materials/TestMaterial.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/materials/TestMaterial.hh	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/libtests/materials/TestMaterial.hh	2010-05-14 16:34:00 UTC (rev 16704)
@@ -47,6 +47,7 @@
   CPPUNIT_TEST( testDBStateVars );
   CPPUNIT_TEST( testNormalizer );
   CPPUNIT_TEST( testNeedNewJacobian );
+  CPPUNIT_TEST( testIsJacobianSymmetric );
   CPPUNIT_TEST( testInitialize );
 
   CPPUNIT_TEST_SUITE_END();
@@ -75,6 +76,9 @@
   /// Test needNewJacobian()
   void testNeedNewJacobian(void);
 
+  /// Test isJacobianSymmetric()
+  void testIsJacobianSymmetric(void);
+
   /// Test initialize()
   void testInitialize(void);
 

Modified: short/3D/PyLith/trunk/unittests/pytests/bc/TestDirichletBC.py
===================================================================
--- short/3D/PyLith/trunk/unittests/pytests/bc/TestDirichletBC.py	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/pytests/bc/TestDirichletBC.py	2010-05-14 16:34:00 UTC (rev 16704)
@@ -80,6 +80,17 @@
     return
 
 
+  def test_numDimConstrained(self):
+    """
+    Test numDimConstrained().
+    """
+
+    (mesh, bc, field) = self._initialize()
+
+    self.assertEqual(1, bc.numDimConstrained())
+    return
+
+
   def test_setConstraintSizes(self):
     """
     Test setConstraintSizes().

Modified: short/3D/PyLith/trunk/unittests/pytests/materials/TestMaterial.py
===================================================================
--- short/3D/PyLith/trunk/unittests/pytests/materials/TestMaterial.py	2010-05-14 06:09:06 UTC (rev 16703)
+++ short/3D/PyLith/trunk/unittests/pytests/materials/TestMaterial.py	2010-05-14 16:34:00 UTC (rev 16704)
@@ -116,6 +116,16 @@
     return
 
 
+  def testIsJacobianSymmetric(self):
+    """
+    Test isJacobianSymmetric().
+    """
+    # Default should be True.
+    self.failUnless(self.material.isJacobianSymmetric())
+
+    return
+  
+
   def test_preinitialize(self):
     """
     Test preinitialize().



More information about the CIG-COMMITS mailing list