[cig-commits] r18234 - in short/3D/PyLith/trunk/libsrc: problems topology

knepley at geodynamics.org knepley at geodynamics.org
Sun Apr 17 14:03:33 PDT 2011


Author: knepley
Date: 2011-04-17 14:03:32 -0700 (Sun, 17 Apr 2011)
New Revision: 18234

Modified:
   short/3D/PyLith/trunk/libsrc/problems/SolverLinear.cc
   short/3D/PyLith/trunk/libsrc/topology/Distributor.cc
   short/3D/PyLith/trunk/libsrc/topology/Field.cc
Log:
Fixed parallel problem and updated to latest PETSc


Modified: short/3D/PyLith/trunk/libsrc/problems/SolverLinear.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/problems/SolverLinear.cc	2011-04-17 06:10:03 UTC (rev 18233)
+++ short/3D/PyLith/trunk/libsrc/problems/SolverLinear.cc	2011-04-17 21:03:32 UTC (rev 18234)
@@ -129,6 +129,7 @@
   assert(!solutionSection.isNull());
   const ALE::Obj<SieveMesh>& sieveMesh = solution->mesh().sieveMesh();
   assert(!sieveMesh.isNull());
+#if 0
   if (solutionSection->getNumSpaces() > sieveMesh->getDimension() &&
       0 != _precondMatrix) {
     
@@ -150,8 +151,8 @@
 			  flag); CHECK_PETSC_ERROR(err);
     err = PetscFree(ksps); CHECK_PETSC_ERROR(err);
   } // if
+#endif
 
-
   const PetscVec residualVec = residual.vector();
   const PetscVec solutionVec = solution->vector();
 

Modified: short/3D/PyLith/trunk/libsrc/topology/Distributor.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/Distributor.cc	2011-04-17 06:10:03 UTC (rev 18233)
+++ short/3D/PyLith/trunk/libsrc/topology/Distributor.cc	2011-04-17 21:03:32 UTC (rev 18234)
@@ -298,9 +298,9 @@
         } // if
       }
       if (origSieveMesh->height(firstPoint) == 0) {
-        newSection->setChart(IntSection::chart_type(0, numCells));
+        newSection->setChart(IntSection::chart_type(0, parallelCoordinates->getChart().min()));
       } else {
-        newSection->setChart(IntSection::chart_type(numCells, numCells+numVertices));
+        newSection->setChart(parallelCoordinates->getChart());
       } // if/else
       DistributionType::distributeSection(origSection, partition, renumbering,
                                           sendMeshOverlap, recvMeshOverlap, 

Modified: short/3D/PyLith/trunk/libsrc/topology/Field.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/topology/Field.cc	2011-04-17 06:10:03 UTC (rev 18233)
+++ short/3D/PyLith/trunk/libsrc/topology/Field.cc	2011-04-17 21:03:32 UTC (rev 18234)
@@ -763,7 +763,7 @@
   assert(!order.isNull());
 
   // Create scatter
-  err = DMMeshCreateGlobalScatter(_mesh.sieveMesh(), _section, order, &sinfo.scatter);
+  err = DMMeshCreateGlobalScatter(_mesh.sieveMesh(), _section, order, false, &sinfo.scatter);
   CHECK_PETSC_ERROR(err);
   
   // Create scatterVec
@@ -836,7 +836,7 @@
   assert(!order.isNull());
 
   // Create scatter
-  err = DMMeshCreateGlobalScatter(_mesh.sieveMesh(), _section, order, &sinfo.scatter); 
+  err = DMMeshCreateGlobalScatter(_mesh.sieveMesh(), _section, order, false, &sinfo.scatter); 
   CHECK_PETSC_ERROR(err);
 
   // Create scatterVec
@@ -911,7 +911,7 @@
   assert(!order.isNull());
 
   // Create scatter
-  err = DMMeshCreateGlobalScatter(_mesh.sieveMesh(), _section, order, &sinfo.scatter);
+  err = DMMeshCreateGlobalScatter(_mesh.sieveMesh(), _section, order, true, &sinfo.scatter); 
   CHECK_PETSC_ERROR(err);
   
   // Create scatterVec
@@ -985,7 +985,7 @@
   order->view("GLOBAL ORDER");
 
   // Create scatter
-  err = DMMeshCreateGlobalScatter(_mesh.sieveMesh(), _section, order, &sinfo.scatter); 
+  err = DMMeshCreateGlobalScatter(_mesh.sieveMesh(), _section, order, true, &sinfo.scatter); 
   CHECK_PETSC_ERROR(err);
 
   // Create scatterVec



More information about the CIG-COMMITS mailing list