| | 1 | = PDAF_diag_diffstats = |
| | 2 | |
| | 3 | This page documents the routine `PDAF_diag_diffstats` of PDAF, which was introduced with PDAF V3.1. |
| | 4 | |
| | 5 | The routine is provided two vector of the same length and returns a vector with 6 statistics comparing the two vectors. The statistics can, for example, be used to plot a Taylor diagram. |
| | 6 | |
| | 7 | The routine can be called in the pre/poststep routine of PDAF both before and after the analysis step to compute the ensemble statistics. |
| | 8 | |
| | 9 | The interface is: |
| | 10 | {{{ |
| | 11 | SUBROUTINE PDAF_diag_diffstats(dim_p, vec1, vec2, stats, verbose) |
| | 12 | |
| | 13 | INTEGER, INTENT(in) :: dim_p !< Size of vector |
| | 14 | REAL, INTENT(inout) :: vec1(:) !< Vector 1 |
| | 15 | REAL, INTENT(inout) :: vec2(:) !< Vector 2 |
| | 16 | REAL, INTENT(inout) :: stats(6) !< Vector holding statistics |
| | 17 | ! Included statistics are: |
| | 18 | ! (1,:) correlations between vec1 and vec2 (corr) |
| | 19 | ! (2,:) centered RMS difference between vec1 and vec2 (cRMSD) |
| | 20 | ! (3,:) mean bias (vec1-vec2) |
| | 21 | ! (4,:) mean absolute difference between vec1 and vec2 (MAD) |
| | 22 | ! (5,:) standard deviation of vec1 (STDDEV(vec1)) |
| | 23 | ! (6,:) standard deviation of vec2 (STDDEV(vec2)) |
| | 24 | INTEGER, INTENT(in) :: verbose !< Verbosity flag |
| | 25 | }}} |
| | 26 | |
| | 27 | |
| | 28 | For verbose>0 a list of statistics is printed for each observation type in the form |
| | 29 | {{{ |
| | 30 | PDAF corr cRMSD bias MAD STDDEV(1) STDDEV(2) |
| | 31 | PDAF 0.611 7.084E-01 4.376E-02 5.774E-01 8.787E-01 7.179E-01 |
| | 32 | }}} |
| | 33 | |
| | 34 | **Note:** |
| | 35 | * The statistics are computed for the global domain. Thus, with parallelization the values in `stats(6)` will be identical for all processes. |
| | 36 | * The routine performs MPI operations to obtain the global result. These operations are performed within the communicator `COMM_filter`, i.e. within the communicator computing the analysis step. |
| | 37 | * To compare the assimilated observations with the ensemble mean, one can use the PDAF-OMI routine [wiki:PDAFomi_diag_diffstats]. |