= PDAF_diag_stddev_nompi = This page documents the routine `PDAF_diag_stddev_nompi` of PDAF, which was introduced with PDAF V3.0. This routine computes mean ensemble standard deviation as the square root of the spatial mean variance. The routine can be called in the pre/poststep routine of PDAF both before and after the analysis step to compute the ensemble statistics. This variant only computes the standard deviation for the provided ensemble array `ens`. Thus, with a domain-decomposed parallel model, the value of of the standard deviation does not consider the full domain. The variant taking into account parallelization is [wiki:PDAF_diag_stddev]. The interface is: {{{ SUBROUTINE PDAF_diag_stddev_nompi(dim, dim_ens, & state, ens, stddev, do_mean, status) INTEGER, INTENT(in) :: dim ! state dimension INTEGER, INTENT(in) :: dim_ens ! Ensemble size REAL, INTENT(inout) :: state(dim) ! State vector REAL, INTENT(in) :: ens(dim, dim_ens) ! State ensemble REAL, INTENT(out) :: stddev ! Standard deviation of ensemble INTEGER, INTENT(in) :: do_mean ! 1 to also compute ensemble mean; ! 0 for no computation of mean INTEGER, INTENT(out) :: status ! Status flag (0=success) }}} **Note:** * The ensemble standard deviation is a common measure of the estimate model root mean square error. It is typically computed in `prepoststep_pdaf` to monitor the assimilation process. * We recommend to use this routine only in cases where the MPI parallelization is not initialized, e.g. in separate post-analysis programs. In assimilation programs, where the parallelization is initialized for PDAF, we recommend to use the routine [wiki:PDAF_diag_stddev] for better overall compatibility. * The option `do_mean` exists mainly for performance reasons. If `state_p` contains already the ensemble mean state it does not need to be computed again. * The routine does not perform any MPI operations and can also be used if PDAF was not initialized by calling `PDAF_init`.