[cig-commits] r8062 - short/3D/PyLith/trunk/modulesrc/feassemble
brad at geodynamics.org
brad at geodynamics.org
Fri Sep 28 17:48:07 PDT 2007
Author: brad
Date: 2007-09-28 17:48:07 -0700 (Fri, 28 Sep 2007)
New Revision: 8062
Modified:
short/3D/PyLith/trunk/modulesrc/feassemble/feassemble.pyxe.src
Log:
Added logging for Integrator::updateState() in the feassemble module.
Modified: short/3D/PyLith/trunk/modulesrc/feassemble/feassemble.pyxe.src
===================================================================
--- short/3D/PyLith/trunk/modulesrc/feassemble/feassemble.pyxe.src 2007-09-29 00:10:09 UTC (rev 8061)
+++ short/3D/PyLith/trunk/modulesrc/feassemble/feassemble.pyxe.src 2007-09-29 00:48:07 UTC (rev 8062)
@@ -930,20 +930,22 @@
cdef int assemblerCookie
cdef int integrateResidualEvent
cdef int integrateJacobianEvent
+ cdef int updateStateEvent
def __init__(self):
"""
Constructor.
"""
- #embed{ void Integrator_setupLogging(int *cookie, int *residualEvent, int *jacobianEvent)
+ #embed{ void Integrator_setupLogging(int *cookie, int *residualEvent, int *jacobianEvent, int* updateStateEvent)
PetscLogClassRegister(cookie, "FE Assembler");
PetscLogEventRegister(residualEvent, "IntegrateResidual", *cookie);
PetscLogEventRegister(jacobianEvent, "IntegrateJacobian", *cookie);
+ PetscLogEventRegister(updateStateEvent, "IntegrateUpdateState", *cookie);
#}embed
self.handle = None
self.thisptr = NULL
self.name = "pylith_feassemble_integrator"
- Integrator_setupLogging(&self.assemblerCookie, &self.integrateResidualEvent, &self.integrateJacobianEvent)
+ Integrator_setupLogging(&self.assemblerCookie, &self.integrateResidualEvent, &self.integrateJacobianEvent, &self.updateStateEvent)
return
@@ -1039,7 +1041,7 @@
Update state variables as needed.
"""
# create shim for method 'updateState'
- #embed{ void Integrator_updateState(void* objVptr, double t, void* fieldVptr, void* meshVptr)
+ #embed{ void Integrator_updateState(void* objVptr, double t, void* fieldVptr, void* meshVptr, int event)
try {
assert(0 != objVptr);
assert(0 != fieldVptr);
@@ -1048,7 +1050,9 @@
(ALE::Obj<pylith::real_section_type>*) fieldVptr;
ALE::Obj<ALE::Mesh>* mesh =
(ALE::Obj<ALE::Mesh>*) meshVptr;
+ PetscLogEventBegin(event,0,0,0,0);
((pylith::feassemble::Integrator*) objVptr)->updateState(t, *field, *mesh);
+ PetscLogEventEnd(event,0,0,0,0);
} catch (const std::exception& err) {
PyErr_SetString(PyExc_RuntimeError,
const_cast<char*>(err.what()));
@@ -1066,7 +1070,8 @@
Integrator_updateState(self.thisptr,
t,
PyCObject_AsVoidPtr(field),
- ptrFromHandle(mesh))
+ ptrFromHandle(mesh),
+ self.updateStateEvent)
return
More information about the cig-commits
mailing list