Construct an object of class ssm_ulg
by defining the corresponding terms
of the observation and state equation:
ssm_ulg(
y,
Z,
H,
T,
R,
a1,
P1,
init_theta = numeric(0),
D,
C,
state_names,
update_fn = default_update_fn,
prior_fn = default_prior_fn
)
Observations as time series (or vector) of length \(n\).
System matrix Z of the observation equation as m x 1 or m x n matrix.
Vector of standard deviations. Either a scalar or a vector of length n.
System matrix T of the state equation. Either a m x m matrix or a m x m x n array.
Lower triangular matrix R the state equation. Either a m x k matrix or a m x k x n array.
Prior mean for the initial state as a vector of length m.
Prior covariance matrix for the initial state as m x m matrix.
Initial values for the unknown hyperparameters theta.
Intercept terms for observation equation, given as a length n vector.
Intercept terms for state equation, given as m x n matrix.
Names for the states.
Function which returns list of updated model
components given input vector theta. This function should take only one
vector argument which is used to create list with elements named as
Z
, H
T
, R
, a1
, P1
, D
, and C
,
where each element matches the dimensions of the original model.
If any of these components is missing, it is assumed to be constant wrt. theta.
Function which returns log of prior density given input vector theta.
Object of class ssm_ulg
.
$$y_t = X_t beta + D_t + Z_t \alpha_t + H_t \epsilon_t, (\textrm{observation equation})$$ $$\alpha_{t+1} = C_t + T_t \alpha_t + R_t \eta_t, (\textrm{transition equation})$$
where \(\epsilon_t \sim N(0, 1)\), \(\eta_t \sim N(0, I_k)\) and \(\alpha_1 \sim N(a_1, P_1)\) independently of each other, \(X_t\) are fixed covariates and \(beta\) contains the corresponding (known) coefficients.