Changes between Version 1 and Version 2 of nondiagonal_observation_error_covariance_matrices_PDAF3


Ignore:
Timestamp:
May 25, 2025, 7:54:24 PM (7 days ago)
Author:
lnerger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • nondiagonal_observation_error_covariance_matrices_PDAF3

    v1 v2  
    4848
    4949||= '''Global Filter'' =||= **diagonal R** =||= **non-diagonal R** =||= **additional routine(s)** =||
    50 ||= EnKF =|| [wiki:PDAFomi_assimilate_global][[BR]][wiki:PDAFomi_put_state_global] ||  [wiki:PDAFomi_assimilate_enkf_nondiagR][[BR]][wiki:PDAFomi_put_state_enkf_nondiagR]  || add_obs_err_pdafomi [[BR]]init_obscovar_pdafomi ||
    51 ||= ESTKF =|| [wiki:PDAFomi_assimilate_global][[BR]][wiki:PDAFomi_put_state_global] ||  [wiki:PDAFomi_assimilate_global_nondiagR][[BR]][wiki:PDAFomi_put_state_global_nondiagR]  || prodRinvA_pdafomi ||
    52 ||= ETKF =|| [wiki:PDAFomi_assimilate_global][[BR]][wiki:PDAFomi_put_state_global] ||  [wiki:PDAFomi_assimilate_global_nondiagR][[BR]][wiki:PDAFomi_put_state_global_nondiagR]  || prodRinvA_pdafomi ||
    53 ||= PF =|| [wiki:PDAFomi_assimilate_global][[BR]][wiki:PDAFomi_put_state_global] ||  [wiki:PDAFomi_assimilate_nonlin_nondiagR][[BR]][wiki:PDAFomi_put_state_nonlin_nondiagR]  || likelihood_pdafomi ||
    54 ||= NETF =|| [wiki:PDAFomi_assimilate_global][[BR]][wiki:PDAFomi_put_state_global] ||  [wiki:PDAFomi_assimilate_nonlin_nondiagR][[BR]][wiki:PDAFomi_put_state_nonlin_nondiagR]  || likelihood_pdafomi ||
    55 ||= SEIK =|| [wiki:PDAFomi_assimilate_global][[BR]][wiki:PDAFomi_put_state_global] ||  [wiki:PDAFomi_assimilate_global_nondiagR][[BR]][wiki:PDAFomi_put_state_global_nondiagR] || prodRinvA_pdafomi ||
     50||= EnKF =|| [wiki:PDAF3_assimilate][[BR]][wiki:PDAF3_assim_offline] ||  [wiki:PDAF3_assimilate_enkf_nondiagR][[BR]][wiki:PDAF3_assim_offline_enkf_nondiagR]  || add_obs_err_pdafomi [[BR]]init_obscovar_pdafomi ||
     51||= ESTKF =|| [wiki:PDAF3_assimilate][[BR]][wiki:PDAF3_assim_offline]  ||  [wiki:PDAF3_assimilate_global_nondiagR][[BR]][wiki:PDAF3_assim_offline_global_nondiagR]  || prodRinvA_pdafomi ||
     52||= ETKF =|| [wiki:PDAF3_assimilate][[BR]][wiki:PDAF3_assim_offline]  ||  [wiki:PDAF3_assimilate_global_nondiagR][[BR]][wiki:PDAF3_assim_offline_global_nondiagR]  || prodRinvA_pdafomi ||
     53||= PF =|| [wiki:PDAF3_assimilate][[BR]][wiki:PDAF3_assim_offline]  ||  [wiki:PDAF3_assimilate_nonlin_nondiagR][[BR]][wiki:PDAF3_assim_offline_nonlin_nondiagR]  || likelihood_pdafomi ||
     54||= NETF =|| [wiki:PDAF3_assimilate][[BR]][wiki:PDAF3_assim_offline]  ||  [wiki:PDAF3_assimilate_nonlin_nondiagR][[BR]][wiki:PDAF3_assim_offline_nonlin_nondiagR]  || likelihood_pdafomi ||
     55||= SEIK =|| [wiki:PDAF3_assimilate][[BR]][wiki:PDAF3_assim_offline]  ||  [wiki:PDAF3_assimilate_global_nondiagR][[BR]][wiki:PDAF3_assim_offline_global_nondiagR] || prodRinvA_pdafomi ||
    5656[[BR]]
    5757||= '''Local Filter'' =||= **diagonal R** =||= **non-diagonal R** =||= **additional routine(s)** =||
    58 ||= LEnKF =|| [wiki:PDAFomi_assimilate_lenkf][[BR]][wiki:PDAFomi_put_state_lenkf] ||  [wiki:PDAFomi_assimilate_lenkf_nondiagR][[BR]][wiki:PDAFomi_put_state_lenkf_nondiagR]  || add_obs_err_pdafomi [[BR]]init_obscovar_pdafomi ||
    59 ||= LESTKF =|| [wiki:PDAFomi_assimilate_local][[BR]][wiki:PDAFomi_put_state_local] ||  [wiki:PDAFomi_assimilate_local_nondiagR][[BR]][wiki:PDAFomi_put_state_local_nondiagR]  || prodRinvA_l_pdafomi ||
    60 ||= LETKF =|| [wiki:PDAFomi_assimilate_local][[BR]][wiki:PDAFomi_put_state_local] ||  [wiki:PDAFomi_assimilate_local_nondiagR][[BR]][wiki:PDAFomi_put_state_local_nondiagR]  || prodRinvA_l_pdafomi ||
    61 ||= LSEIK =|| [wiki:PDAFomi_assimilate_local][[BR]][wiki:PDAFomi_put_state_local] ||  [wiki:PDAFomi_assimilate_local_nondiagR][[BR]][wiki:PDAFomi_put_state_local_nondiagR]  || prodRinvA_l_pdafomi ||
    62 ||= LNETF =|| [wiki:PDAFomi_assimilate_local][[BR]][wiki:PDAFomi_put_state_local] ||  [wiki:PDAFomi_assimilate_lnetf_nondiagR][[BR]][wiki:PDAFomi_put_state_lnetf_nondiagR]  || likelihood_l_pdafomi ||
    63 ||= LKNETF =|| [wiki:PDAFomi_assimilate_local][[BR]][wiki:PDAFomi_put_state_local] ||  [wiki:PDAFomi_assimilate_lknetf_nondiagR][[BR]][wiki:PDAFomi_put_state_lknetf_nondiagR]  ||likelihood_l_pdafomi[[BR]]likelihood_hyb_l_pdafomi[[BR]] prodRinvA_l_pdafomi[[BR]] prodRinvA_hyb_l_pdafomi  ||
     58||= LEnKF =|| [wiki:PDAF3_assimilate][[BR]][wiki:PDAF3_assim_offline]  ||  [wiki:PDAF3_assimilate_enkf_nondiagR][[BR]][wiki:PDAF3_assim_offline_enkf_nondiagR]  || add_obs_err_pdafomi [[BR]]init_obscovar_pdafomi ||
     59||= LESTKF =|| [wiki:PDAF3_assimilate][[BR]][wiki:PDAF3_assim_offline]  ||  [wiki:PDAF3_assimilate_local_nondiagR][[BR]][wiki:PDAF3_assim_offline_local_nondiagR]  || prodRinvA_l_pdafomi ||
     60||= LETKF =|| [wiki:PDAF3_assimilate][[BR]][wiki:PDAF3_assim_offline] ||  [wiki:PDAF3_assimilate_local_nondiagR][[BR]][wiki:PDAF3_assim_offline_local_nondiagR]  || prodRinvA_l_pdafomi ||
     61||= LSEIK =|| [wiki:PDAF3_assimilate][[BR]][wiki:PDAF3_assim_offline]  ||  [wiki:PDAF3_assimilate_local_nondiagR][[BR]][wiki:PDAF3_assim_offline_local_nondiagR]  || prodRinvA_l_pdafomi ||
     62||= LNETF =|| [wiki:PDAF3_assimilate][[BR]][wiki:PDAF3_assim_offline]  ||  [wiki:PDAF3_assimilate_lnetf_nondiagR][[BR]][wiki:PDAF3_assim_offline_lnetf_nondiagR]  || likelihood_l_pdafomi ||
     63||= LKNETF =|| [wiki:PDAF3_assimilate][[BR]][wiki:PDAF3_assim_offline]  ||  [wiki:PDAF3_assimilate_lknetf_nondiagR][[BR]][wiki:PDAF3_assim_offline_lknetf_nondiagR]  ||likelihood_l_pdafomi[[BR]]likelihood_hyb_l_pdafomi[[BR]] prodRinvA_l_pdafomi[[BR]] prodRinvA_hyb_l_pdafomi  ||
    6464[[BR]]
    6565||= '''3D-Var'' =||= **diagonal R** =||= **non-diagonal R** =||= **additional routine(s)** =||
     
    283283 * The matrix **R** could be constructed e.g. from decorrelation length scales or by direct implementation.
    284284 * The routine [wiki:PDAF_correlation_function] can be used to obtain values of a correlation function.
    285  * Th eroutine [wiki:PDAFomi_observation_localization_weights] can be used to obtain the values of the localization weights.
     285 * The routine [wiki:PDAFomi_observation_localization_weights] can be used to obtain the values of the localization weights.
    286286 * The matrix **R** cannot be stored fully for larger numbers of observations. E.g. for 100 000 observations, the full matric **R** would have 10^10^ entries, which corresponds to 80 GB memory at double precision. Thus, one would need compressed ways of storing the matrix or one can implement the products with the inverse of **R** or the addition of **R** in form of oeprations.
    287287 * For the localized operations in `prodRinvA_l_pdafomi` and `likelihood_l_pdafomi` it should be possible to handle the part of **R** that relates only to the local observations used in a local analysis domain. However, the inverse of this local matrix part is not identical to the local part of the global inverse. The different might be mitigated by applying the localization weight to **R**.