kalman function

Ensemble Kalman filters

Ensemble Kalman filters

The ensemble Kalman filter and ensemble adjustment Kalman filter.

## S4 method for signature 'data.frame' enkf( data, ..., Np, params, rinit, rprocess, emeasure, vmeasure, verbose = getOption("verbose", FALSE) ) ## S4 method for signature 'pomp' enkf(data, ..., Np, verbose = getOption("verbose", FALSE)) ## S4 method for signature 'kalmand_pomp' enkf(data, ..., Np, verbose = getOption("verbose", FALSE)) ## S4 method for signature 'data.frame' eakf( data, ..., Np, params, rinit, rprocess, emeasure, vmeasure, verbose = getOption("verbose", FALSE) ) ## S4 method for signature 'pomp' eakf(data, ..., Np, verbose = getOption("verbose", FALSE))

Arguments

  • data: either a data frame holding the time series data, or an object of class pomp , i.e., the output of another pomp calculation. Internally, data will be coerced to an array with storage-mode double.
  • ...: additional arguments are passed to pomp. This allows one to set, unset, or modify basic model components within a call to this function.
  • Np: integer; the number of particles to use, i.e., the size of the ensemble.
  • params: optional; named numeric vector of parameters. This will be coerced internally to storage mode double.
  • rinit: simulator of the initial-state distribution. This can be furnished either as a C snippet, an function, or the name of a pre-compiled native routine available in a dynamically loaded library. Setting rinit=NULL sets the initial-state simulator to its default. For more information, see rinit specification .
  • rprocess: simulator of the latent state process, specified using one of the rprocess plugins . Setting rprocess=NULL removes the latent-state simulator. For more information, see rprocess specification for the documentation on these plugins .
  • emeasure: the expectation of the measured variables, conditional on the latent state. This can be specified as a C snippet, an function, or the name of a pre-compiled native routine available in a dynamically loaded library. Setting emeasure=NULL removes the emeasure component. For more information, see emeasure specification .
  • vmeasure: the covariance of the measured variables, conditional on the latent state. This can be specified as a C snippet, an function, or the name of a pre-compiled native routine available in a dynamically loaded library. Setting vmeasure=NULL removes the vmeasure component. For more information, see vmeasure specification .
  • verbose: logical; if TRUE, diagnostic messages will be printed to the console.

Returns

An object of class kalmand_pomp .

Note for Windows users

Some Windows users report problems when using C snippets in parallel computations. These appear to arise when the temporary files created during the C snippet compilation process are not handled properly by the operating system. To circumvent this problem, use the cdir and cfile options to cause the C snippets to be written to a file of your choice, thus avoiding the use of temporary files altogether.

References

G. Evensen. Sequential data assimilation with a nonlinear quasi-geostrophic model using Monte Carlo methods to forecast error statistics. Journal of Geophysical Research: Oceans 99 , 10143--10162, 1994. tools:::Rd_expr_doi("10.1029/94JC00572") .

J.L. Anderson. An ensemble adjustment Kalman filter for data assimilation. Monthly Weather Review 129 , 2884--2903, 2001. tools:::Rd_expr_doi("10.1175/1520-0493(2001)129<2884:AEAKFF>2.0.CO;2") .

G. Evensen. Data assimilation: the ensemble Kalman filter. Springer-Verlag, 2009. tools:::Rd_expr_doi("10.1007/978-3-642-03711-5") .

See Also

kalmanFilter

More on sequential Monte Carlo methods: bsmc2(), cond_logLik(), eff_sample_size(), filter_mean(), filter_traj(), mif2(), pfilter(), pmcmc(), pred_mean(), pred_var(), saved_states(), wpfilter()

More on pomp elementary algorithms: elementary_algorithms, pfilter(), pomp-package, probe(), simulate(), spect(), trajectory(), wpfilter()

Author(s)

Aaron A. King

  • Maintainer: Aaron A. King
  • License: GPL-3
  • Last published: 2025-01-08