Python Callbacks
Currently, the following callbacks are supported:
Document Callbacks | Simulator Callbacks | Time-Steps Callbacks | Problem-Class Callbacks |
---|---|---|---|
postLoadDocument | preEnterSimulator | preTimeStep |
preFlowSimulation |
preSaveDocument | postEnterSimulator | postTimeStep | postFlowSimulation |
postSaveDocument | preLeaveSimulator | onTimeStepConstraint | preMassSimulation |
postLeaveSimulator | postLoadTimeStep | postMassSimulation | |
preSimulation | preHeatSimulation | ||
postSimulation | postHeatSimulation |
A basic description of most of the callbacks can be found in the IFM Callbacks. Each callback provides at least the current document as argument. Callbacks do not support any return value. Some callbacks provide some additional arguments:
postLoadDocument, preSaveDocument, postSaveDocument
These callbacks support five arguments: doc, fname, ftype, fmode and fversion:
-
ftype: 1 = Supermesh file, 2 = FEM problem file, 3 = DAC results file
-
fmode: 1 = binary, 2= ASCII, 4 = DEMO data format (DHI use only), 16 = binary with encryption, 32 = XML interchange format
-
fversion: current or target file version in decimal format, e.g., 7000 for FEFLOW 7.0 format
{pre|post}{Flow|Heat}Simulation
The {pre|post}{Flow|Heat}Simulation callbacks support two arguments: doc, {phase, species, energy} as integer. Phase and energy are reserved for future usage only, species can be used in multi-species simulations.
onTimeStepConstraint
The onTimeStepConstraint callback has three arguments: doc, current time (double), proposed time step length (double) and expects a double as return value (the accepted time step length).
postLoadTimeStep
The postLoadTimeStep has three arguments: doc, loaded step number (integer), loaded time (double). It does not support any return values.