#include "petscts.h" PetscErrorCode TSAdjointMonitorSet(TS ts,PetscErrorCode (*adjointmonitor)(TS,PetscInt,PetscReal,Vec,PetscInt,Vec*,Vec*,void*),void *adjointmctx,PetscErrorCode (*adjointmdestroy)(void**))Logically Collective on TS
ts | - the TS context obtained from TSCreate() | |
adjointmonitor | - monitoring routine | |
adjointmctx | - [optional] user-defined context for private data for the monitor routine (use NULL if no context is desired) | |
adjointmonitordestroy | - [optional] routine that frees monitor context (may be NULL) |
int adjointmonitor(TS ts,PetscInt steps,PetscReal time,Vec u,PetscInt numcost,Vec *lambda, Vec *mu,void *adjointmctx)
ts | - the TS context | |
steps | - iteration number (after the final time step the monitor routine is called with a step of -1, this is at the final time which may have been interpolated to) | |
time | - current time | |
u | - current iterate | |
numcost | - number of cost functionos | |
lambda | - sensitivities to initial conditions | |
mu | - sensitivities to parameters | |
adjointmctx | - [optional] adjoint monitoring context |
Fortran notes: Only a single monitor function can be set for each TS object