Learn R Programming

foieGras (version 0.6-9)

sfilter: fit the state-space model to data after passing through prefilter

Description

generates initial values for model parameters and unobserved states; structures data and initial values for C++ TMB template; fits state-space model; minimizes the joint log-likelihood via the selected optimizer (nlminb or optim); structures and passes output object to fit_ssm

Usage

sfilter(
  x,
  model = c("rw", "crw"),
  time.step = 6,
  scale = FALSE,
  parameters = NULL,
  map = NULL,
  fit.to.subset = TRUE,
  optim = c("nlminb", "optim"),
  optMeth = c("L-BFGS-B", "BFGS", "Nelder-Mead", "CG", "SANN", "Brent"),
  verbose = 1,
  control = NULL,
  inner.control = NULL,
  lpsi = -10
)

Arguments

x

Argos data passed through prefilter()

model

specify which SSM is to be fit: "rw" or "crw"

time.step

the regular time interval, in hours, to predict to. Alternatively, a vector of prediction times, possibly not regular, must be specified as a data.frame with id and POSIXt dates.

scale

scale location data for more efficient optimization.

parameters

a list of initial values for all model parameters and unobserved states, default is to let sfilter specify these. Only play with this if you know what you are doing...

map

a named list of parameters as factors that are to be fixed during estimation, e.g., list(psi = factor(NA))

fit.to.subset

fit the SSM to the data subset determined by prefilter (default is TRUE)

optim

numerical optimizer to be used ("nlminb" or "optim")

optMeth

optimization method to use (default is "L-BFGS-B"), ignored if optim = "nlminb"

verbose

report progress during minimization (0 = silent; 1 = show parameter trace [default]; 2 = show optimizer trace)

control

list of control parameters for the outer optimization (type ?nlminb or ?optim for details)

inner.control

list of control settings for the inner optimization (see ?TMB::MakeADFUN for additional details)

lpsi

lower bound for the psi parameter

Details

called by fit_ssm, not intended for general use. sfilter can only fit to an individual track, use fit_ssm to fit to multiple tracks (see ?fit_ssm).