[cig-commits] r14681 - in short/3D/PyLith/branches/pylith-swig: libsrc/feassemble libsrc/materials modulesrc/feassemble modulesrc/materials pylith/feassemble tests/1d/line2

brad at geodynamics.org brad at geodynamics.org
Mon Apr 13 15:51:41 PDT 2009


Author: brad
Date: 2009-04-13 15:51:40 -0700 (Mon, 13 Apr 2009)
New Revision: 14681

Modified:
   short/3D/PyLith/branches/pylith-swig/libsrc/feassemble/IntegratorElasticity.cc
   short/3D/PyLith/branches/pylith-swig/libsrc/feassemble/IntegratorElasticity.hh
   short/3D/PyLith/branches/pylith-swig/libsrc/materials/Material.cc
   short/3D/PyLith/branches/pylith-swig/libsrc/materials/Material.hh
   short/3D/PyLith/branches/pylith-swig/modulesrc/feassemble/IntegratorElasticity.i
   short/3D/PyLith/branches/pylith-swig/modulesrc/materials/Material.i
   short/3D/PyLith/branches/pylith-swig/pylith/feassemble/ElasticityExplicit.py
   short/3D/PyLith/branches/pylith-swig/pylith/feassemble/ElasticityImplicit.py
   short/3D/PyLith/branches/pylith-swig/pylith/feassemble/IntegratorElasticity.py
   short/3D/PyLith/branches/pylith-swig/tests/1d/line2/TestAxial.py
   short/3D/PyLith/branches/pylith-swig/tests/1d/line2/axialextension.cfg
Log:
Fixed bugs in setting up output for materials.

Modified: short/3D/PyLith/branches/pylith-swig/libsrc/feassemble/IntegratorElasticity.cc
===================================================================
--- short/3D/PyLith/branches/pylith-swig/libsrc/feassemble/IntegratorElasticity.cc	2009-04-13 22:44:24 UTC (rev 14680)
+++ short/3D/PyLith/branches/pylith-swig/libsrc/feassemble/IntegratorElasticity.cc	2009-04-13 22:51:40 UTC (rev 14681)
@@ -288,16 +288,14 @@
 const pylith::topology::Field<pylith::topology::Mesh>&
 pylith::feassemble::IntegratorElasticity::cellField(
 					   const char* name,
+					   const topology::Mesh& mesh,
 					   topology::SolutionFields* fields)
 { // cellField
-  assert(0 != fields);
   assert(0 != _material);
 
   // We assume the material stores the total-strain field if
   // hasStateVars() is TRUE.
 
-  const topology::Mesh& mesh = fields->mesh();
-
   if (!_material->hasStateVars() &&
       (0 == strcasecmp(name, "total_strain") ||
        0 == strcasecmp(name, "stress") )) {
@@ -308,13 +306,13 @@
   } else if (0 == strcasecmp(name, "stress")) {
     assert(0 != fields);
     _allocateTensorField(mesh);
-    _material->propertyField(_bufferFieldTensor, "total_strain");
+    _material->getField(_bufferFieldTensor, "total_strain");
     _calcStressFromStrain(_bufferFieldTensor);
     return *_bufferFieldTensor;
   } else {
     if (0 == _bufferFieldOther)
       _bufferFieldOther = new topology::Field<topology::Mesh>(mesh);
-    _material->stateVarField(_bufferFieldOther, name);
+    _material->getField(_bufferFieldOther, name);
     return *_bufferFieldOther;
   } // if/else
   

Modified: short/3D/PyLith/branches/pylith-swig/libsrc/feassemble/IntegratorElasticity.hh
===================================================================
--- short/3D/PyLith/branches/pylith-swig/libsrc/feassemble/IntegratorElasticity.hh	2009-04-13 22:44:24 UTC (rev 14680)
+++ short/3D/PyLith/branches/pylith-swig/libsrc/feassemble/IntegratorElasticity.hh	2009-04-13 22:51:40 UTC (rev 14681)
@@ -98,15 +98,15 @@
 
   /** Get cell field associated with integrator.
    *
-   * @param fieldType Type of field.
    * @param name Name of vertex field.
-   * @param mesh PETSc mesh for problem.
+   * @param mesh Finite-element mesh for problem.
    * @param fields Fields manager.
    * @returns Cell field.
    */
   const topology::Field<topology::Mesh>&
   cellField(const char* name,
-	    topology::SolutionFields* const fields);
+	    const topology::Mesh& mesh,
+	    topology::SolutionFields* const fields =0);
 
 // PROTECTED METHODS ////////////////////////////////////////////////////
 protected :

Modified: short/3D/PyLith/branches/pylith-swig/libsrc/materials/Material.cc
===================================================================
--- short/3D/PyLith/branches/pylith-swig/libsrc/materials/Material.cc	2009-04-13 22:44:24 UTC (rev 14680)
+++ short/3D/PyLith/branches/pylith-swig/libsrc/materials/Material.cc	2009-04-13 22:51:40 UTC (rev 14681)
@@ -238,34 +238,18 @@
 } // initialize
 
 // ----------------------------------------------------------------------
-// Get physical property field.
+// Get physical property or state variable field.
 void
-pylith::materials::Material::propertyField(topology::Field<topology::Mesh>* field,
-					   const char* name) const
-{ // propertyField
+pylith::materials::Material::getField(topology::Field<topology::Mesh>* field,
+				      const char* name) const
+{ // getField
   assert(0 != field);
+  assert(0 != _properties);
+  assert(0 != _stateVars);
 
-  // Find property in list of physical properties.
-  int i=0;
-  int propOffset = 0;
-  const string_vector& properties = _metadata.properties();
-  const int numProperties = properties.size();
-  const std::string nameString = std::string(name);
-  bool found = false;
-  for (int i=0; i < numProperties; ++i)
-    if (nameString == properties[i]) {
-      found = true;
-      break;
-    } else
-      propOffset += 
-	_metadata.fiberDim(properties[i].c_str(), Metadata::PROPERTY);
-  if (!found) {
-    std::ostringstream msg;
-    msg << "Unknown physical property '" << name << "' for material '"
-	<< _label << "'.";
-    throw std::runtime_error(msg.str());
-  } // else
-  const int fiberDim = _metadata.fiberDim(name, Metadata::PROPERTY);
+  int propertyIndex = -1;
+  int stateVarIndex = -1;
+  _findField(&propertyIndex, &stateVarIndex, name);
 
   // Get cell information
   const ALE::Obj<SieveMesh>& sieveMesh = field->mesh().sieveMesh();
@@ -275,125 +259,154 @@
   assert(!cells.isNull());
   const SieveMesh::label_sequence::iterator cellsEnd = cells->end();
   
-  // Get properties section
-  const ALE::Obj<RealSection>& propertiesSection = _properties->section();
-  assert(!propertiesSection.isNull());
-  const int totalPropsFiberDim = 
-    propertiesSection->getFiberDimension(*cells->begin());
-  const int numPropsQuadPt = _numPropsQuadPt;
-  const int numQuadPts = totalPropsFiberDim / numPropsQuadPt;
-  assert(totalPropsFiberDim == numQuadPts * numPropsQuadPt);
-  const int totalFiberDim = numQuadPts * fiberDim;
+  if (propertyIndex >= 0) { // If field is a property
+    int propOffset = 0;
+    const string_vector& properties = _metadata.properties();
+    assert(propertyIndex < properties.size());
+    for (int i=0; i < propertyIndex; ++i)
+      propOffset += 
+	_metadata.fiberDim(properties[i].c_str(), Metadata::PROPERTY);
+    const int fiberDim = _metadata.fiberDim(name, Metadata::PROPERTY);
 
-  // Allocate buffer for property field.
-  const ALE::Obj<RealSection>& fieldSection = field->section();
-  if (totalFiberDim != fieldSection->getFiberDimension(*cells->begin())) {
-    field->newSection(cells, totalFiberDim);
-    field->allocate();
+    // :TODO: Get scale information
+
+    // Get properties section
+    const ALE::Obj<RealSection>& propertiesSection = _properties->section();
+    assert(!propertiesSection.isNull());
+    const int totalPropsFiberDim = 
+      propertiesSection->getFiberDimension(*cells->begin());
+    const int numPropsQuadPt = _numPropsQuadPt;
+    const int numQuadPts = totalPropsFiberDim / numPropsQuadPt;
+    assert(totalPropsFiberDim == numQuadPts * numPropsQuadPt);
+    const int totalFiberDim = numQuadPts * fiberDim;
+
+    // Allocate buffer for property field.
+    const ALE::Obj<RealSection>& fieldSection = field->section();
+    if (fieldSection.isNull() ||
+      totalFiberDim != fieldSection->getFiberDimension(*cells->begin())) {
+      field->newSection(cells, totalFiberDim);
+      field->allocate();
+    } // if
+    assert(!fieldSection.isNull());
     field->vectorFieldType(_metadata.fieldType(name, Metadata::PROPERTY));
-  } // if
+    field->label(name);
   
-  // Buffer for property at cell's quadrature points
-  double_array fieldCell(numQuadPts*fiberDim);
-  double_array propertiesCell(numQuadPts*numPropsQuadPt);
+    // Buffer for property at cell's quadrature points
+    double_array fieldCell(numQuadPts*fiberDim);
+    double_array propertiesCell(numQuadPts*numPropsQuadPt);
 
-  // Loop over cells
-  for (SieveMesh::label_sequence::iterator c_iter=cells->begin();
-       c_iter != cellsEnd;
-       ++c_iter) {
-    propertiesSection->restrictPoint(*c_iter, 
-				     &propertiesCell[0], propertiesCell.size());
+    // Loop over cells
+    for (SieveMesh::label_sequence::iterator c_iter=cells->begin();
+	 c_iter != cellsEnd;
+	 ++c_iter) {
+      propertiesSection->restrictPoint(*c_iter, 
+				       &propertiesCell[0], propertiesCell.size());
    
-    for (int iQuad=0; iQuad < numQuadPts; ++iQuad) {
-      _dimProperties(&propertiesCell[iQuad*numPropsQuadPt], 
-		     numPropsQuadPt);
-      memcpy(&fieldCell[iQuad*fiberDim], 
-	     &propertiesCell[iQuad*numPropsQuadPt+propOffset],
-	     fiberDim*sizeof(double));
+      for (int iQuad=0; iQuad < numQuadPts; ++iQuad) {
+	_dimProperties(&propertiesCell[iQuad*numPropsQuadPt], 
+		       numPropsQuadPt);
+	memcpy(&fieldCell[iQuad*fiberDim], 
+	       &propertiesCell[iQuad*numPropsQuadPt+propOffset],
+	       fiberDim*sizeof(double));
+      } // for
+
+      fieldSection->updatePoint(*c_iter, &fieldCell[0]);
     } // for
+  } else { // field is a state variable
+    assert(stateVarIndex >= 0);
 
-    fieldSection->updatePoint(*c_iter, &fieldCell[0]);
-  } // for
-} // propertyField
+    int varOffset = 0;
+    const string_vector& stateVars = _metadata.stateVars();
+    assert(stateVarIndex < stateVars.size());
+    for (int i=0; i < stateVarIndex; ++i)
+      varOffset += 
+	_metadata.fiberDim(stateVars[i].c_str(), Metadata::STATEVAR);
+    const int fiberDim = _metadata.fiberDim(name, Metadata::STATEVAR);
+
+    // :TODO: Get scale information
+
+    // Get state variables section
+    const ALE::Obj<RealSection>& stateVarsSection = _stateVars->section();
+    assert(!stateVarsSection.isNull());
+    const int totalVarsFiberDim = 
+      stateVarsSection->getFiberDimension(*cells->begin());
+    const int numVarsQuadPt = _numVarsQuadPt;
+    const int numQuadPts = totalVarsFiberDim / numVarsQuadPt;
+    assert(totalVarsFiberDim == numQuadPts * numVarsQuadPt);
+    const int totalFiberDim = numQuadPts * fiberDim;
+
+    // Allocate buffer for state variable field.
+    const ALE::Obj<RealSection>& fieldSection = field->section();
+    if (fieldSection.isNull() ||
+	totalFiberDim != fieldSection->getFiberDimension(*cells->begin())) {
+      field->newSection(cells, totalFiberDim);
+      field->allocate();
+    } // if
+    assert(!fieldSection.isNull());
+    field->vectorFieldType(_metadata.fieldType(name, Metadata::STATEVAR));
+    field->label(name);
   
+    // Buffer for state variable at cell's quadrature points
+    double_array fieldCell(numQuadPts*fiberDim);
+    double_array stateVarsCell(numQuadPts*numVarsQuadPt);
+    
+    // Loop over cells
+    for (SieveMesh::label_sequence::iterator c_iter=cells->begin();
+	 c_iter != cellsEnd;
+	 ++c_iter) {
+      stateVarsSection->restrictPoint(*c_iter, 
+				      &stateVarsCell[0], stateVarsCell.size());
+      
+      for (int iQuad=0; iQuad < numQuadPts; ++iQuad) {
+	_dimStateVars(&stateVarsCell[iQuad*numVarsQuadPt], 
+		      numVarsQuadPt);
+	memcpy(&fieldCell[iQuad*fiberDim], 
+	       &stateVarsCell[iQuad*numVarsQuadPt+varOffset],
+	       fiberDim*sizeof(double));
+      } // for
+
+      fieldSection->updatePoint(*c_iter, &fieldCell[0]);
+    } // for
+  } // if/else
+} // getField
+  
 // ----------------------------------------------------------------------
-// Get state variable field.
+// Get indices for physical property or state variable field.
 void
-pylith::materials::Material::stateVarField(topology::Field<topology::Mesh>* field,
-					   const char* name) const
-{ // stateVarField
-  assert(0 != field);
+pylith::materials::Material::_findField(int* propertyIndex,
+					int* stateVarIndex,
+					const char* name) const
+{ // _findField
+  assert(0 != propertyIndex);
+  assert(0 != stateVarIndex);
 
-  // Find state variable in list of state variables.
-  int i=0;
-  int varOffset = 0;
+  *propertyIndex = -1;
+  *stateVarIndex = -1;
+
+  const std::string nameString = name;
+  const string_vector& properties = _metadata.properties();
+  const int numProperties = properties.size();
+  for (int i=0; i < numProperties; ++i)
+    if (nameString == properties[i]) {
+      *propertyIndex = i;
+      return;
+    } // if
+
   const string_vector& stateVars = _metadata.stateVars();
   const int numStateVars = stateVars.size();
-  const std::string nameString = std::string(name);
-  bool found = false;
   for (int i=0; i < numStateVars; ++i)
     if (nameString == stateVars[i]) {
-      found = true;
-      break;
-    } else
-      varOffset += 
-	_metadata.fiberDim(stateVars[i].c_str(), Metadata::STATEVAR);
-  if (!found) {
+      *stateVarIndex = i;
+      return;
+    } // if
+
+  if (propertyIndex < 0 && stateVarIndex < 0) {
     std::ostringstream msg;
-    msg << "Unknown state variable '" << name << "' for material '"
-	<< _label << "'.";
+    msg << "Unknown physical property or state variable '" << name
+	<< "' for material '" << _label << "'.";
     throw std::runtime_error(msg.str());
   } // else
-  const int fiberDim = _metadata.fiberDim(name, Metadata::STATEVAR);
-
-  // Get cell information
-  const ALE::Obj<SieveMesh>& sieveMesh = field->mesh().sieveMesh();
-  assert(!sieveMesh.isNull());
-  const ALE::Obj<SieveMesh::label_sequence>& cells = 
-    sieveMesh->getLabelStratum("material-id", _id);
-  assert(!cells.isNull());
-  const SieveMesh::label_sequence::iterator cellsEnd = cells->end();
+} // _findField
   
-  // Get state variables section
-  const ALE::Obj<RealSection>& stateVarsSection = _stateVars->section();
-  assert(!stateVarsSection.isNull());
-  const int totalVarsFiberDim = 
-    stateVarsSection->getFiberDimension(*cells->begin());
-  const int numVarsQuadPt = _numVarsQuadPt;
-  const int numQuadPts = totalVarsFiberDim / numVarsQuadPt;
-  assert(totalVarsFiberDim == numQuadPts * numVarsQuadPt);
-  const int totalFiberDim = numQuadPts * fiberDim;
 
-  // Allocate buffer for state variable field.
-  const ALE::Obj<RealSection>& fieldSection = field->section();
-  if (totalFiberDim != fieldSection->getFiberDimension(*cells->begin())) {
-    field->newSection(cells, totalFiberDim);
-    field->allocate();
-    field->vectorFieldType(_metadata.fieldType(name, Metadata::STATEVAR));
-  } // if
-  
-  // Buffer for state variable at cell's quadrature points
-  double_array fieldCell(numQuadPts*fiberDim);
-  double_array stateVarsCell(numQuadPts*numVarsQuadPt);
-
-  // Loop over cells
-  for (SieveMesh::label_sequence::iterator c_iter=cells->begin();
-       c_iter != cellsEnd;
-       ++c_iter) {
-    stateVarsSection->restrictPoint(*c_iter, 
-				     &stateVarsCell[0], stateVarsCell.size());
-   
-    for (int iQuad=0; iQuad < numQuadPts; ++iQuad) {
-      _dimStateVars(&stateVarsCell[iQuad*numVarsQuadPt], 
-		     numVarsQuadPt);
-      memcpy(&fieldCell[iQuad*fiberDim], 
-	     &stateVarsCell[iQuad*numVarsQuadPt+varOffset],
-	     fiberDim*sizeof(double));
-    } // for
-
-    fieldSection->updatePoint(*c_iter, &fieldCell[0]);
-  } // for
-} // stateVarsField
-  
-
 // End of file 

Modified: short/3D/PyLith/branches/pylith-swig/libsrc/materials/Material.hh
===================================================================
--- short/3D/PyLith/branches/pylith-swig/libsrc/materials/Material.hh	2009-04-13 22:44:24 UTC (rev 14680)
+++ short/3D/PyLith/branches/pylith-swig/libsrc/materials/Material.hh	2009-04-13 22:51:40 UTC (rev 14681)
@@ -147,23 +147,15 @@
   /// current state.
   void resetNeedNewJacobian(void);
 
-  /** Get physical property field. Data is returned via the
-   * argument.
+  /** Get physical property or state variable field. Data is returned
+   * via the argument.
    *
-   * @param field Property field.
-   * @param name Name of physical property.
+   * @param field Field over material cells.
+   * @param name Name of field to retrieve.
    */
-  void propertyField(topology::Field<topology::Mesh>* field,
-		     const char* name) const;
+  void getField(topology::Field<topology::Mesh>* field,
+		const char* name) const;
 
-  /** Get state variable field. Data is returned via the argument.
-   *
-   * @param field State variable field.
-   * @param name Name of physical property.
-   */
-  void stateVarField(topology::Field<topology::Mesh>* field,
-		     const char* name) const;
-
   // PROTECTED METHODS //////////////////////////////////////////////////
 protected :
 
@@ -242,6 +234,21 @@
   const int _tensorSize; ///< Tensor size for material.
   bool _needNewJacobian; ///< True if need to reform Jacobian, false otherwise.
 
+  // PRIVATE METHODS ////////////////////////////////////////////////////
+private :
+  
+  /** Get indices for physical property or state variable field. Index
+   * of physical property or state variable is set, unknown values are
+   * -1.
+   *
+   * @param propertyIndex Index of field in properties array.
+   * @param stateVarIndex Index of field in state variables array.
+   * @param name Name of field.
+   */
+  void _findField(int* propertyIndex,
+		  int* stateVarIndex,
+		  const char* name) const;
+
   // PRIVATE MEMBERS ////////////////////////////////////////////////////
 private :
 

Modified: short/3D/PyLith/branches/pylith-swig/modulesrc/feassemble/IntegratorElasticity.i
===================================================================
--- short/3D/PyLith/branches/pylith-swig/modulesrc/feassemble/IntegratorElasticity.i	2009-04-13 22:44:24 UTC (rev 14680)
+++ short/3D/PyLith/branches/pylith-swig/modulesrc/feassemble/IntegratorElasticity.i	2009-04-13 22:51:40 UTC (rev 14681)
@@ -73,6 +73,18 @@
        */
       void verifyConfiguration(const pylith::topology::Mesh& mesh) const;
       
+      /** Get cell field associated with integrator.
+       *
+       * @param name Name of vertex field.
+       * @param mesh Finite-element mesh for problem.
+       * @param fields Fields manager.
+       * @returns Cell field.
+       */
+      const pylith::topology::Field<pylith::topology::Mesh>&
+      cellField(const char* name,
+		const pylith::topology::Mesh& mesh,
+		pylith::topology::SolutionFields* const fields =0);
+      
     }; // IntegratorElasticity
 
   } // feassemble

Modified: short/3D/PyLith/branches/pylith-swig/modulesrc/materials/Material.i
===================================================================
--- short/3D/PyLith/branches/pylith-swig/modulesrc/materials/Material.i	2009-04-13 22:44:24 UTC (rev 14680)
+++ short/3D/PyLith/branches/pylith-swig/modulesrc/materials/Material.i	2009-04-13 22:51:40 UTC (rev 14681)
@@ -116,6 +116,15 @@
       /// current state.
       void resetNeedNewJacobian(void);
       
+      /** Get physical property or state variable field. Data is returned
+       * via the argument.
+       *
+       * @param field Field over material cells.
+       * @param name Name of field to retrieve.
+       */
+      void getField(pylith::topology::Field<pylith::topology::Mesh>* field,
+		    const char* name) const;
+
       // PROTECTED METHODS //////////////////////////////////////////////
     protected :
       

Modified: short/3D/PyLith/branches/pylith-swig/pylith/feassemble/ElasticityExplicit.py
===================================================================
--- short/3D/PyLith/branches/pylith-swig/pylith/feassemble/ElasticityExplicit.py	2009-04-13 22:44:24 UTC (rev 14680)
+++ short/3D/PyLith/branches/pylith-swig/pylith/feassemble/ElasticityExplicit.py	2009-04-13 22:51:40 UTC (rev 14681)
@@ -48,6 +48,7 @@
 
     IntegratorElasticity.initialize(self, totalTime, numTimeSteps, normalizer)
     ModuleElasticityExplicit.initialize(self, self.mesh)
+    self._initializeOutput(totalTime, numTimeSteps, normalizer)
     
     self._logger.eventEnd(logEvent)
     return

Modified: short/3D/PyLith/branches/pylith-swig/pylith/feassemble/ElasticityImplicit.py
===================================================================
--- short/3D/PyLith/branches/pylith-swig/pylith/feassemble/ElasticityImplicit.py	2009-04-13 22:44:24 UTC (rev 14680)
+++ short/3D/PyLith/branches/pylith-swig/pylith/feassemble/ElasticityImplicit.py	2009-04-13 22:51:40 UTC (rev 14681)
@@ -48,6 +48,7 @@
 
     IntegratorElasticity.initialize(self, totalTime, numTimeSteps, normalizer)
     ModuleElasticityImplicit.initialize(self, self.mesh)
+    self._initializeOutput(totalTime, numTimeSteps, normalizer)
     
     self._logger.eventEnd(logEvent)
     return

Modified: short/3D/PyLith/branches/pylith-swig/pylith/feassemble/IntegratorElasticity.py
===================================================================
--- short/3D/PyLith/branches/pylith-swig/pylith/feassemble/IntegratorElasticity.py	2009-04-13 22:44:24 UTC (rev 14680)
+++ short/3D/PyLith/branches/pylith-swig/pylith/feassemble/IntegratorElasticity.py	2009-04-13 22:51:40 UTC (rev 14681)
@@ -85,13 +85,8 @@
 
     self._info.log("Initializing integrator for material '%s'." % \
                    self.materialObj.label)
-
     Integrator.initialize(self, totalTime, numTimeSteps, normalizer)
 
-    self.output.initialize(normalizer, self.materialObj.quadrature)
-    #self.output.writeInfo()
-    self.output.open(totalTime, numTimeSteps)
-
     self._logger.eventEnd(logEvent)
     return
   
@@ -106,7 +101,7 @@
     Integrator.poststep(self, t, dt, totalTime, fields)
 
     self._info.log("Writing material data.")
-    #self.output.writeData(t+dt, fields)
+    self.output.writeData(t+dt, fields)
 
     self._logger.eventEnd(logEvent)
     return
@@ -124,10 +119,20 @@
     Get cell field.
     """
     if None == fields:
-      field = self.cellField(name)
+      field = self.cellField(name, self.mesh)
     else:
-      field = self.cellField(name, fields)
+      field = self.cellField(name, self.mesh, fields)
     return field
 
 
+  def _initializeOutput(self, totalTime, numTimeSteps, normalizer):
+    """
+    Initialize output.
+    """
+    self.output.initialize(normalizer, self.materialObj.quadrature)
+    self.output.writeInfo()
+    self.output.open(totalTime, numTimeSteps)
+    return
+
+
 # End of file 

Modified: short/3D/PyLith/branches/pylith-swig/tests/1d/line2/TestAxial.py
===================================================================
--- short/3D/PyLith/branches/pylith-swig/tests/1d/line2/TestAxial.py	2009-04-13 22:44:24 UTC (rev 14680)
+++ short/3D/PyLith/branches/pylith-swig/tests/1d/line2/TestAxial.py	2009-04-13 22:51:40 UTC (rev 14681)
@@ -75,7 +75,7 @@
 
     # Check vertices
     nverticesE = 5
-    spaceDimE = 2
+    spaceDimE = 3
     (nvertices, spaceDim) = data['vertices'].shape
     self.assertEqual(nverticesE, nvertices)
     self.assertEqual(spaceDimE, spaceDim)

Modified: short/3D/PyLith/branches/pylith-swig/tests/1d/line2/axialextension.cfg
===================================================================
--- short/3D/PyLith/branches/pylith-swig/tests/1d/line2/axialextension.cfg	2009-04-13 22:44:24 UTC (rev 14680)
+++ short/3D/PyLith/branches/pylith-swig/tests/1d/line2/axialextension.cfg	2009-04-13 22:51:40 UTC (rev 14681)
@@ -68,7 +68,7 @@
 #ksp_monitor = true
 #ksp_view = true
 #log_summary = true
-# start_in_debugger = true
+#start_in_debugger = true
 
 # ----------------------------------------------------------------------
 # output
@@ -77,5 +77,5 @@
 filename = axialextension.vtk
 
 [axialextension.timedependent.materials.elastic.output]
-#cell_filter = pylith.meshio.CellFilterAvg
+cell_filter = pylith.meshio.CellFilterAvgMesh
 writer.filename = axialextension-statevars-elastic.vtk



More information about the CIG-COMMITS mailing list