PDAF_get_state_si
This page documents the routine PDAF_get_state_si
of PDAF.
PDAF_get_state_si
is the variant of PDAF_get_state with the simplified interface. The difference between both routines is that in the simplified interface the names of the call-back subroutines are not specified. Instead the routine assumes that the call-back routines have a standard name as specified at the end of this page.
The routine PDAF_get_state_si
has to be called once at the end of the initialization of PDAF. Usually, the call will be added to the routine init_pdaf
that is discussed on the page on initializing PDAF.
The routine PDAF_get_state_si
has the purpose to initialize the model fields to be propagates from the array holding the ensemble states. In addition, the routine can initialized the information, whether further model integrations have to be computed and how many time steps have to be performed. For the fully-parallel implementation variant, the number of time steps is used inside PDAF, while the flag on further model integrations is not used.
The interface of PDAF_get_state_si
is the following:
SUBROUTINE PDAF_get_state_si(nsteps, timenow, doexit, status)
with the following arguments:
nsteps
: An integer specifying upon exit the number of time steps to be performedtimenow
: A real specifying upon exit the current model time. (This value is usually not used in the fully-parallel implemenation variant)doexit
: An integer variable defining whether the assimilation process is completed. For compatibility 1 should be used for exit, 0 for continuing. (This value is not used in the fully-parallel implemenation variant)status
: The integer status flag. It is zero, ifPDAF_get_state
is exited without errors.
The routine PDAF_get_state_si
call the three user-supplied routines U_next_observation
, U_distribute_state
, U_prepoststep
. They are documented on the page on inserting the analysis step.