= Available options for the different filter algorithms =
{{{
#!html
}}}
[[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 ++++++++++
}}}