Changes between Version 19 and Version 20 of AuxiliaryRoutines


Ignore:
Timestamp:
Apr 17, 2026, 9:54:16 AM (7 hours ago)
Author:
lnerger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AuxiliaryRoutines

    v19 v20  
    3636Full documentation: [wiki:PDAF_set_rparam]
    3737
     38== Command line parsing ==
     39
     40=== PDAF_parse ===
     41
     42With PDAF V3.1, the PDAF library provides the command line parser `PDAF_parse` (in previous releases the tutorial implementations of PDAF provided the command line parser with the user code)
     43
     44Full documentation: [wiki:PDAF_parse]
     45
    3846== Get information for forecast phase ==
    3947
     48=== PDAF3_get_fcst_info ===
     49
     50This routine was introduced with PDAF V3.1. It is an alias for `PDAF_get_fcst_info` described next.
     51
     52Full documentation: [wiki:PDAF3_get_fcst_info]
     53
    4054=== PDAF_get_fcst_info ===
    4155
    42 This routine was introduced with PDAF V3.0.
     56This routine was introduced with PDAF V3.0. In PDAF V3.1 we renamed this to `PDAF3_get_fcsst_info`, but  kept the existing routine.
    4357
    4458This routine returns the number of time steps to be computed int he current forecast phase. It also returns an exit flag to control the termination of ensemble forecasting and a value of the model time at the beginning of the forecast.
     
    106120=== PDAF_set_comm_pdaf ===
    107121
    108 This routime allows to specify the MPI communicator on which the overall PDAF communication bases.
    109 
    110 By default, PDAF bases on `MPI_COMM_WORLD`, thus all processes in a program. This routine allows to set a different communicator. This can be useful if a model is e.g. run with an OI-server so that the world communicator is split into processes for the file (I/O) operations and other processes for the actual model run. In this case, the model would run using a communicator distinct from `MPI_COMM_WORLD` and PDAF should operate only with this communicator. `PDAF_set_comm_pdaf` allows the user to specify this communicator for PDAF.
     122This routime allows to specify the MPI communicator on which the overall PDAF communication bases. This routine is only used in PDAF V2.x, while it is no longer required in PDAF V3.x if the parallelization is initialized using `PDAF3_init_parallel` or `PDAF3_set_parallel`.
    111123
    112124Full documentation: [wiki:PDAF_set_comm_pdaf]
     
    146158There is also a variant in the form of a subroutine: [wiki:PDAF_get_local_type]
    147159
     160== Generating random perturbations ==
     161
     162=== PDAF_generate_rndvec ===
     163
     164This routine was introduced with PDAF V3.1.
     165
     166The routine is provided with a vector and returns a perturbed vector according to the specified distribution and standard deviation.
     167
     168Full documentation: [wiki:PDAF_generate_rndvec]
     169
     170=== PDAF_generate_rndmat ===
     171
     172This routine provides a random matrix which special properties, either as a orthonormal random matrix, or a random roation matrix (i.e. orthonormal with eigenvector (1,...,1)^T), which preserves the mean value of the rows if one multiplies some matrix with it.
     173
     174Full documentation: [wiki:PDAF_generate_rndmat]
    148175
    149176== Additional (advanced) functionality ==
     
    167194
    168195
     196
     197=== PDAF_get_seedvec ===
     198
     199This routine was introduced with PDAF V3.1.
     200
     201This routine provides access to the current seedset vector. It allows, e.g, to store this vector so that it can be re-used later with `PDAF_set_seedset`.
     202
     203Full documentation: [wiki:PDAF_get_seedvec]
     204
     205
     206
     207=== PDAF_get_rndcount ===
     208
     209This routine was introduced with PDAF V3.1.
     210
     211This routine returns the number of random number calls insidue PDAF since the last call to `PDAF_set_seedset`. It can be used to check the consistency of random number calls.
     212
     213Full documentation: [wiki:PDAF_get_rndcount]
     214
     215
     216
     217=== PDAF_set_seedvec ===
     218
     219This routine was introduced with PDAF V3.1.
     220
     221This routine can be called to provide a vector with a seedset to PDAF. This allows direct control on the random number generation. (Note the difference to `PDAF_set_seedset`: This routine chooses a pre-defined seedset vector, while `PDAF_set_seedvec` allows to explicitly set values of the seedset vector).
     222
     223Full documentation: [wiki:PDAF_set_seedvec]
     224
     225
    169226=== PDAF_reset_forget ===
    170227
     
    200257
    201258Full documentation: [wiki:PDAF_set_memberid]
     259
     260=== PDAF_abort ===
     261
     262This routine was introduced with PDAF 3.1.
     263
     264The routine allows to stop the parallel assimilation program.
     265
     266Full documentation: [wiki:PDAF_abort]