[cig-commits] r16578 - short/3D/PyLith/trunk/libsrc/feassemble
brad at geodynamics.org
brad at geodynamics.org
Sun Apr 25 16:17:39 PDT 2010
Author: brad
Date: 2010-04-25 16:17:39 -0700 (Sun, 25 Apr 2010)
New Revision: 16578
Modified:
short/3D/PyLith/trunk/libsrc/feassemble/ElasticityImplicit.cc
short/3D/PyLith/trunk/libsrc/feassemble/ElasticityImplicitLgDeform.cc
Log:
Fixed mismatch in eveng logging begin/end. Cleaned up logging.
Modified: short/3D/PyLith/trunk/libsrc/feassemble/ElasticityImplicit.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/feassemble/ElasticityImplicit.cc 2010-04-24 20:33:39 UTC (rev 16577)
+++ short/3D/PyLith/trunk/libsrc/feassemble/ElasticityImplicit.cc 2010-04-25 23:17:39 UTC (rev 16578)
@@ -422,7 +422,7 @@
coordinatesCell.size(), &coordinatesCell[0]);
_logger->eventEnd(setupEvent);
- _logger->eventEnd(computeEvent);
+ _logger->eventBegin(computeEvent);
// Loop over cells
for (SieveMesh::label_sequence::iterator c_iter=cellsBegin;
Modified: short/3D/PyLith/trunk/libsrc/feassemble/ElasticityImplicitLgDeform.cc
===================================================================
--- short/3D/PyLith/trunk/libsrc/feassemble/ElasticityImplicitLgDeform.cc 2010-04-24 20:33:39 UTC (rev 16577)
+++ short/3D/PyLith/trunk/libsrc/feassemble/ElasticityImplicitLgDeform.cc 2010-04-25 23:17:39 UTC (rev 16578)
@@ -211,13 +211,13 @@
_normalizer->densityScale());
_logger->eventEnd(setupEvent);
+ _logger->eventBegin(computeEvent);
// Loop over cells
for (SieveMesh::label_sequence::iterator c_iter=cellsBegin;
c_iter != cellsEnd;
++c_iter) {
// Compute geometry information for current cell
- _logger->eventBegin(geometryEvent);
#if defined(PRECOMPUTE_GEOMETRY)
_quadrature->retrieveGeometry(*c_iter);
#else
@@ -225,23 +225,18 @@
sieveMesh->restrictClosure(*c_iter, coordsVisitor);
_quadrature->computeGeometry(coordinatesCell, *c_iter);
#endif
- _logger->eventEnd(geometryEvent);
// Get state variables for cell.
- _logger->eventBegin(stateVarsEvent);
_material->retrievePropsAndVars(*c_iter);
- _logger->eventEnd(stateVarsEvent);
// Reset element vector to zero
_resetCellVector();
// Restrict input fields to cell
- _logger->eventBegin(restrictEvent);
dispTVisitor.clear();
sieveMesh->restrictClosure(*c_iter, dispTVisitor);
dispTIncrVisitor.clear();
sieveMesh->restrictClosure(*c_iter, dispTIncrVisitor);
- _logger->eventBegin(restrictEvent);
// Get cell geometry information that depends on cell
const double_array& basis = _quadrature->basis();
@@ -255,7 +250,6 @@
// Compute body force vector if gravity is being used.
if (0 != _gravityField) {
- _logger->eventBegin(computeEvent);
const spatialdata::geocoords::CoordSys* cs = fields->mesh().coordsys();
assert(0 != cs);
@@ -284,21 +278,16 @@
} // for
} // for
PetscLogFlops(numQuadPts*(2+numBasis*(1+2*spaceDim)));
- _logger->eventEnd(computeEvent);
} // if
// Compute B(transpose) * sigma, first computing deformation
// tensor and strains
- _logger->eventBegin(stressEvent);
_calcDeformation(&deformCell, basisDeriv, coordinatesCell, dispTpdtCell,
numBasis, numQuadPts, spaceDim);
calcTotalStrainFn(&strainCell, deformCell, numQuadPts);
const double_array& stressCell = _material->calcStress(strainCell, true);
- _logger->eventEnd(stressEvent);
- _logger->eventBegin(computeEvent);
CALL_MEMBER_FN(*this, elasticityResidualFn)(stressCell, dispTpdtCell);
- _logger->eventEnd(computeEvent);
#if 0 // DEBUGGING
std::cout << "Updating residual for cell " << *c_iter << std::endl;
@@ -307,11 +296,11 @@
}
#endif
// Assemble cell contribution into field
- _logger->eventBegin(updateEvent);
residualVisitor.clear();
sieveMesh->updateClosure(*c_iter, residualVisitor);
- _logger->eventEnd(updateEvent);
} // for
+
+ _logger->eventEnd(computeEvent);
} // integrateResidual
// ----------------------------------------------------------------------
@@ -434,13 +423,13 @@
&coordinatesCell[0]);
_logger->eventEnd(setupEvent);
+ _logger->eventBegin(computeEvent);
// Loop over cells
for (SieveMesh::label_sequence::iterator c_iter=cellsBegin;
c_iter != cellsEnd;
++c_iter) {
// Compute geometry information for current cell
- _logger->eventBegin(geometryEvent);
#if defined(PRECOMPUTE_GEOMETRY)
_quadrature->retrieveGeometry(*c_iter);
#else
@@ -448,23 +437,18 @@
sieveMesh->restrictClosure(*c_iter, coordsVisitor);
_quadrature->computeGeometry(coordinatesCell, *c_iter);
#endif
- _logger->eventEnd(geometryEvent);
// Get state variables for cell.
- _logger->eventBegin(stateVarsEvent);
_material->retrievePropsAndVars(*c_iter);
- _logger->eventEnd(stateVarsEvent);
// Reset element matrix to zero
_resetCellMatrix();
// Restrict input fields to cell
- _logger->eventBegin(restrictEvent);
dispTVisitor.clear();
sieveMesh->restrictClosure(*c_iter, dispTVisitor);
dispTIncrVisitor.clear();
sieveMesh->restrictClosure(*c_iter, dispTIncrVisitor);
- _logger->eventBegin(restrictEvent);
// Get cell geometry information that depends on cell
const double_array& basis = _quadrature->basis();
@@ -475,7 +459,6 @@
// solution increment.
dispTpdtCell = dispTCell + dispTIncrCell;
- _logger->eventBegin(computeEvent);
// Compute deformation tensor, strains, and stresses
_calcDeformation(&deformCell, basisDeriv, coordinatesCell, dispTpdtCell,
numBasis, numQuadPts, spaceDim);
@@ -490,7 +473,6 @@
CALL_MEMBER_FN(*this, elasticityJacobianFn)(elasticConsts, stressCell,
dispTpdtCell);
- _logger->eventEnd(computeEvent);
if (_quadrature->checkConditioning()) {
int n = numBasis*spaceDim;
@@ -524,14 +506,15 @@
} // if
// Assemble cell contribution into PETSc matrix.
- _logger->eventBegin(updateEvent);
jacobianVisitor.clear();
PetscErrorCode err = updateOperator(jacobianMat, *sieveMesh->getSieve(),
jacobianVisitor, *c_iter,
&_cellMatrix[0], ADD_VALUES);
CHECK_PETSC_ERROR_MSG(err, "Update to PETSc Mat failed.");
- _logger->eventEnd(updateEvent);
} // for
+
+ _logger->eventEnd(computeEvent);
+
_needNewJacobian = false;
_material->resetNeedNewJacobian();
} // integrateJacobian
More information about the CIG-COMMITS
mailing list