Changes between Version 1 and Version 2 of U_prepoststep
 Timestamp:
 Jan 21, 2015, 2:55:27 PM (6 years ago)
Legend:
 Unmodified
 Added
 Removed
 Modified

U_prepoststep
v1 v2 18 18 * `dim_obs_p` : `integer, intent(in)`[[BR]] Size of observation vector (local part of process if decomposed) 19 19 * `state_p` : `real, intent(inout), dimension(dim_p)`[[BR]] State vector (forecast or analysis). The vector is generally not initialized in the case of ESTKF/ETKF/EnKF/SEIK. IT can be used freely in this routine 20 * `Uinv` : `real, intent(inout), dimension(dim_ens1, dim_ens1)`[[BR]] Inverse of the errorsubspace matrix matrix A in ETKF and ESKTF; inverse of matrix U in SEIK and SEEK; not used in EnKF 20 * `Uinv` : `real, intent(inout), dimension(dim_ens1, dim_ens1)`[[BR]] Inverse of the errorsubspace matrix matrix A in ETKF and ESKTF; inverse of matrix U in SEIK and SEEK; not used in EnKF. 21 21 * `ens_p` : `real, intent(inout), dimension(dim_p, dim_ens)`[[BR]] State ensemble (processlocal part of process if decomposed) 22 22 * `flag` : `integer, intent(in)`[[BR]] PDAF status flag (0 if no error) … … 26 26 * If parallelization with domain decomposition is used, the variables `state_p` and `ens_p` will only contain the state information for the processlocal domain. Accordingly, also `dim_p` and `dim_obs_p` only contain the state vector size for the local domain. 27 27 * For the local filters (LESTKF, LETKF, LSEIK) `dim_obs_p` is the observation dimension for the `full` observations. 28 * The array `Uinv` is only needed for SEEK filter. Also one needs its values for the ESTKF, ETKF, and SEIK filter to compute the analysis error covariance matrix when these filters used with a fixedcovariance matrix (subtype=3). In all other cases the ensemble array `ens_p` contains all required information. 28 29 29 30 Hints: 30 31 * If a user considers to perform adjustments to the estimates (e.g. for balances), this routine is the right place for it. 31 * Only for the SEEK filter the state vector (`state_p`) is initialized. For all other filters, the array is allocated, but it can be used freely during the execution of `U_prepoststep`. 32 * Only for the SEEK filter the state vector (`state_p`) is initialized. For all other filters, the array is allocated, but it can be used freely during the execution of `U_prepoststep`. FOr example one can use the array to store the ensemble mean without allocating a new array. 32 33 * The interface through which `U_prepoststep` is called does not include the array of smoothed ensembles. In order to access the smoother ensemble array one has to set a pointer to it using a call to the routine `PDAF_get_smootherens` (see page on [AuxiliaryRoutines auxiliary routines]) 33 34