| 1 | = PDAF_get_smootherens = |
| 2 | |
| 3 | This page documents the routine `PDAF_get_smootherens` of PDAF. |
| 4 | |
| 5 | The routine is typically called in `prepoststep_pdaf`. |
| 6 | |
| 7 | The routine `PDAF_get_smootherens` is used when the smoother extension of a filter is used. When a smoother is used, the smoothed ensemble states at earlier times are stored in an internal array of PDAF. To get access to this array, one has to call the routine `PDAF_get_smootherens`. The routine will set a pointer to the PDAF-internal array of smoother ensembles. In addition, the number of smoother ensembles is returned. |
| 8 | |
| 9 | The interface is the following: |
| 10 | {{{ |
| 11 | SUBROUTINE PDAF_get_smootherens(sens_point, maxlag, status_pdaf) |
| 12 | }}} |
| 13 | with the following arguments: |
| 14 | * `sens_point` : Upon exiting the routine, it points to the smoother array. On the calling side, it has to specified as 'REAL, POINTER :: sens_pointer(:,:,:)' |
| 15 | * `maxlag` : An integer. The number of smoothed time instances available in the smoother array |
| 16 | * `status_pdaf`: The integer status flag. It is 0, if the routine is exited without errors. |
| 17 | |
| 18 | |
| 19 | Note: |
| 20 | * When the pointer `sens_point` is set, the dimensions are `sens_point(dim_p, dim_ens, smoothed_times)`. Thus, the first two indices are for an ensemble array at the smoother time specified by the third index. |
| 21 | * The third index in `sens_point` is directed into the past, thus for a value of 1 one accesses the most recent smoothed time. |
| 22 | * The smoother is only performed for time instances at which the filter analysis step is performed. Thus, one has access to the last `smoothed_times` analysis times. |