[cig-commits] r22034 - in short/3D/PyLith/trunk/libsrc/pylith: meshio topology
brad at geodynamics.org
brad at geodynamics.org
Fri May 10 17:08:26 PDT 2013
Author: brad
Date: 2013-05-10 17:08:25 -0700 (Fri, 10 May 2013)
New Revision: 22034
Modified:
short/3D/PyLith/trunk/libsrc/pylith/meshio/OutputManager.cc
short/3D/PyLith/trunk/libsrc/pylith/topology/Field.cc
Log:
Code cleanup.
Modified: short/3D/PyLith/trunk/libsrc/pylith/meshio/OutputManager.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/pylith/meshio/OutputManager.cc 2013-05-10 23:10:01 UTC (rev 22033)
+++ short/3D/PyLith/trunk/libsrc/pylith/meshio/OutputManager.cc 2013-05-11 00:08:25 UTC (rev 22034)
@@ -286,8 +286,9 @@
throw std::logic_error("Unknown field type");
} // switch
- if (!_fields)
- _fields = new topology::Fields<field_type>(fieldIn.mesh());
+ if (!_fields) {
+ _fields = new topology::Fields<field_type>(fieldIn.mesh());assert(_fields);
+ } // if
if (!_fields->hasField(fieldName.c_str())) {
_fields->add(fieldName.c_str(), fieldIn.label());
Modified: short/3D/PyLith/trunk/libsrc/pylith/topology/Field.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/pylith/topology/Field.cc 2013-05-10 23:10:01 UTC (rev 22033)
+++ short/3D/PyLith/trunk/libsrc/pylith/topology/Field.cc 2013-05-11 00:08:25 UTC (rev 22034)
@@ -335,7 +335,8 @@
// points.
template<typename mesh_type>
void
-pylith::topology::Field<mesh_type>::newSection(const PetscInt *points, const PetscInt num,
+pylith::topology::Field<mesh_type>::newSection(const PetscInt *points,
+ const PetscInt num,
const int fiberDim)
{ // newSection
PYLITH_METHOD_BEGIN;
@@ -419,7 +420,8 @@
// Create PETSc section and set chart and fiber dimesion.
template<typename mesh_type>
void
-pylith::topology::Field<mesh_type>::newSection(const PetscInt pStart, const PetscInt pEnd,
+pylith::topology::Field<mesh_type>::newSection(const PetscInt pStart,
+ const PetscInt pEnd,
const int fiberDim)
{ // newSection
PYLITH_METHOD_BEGIN;
@@ -464,9 +466,10 @@
PetscInt pStart, pEnd;
PetscErrorCode err;
+ err = DMSetDefaultGlobalSection(_dm, NULL);PYLITH_CHECK_ERROR(err);
+
+ err = DMGetDefaultSection(_dm, &s);PYLITH_CHECK_ERROR(err);
err = DMGetDefaultSection(src._dm, &srcs);PYLITH_CHECK_ERROR(err);
- err = DMGetDefaultSection(_dm, &s);PYLITH_CHECK_ERROR(err);
- err = DMSetDefaultGlobalSection(_dm, NULL);PYLITH_CHECK_ERROR(err);
err = PetscSectionGetChart(srcs, &pStart, &pEnd);PYLITH_CHECK_ERROR(err);
err = PetscSectionSetChart(s, pStart, pEnd);PYLITH_CHECK_ERROR(err);
for(PetscInt p = pStart; p < pEnd; ++p) {
@@ -500,11 +503,13 @@
err = PetscSectionClone(section, &newSection);PYLITH_CHECK_ERROR(err);
err = DMSetDefaultSection(_dm, newSection);PYLITH_CHECK_ERROR(err);
err = PetscSectionDestroy(&newSection);PYLITH_CHECK_ERROR(err);
- err = VecDestroy(&_globalVec);PYLITH_CHECK_ERROR(err);
+
+ assert(!_globalVec);
err = DMCreateGlobalVector(_dm, &_globalVec);PYLITH_CHECK_ERROR(err);
- err = VecDestroy(&_localVec);PYLITH_CHECK_ERROR(err);
+ err = PetscObjectSetName((PetscObject) _globalVec, _metadata["default"].label.c_str());PYLITH_CHECK_ERROR(err);
+
+ assert(!_localVec);
err = DMCreateLocalVector(_dm, &_localVec);PYLITH_CHECK_ERROR(err);
- err = PetscObjectSetName((PetscObject) _globalVec, _metadata["default"].label.c_str());PYLITH_CHECK_ERROR(err);
err = PetscObjectSetName((PetscObject) _localVec, _metadata["default"].label.c_str());PYLITH_CHECK_ERROR(err);
// Reuse scatters in clone
@@ -585,9 +590,11 @@
err = VecDestroy(&s_iter->second.scatterVec);PYLITH_CHECK_ERROR(err);
} // for
_scatters.clear();
+
err = VecDestroy(&_globalVec);PYLITH_CHECK_ERROR(err);
err = VecDestroy(&_localVec);PYLITH_CHECK_ERROR(err);
+ _tmpFields.clear();
_metadata["default"].scale = 1.0;
_metadata["default"].vectorFieldType = OTHER;
_metadata["default"].dimsOkay = false;
@@ -610,13 +617,14 @@
err = DMGetDefaultSection(_dm, &s);PYLITH_CHECK_ERROR(err);
} // if
assert(s);
+ err = PetscSectionSetUp(s);PYLITH_CHECK_ERROR(err);
- err = PetscSectionSetUp(s);PYLITH_CHECK_ERROR(err);
err = VecDestroy(&_globalVec);PYLITH_CHECK_ERROR(err);
err = DMCreateGlobalVector(_dm, &_globalVec);PYLITH_CHECK_ERROR(err);
+ err = PetscObjectSetName((PetscObject) _globalVec, _metadata["default"].label.c_str());PYLITH_CHECK_ERROR(err);
+
err = VecDestroy(&_localVec);PYLITH_CHECK_ERROR(err);
err = DMCreateLocalVector(_dm, &_localVec);PYLITH_CHECK_ERROR(err);
- err = PetscObjectSetName((PetscObject) _globalVec, _metadata["default"].label.c_str());PYLITH_CHECK_ERROR(err);
err = PetscObjectSetName((PetscObject) _localVec, _metadata["default"].label.c_str());PYLITH_CHECK_ERROR(err);
PYLITH_METHOD_END;
More information about the CIG-COMMITS
mailing list