[cig-commits] r7128 - short/3D/PyLith/trunk/libsrc/faults

brad at geodynamics.org brad at geodynamics.org
Mon Jun 11 09:55:40 PDT 2007


Author: brad
Date: 2007-06-11 09:55:40 -0700 (Mon, 11 Jun 2007)
New Revision: 7128

Modified:
   short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc
Log:
Fixed bug in computing orientations at fault constraint vertices. Forgot to skip over non-constraint vertices in cohesive cells.

Modified: short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc	2007-06-11 13:40:30 UTC (rev 7127)
+++ short/3D/PyLith/trunk/libsrc/faults/FaultCohesiveKin.cc	2007-06-11 16:55:40 UTC (rev 7128)
@@ -148,8 +148,7 @@
       assert(0);
     } // switch
 
-  // Loop over cohesive cells, computing orientation at each vertex
-
+  // Loop over cohesive cells, computing orientation at constraint vertices
   const int numBasis = _quadrature->numBasis();
   const feassemble::CellGeometry& cellGeometry = _quadrature->refGeometry();
   const double_array& verticesRef = _quadrature->vertices();
@@ -169,13 +168,20 @@
     for (int i=0, offset=2*size; i < size; ++i)
       faceVertices[i] = cohesiveVertices[offset+i];
 
-    int iBasis = 0;
     const ALE::Obj<sieve_type::traits::coneSequence>& cone = 
       sieve->cone(*c_iter);
     assert(!cone.isNull());
     const sieve_type::traits::coneSequence::iterator vBegin = cone->begin();
     const sieve_type::traits::coneSequence::iterator vEnd = cone->end();
-    for(sieve_type::traits::coneSequence::iterator v_iter=vBegin;
+
+    // skip over non-constraint vertices
+    sieve_type::traits::coneSequence::iterator vConstraintBegin = vBegin;
+    const int numSkip = 2*numBasis;
+    for (int i=0; i < numSkip; ++i)
+      ++vConstraintBegin;
+
+    int iBasis = 0;
+    for(sieve_type::traits::coneSequence::iterator v_iter=vConstraintBegin;
 	v_iter != vEnd;
 	++v_iter, ++iBasis) {
       // Compute Jacobian and determinant of Jacobian at vertex



More information about the cig-commits mailing list