[cig-commits] r7979 - in short/3D/PyLith/trunk: . libsrc/faults libsrc/meshio

knepley at geodynamics.org knepley at geodynamics.org
Mon Sep 17 17:01:05 PDT 2007


Author: knepley
Date: 2007-09-17 17:01:04 -0700 (Mon, 17 Sep 2007)
New Revision: 7979

Modified:
   short/3D/PyLith/trunk/TODO
   short/3D/PyLith/trunk/libsrc/faults/CohesiveTopology.cc
   short/3D/PyLith/trunk/libsrc/meshio/MeshIOHDF5.icc
Log:
Trial fix for VTK on multiple faults


Modified: short/3D/PyLith/trunk/TODO
===================================================================
--- short/3D/PyLith/trunk/TODO	2007-09-17 20:39:19 UTC (rev 7978)
+++ short/3D/PyLith/trunk/TODO	2007-09-18 00:01:04 UTC (rev 7979)
@@ -189,6 +189,16 @@
 
   There is another version that takes an array of maxVolumes, one fo each cell in oldMesh.
 
+4. Run the benchmarks
+
+5. Check in nonlinear solver
+
+6. Look at more than one fault tests
+
+7. Throw out cohesive midnodes from censored depth, fix it for multiple faults
+
+8. Coarsening for PyLith meshes
+
 ======================================================================
 QUESTIONS FOR LEIF
 ======================================================================

Modified: short/3D/PyLith/trunk/libsrc/faults/CohesiveTopology.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/faults/CohesiveTopology.cc	2007-09-17 20:39:19 UTC (rev 7978)
+++ short/3D/PyLith/trunk/libsrc/faults/CohesiveTopology.cc	2007-09-18 00:01:04 UTC (rev 7979)
@@ -329,7 +329,7 @@
   // Split the mesh along the fault sieve and create cohesive elements
   const ALE::Obj<Mesh::label_sequence>& faces = (*fault)->depthStratum(1);
   const ALE::Obj<Mesh::label_type>& material = mesh->getLabel("material-id");
-  int firstCohesiveCell = newPoint;
+  const int firstCohesiveCell = newPoint;
   PointSet replaceCells;
   PointSet noReplaceCells;
   PointSet replaceVertices;
@@ -448,9 +448,14 @@
   }
   if (!(*fault)->commRank()) delete [] indices;
   mesh->stratify();
-  const ALE::Obj<Mesh::label_type>& label          = mesh->createLabel(std::string("censored depth"));
-  const ALE::Obj<PointSet>          modifiedPoints = new PointSet();
-  _computeCensoredDepth(mesh, label, mesh->getSieve(), mesh->getSieve()->roots(), firstCohesiveCell, modifiedPoints);
+  const std::string labelName("censored depth");
+
+  if (!mesh->hasLabel(labelName)) {
+    const ALE::Obj<Mesh::label_type>& label          = mesh->createLabel(labelName);
+    const ALE::Obj<PointSet>          modifiedPoints = new PointSet();
+
+    _computeCensoredDepth(mesh, label, mesh->getSieve(), mesh->getSieve()->roots(), firstCohesiveCell, modifiedPoints);
+  }
   if (debug) mesh->view("Mesh with Cohesive Elements");
 
   // Fix coordinates

Modified: short/3D/PyLith/trunk/libsrc/meshio/MeshIOHDF5.icc
===================================================================
--- short/3D/PyLith/trunk/libsrc/meshio/MeshIOHDF5.icc	2007-09-17 20:39:19 UTC (rev 7978)
+++ short/3D/PyLith/trunk/libsrc/meshio/MeshIOHDF5.icc	2007-09-18 00:01:04 UTC (rev 7979)
@@ -11,7 +11,7 @@
 //
 
 #if !defined(meshiohdf5_hh)
-#error "MeshIOHDF5.icc must be included only from MeshIOHDF5.icc"
+#error "MeshIOHDF5.icc must be included only from MeshIOHDF5.hh"
 #else
 
 // Set filename for HDF5 file.



More information about the cig-commits mailing list