[cig-commits] r16397 - in short/3D/PyLith/trunk/unittests/libtests/faults: . data

brad at geodynamics.org brad at geodynamics.org
Tue Mar 9 16:05:14 PST 2010


Author: brad
Date: 2010-03-09 16:05:12 -0800 (Tue, 09 Mar 2010)
New Revision: 16397

Modified:
   short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveDyn.cc
   short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynData.cc
   short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynData.hh
   short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataHex8.cc
   short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataHex8.hh
   short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataQuad4.cc
   short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataQuad4.hh
   short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTet4.cc
   short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTet4.hh
   short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTri3.cc
   short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTri3.hh
   short/3D/PyLith/trunk/unittests/libtests/faults/data/cohesivedyn.py
Log:
Updated unit tests for imposing initial fault tractions via integrateResidualAssembled(). Removes initial tractions from influencing unit tests because they affect Lagrange multiplier values, which are imposed in tests.

Modified: short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveDyn.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveDyn.cc	2010-03-10 00:03:42 UTC (rev 16396)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/TestFaultCohesiveDyn.cc	2010-03-10 00:05:12 UTC (rev 16397)
@@ -187,27 +187,28 @@
 				 tolerance);
   } // for
 
-  // Initial tractions
+  // Initial forces/tractions
   if (0 != fault._dbInitialTract) {
-    //fault._fields->get("initial traction").view("INITIAL TRACTIONS"); // DEBUGGING
-    const ALE::Obj<RealSection>& tractionSection = fault._fields->get(
-        "initial traction").section();
-    CPPUNIT_ASSERT(!tractionSection.isNull());
+    fault._fields->get("initial forces").view("INITIAL FORCES"); // DEBUGGING
+    const ALE::Obj<RealSection>& forcesInitialSection = 
+      fault._fields->get("initial forces").section();
+    CPPUNIT_ASSERT(!forcesInitialSection.isNull());
     const int spaceDim = _data->spaceDim;
     iVertex = 0;
     for (SieveSubMesh::label_sequence::iterator v_iter = verticesBegin;
         v_iter != verticesEnd;
         ++v_iter, ++iVertex) {
-      const int fiberDim = tractionSection->getFiberDimension(*v_iter);
+      const int fiberDim = forcesInitialSection->getFiberDimension(*v_iter);
       CPPUNIT_ASSERT_EQUAL(spaceDim, fiberDim);
-      const double* tractionVertex = tractionSection->restrictPoint(*v_iter);
-      CPPUNIT_ASSERT(0 != tractionVertex);
+      const double* forcesInitialVertex = 
+	forcesInitialSection->restrictPoint(*v_iter);
+      CPPUNIT_ASSERT(0 != forcesInitialVertex);
 
       const double tolerance = 1.0e-06;
       for (int i = 0; i < spaceDim; ++i) {
         const int index = iVertex * spaceDim + i;
-        CPPUNIT_ASSERT_DOUBLES_EQUAL(_data->initialTractions[index],
-            tractionVertex[i], tolerance);
+        CPPUNIT_ASSERT_DOUBLES_EQUAL(_data->forcesInitial[index], 
+				     forcesInitialVertex[i], tolerance);
       } // for
     } // for
   } // if
@@ -645,7 +646,6 @@
     SieveMesh::point_type meshVertex = -1;
     bool found = false;
 
-    // Test with dbInitialTract
     for (SieveMesh::renumbering_type::const_iterator r_iter = renumberingBegin;
       r_iter != renumberingEnd;
       ++r_iter) {
@@ -668,20 +668,15 @@
 
     const double scale = 1.0 / _data->area[iVertex];
     for (int iDim=0; iDim < spaceDim; ++iDim) {
-      const double tractionE =
-        _data->initialTractions[iVertex*spaceDim+iDim] + 
-	dispVertex[iDim] * scale;
+      const double tractionE = dispVertex[iDim] * scale;
       if (tractionE != 0.0)
         CPPUNIT_ASSERT_DOUBLES_EQUAL(1.0, tractionsVertex[iDim]/tractionE,
-             tolerance);
+				     tolerance);
       else
         CPPUNIT_ASSERT_DOUBLES_EQUAL(tractionE, tractionsVertex[iDim],
              tolerance);
     } // for
   } // for
-
-  // Test without dbInitialTract
-  // :TODO: STUFF GOES HERE (Brad)
 } // testCalcTractions
 
 // ----------------------------------------------------------------------

Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynData.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynData.cc	2010-03-10 00:03:42 UTC (rev 16396)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynData.cc	2010-03-10 00:05:12 UTC (rev 16397)
@@ -34,7 +34,7 @@
   fieldIncrOpen(0),
   jacobian(0),
   orientation(0),
-  initialTractions(0),
+  forcesInitial(0),
   area(0),
   fieldIncrSlipE(0),
   slipSlipE(0),

Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynData.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynData.hh	2010-03-10 00:03:42 UTC (rev 16396)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynData.hh	2010-03-10 00:05:12 UTC (rev 16397)
@@ -69,7 +69,7 @@
   //@{
   double* orientation; ///< Expected values for fault orientation.
   double* area; ///< Expected values for fault area.
-  double* initialTractions; ///< Expected values for initial tractions.
+  double* forcesInitial; ///< Expected values for initial forces.
   double* fieldIncrSlipE; ///< Expected values for solution increment for slipping case.
   double* slipSlipE; ///< Expected values for slip for slipping case.
   double* fieldIncrOpenE; ///< Expected values for solution increment for opening case.

Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataHex8.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataHex8.cc	2010-03-10 00:03:42 UTC (rev 16396)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataHex8.cc	2010-03-10 00:05:12 UTC (rev 16397)
@@ -1339,11 +1339,11 @@
   1.0, 1.0, 1.0, 1.0
 };
 
-const double pylith::faults::CohesiveDynDataHex8::_initialTractions[] = {
-  1.063397471, 2.063397471, -3.063397471, 
-  1.121132498, 2.121132498, -3.121132498, 
-  1.178867525, 2.178867525, -3.178867525,
-  1.236602552, 2.236602552, -3.236602552
+const double pylith::faults::CohesiveDynDataHex8::_forcesInitial[] = {
+  3.063397471, -1.063397471, -2.063397471, 
+  3.121132498, -1.121132498, -2.121132498, 
+  3.178867525, -1.178867525, -2.178867525,
+  3.236602552, -1.236602552, -2.236602552,
 };
 
 
@@ -1372,10 +1372,10 @@
   1.5, 3.5, 29.5, // 15
   1.7, 3.7, 29.7, // 16
   1.9, 3.9, 29.9, // 17
-  1.4, 3.4, -29.4, // 18
-  1.6, 3.6, -29.6, // 19
-  1.8, 3.8, -29.8, // 20
-  1.0, 3.0, -29.0, // 21
+  1.4, 3.4, -89.4, // 18
+  1.6, 3.6, -89.6, // 19
+  1.8, 3.8, -89.8, // 20
+  1.0, 3.0, -89.0, // 21
 };
 
 // No change in fieldIncr
@@ -1426,17 +1426,17 @@
   6.5, 8.5, 10.5, // 15
   6.7, 8.7, 10.7, // 16
   6.9, 8.9, 10.9, // 17
-  -3.94113616, -5.44660605,  -10.4, // 18
-  -4.11249353, -5.62478649,  -10.6, // 19
-  -4.28408279, -5.80283922,  -10.8, // 20 
-  -3.49677632, -4.95014952,  -10.0, // 21
+  -5.04097437, -6.91927077,  -10.4, // 18
+  -5.23905396, -7.12071099,  -10.6, // 19
+  -5.4372421, -7.32208086,   -10.8, // 20 
+  -4.6451818,  -6.516157,    -10.0, // 21
 };
 
 const double pylith::faults::CohesiveDynDataHex8::_slipSlipE[] = {
-  20.68227232,  27.69321209,  0.0,
-  21.42498706,  28.44957298,  0.0,
-  22.16816557,  29.20567845,  0.0,
-  18.99355263,  25.90029904,  0.0,
+  22.88194874,  30.63854153,  0.0,
+  23.67810791,  31.44142198,  0.0,
+  24.4744842,   32.24416172,  0.0,
+  21.2903636,   29.032314,    0.0,
 };
 
 // ----------------------------------------------------------------------
@@ -1518,7 +1518,7 @@
   jacobian = const_cast<double*>(_jacobian);
   orientation = const_cast<double*>(_orientation);
   area = const_cast<double*>(_area);
-  initialTractions = const_cast<double*>(_initialTractions);
+  forcesInitial = const_cast<double*>(_forcesInitial);
 
   constraintVertices = const_cast<int*>(_constraintVertices);
   numConstraintVert = _numConstraintVert;  

Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataHex8.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataHex8.hh	2010-03-10 00:03:42 UTC (rev 16396)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataHex8.hh	2010-03-10 00:05:12 UTC (rev 16397)
@@ -61,7 +61,7 @@
 
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.
-  static const double _initialTractions[]; ///< Expected values for initial tractions.
+  static const double _forcesInitial[]; ///< Expected values for initial forces.
   static const double _fieldIncrSlipE[]; ///< Expected values for solution increment for slip case.
   static const double _slipSlipE[]; ///< Expected values for slip for slip case.
   static const double _fieldIncrOpenE[]; ///< Expected values for solution increment for opening case.

Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataQuad4.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataQuad4.cc	2010-03-10 00:03:42 UTC (rev 16396)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataQuad4.cc	2010-03-10 00:05:12 UTC (rev 16397)
@@ -316,9 +316,9 @@
   1.0,
 };
 
-const double pylith::faults::CohesiveDynDataQuad4::_initialTractions[] = {
-  1.05, -2.05,
-  1.05, -2.05,
+const double pylith::faults::CohesiveDynDataQuad4::_forcesInitial[] = {
+  2.05, -1.05,
+  2.05, -1.05,
 };
 
 
@@ -375,14 +375,14 @@
   9.6, 10.6,
   9.7, 10.7, // 8
   9.9, 10.9, // 9
-  -8.8+3.05*0.6, -10.8, // 10
-  -8.0+3.05*0.6, -10.0, // 11
+  -8.8+1.0*0.6, -10.8, // 10
+  -8.0+1.0*0.6, -10.0, // 11
 };
 
 // :TODO: Update slip values based on changes in Lagrange multiplier values
 const double pylith::faults::CohesiveDynDataQuad4::_slipSlipE[] = {
-  33.54, 0.0,
-  30.34, 0.0,
+  36.0, 0.0,
+  32.8, 0.0,
 };
 
 // ----------------------------------------------------------------------
@@ -442,7 +442,7 @@
   jacobian = const_cast<double*>(_jacobian);
   orientation = const_cast<double*>(_orientation);
   area = const_cast<double*>(_area);
-  initialTractions = const_cast<double*>(_initialTractions);
+  forcesInitial = const_cast<double*>(_forcesInitial);
 
   constraintVertices = const_cast<int*>(_constraintVertices);
   numConstraintVert = _numConstraintVert;  

Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataQuad4.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataQuad4.hh	2010-03-10 00:03:42 UTC (rev 16396)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataQuad4.hh	2010-03-10 00:05:12 UTC (rev 16397)
@@ -61,7 +61,7 @@
 
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.
-  static const double _initialTractions[]; ///< Expected values for initial tractions.
+  static const double _forcesInitial[]; ///< Expected values for initial forces.
   static const double _fieldIncrSlipE[]; ///< Expected values for solution increment for slip case.
   static const double _slipSlipE[]; ///< Expected values for slip for slip case.
   static const double _fieldIncrOpenE[]; ///< Expected values for solution increment for opening case.

Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTet4.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTet4.cc	2010-03-10 00:03:42 UTC (rev 16396)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTet4.cc	2010-03-10 00:05:12 UTC (rev 16397)
@@ -470,10 +470,10 @@
   1.0/3.0,
 };
 
-const double pylith::faults::CohesiveDynDataTet4::_initialTractions[] = {
-  1.1, 2.1, -3.1,
-  1.1, 2.1, -3.1,
-  1.1, 2.1, -3.1,
+const double pylith::faults::CohesiveDynDataTet4::_forcesInitial[] = {
+  3.1/3.0, -1.1/3.0, -2.1/3.0,
+  3.1/3.0, -1.1/3.0, -2.1/3.0,
+  3.1/3.0, -1.1/3.0, -2.1/3.0,
 };
 
 
@@ -531,15 +531,15 @@
   8.6, 9.6, 10.6, // 7
   8.8, 9.8, 10.8, // 8
   8.0, 9.0, 10.0, // 9
-  -6.88824796, -7.78925381, -10.7, // 10
-  -7.0870762, -7.99029956, -10.9, // 11
-  -6.29211869, -7.18581852, -10.1, // 12
+  -7.30077769, -8.25209204, -10.7, // 10
+  -7.50020141, -8.45260634, -10.9, // 11
+  -6.70268132, -7.65040255, -10.1, // 12
 };
 
 const double pylith::faults::CohesiveDynDataTet4::_slipSlipE[] = {
-  31.17649592,  34.97850762,  0.0,
-  31.9741524,  35.78059911,  0.0,
-  28.78423738,  32.57163703,  0.0,
+  32.00155537,  35.90418407,  0.0,
+  32.80040282,  36.70521268,  0.0,
+  29.60536264,  33.5008051,  0.0,
 };
 
 // ----------------------------------------------------------------------
@@ -602,7 +602,7 @@
   jacobian = const_cast<double*>(_jacobian);
   orientation = const_cast<double*>(_orientation);
   area = const_cast<double*>(_area);
-  initialTractions = const_cast<double*>(_initialTractions);
+  forcesInitial = const_cast<double*>(_forcesInitial);
 
   constraintVertices = const_cast<int*>(_constraintVertices);
   numConstraintVert = _numConstraintVert;  

Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTet4.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTet4.hh	2010-03-10 00:03:42 UTC (rev 16396)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTet4.hh	2010-03-10 00:05:12 UTC (rev 16397)
@@ -61,7 +61,7 @@
 
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.
-  static const double _initialTractions[]; ///< Expected values for initial tractions.
+  static const double _forcesInitial[]; ///< Expected values for initial forces.
   static const double _fieldIncrSlipE[]; ///< Expected values for solution increment for slip case.
   static const double _slipSlipE[]; ///< Expected values for slip for slip case.
   static const double _fieldIncrOpenE[]; ///< Expected values for solution increment for opening case.

Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTri3.cc
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTri3.cc	2010-03-10 00:03:42 UTC (rev 16396)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTri3.cc	2010-03-10 00:05:12 UTC (rev 16397)
@@ -246,9 +246,9 @@
   1.0,
 };
 
-const double pylith::faults::CohesiveDynDataTri3::_initialTractions[] = {
-  1.05, -2.05,
-  1.05, -2.05,
+const double pylith::faults::CohesiveDynDataTri3::_forcesInitial[] = {
+  2.05, -1.05,
+  2.05, -1.05,
 };
 
 
@@ -291,7 +291,6 @@
 };
 
 // Output
-// :TODO: Update Lagrange multiplier values
 const double pylith::faults::CohesiveDynDataTri3::_fieldIncrSlipE[] = {
   9.1, 10.1,
   9.2, 10.2, // 3
@@ -299,14 +298,13 @@
   9.4, 10.4,
   9.5, 10.5, // 6
   9.7, 10.7, // 7
-  -8.6+3.05*0.6, -10.6, // 8
-  -8.8+3.05*0.6, -10.8, // 9
+  -8.6+1.0*0.6, -10.6, // 8
+  -8.8+1.0*0.6, -10.8, // 9
 };
 
-// :TODO: Update slip values based on changes in Lagrange multiplier values
 const double pylith::faults::CohesiveDynDataTri3::_slipSlipE[] = {
-  32.74, 0.0,
-  33.54, 0.0,
+  35.2, 0.0,
+  36.0, 0.0,
 };
 
 // ----------------------------------------------------------------------
@@ -362,7 +360,7 @@
   jacobian = const_cast<double*>(_jacobian);
   orientation = const_cast<double*>(_orientation);
   area = const_cast<double*>(_area);
-  initialTractions = const_cast<double*>(_initialTractions);
+  forcesInitial = const_cast<double*>(_forcesInitial);
 
   constraintVertices = const_cast<int*>(_constraintVertices);
   numConstraintVert = _numConstraintVert;  

Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTri3.hh
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTri3.hh	2010-03-10 00:03:42 UTC (rev 16396)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/CohesiveDynDataTri3.hh	2010-03-10 00:05:12 UTC (rev 16397)
@@ -61,7 +61,7 @@
 
   static const double _orientation[]; ///< Expected values for fault orientation.
   static const double _area[]; ///< Expected values for fault area.
-  static const double _initialTractions[]; ///< Expected values for initial tractions.
+  static const double _forcesInitial[]; ///< Expected values for initial forces.
   static const double _fieldIncrSlipE[]; ///< Expected values for solution increment for slip case.
   static const double _slipSlipE[]; ///< Expected values for slip for slip case.
   static const double _fieldIncrOpenE[]; ///< Expected values for solution increment for opening case.

Modified: short/3D/PyLith/trunk/unittests/libtests/faults/data/cohesivedyn.py
===================================================================
--- short/3D/PyLith/trunk/unittests/libtests/faults/data/cohesivedyn.py	2010-03-10 00:03:42 UTC (rev 16396)
+++ short/3D/PyLith/trunk/unittests/libtests/faults/data/cohesivedyn.py	2010-03-10 00:05:12 UTC (rev 16397)
@@ -4,7 +4,56 @@
 import numpy
 
 # ----------------------------------------------------------------------
-if dim == "3d":
+if dim == "2d":
+    if cell == "tri3":
+
+        fieldT = numpy.array([[8.6, 9.6],
+                              [8.8, 9.8]])
+        fieldIncr = numpy.array([[9.6, -10.6],
+                                 [9.8, -10.8]])
+        area = numpy.array([1.0, 1.0])
+    
+
+    elif cell == "quad4":
+        fieldT = numpy.array([[8.8, 9.8],
+                              [8.0, 9.0]])
+        fieldIncr = numpy.array([[9.8, -10.8],
+                                 [9.0, -10.0]])
+        area = numpy.array([1.0, 1.0])
+    
+
+    # ------------------------------------------------------------------
+    fieldTpdt = fieldT + fieldIncr
+
+    tractionShear = fieldTpdt[:,0] / area
+    tractionNormal = fieldTpdt[:,1] / area
+
+    print "tractionShear",tractionShear
+    print "tractionNormal",tractionNormal
+
+    friction = -0.6 * tractionNormal;
+
+    print "friction",friction
+
+    lagrangeTpdt0 = friction * fieldTpdt[:,0] / tractionShear
+
+    lagrangeIncr0 = lagrangeTpdt0 - fieldT[:,0]
+
+    print "lagrangeIncr0",lagrangeIncr0
+
+    dlagrange0 = (tractionShear - friction) * fieldTpdt[:,0] / tractionShear
+    
+    print "dlagrange0",dlagrange0
+
+    slipVertex0 = 2 * dlagrange0
+
+    print "slipVertex0",slipVertex0
+
+    print "fieldIncr",numpy.array([lagrangeIncr0]).transpose()
+    print "slip",numpy.array([slipVertex0]).transpose()
+
+# ----------------------------------------------------------------------
+elif dim == "3d":
     if cell == "tet4":
 
         fieldT = numpy.array([[7.7, 8.7, 9.7],
@@ -13,9 +62,6 @@
         fieldIncr = numpy.array([[8.7, 9.7, -10.7],
                                  [8.9, 9.9, -10.9],
                                  [8.1, 9.1, -10.1]])
-        initialTract = numpy.array([[1.1, 2.1, -3.1],
-                                    [1.1, 2.1, -3.1],
-                                    [1.1, 2.1, -3.1]])
         area = numpy.array([1.0/3.0, 1.0/3.0, 1.0/3.0])
     
 
@@ -28,47 +74,14 @@
                                  [6.6, 8.6, -10.6],
                                  [6.8, 8.8, -10.8],
                                  [6.0, 8.0, -10.0]])
-        initialTract = numpy.array([[1.063397471, 2.063397471, -3.063397471], 
-                                    [1.121132498, 2.121132498, -3.121132498], 
-                                    [1.178867525, 2.178867525, -3.178867525],
-                                    [1.236602552, 2.236602552, -3.236602552]])
         area = numpy.array([1.0, 1.0, 1.0, 1.0])
     
 
-        tp = numpy.array([9.4, 9.6, 9.8, 9])
-        tdt = numpy.array([-10.4, -10.6, -10.8, -10])
-        it = numpy.array([-3.0634, -3.12113, -3.17887, -3.2366])
-        
-        tps1 = numpy.array([5.4, 5.6, 5.8, 5])
-        tps2 = numpy.array([7.4, 7.6, 7.8, 7])
-        tdts1 = numpy.array([6.4, 6.6, 6.8, 6])
-        tdts2 = numpy.array([8.4, 8.6, 8.8, 8])
-        its1 = numpy.array([1.0634, 1.12113, 1.17887, 1.2366])
-        its2 = numpy.array([2.0634, 2.12113, 2.17887, 2.2366])
-        
-        tpdts1 = tps1 + tdts1
-        tpdts2 = tps2 + tdts2
-        
-        ts = (tpdts1**2 + tpdts2**2)**0.5
-        nt = tp + tdt + it
-        
-        friction = -0.6 * nt
-        
-        dL0 = (ts - friction) * tpdts1 / ts;
-        dL1 = (ts - friction) * tpdts2 / ts;
-        
-        slipVertex0 = 2 * dL0;
-        slipVertex1 = 2 * dL1;
-
-        tpdts1 = friction * tpdts1 / ts
-        tpdts2 = friction * tpdts2 / ts
-    
-
     # ------------------------------------------------------------------
     fieldTpdt = fieldT + fieldIncr
 
     tractionShear = (fieldTpdt[:,0]**2 + fieldTpdt[:,1]**2)**0.5 / area
-    tractionNormal = initialTract[:,2] + fieldTpdt[:,2] / area
+    tractionNormal = fieldTpdt[:,2] / area
 
     print "tractionShear",tractionShear
     print "tractionNormal",tractionNormal



More information about the CIG-COMMITS mailing list