Changes between Initial Version and Version 1 of PDAF_iau_set_ens_pointer


Ignore:
Timestamp:
Aug 14, 2025, 4:28:51 PM (2 days ago)
Author:
lnerger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • PDAF_iau_set_ens_pointer

    v1 v1  
     1= PDAF_iau_set_ens_pointer =
     2
     3This page documents the routine `PDAF_iau_set_ens_pointer` of PDAF, which was introduced with PDAF V3.0.
     4
     5With 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
     7The 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 includes the state vector part for the process domain. In addition, it usually only contains a sub-ensemble 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
     9The interface is:
     10{{{
     11  SUBROUTINE PDAF_iau_set_ens_pointer(iau_ptr, flag)
     12
     13    REAL, POINTER, INTENT(out) :: iau_ptr(:,:)  ! Pointer to IAU ensemble array
     14    INTEGER, INTENT(out)       :: flag          ! Status flag
     15}}}
     16
     17Hints:
     18 * 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.
     19 * This routine is a replacement for `PDAF_iau_set_pointer`, which was included in PDAF V3.0beta. The addition of a pointer to the state vector of increments for the EnOI mode (see [wiki:PDAF_iau_set_state_pointer] made a clearer distinction necessary.