Changes between Version 26 and Version 27 of ImplementAnalysisestkf
- Timestamp:
- Jun 4, 2025, 9:48:47 AM (2 days ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
ImplementAnalysisestkf
v26 v27 51 51 == Overview == 52 52 53 The ESTKF [Error Subspace Transform Kalman Filter] algorithmwas introcued with PDAF V1.8. The user-supplied routines required for the ESTKF are identical to those required for the SEIK filter and amost identical to those required for the ETKF method.53 The ESTKF (Error Subspace Transform Kalman Filter, Nerger et al., 2012) is a particularly efficient ensemble-based Kalman filter. It was introcued with PDAF V1.8. The user-supplied routines required for the ESTKF are identical to those required for the SEIK filter and amost identical to those required for the ETKF method. 54 54 55 55 For the analysis step of the ESTKF, different operations related to the observations are needed. These operations are requested by PDAF by call-back routines supplied by the user. Intentionally, the operations are split into separate routines in order to keep the operations rather elementary and efficient. This procedure should simplify the implementation. The names of the required routines are specified in the call to the routine `PDAF_assimilate_estkf` in the ''fully-parallel'' and ''flexible'' implementation (or `PDAF_put_state_estkf` for the offlie mode and the ''flexible'' implementation in PDAF2) that was discussed before. For the offline mode in PDAF3, the routine `PDAF_assim_offline_estkf` is used. With regard to the parallelization, all these routines are executed by the filter processes (`filterpe=.true.`) only. … … 85 85 86 86 87 == = `PDAF_assim_offline_estkf ` ===88 89 For the offline mode of PDAF, the routine `PDAF3_assim_offline` is used to perform the analysis step.90 The interface of the routine is identical with that of `PDAF_assimilate_estkf`, except that the user-supplied routines `U_distribute_state`, `U_collect_state` and `U_next_observation` are missing.87 == `PDAF_assim_offline_estkf ` == 88 89 This routine is used to perform the analysis step for the offline mode of PDAF. 90 The interface of the routine is identical with that of the 'assimilate'-routine, except that the user-supplied routines `U_distribute_state`, `U_collect_state` and `U_next_observation` are missing. 91 91 92 92 The interface is: … … 99 99 == `PDAF_put_state_estkf` == 100 100 101 This routine exists for backward-compatibility. In implementations that were done before the release of PDAF V3.0, a 'put_state' routine was used for the `flexible` parallelization variant and for the offline mode.101 This routine exists for backward-compatibility. In implementations that were done for PDAF V2.3.1 and before, a 'put_state' routine was used for the `flexible` parallelization variant and for the offline mode. 102 102 When the 'flexible' implementation variant is chosen for the assimilation system, the routine. This routine allows to continue using the previous implementation structure. 103 The interface of the routine is identical with that of `PDAF_assimilate_estkf`, except that the user-supplied routines `U_distribute_state` and `U_next_observation` are missing.104 105 The interface when using the ESTKF is the following:103 The interface of the routine is identical with that of the 'assimilate'-routine, except that the user-supplied routines `U_distribute_state` and `U_next_observation` are missing. 104 105 The interface is: 106 106 {{{ 107 107 SUBROUTINE PDAF_put_state_estkf(U_collect_state, U_init_dim_obs, U_obs_op, &