Skip to contents

The form of MARSS models for users is "marxss", the MARSS models with inputs. See MARSS.marxss. In the internal algorithms (e.g. MARSSkem), the "marss" form is used and the \(\mathbf{D}\mathbf{d}_t\) are incorporated into the \(\mathbf{a}_t\) matrix and \(\mathbf{C}\mathbf{c}_t\) are incorporated into the \(\mathbf{u}_t\). The \(\mathbf{a}\) and \(\mathbf{u}\) matrices then become time-varying if the model includes \(\mathbf{d}_t\) and \(\mathbf{c}_t\).

This is a MARSS(1) model of the marss form: $$\mathbf{x}_{t} = \mathbf{B} \mathbf{x}_{t-1} + \mathbf{u}_t + \mathbf{G} \mathbf{w}_t, \textrm{ where } \mathbf{W}_t \sim \textrm{MVN}(0,\mathbf{Q})$$ $$\mathbf{y}_t = \mathbf{Z} \mathbf{x}_t + \mathbf{a}_t + \mathbf{H} \mathbf{v}_t, \textrm{ where } \mathbf{V}_t \sim \textrm{MVN}(0,\mathbf{R})$$ $$\mathbf{X}_1 \sim \textrm{MVN}(\mathbf{x0}, \mathbf{V0}) \textrm{ or } \mathbf{X}_0 \sim \textrm{MVN}(\mathbf{x0}, \mathbf{V0}) $$Note, by default \(\mathbf{V0}\) is a matrix of all zeros and thus \(\mathbf{x}_1\) or \(\mathbf{x}_0\) is treated as an estimated parameter not a diffuse prior. To remove clutter, the rest of the parameters are shown as time-constant (no \(t\) subscript) but all parameters can be time-varying.

Note, "marss" is a model form. A model form is defined by a collection of form functions discussed in marssMODEL. These functions are not exported to the user, but are called by MARSS() using the argument form. These internal functions convert the users model list into the vec form of a MARSS model and do extensive error-checking.

Usage

MARSS(y, inits = NULL, model = NULL, miss.value = as.numeric(NA), method = "kem", form = "marxss", fit = TRUE, silent = FALSE, control = NULL, fun.kf = "MARSSkfas", ...)

Details

See the help page for the MARSS.marxss form for details.

Value

A object of class marssMLE.

Author

Eli Holmes, NOAA, Seattle, USA.

See also

Examples

if (FALSE) {
# See the MARSS man page for examples
?MARSS

# and the Quick Examples chapter in the User Guide
RShowDoc("UserGuide", package = "MARSS")
}