Changes between Version 24 and Version 25 of ImplementAnalysisseik
- Timestamp:
- May 17, 2011, 3:25:51 PM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ImplementAnalysisseik
v24 v25 156 156 * If a user considers to perform adjustments to the estimates (e.g. for balances), this routine is the right place for it. 157 157 * 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`. 158 * The interface has a difference for ETKF and SEIK: For the ETKF, the array `Uinv` has size `dim_ens` x `dim_ens`. In contrast it has size `dim_ens-1` x `dim_ens-1` for the SEIK filter. 158 * The interface has a difference for ETKF and SEIK: For the ETKF, the array `Uinv` has size `dim_ens` x `dim_ens`. In contrast it has size `dim_ens-1` x `dim_ens-1` for the SEIK filter. (For most cases, this will be irrelevant, because most usually the ensemble array `ens_p` is used for computations, rather than `Uinv`. However, for the SEIK filter with fixed covariance matrix, `Uinv` is required to compute the estimate analysis error. The fixed covariance matrix mode is not available for the ETKF) 159 159 160 160 … … 182 182 * The routine does not require that the product is implemented as a real matrix-matrix product. Rather, the product can be implemented in its most efficient form. For example, if the observation error covariance matrix is diagonal, only the multiplication of the diagonal with matrix `A_p` has to be implemented. 183 183 * The observation vector `obs_p` is provided through the interface for cases where the observation error variance is relative to the actual value of the observations. 184 * The interface has a difference for SEIK and ETKF: For ETKF the third argument is the ensemble size (`dim_ens`), while for SEIK it is the rank (`rank`) of the covariance matrix (usually ensemble size minus one). In addition, the second dimension of `A_p` and `C_p` has size `dim_ens` for ETKF, while it is `rank` for the SEIK filter. (For most cases, this will be irrelevant, because most usually the ensemble array `ens_p` is used for computations, rather than `Uinv`. However, for the SEIK filter with fixed covariance matrix, `Uinv` is required to compute the estimate analysis error. The fixed covariance matrix mode is not available for the ETKF)184 * The interface has a difference for SEIK and ETKF: For ETKF the third argument is the ensemble size (`dim_ens`), while for SEIK it is the rank (`rank`) of the covariance matrix (usually ensemble size minus one). In addition, the second dimension of `A_p` and `C_p` has size `dim_ens` for ETKF, while it is `rank` for the SEIK filter. 185 185 186 186 === `U_init_obsvar` (init_obsvar.F90) === … … 216 216 217 217 The analysis step is executed when the ensemble integration of the forecast is completed. During the analysis step the following routines are executed in the given order: 218 1. [#U_prepoststepprepoststep_seik.F90 U_prepoststep] ( call to handle the forecast, called with negative value of the time step)218 1. [#U_prepoststepprepoststep_seik.F90 U_prepoststep] (Call to act on the forecast ensemble, called with negative value of the time step) 219 219 1. [#U_init_dim_obsinit_dim_obs.F90 U_init_dim_obs] 220 220 1. [#U_obs_opobs_op.F90 U_obs_op] (A single call to operate on the ensemble mean state) 221 221 1. [#U_init_obsinit_obs.F90 U_init_obs] 222 1. [#U_obs_opobs_op.F90 U_obs_op] (`dim_ens` calls ;one call for each ensemble member)222 1. [#U_obs_opobs_op.F90 U_obs_op] (`dim_ens` calls: one call for each ensemble member) 223 223 1. [#U_init_obsvarinit_obsvar.F90 U_init_obsvar] (Only executed, if the adaptive forgetting factor is used (`type_forget=1` in the example implemention)) 224 224 1. [#U_prodRinvAprodrinva.F90 U_prodRinvA] 225 1. [#U_prepoststepprepoststep_seik.F90 U_prepoststep] ( call to handle the analysis, called with (positive) value of the time step)226 225 1. [#U_prepoststepprepoststep_seik.F90 U_prepoststep] (Call to act on the analysis ensemble, called with (positive) value of the time step) 226