= Available options for the different filter algorithms = {{{ #!html

Implementation Guide

  1. Main page
  2. Adaptation of the parallelization
  3. Initialization of PDAF
  4. Modifications for ensemble integration
  5. Implementation of the analysis step
  6. Memory and timing information
  7. Filter-specific options
}}} [[PageOutline(2-3,Contents of this page)]] There are different operations for each of the filter algorithms that need to be specified in the call to `pdaf_init`. To display the available options in a compiled assimilation program, one can use run with the specification `subtype=-1`. In this case `pdaf_init` wil display the available options for the selected filter algorithm and exit with an error status of -1. Below we list the operations are they are displayed for `subtype=-1`. == SEEK (filtertype=0) == {{{ Available options: Sub-types (Parameter subtype) 0: Evolve unit modes with finite difference approx. of TLM 1: like 0 with modes scaled by eigenvalues, unit U 2: Fixed basis vectors; variable U matrix 3: Fixed covariance matrix (V and U kept constant) 5: Offline mode Integer parameters (Array param_int) param_int(1): Dimension of state vector (>0), required param_int(2): Ensemble size (>0), required param_int(3): Interval for re-diagonalization of P (>0); optional: default 1 param_int(4): 1 for incremental updating, 0 else; optional: default 0 Floating point parameters (Array param_real) param_real(1): Forgetting factor (usually >0 and <=1), required param_real(2): epsilon for finite-difference approx. of TLM, required Further parameters n_modeltasks: Number of parallel model integration tasks >=1 for subtypes 0 and 1; not larger than total number of processors =1 required for subtypes 2 and 3 screen: Control verbosity of PDAF 0: no outputs 1: basic output (default) 2: 1 plus timing output 3: 2 plus debug output +++++++++ End of option overview for the SEEK filter ++++++++++ }}} == SEIK (filtertype=1) == {{{ Available options: Sub-types (Parameter subtype) 0: full ensemble integration; left-sided application of T 1: full ensemble integration; right-sided application of T 2: Fixed error space basis 3: Fixed state covariance matrix 4: Implementation with explicit ensemble transformation 5: Offline mode Integer parameters (Array param_int) param_int(1): Dimension of state vector (>0), required param_int(2): Ensemble size (>0), required param_int(3): not used param_int(4): 1 for incremental updating, 0 else; optional, default: 0 param_int(5): Type of forgetting factor; optional, default: 0 0: fixed forgetting factor 1: adaptive forgetting factor (experimental) param_int(6): Type of ensemble transformation matrix; optional, default: 0 0: deterministic omega 1: random orthonormal omega orthogonal to (1,...,1)^T 2: use product of 0 with random orthonomal matrix with eigenvector (1,...,1)^T (experimental; for random transformations, 1 is recommended) param_int(7): Type of transformation matrix square root; optional, default: 0 (Only relevant for subtype=4) 0: symmetric square root 1: Cholesky decomposition Floating point parameters (Array param_real) param_real(1): Forgetting factor (usually >0 and <=1), required Further parameters n_modeltasks: Number of parallel model integration tasks >=1 for subtypes 0 and 1; not larger than total number of processors =1 required for subtypes 2 and 3 screen: Control verbosity of PDAF 0: no outputs 1: basic output (default) 2: 1 plus timing output 3: 2 plus debug output Internal parameter (defined inside PDAF) Nm1vsN: Normalization of covariance matrix; default: 1 0: normalization with 1/(Ensemble size) (original SEIK, mainly for compatibility with older studies) 1: normalization with 1/(Ensemble size - 1) (sample covariance matrix consistent with other EnKFs) +++++++++ End of option overview for the SEIK filter ++++++++++ }}} == EnKF (filtertype=2) == {{{ Available options: Sub-types (Parameter subtype) 0: full ensemble integration; analysis for large dim_obs 1: full ensemble integration; analysis for small dim_obs 5: Offline mode Integer parameters (Array param_int) param_int(1): Dimension of state vector (>0), required param_int(2): Ensemble size (>0), required param_int(3): maximum rank for inversion of HPH^T, required (if set to >=ensemble size, it is reset to ensemble size - 1) Floating point parameters (Array param_real) param_real(1): Forgetting factor (usually >0 and <=1), required Further parameters n_modeltasks: Number of parallel model integration tasks (>=1; not larger than total number of processors) screen: Control verbosity of PDAF 0: no outputs 1: basic output (default) 2: 1 plus timing output 3: 2 plus debug output +++++++++ End of option overview for the EnKF ++++++++++ }}} == LSEIK (filtertype=3) == {{{ Available options: Sub-types (Parameter subtype) 0: full ensemble integration; left-sided application of T 2: Fixed error space basis 3: Fixed state covariance matrix 5: Offline mode Integer parameters (Array param_int) param_int(1): Dimension of state vector (>0), required param_int(2): Ensemble size (>0), required param_int(3): not used param_int(4): 1 for incremental updating, 0 else; optional, default: 0 param_int(5): Type of forgetting factor; optional, default: 0 0: fixed forgetting factor 1: adaptive forgetting factor for full domain (experimental) 2: locally adaptive forgetting factor (experimental) param_int(6): Type of ensemble transformation matrix; optional, default: 0 0: deterministic omega 1: random orthonormal omega orthogonal to (1,...,1)^T 2: use product of 0 with random orthonomal matrix with eigenvector (1,...,1)^T (experimental; for random transformations, 1 is recommended) param_int(7): Type of transformation matrix square root; optional, default: 0 (Only relevant for subtype=4) 0: symmetric square root 1: Cholesky decomposition Floating point parameters (Array param_real) param_real(1): Forgetting factor (usually >0 and <=1), required Further parameters n_modeltasks: Number of parallel model integration tasks >=1 for subtypes 0 and 1; not larger than total number of processors =1 required for subtypes 2 and 3 screen: Control verbosity of PDAF 0: no outputs 1: basic output (default) 2: 1 plus timing output 3: 2 plus debug output Internal parameter (defined inside PDAF) Nm1vsN: Normalization of covariance matrix; default: 1 0: normalization with 1/(Ensemble size) (original SEIK, mainly for compatibility with older studies) 1: normalization with 1/(Ensemble size - 1) (sample covariance matrix consistent with other EnKFs) +++++++++ End of option overview for the LSEIK filter ++++++++++ }}} == ETKF (filtertype=4) == {{{ Available options: Sub-types (Parameter subtype) 0: full ensemble integration; apply T-matrix analogously to SEIK 1: full ensemble integration; formulation without T matrix 5: Offline mode Integer parameters (Array param_int) param_int(1): Dimension of state vector (>0), required param_int(2): Ensemble size (>0), required param_int(3): not used param_int(4): not used param_int(5): Type of forgetting factor; optional, default: 0 0: fixed forgetting factor 1: adaptive forgetting factor (experimental) param_int(6): Type of ensemble transformation matrix; optional, default: 0 0: deterministic transformation 2: use product of 0 with random orthonomal matrix with eigenvector (1,...,1)^T Floating point parameters (Array param_real) param_real(1): Forgetting factor (usually >0 and <=1), required Further parameters n_modeltasks: Number of parallel model integration tasks >=1 for subtypes 0 and 1; not larger than total number of processors =1 required for subtypes 2 and 3 screen: Control verbosity of PDAF 0: no outputs 1: basic output (default) 2: 1 plus timing output 3: 2 plus debug output +++++++++ End of option overview for the ETKF ++++++++++ }}} == LETKF (filtertype=5) == {{{ Available options: Sub-types (Parameter subtype) 0: full ensemble integration; apply T-matrix analogously to SEIK 5: Offline mode Integer parameters (Array param_int) param_int(1): Dimension of state vector (>0), required param_int(2): Ensemble size (>0), required param_int(3): not used param_int(4): not used param_int(5): Type of forgetting factor; optional, default: 0 0: fixed forgetting factor 1: adaptive forgetting factor for full domain (experimental) 2: locally adaptive forgetting factor (experimental) param_int(6): Type of ensemble transformation matrix; optional, default: 0 0: deterministic transformation 2: use product of 0 with random orthonomal matrix with eigenvector (1,...,1)^T Floating point parameters (Array param_real) param_real(1): Forgetting factor (usually >0 and <=1), required Further parameters n_modeltasks: Number of parallel model integration tasks >=1 for subtypes 0 and 1; not larger than total number of processors =1 required for subtypes 2 and 3 screen: Control verbosity of PDAF 0: no outputs 1: basic output (default) 2: 1 plus timing output 3: 2 plus debug output +++++++++ End of option overview for the LETKF ++++++++++ }}} == ESTKF (filtertype=6) == {{{ Sub-types (Parameter subtype) 0: Standard implementation with ensemble integration 5: Offline mode Integer parameters (Array param_int) param_int(1): Dimension of state vector (>0), required param_int(2): Ensemble size (>0), required param_int(3): not used param_int(4): not used param_int(5): Type of forgetting factor; optional, default: 0 0: fixed forgetting factor 1: adaptive forgetting factor (experimental) param_int(6): Type of ensemble transformation matrix; optional, default: 0 0: deterministic omega 1: random orthonormal omega orthogonal to (1,...,1)^T 2: use product of 0 with random orthonomal matrix with eigenvector (1,...,1)^T (experimental; for random transformations, 0 or 1 are recommended) param_int(7): Type of transformation matrix square root; optional, default: 0 0: symmetric square root 1: Cholesky decomposition Floating point parameters (Array param_real) param_real(1): Forgetting factor (usually >0 and <=1), required Further parameters n_modeltasks: Number of parallel model integration tasks >=1 for subtypes 0 and 1; not larger than total number of processors =1 required for subtypes 2 and 3 screen: Control verbosity of PDAF 0: no outputs 1: basic output (default) 2: 1 plus timing output 3: 2 plus debug output +++++++++ End of option overview for the ESTKF ++++++++++ }}} == LESTKF (filtertype=7) == {{{ Available options: Sub-types (Parameter subtype) 0: Standard implementation with ensemble integration 5: Offline mode Integer parameters (Array param_int) param_int(1): Dimension of state vector (>0), required param_int(2): Ensemble size (>0), required param_int(3): not used param_int(4): 1 for incremental updating, 0 else; optional, default: 0 param_int(5): Type of forgetting factor; optional, default: 0 0: fixed forgetting factor 1: adaptive forgetting factor for full domain (experimental) 2: locally adaptive forgetting factor (experimental) param_int(6): Type of ensemble transformation matrix; optional, default: 0 0: deterministic omega 1: random orthonormal omega orthogonal to (1,...,1)^T 2: use product of 0 with random orthonomal matrix with eigenvector (1,...,1)^T (experimental; for random transformations, 1 is recommended) param_int(7): Type of transformation matrix square root; optional, default: 0 0: symmetric square root 1: Cholesky decomposition Floating point parameters (Array param_real) param_real(1): Forgetting factor (usually >0 and <=1), required Further parameters n_modeltasks: Number of parallel model integration tasks >=1 for subtypes 0 and 1; not larger than total number of processors =1 required for subtypes 2 and 3 screen: Control verbosity of PDAF 0: no outputs 1: basic output (default) 2: 1 plus timing output 3: 2 plus debug output +++++++++ End of option overview for the LESTKF ++++++++++ }}}