[cig-commits] r15170 - in short/3D/PyLith/trunk: . examples/3d/hex8 examples/3d/tet4 examples/bar_shearwave/hex8 examples/bar_shearwave/quad4 examples/bar_shearwave/tet4 examples/bar_shearwave/tri3 examples/greensfns/hex8 examples/twocells/twohex8 examples/twocells/twoquad4 examples/twocells/twotet4 examples/twocells/twotet4-geoproj examples/twocells/twotri3 libsrc/topology modulesrc/topology pylith/bc pylith/topology tests/1d/line2 tests/1d/line3 tests/2d/quad4 unittests/libtests/bc unittests/libtests/bc/data

brad at geodynamics.org brad at geodynamics.org
Tue Jun 9 23:16:53 PDT 2009


Author: brad
Date: 2009-06-09 23:16:49 -0700 (Tue, 09 Jun 2009)
New Revision: 15170

Removed:
   short/3D/PyLith/trunk/examples/3d/hex8/gftest/
Modified:
   short/3D/PyLith/trunk/TODO
   short/3D/PyLith/trunk/examples/3d/hex8/pylithapp.cfg
   short/3D/PyLith/trunk/examples/3d/hex8/savageprescott.cfg
   short/3D/PyLith/trunk/examples/3d/tet4/pylithapp.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/hex8/shearwave.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/tet4/shearwave.cfg
   short/3D/PyLith/trunk/examples/bar_shearwave/tri3/shearwave.cfg
   short/3D/PyLith/trunk/examples/greensfns/hex8/pylithapp.cfg
   short/3D/PyLith/trunk/examples/twocells/twohex8/pylithapp.cfg
   short/3D/PyLith/trunk/examples/twocells/twoquad4/pylithapp.cfg
   short/3D/PyLith/trunk/examples/twocells/twotet4-geoproj/pylithapp.cfg
   short/3D/PyLith/trunk/examples/twocells/twotet4/pylithapp.cfg
   short/3D/PyLith/trunk/examples/twocells/twotri3/pylithapp.cfg
   short/3D/PyLith/trunk/libsrc/topology/Jacobian.cc
   short/3D/PyLith/trunk/libsrc/topology/Jacobian.hh
   short/3D/PyLith/trunk/modulesrc/topology/Jacobian.i
   short/3D/PyLith/trunk/pylith/bc/ZeroDispDB.py
   short/3D/PyLith/trunk/pylith/topology/Jacobian.py
   short/3D/PyLith/trunk/tests/1d/line2/axialextension.cfg
   short/3D/PyLith/trunk/tests/1d/line2/dislocation.cfg
   short/3D/PyLith/trunk/tests/1d/line3/axialextension.cfg
   short/3D/PyLith/trunk/tests/1d/line3/dislocation.cfg
   short/3D/PyLith/trunk/tests/2d/quad4/axialsheardisp.cfg
   short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBC.cc
   short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCMulti.cc
   short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBoundary.cc
   short/3D/PyLith/trunk/unittests/libtests/bc/TestPointForce.cc
   short/3D/PyLith/trunk/unittests/libtests/bc/data/hex8_force.spatialdb
   short/3D/PyLith/trunk/unittests/libtests/bc/data/line2_force.spatialdb
   short/3D/PyLith/trunk/unittests/libtests/bc/data/quad4_force.spatialdb
   short/3D/PyLith/trunk/unittests/libtests/bc/data/tet4_force.spatialdb
   short/3D/PyLith/trunk/unittests/libtests/bc/data/tri3_force.spatialdb
   short/3D/PyLith/trunk/unittests/libtests/bc/data/tri3_force_change.spatialdb
   short/3D/PyLith/trunk/unittests/libtests/bc/data/tri3_force_rate.spatialdb
Log:
Switched to default matrix type to sbaij. Updated parameter settings to use correct nonzero shift. Added use of units to UniformDB.

Modified: short/3D/PyLith/trunk/TODO
===================================================================
--- short/3D/PyLith/trunk/TODO	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/TODO	2009-06-10 06:16:49 UTC (rev 15170)
@@ -19,17 +19,15 @@
         CellFilterAvg (_fieldAvg)
         VertexFilterVecNorm (_fieldVecNorm)
       
-      
   field split
 
 Brad
   Update Neumann
   ArbitratySlipFn (final slip, start time)
-  UniformDB units
-  symmetric matrix (preconditioner?)
   full-scale testing
   cleanup
   test uniform refinement
+  symmetric matrix (preconditioner? sub_pc_factor_shift_nonzero_positive_definite)
 
 
 Charles

Modified: short/3D/PyLith/trunk/examples/3d/hex8/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/3d/hex8/pylithapp.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/3d/hex8/pylithapp.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -14,9 +14,7 @@
 ##implicitelasticity = 1
 ##faultcohesivekin = 1
 ##fiatlagrange = 1
-#quadrature3d = 1
-
-[pylithapp.journal.debug]
+quadrature3d = 1
 ##pylithapp = 1
 ##problem = 1
 ##implicit = 1
@@ -76,9 +74,15 @@
 [pylithapp.petsc]
 ksp_rtol = 1.0e-8
 pc_type = asm
-##ksp_monitor = true
-##ksp_view = true
-##log_summary = true
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
+ksp_monitor = true
+ksp_view = true
+log_summary = true
 ksp_max_it = 100
 ksp_gmres_restart = 50
 #start_in_debugger = true
+

Modified: short/3D/PyLith/trunk/examples/3d/hex8/savageprescott.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/3d/hex8/savageprescott.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/3d/hex8/savageprescott.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -61,8 +61,7 @@
 db_rate = spatialdata.spatialdb.UniformDB
 db_rate.label = Dirichlet rate BC on +x
 db_rate.values = [displacement-rate-x,displacement-rate-y,rate-start-time]
-# Velocity of -1.0 cm/yr (-3.1688087814028952e-10 m/s)
-db_rate.data = [0.0,-3.1688087814028952e-10,0.0]
+db_rate.data = [0.0*cm/year,-1.0*cm/year,0.0*cm/year]
 
 [pylithapp.timedependent.bc.x_neg]
 fixed_dof = [0, 1]
@@ -71,8 +70,7 @@
 db_rate = spatialdata.spatialdb.UniformDB
 db_rate.label = Dirichlet rate BC on -x
 db_rate.values = [displacement-rate-x,displacement-rate-y,rate-start-time]
-# Velocity of +1.0 cm/yr (+3.1688087814028952e-10 m/s)
-db_rate.data = [0.0,+3.1688087814028952e-10,0.0]
+db_rate.data = [0.0*cm/year,+1.0*cm/year,0.0*cm/year]
 
 [pylithapp.timedependent.bc.z_neg]
 fixed_dof = [2]

Modified: short/3D/PyLith/trunk/examples/3d/tet4/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/3d/tet4/pylithapp.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/3d/tet4/pylithapp.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -84,6 +84,11 @@
 [pylithapp.petsc]
 ksp_rtol = 1.0e-8
 pc_type = asm
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 ksp_monitor = true
 ksp_view = true
 log_summary = true

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/hex8/shearwave.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/hex8/shearwave.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/hex8/shearwave.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -177,6 +177,11 @@
 [pylithapp.petsc]
 ksp_type = gmres
 pc_type = asm
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 ksp_rtol = 1.0e-8
 ksp_atol = 1.0e-10
 ksp_max_it = 50

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/quad4/shearwave.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -181,6 +181,11 @@
 [pylithapp.petsc]
 ksp_type = gmres
 pc_type = asm
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 ksp_rtol = 1.0e-8
 ksp_atol = 1.0e-10
 ksp_max_it = 50

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/tet4/shearwave.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/tet4/shearwave.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/tet4/shearwave.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -194,6 +194,11 @@
 [pylithapp.petsc]
 ksp_type = gmres
 pc_type = asm
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 ksp_rtol = 1.0e-8
 ksp_atol = 1.0e-10
 ksp_max_it = 50

Modified: short/3D/PyLith/trunk/examples/bar_shearwave/tri3/shearwave.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/bar_shearwave/tri3/shearwave.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/bar_shearwave/tri3/shearwave.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -181,6 +181,11 @@
 [pylithapp.petsc]
 ksp_type = gmres
 pc_type = asm
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 ksp_rtol = 1.0e-8
 ksp_atol = 1.0e-10
 ksp_max_it = 50

Modified: short/3D/PyLith/trunk/examples/greensfns/hex8/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/greensfns/hex8/pylithapp.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/greensfns/hex8/pylithapp.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -75,6 +75,11 @@
 [pylithapp.petsc]
 ksp_rtol = 1.0e-8
 pc_type = asm
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 ksp_monitor = true
 ksp_view = true
 log_summary = true

Modified: short/3D/PyLith/trunk/examples/twocells/twohex8/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/twocells/twohex8/pylithapp.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/twocells/twohex8/pylithapp.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -81,7 +81,7 @@
 # using a spatial database file.
 properties_db = spatialdata.spatialdb.UniformDB
 properties_db.values = [vp,vs,density,viscosity]
-properties_db.data = [5773.502691896258, 3333.333333333333, 2700.0, 1.0e18]
+properties_db.data = [5773.502691896258*m/s,3333.333333333333*m/s,2700.0*kg/m**3,1.0e18*Pa*s]
 
 # If we instead wanted to used the 'matprops.spatialdb' file to define
 # material properties we would comment out the three 'db' lines above
@@ -101,5 +101,10 @@
 # ----------------------------------------------------------------------
 [pylithapp.petsc]
 pc_type = jacobi
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 # start_in_debugger = true
 # debugger_timeout = 100

Modified: short/3D/PyLith/trunk/examples/twocells/twoquad4/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/twocells/twoquad4/pylithapp.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/twocells/twoquad4/pylithapp.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -94,5 +94,10 @@
 # documentation.
 [pylithapp.petsc]
 pc_type = bjacobi
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 # start_in_debugger = true
 # debugger_timeout = 100

Modified: short/3D/PyLith/trunk/examples/twocells/twotet4/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/twocells/twotet4/pylithapp.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/twocells/twotet4/pylithapp.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -95,5 +95,10 @@
 # documentation.
 [pylithapp.petsc]
 pc_type = jacobi
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 # start_in_debugger = true
 # debugger_timeout = 100

Modified: short/3D/PyLith/trunk/examples/twocells/twotet4-geoproj/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/twocells/twotet4-geoproj/pylithapp.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/twocells/twotet4-geoproj/pylithapp.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -97,6 +97,11 @@
 # ----------------------------------------------------------------------
 [pylithapp.petsc]
 pc_type = jacobi
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 ksp_rtol = 1.0e-10
 ksp_monitor = true
 ksp_view = true

Modified: short/3D/PyLith/trunk/examples/twocells/twotri3/pylithapp.cfg
===================================================================
--- short/3D/PyLith/trunk/examples/twocells/twotri3/pylithapp.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/examples/twocells/twotri3/pylithapp.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -94,5 +94,10 @@
 # documentation.
 [pylithapp.petsc]
 pc_type = jacobi
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 # start_in_debugger = true
 # debugger_timeout = 100

Modified: short/3D/PyLith/trunk/libsrc/topology/Jacobian.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/Jacobian.cc	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/libsrc/topology/Jacobian.cc	2009-06-10 06:16:49 UTC (rev 15170)
@@ -131,5 +131,60 @@
   err = PetscViewerDestroy(viewer); CHECK_PETSC_ERROR(err);
 } // write
 
+// ----------------------------------------------------------------------
+// Verify symmetry of matrix.
+void
+pylith::topology::Jacobian::verifySymmetry(void) const
+{ // verifySymmetry
+  const PetscMat matSparse = _matrix;
 
+  int nrows = 0;
+  int ncols = 0;
+  MatGetSize(matSparse, &nrows, &ncols);
+
+  PetscMat matDense;
+  PetscMat matSparseAIJ;
+  MatConvert(matSparse, MATSEQAIJ, MAT_INITIAL_MATRIX, &matSparseAIJ);
+  MatConvert(matSparseAIJ, MATSEQDENSE, MAT_INITIAL_MATRIX, &matDense);
+
+  double_array vals(nrows*ncols);
+  int_array rows(nrows);
+  int_array cols(ncols);
+  for (int iRow=0; iRow < nrows; ++iRow)
+    rows[iRow] = iRow;
+  for (int iCol=0; iCol < ncols; ++iCol)
+    cols[iCol] = iCol;
+  MatGetValues(matDense, nrows, &rows[0], ncols, &cols[0], &vals[0]);
+  const double tolerance = 1.0e-06;
+  bool isSymmetric = true;
+  for (int iRow=0; iRow < nrows; ++iRow)
+    for (int iCol=0; iCol < ncols; ++iCol) {
+      const int indexIJ = ncols*iRow+iCol;
+      const int indexJI = nrows*iCol+iRow;
+      const double valIJ = vals[indexIJ];
+      const double valJI = vals[indexJI];
+      if (fabs(valIJ) > 1.0)
+	if (fabs(1.0 - valJI/valIJ) > tolerance) {
+	  std::cerr << "Mismatch: " 
+		    << "(" << iRow << ", " << iCol << ") = " << valIJ
+		    << ", (" << iCol << ", " << iRow << ") = " << valJI
+		    << std::endl;
+	  isSymmetric = false;
+	} // if
+      else
+	if (fabs(valJI - valIJ) > tolerance) {
+	  std::cerr << "Mismatch: " 
+		    << "(" << iRow << ", " << iCol << ") = " << valIJ
+		    << ", (" << iCol << ", " << iRow << ") = " << valJI
+		    << std::endl;
+	  isSymmetric = false;
+	} // if
+    } // for
+  MatDestroy(matDense);
+  MatDestroy(matSparseAIJ);
+  if (!isSymmetric)
+    throw std::runtime_error("Jacobian matrix is not symmetric.");
+} // verifySymmetry
+
+
 // End of file 

Modified: short/3D/PyLith/trunk/libsrc/topology/Jacobian.hh
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/Jacobian.hh	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/libsrc/topology/Jacobian.hh	2009-06-10 06:16:49 UTC (rev 15170)
@@ -79,6 +79,9 @@
    */
   void write(const char* filename);
 
+  /// Verify symmetry of matrix. For debugger purposes only.
+  void verifySymmetry(void) const;
+
 // PRIVATE MEMBERS //////////////////////////////////////////////////////
 private :
 

Modified: short/3D/PyLith/trunk/modulesrc/topology/Jacobian.i
===================================================================
--- short/3D/PyLith/trunk/modulesrc/topology/Jacobian.i	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/modulesrc/topology/Jacobian.i	2009-06-10 06:16:49 UTC (rev 15170)
@@ -72,6 +72,9 @@
        */
       void write(const char* filename);
 
+      /// Verify symmetry of matrix. For debugger purposes only.
+      void verifySymmetry(void) const;
+
     }; // Jacobian
 
   } // topology

Modified: short/3D/PyLith/trunk/pylith/bc/ZeroDispDB.py
===================================================================
--- short/3D/PyLith/trunk/pylith/bc/ZeroDispDB.py	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/pylith/bc/ZeroDispDB.py	2009-06-10 06:16:49 UTC (rev 15170)
@@ -46,8 +46,9 @@
 
     import pyre.inventory
 
+    from pyre.units.length import m
     values = ["displacement-x", "displacement-y", "displacement-z"]
-    data = [0.0, 0.0, 0.0]
+    data = [0.0*m, 0.0*m, 0.0*m]
 
 
   # PUBLIC METHODS /////////////////////////////////////////////////////

Modified: short/3D/PyLith/trunk/pylith/topology/Jacobian.py
===================================================================
--- short/3D/PyLith/trunk/pylith/topology/Jacobian.py	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/pylith/topology/Jacobian.py	2009-06-10 06:16:49 UTC (rev 15170)
@@ -33,7 +33,7 @@
     """
     # If matrix type has not been set, then set it to a value that will work.
     if matrixType == "unknown":
-      matrixType = "aij"
+      matrixType = "sbaij"
 
     ModuleJacobian.__init__(self, fields, matrixType)
     return

Modified: short/3D/PyLith/trunk/tests/1d/line2/axialextension.cfg
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/axialextension.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/tests/1d/line2/axialextension.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -68,6 +68,11 @@
 [axialextension.petsc]
 ksp_rtol = 1.0e-8
 pc_type = asm
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 ksp_max_it = 100
 ksp_gmres_restart = 50
 #ksp_monitor = true

Modified: short/3D/PyLith/trunk/tests/1d/line2/dislocation.cfg
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line2/dislocation.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/tests/1d/line2/dislocation.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -85,6 +85,11 @@
 [dislocation.petsc]
 ksp_rtol = 1.0e-8
 pc_type = asm
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 ksp_max_it = 100
 ksp_gmres_restart = 50
 #ksp_monitor = true

Modified: short/3D/PyLith/trunk/tests/1d/line3/axialextension.cfg
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line3/axialextension.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/tests/1d/line3/axialextension.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -69,6 +69,11 @@
 [axialextension.petsc]
 ksp_rtol = 1.0e-8
 pc_type = asm
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 ksp_max_it = 100
 ksp_gmres_restart = 50
 #ksp_monitor = true

Modified: short/3D/PyLith/trunk/tests/1d/line3/dislocation.cfg
===================================================================
--- short/3D/PyLith/trunk/tests/1d/line3/dislocation.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/tests/1d/line3/dislocation.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -83,6 +83,11 @@
 [dislocation.petsc]
 ksp_rtol = 1.0e-8
 pc_type = asm
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 ksp_max_it = 100
 ksp_gmres_restart = 50
 #ksp_monitor = true

Modified: short/3D/PyLith/trunk/tests/2d/quad4/axialsheardisp.cfg
===================================================================
--- short/3D/PyLith/trunk/tests/2d/quad4/axialsheardisp.cfg	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/tests/2d/quad4/axialsheardisp.cfg	2009-06-10 06:16:49 UTC (rev 15170)
@@ -89,6 +89,11 @@
 [pylithapp.petsc]
 ksp_rtol = 1.0e-8
 pc_type = asm
+# Change the preconditioner settings (must turn off
+# shift_positive_definite and turn on shift_nonzero).
+sub_pc_factor_shift_positive_definite = 0
+sub_pc_factor_shift_nonzero = 
+
 ksp_max_it = 100
 ksp_gmres_restart = 50
 #ksp_monitor = true

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBC.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBC.cc	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBC.cc	2009-06-10 06:16:49 UTC (rev 15170)
@@ -468,13 +468,18 @@
     "displacement-rate-y", 
     "displacement-rate-z",
     "rate-start-time"};
+  const char* units[] = { 
+    "m", 
+    "m", 
+    "m",
+    "s"};
   const double values[numValues] = { 
     _data->valueRate,
     _data->valueRate,
     _data->valueRate,
     _data->tRef,
   };
-  dbRate.setData(names, values, numValues);
+  dbRate.setData(names, units, values, numValues);
 
   const double upDir[] = { 0.0, 0.0, 1.0 };
 

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCMulti.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCMulti.cc	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBCMulti.cc	2009-06-10 06:16:49 UTC (rev 15170)
@@ -26,7 +26,6 @@
 #include "spatialdata/geocoords/CSCart.hh" // USES CSCart
 #include "spatialdata/spatialdb/SimpleDB.hh" // USES SimpleDB
 #include "spatialdata/spatialdb/SimpleIOAscii.hh" // USES SimpleIOAscii
-#include "spatialdata/spatialdb/UniformDB.hh" // USES UniformDB
 
 // ----------------------------------------------------------------------
 typedef pylith::topology::Mesh::SieveMesh SieveMesh;

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBoundary.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBoundary.cc	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestDirichletBoundary.cc	2009-06-10 06:16:49 UTC (rev 15170)
@@ -126,13 +126,19 @@
     "displacement-rate-z", 
     "rate-start-time",
   };
+  const char* units[numValues] = { 
+    "m", 
+    "m", 
+    "m", 
+    "s",
+  };
   const double values[numValues] = {
     _data->valueRate,
     _data->valueRate,
     _data->valueRate,
     _data->tRef,
   };
-  dbRate.setData(names, values, numValues);
+  dbRate.setData(names, units, values, numValues);
 
   const double upDir[] = { 0.0, 0.0, 1.0 };
 

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/TestPointForce.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/TestPointForce.cc	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/TestPointForce.cc	2009-06-10 06:16:49 UTC (rev 15170)
@@ -222,11 +222,17 @@
       "force-rate-z",
       "rate-start-time",
     };
+    const char* units[numValues] = {
+      "newton",
+      "newton",
+      "newton",
+      "s",
+    };
     const double values[numValues] = { _data->forceRate,
 				       _data->forceRate,
 				       _data->forceRate,
 				       _data->tRef};
-    dbRate.setData(names, values, numValues);
+    dbRate.setData(names, units, values, numValues);
   } // rate db
 
   const double upDir[] = { 0.0, 0.0, 1.0 };

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/data/hex8_force.spatialdb
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/data/hex8_force.spatialdb	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/data/hex8_force.spatialdb	2009-06-10 06:16:49 UTC (rev 15170)
@@ -2,7 +2,7 @@
 SimpleDB {
   num-values = 3
   value-names =  force-x  force-y force-z
-  value-units =  Pa*m**2  Pa*m**2  Pa*m**2
+  value-units =  newton  newton  newton
   num-locs = 4
   data-dim = 1
   space-dim = 3

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/data/line2_force.spatialdb
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/data/line2_force.spatialdb	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/data/line2_force.spatialdb	2009-06-10 06:16:49 UTC (rev 15170)
@@ -2,7 +2,7 @@
 SimpleDB {
   num-values = 1
   value-names =  force-x
-  value-units =  Pa*m**2
+  value-units =  newton
   num-locs = 2
   data-dim = 1
   space-dim = 1

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/data/quad4_force.spatialdb
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/data/quad4_force.spatialdb	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/data/quad4_force.spatialdb	2009-06-10 06:16:49 UTC (rev 15170)
@@ -2,7 +2,7 @@
 SimpleDB {
   num-values = 2
   value-names =  force-x  force-y
-  value-units =  Pa*m**2  Pa*m**2
+  value-units =  newton  newton
   num-locs = 3
   data-dim = 2
   space-dim = 2

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/data/tet4_force.spatialdb
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/data/tet4_force.spatialdb	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/data/tet4_force.spatialdb	2009-06-10 06:16:49 UTC (rev 15170)
@@ -2,7 +2,7 @@
 SimpleDB {
   num-values = 2
   value-names =  force-y  force-z
-  value-units =  Pa*m**2  Pa*m**2
+  value-units =  newton  newton
   num-locs = 1
   data-dim = 0
   space-dim = 3

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/data/tri3_force.spatialdb
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/data/tri3_force.spatialdb	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/data/tri3_force.spatialdb	2009-06-10 06:16:49 UTC (rev 15170)
@@ -2,7 +2,7 @@
 SimpleDB {
   num-values = 2
   value-names =  force-x  force-y
-  value-units =  Pa*m**2  Pa*m**2
+  value-units =  newton  newton
   num-locs = 2
   data-dim = 1
   space-dim = 2

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/data/tri3_force_change.spatialdb
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/data/tri3_force_change.spatialdb	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/data/tri3_force_change.spatialdb	2009-06-10 06:16:49 UTC (rev 15170)
@@ -2,7 +2,7 @@
 SimpleDB {
   num-values = 3
   value-names =  force-x  force-y change-start-time
-  value-units =  Pa*m**2  Pa*m**2  s
+  value-units =  newton  newton  s
   num-locs = 2
   data-dim = 1
   space-dim = 2

Modified: short/3D/PyLith/trunk/unittests/libtests/bc/data/tri3_force_rate.spatialdb
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/bc/data/tri3_force_rate.spatialdb	2009-06-10 06:13:18 UTC (rev 15169)
+++ short/3D/PyLith/trunk/unittests/libtests/bc/data/tri3_force_rate.spatialdb	2009-06-10 06:16:49 UTC (rev 15170)
@@ -2,7 +2,7 @@
 SimpleDB {
   num-values = 3
   value-names =  force-rate-x  force-rate-y rate-start-time
-  value-units =  Pa*m**2  Pa*m**2  s
+  value-units =  newton/s  newton/s  s
   num-locs = 2
   data-dim = 1
   space-dim = 2



More information about the CIG-COMMITS mailing list