| 1 | = PDAF_iau_set_pointer = |
| 2 | |
| 3 | This page documents the routine `PDAF_iau_set_pointer` of PDAF, which was introduced with PDAF V3.0. |
| 4 | |
| 5 | With this routine the user can set a pointer to the PDAF-internal array of ensemble increments. This gives direct access to the increment array e.g. to analyze it or to write it into a file for restarting. |
| 6 | |
| 7 | The routine can be called by each single process, but it only provides a pointer to the process local part of the increment array. For domain-decomposed models, this array only include the state vector part for the process domain. In addition, it usually only contains a sub-ensemlbe unless one uses the flexible parallelization mode with a single model task. For the fully parallel mode, the process(es) of a single model task only hold a single ensemble state. |
| 8 | |
| 9 | The interface is the following: |
| 10 | {{{ |
| 11 | SUBROUTINE PDAF_iau_set_pointer(iau_ptr, flag) |
| 12 | }}} |
| 13 | with the following arguments: |
| 14 | {{{ |
| 15 | REAL, POINTER, INTENT(out) :: iau_ptr(:,:) !< Pointer to IAU ensemble array |
| 16 | INTEGER, INTENT(out) :: flag !< Status flag |
| 17 | }}} |
| 18 | |
| 19 | Hints: |
| 20 | * In Fortran user code one has to declare[[BR]]`REAL, POINTER :: iau_ptr(:,:) `[[BR]] and provide this as the first argument. One does not need to allocate this pointer. |