Learn R Programming

astsa (version 1.9)

Kfilter1: Kalman Filter - Model may be time varying or have inputs

Description

Returns both the predicted and filtered values for a linear state space model. Also evaluates the likelihood at the given parameter values.

Usage

Kfilter1(num, y, A, mu0, Sigma0, Phi, Ups, Gam, cQ, cR, input)

Arguments

num

number of observations

y

data matrix, vector or time series

A

time-varying observation matrix, an array with dim=c(q,p,n)

mu0

initial state mean

Sigma0

initial state covariance matrix

Phi

state transition matrix

Ups

state input matrix; use Ups = 0 if not needed

Gam

observation input matrix; use Gam = 0 if not needed

cQ

Cholesky-type decomposition of state error covariance matrix Q -- see details below

cR

Cholesky-type decomposition of observation error covariance matrix R -- see details below

input

matrix or vector of inputs having the same row dimension as y; use input = 0 if not needed

Value

xp

one-step-ahead prediction of the state

Pp

mean square prediction error

xf

filter value of the state

Pf

mean square filter error

like

the negative of the log likelihood

innov

innovation series

sig

innovation covariances

Kn

last value of the gain, needed for smoothing

%% ~Describe the value returned %% If it is a LIST, use %% \item{comp1 }{Description of 'comp1'} %% \item{comp2 }{Description of 'comp2'} %% ...

Details

Practically, the script only requires that Q or R may be reconstructed as t(cQ)%*%(cQ) or t(cR)%*%(cR), respectively.

References

http://www.stat.pitt.edu/stoffer/tsa4/

See also http://www.stat.pitt.edu/stoffer/tsa4/chap6.htm for an explanation of the difference between levels 0, 1, and 2.