Changes between Version 42 and Version 43 of AddFilterAlgorithm


Ignore:
Timestamp:
Nov 28, 2020, 10:06:20 AM (3 months ago)
Author:
lnerger
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • AddFilterAlgorithm

    v42 v43  
    1717
    1818The separate routines are the following: The routine `PDAF_init` calls
    19 || `PDAF_init_filters` || Interface routine to `PDAF_X_init`.[[BR]] `PDAF_X_init` performs the filter-specific initialization of parameters and calls the user-supplied routine that initializes the initial ensemble of model states.||
     19|| `PDAF_init_filters` || Interface routine to `PDAF_X_init`.[[BR]] `PDAF_X_init` performs the filter-specific initialization of parameters and calls the user-supplied routine that initializes the initial ensemble of model states. ||
    2020|| `PDAF_alloc_filters` || Interface routine to `PDAF_X_alloc`.[[BR]] `PDAF_X_alloc` allocates the filter-specific arrays. ||
    21 || `PDAF_options_filters` || interface routine to `PDAF_X_options`.[[BR]] `PDAF_X_options` is an optional routine. Its purpose is to display an overview of available options for the filter algorithm.||
     21|| `PDAF_options_filters` || interface routine to `PDAF_X_options`.[[BR]] `PDAF_X_options` is an optional routine. Its purpose is to display an overview of available options for the filter algorithm. ||
    2222
    2323
     
    2626
    2727
    28 The routine `PDAF_put_state_X` is called directly from the model code. There is a separate routine for each filter, mainly because of the fact that different user-supplied routines may be needed for the analysis step of the filter. However, the operations performed directly in `PDAF_put_state_X` are widely generic and the filter-specific analysis step is typically implemented as another subroutine.
     28The routine `PDAF_put_state_X` or `PDAF_assimilate_X` are called directly from the model code. There is a separate routine for each filter, mainly because of the fact that different user-supplied routines may be needed for the analysis step of the filter. However, the operations performed directly in `PDAF_put_state_X` are widely generic and the filter-specific analysis step is typically implemented as another subroutine.
    2929The standard implementation calls
    3030 * `PDAF_X_update`
     
    6666 * `PDAF_X_memtime` (optional)
    6767
    68 In addition, the routine
    69  * `PDAF_put_state_X`
    70 has to be implemented that is called directly in the model code.
     68In addition, the routines
     69 * `PDAF_put_state_X` and `PDAF_assimilate_X`
     70have to be implemented that are called directly in the model code.
    7171
    7272We recommend to base on the routines of an existing filter, as most of the routines can be easily adapted to a new filter method.
     
    163163
    164164
    165 === `PDAF_put_state_X` ===
     165=== `PDAF_put_state_X` / `PDAF_assimilate_X` ===
    166166
    167 This routine is directly inserted into the model code, if the online mode of PDAF is used. The text on the [ImplementationofAnalysisStep implementation of the analysis step] in the Implementation Guide explains the interface for the algorithms that are included in the PDAF package. Apart from the usual integer status flag, the interface contains the names of the user-supplied routines that are required for the analysis step. Usually, the minimum set of routines are:
     167One of these routines is directly inserted into the model code, if the online mode of PDAF is used. The text on the [ImplementationofAnalysisStep implementation of the analysis step] in the Implementation Guide explains the interface for the algorithms that are included in the PDAF package. Apart from the usual integer status flag, the interface contains the names of the user-supplied routines that are required for the analysis step. Usually, the minimum set of routines are:
    168168 * A routine to write model fields back into the ensemble state array (`U_collect_state`).
    169169 * A routine that determines the size of the observation vector (`U_init_dim_obs`).