| 8 | |
| 9 | == PDAF_diag_ensmean == |
| 10 | |
| 11 | This routine computes the ensemble mean state vector. |
| 12 | |
| 13 | For a documentation see the [wiki:PDAF_diag_ensmean detail page on PDAF_diag_ensmean]. |
| 14 | |
| 15 | |
| 16 | |
| 17 | == PDAF_diag_stddev == |
| 18 | |
| 19 | This routine computes the mean ensemble standard deviation as the square root of the spatial mean variance. This value is a common diagnostic of the ensemble spread, which is often computed in `prepoststep_pdaf`. |
| 20 | |
| 21 | There are two variants: |
| 22 | * [wiki:PDAF_diag_stddev]: This routine computes the standard deviation taking into account the parlalelization. Thus, if the ensemble array is decomposed in PDAF, the global standard deviation will be computed. The routine uses the parallelization as initialized by the call to `PDAF_init`. |
| 23 | * [wiki:PDAF_diag_stddev_nompi]: This routine does not used parallelization and computes the standard deviation for the provided ensemble array. If this is for a sub-domain in case of a parallelized model, the resulting value is only valid for this sub-domain. This routine does not require that PDAF was initialized by a call to `PDAF_init`. |
| 24 | |
| 25 | |
| 26 | == PDAF_diag_variance == |
| 27 | |
| 28 | This routine computes the variance field related to the ensemble spread of a provided ensemble array. The routine also return the mean ensemble standard deviation as the square root of the spatial mean variance, analogous to `PDAF_diag_stddev`. |
| 29 | |
| 30 | There are two variants: |
| 31 | * [wiki:PDAF_diag_variance]: This routine takes parallelization into account. Thus, it computes the variance field for the provided ensemble array. If the ensemble is decomposed by parallelization in PDAF, the global standard deviation will be computed. The routine uses the parallelization as initialized by the call to `PDAF_init`. |
| 32 | * [wiki:PDAF_diag_variance_nompi]: This routines does not use parallelization. It computes the variance field and the ensmeble mean standard deviation for the provived ensemble array. If this is for a sub-domain in case of a parallelized model, the resulting mean standard deviation is only valid for this sub-domain. This routine does not require that PDAF was initialized by a call to `PDAF_init`. |
| 33 | |
| 34 | |
| 35 | == PDAF_diag_rmsd == |
| 36 | |
| 37 | This routine computes root mean square difference (RMSD) beween two input vectors. These could be, for ex the ensemble mean state and a reference state. |
| 38 | |
| 39 | there are two variants: |
| 40 | * [wiki:PDAF_diag_rmsd]: This routine takes parallelization. It assumes that both input vectors are decomposed according to the parallelization intiialized by the call to `PDAF_init`. It then computes the RMSD for the global vectors. |
| 41 | * [wiki:PDAF_diag_rmsd_nompi]: The routine does not use parallelization. It only computes the RMSD for the provided input vectors. If these are decomposed by the parallelization the RMSD is only computed for the sub-domain. This routine does not require that PDAF was initialized by a call to `PDAF_init`. |
| 42 | |
| 43 | Note: For computing the RMSD between a observation and the observed ensemble, one can use the routine [wiki:OMI_observation_diagnostics_PDAF3 PDAFomi_diag_rmsd] provided by the PDAF-OMI observation diagnostics module. |
41 | | These routines can be used outside the PDAF environment, i.e. they don't need that `PDAF_init` was called before. |
| 79 | |
| 80 | |
| 81 | |
| 82 | |
| 83 | |
| 84 | == PDAF_diag_compute_moments == |
| 85 | |
| 86 | This routine computes the mean, the unbiased variance, the unbiased skewness, and the unbiased excess kurtosis from an ensemble. All moments are stored in a single array. One can select the highest order that should be computed. With parallelized models, the moments are computed for the process-local state. |
| 87 | |
| 88 | The routine does not use parallelization and can also be used if PDAF was not initialized by calling `PDAF_init`. |
| 89 | |
| 90 | For a documentation see the [wiki:PDAF_diag_compute_moments page on PDAF_diag_compute_moments]. |
| 91 | |
| 92 | == PDAF_diag_reliability_budget == |
| 93 | |
| 94 | This routines computes the reliability budget of an ensemble as proposed by Rodwell, M. J., Lang, S. T. K., Ingleby, N. B., Bormann, N., Holm, E., Rabier, F., ... & Yamaguchi, M. (2016). Reliability in ensemble data assimilation. Quarterly Journal of the Royal Meteorological Society, 142(694), 443-454. |
| 95 | |
| 96 | The reliability budget derives a balance relationship that decomposes the |
| 97 | departure between the ensemble mean and observations:[[BR]] |
| 98 | || Depar^2^ = Bias^2^ + !EnsVar + !ObsUnc^2^ + Residual||[[BR]] |
| 99 | under the assumption of a perfectly reliable ensemble. When the |
| 100 | residual term is not small, one can identify the sources of problematic ensemble representation of the uncertainty by looking at each terms. One of the benefits of the reliability budget diagnostics is that it can identify spatially local issues in ensemble perturbations. |
| 101 | |
| 102 | For a documentation see the [wiki:PDAF_diag_reliability_budget page on PDAF_diag_reliability_budget]. |