Tests marssMLE object for completeness
is_marssMLE.Rd
Tests a marssMLE
object for completeness to determine if it has all the pieces and attributes necessary to be passed to MARSS functions for fitting, filtering, smoothing, or displaying. Internal function, use MARSS:::
to access. This is a very slow function which should not be called repeatedly in a for
loop for example.
Arguments
- MLEobj
An object of class
marssMLE
. See Details.
Details
The is.marssMLE()
function checks components marss
, start
and control
, which must be present for estimation by functions e.g. MARSSkem()
. Components returned from estimation must include at least method
, par
, kf
, numIter
, convergence
and logLik
. Additional components (e.g. AIC) may be returned, as described in function help files.
model
An object of class
marssMODEL
in whatever form the user specified in the call toMARSS()
. Default is form "marxss".marss
An object of class
marssMODEL
in "marss" forms, needed for all the base MARSS functions.start
List with matrices specifying initial values for parameters to be used (if needed) by the maximization algorithm.
B
Initial value(s) for \(\mathbf{B}\) matrix (m x m).
U
Initial value(s) for \(\mathbf{u}\) matrix (m x 1).
Q
Initial value(s) for \(\mathbf{Q}\) variance-covariance matrix (m x m).
Z
Initial value(s) for \(\mathbf{Z}\) matrix (n x m).
A
Initial value(s) for \(\mathbf{a}\) matrix (n x 1).
R
Initial value(s) for \(\mathbf{R}\) variance-covariance matrix (n x n).
x0
Initial value(s) for initial state vector (m x 1).
V0
Initial variance(s) for initial state variance (m x m).
control
A list specifying estimation options. The following options are needed by
MARSSkem()
. Other control options can be set if needed for other estimation methods, e.g. the control options listed foroptim
for use withMARSSoptim()
. The default values for control options are set inalldefaults[[method]]
which is specified inMARSSsettings.R
.minit
The minimum number of iterations to do in the maximization routine (if needed by method).
maxit
Maximum number of iterations to be used in the maximization routine (if needed by method).
min.iter.conv.test
Minimum iterations to run before testing convergence via the slope of the log parameter versus log iterations.
conv.test.deltaT=9
Number of iterations to use for the testing convergence via the slope of the log parameter versus log iterations.
conv.test.slope.tol
The slope of the log parameter versus log iteration to use as the cut-off for convergence. The default is 0.5 which is a bit high. For final analyses, this should be set lower.
abstol
The logLik.(iter-1)-logLik.(iter) convergence tolerance for the maximization routine. Both the abstol and the slope of the log of the parameters versus the log iteration tests must be met for convergence.
trace
A positive integer. If not 0, a record will be created during maximization iterations (what's recorded depends on method of maximization). -1 turns off most internal error checking.
safe
Logical. If TRUE, then the Kalman filter is run after each update equation in the EM algorithm. This slows down the algorithm. The default is FALSE.
allow.degen
If TRUE, replace \(\mathbf{Q}\) or \(\mathbf{R}\) diagonal elements by 0 when they become very small.
min.degen.iter
Number of iterations before trying to set a diagonal element of \(\mathbf{Q}\) or \(\mathbf{R}\) to zero).
degen.lim
How small the \(\mathbf{Q}\) or \(\mathbf{R}\) diagonal element should be before attempting to replace it with zero.
silent
Suppresses printing of progress bar, error messages and convergence information.
method
A string specifying the estimation method. MARSS allows "kem" for EM and "BFGS" for quasi-Newton.
Once the model has been fitted, additional elements are added.
par
A list with 8 matrices of estimated parameter values Z, A, R, B, U, Q, x0, V0.
states
Expected values of the x (hidden states).
states.se
Standard errors on the estimates states.
ytT
Expected values of the y. This is just y for non-missing y.
ytT.se
Standard errors on the ytT. This will be 0 for non-missing y.
kf
A list containing Kalman filter/smoother output if
control$trace
is > 0.Ey
A list containing expectations involving y. Output if
control$trace
is > 0.numIter
Number of iterations which were required for convergence.
convergence
Convergence status and errors. 0 means converged successfully. Anything else means an error or warning.
logLik
Log-likelihood.
AIC
AIC
AICc
Corrected AIC.
call
A list of all the arguments passed into the MARSS call. Not required for most functions, but is a record of what was used to call MARSS for checking and can be used to customize the printing of MARSS output.