simulate-pomp: Simulations of a partially-observed Markov process

Description Usage Arguments Details Value Author(s) See Also Examples

Description

simulate generates simulations of the state and measurement processes.

Usage

1
2
3
4
## S4 method for signature 'pomp'
simulate(object, nsim = 1, seed = NULL, params,
         states = FALSE, obs = FALSE, times, t0,
         as.data.frame = FALSE, include.data = FALSE, ...)

Arguments

object

An object of class pomp.

nsim

The number of simulations to perform. Note that the number of replicates will be nsim times ncol(xstart).

seed

optional; if set, the pseudorandom number generator (RNG) will be initialized with seed. the random seed to use. The RNG will be restored to its original state afterward.

params

either a named numeric vector or a numeric matrix with rownames. The parameters to use in simulating the model. If params is not given, then the contents of the params slot of object will be used, if they exist.

states

Do we want the state trajectories?

obs

Do we want data-frames of the simulated observations?

times, t0

times specifies the times at which simulated observations will be made. t0 specifies the start time (the time at which the initial conditions hold). The default for times is is times=time(object,t0=FALSE) and t0=timezero(object), respectively.

as.data.frame, include.data

logical; if as.data.frame=TRUE, the results are returned as a data-frame. A factor variable, ‘sim’, distinguishes one simulation from another. If, in addition, include.data=TRUE, the original data are included as an additional ‘simulation’. If as.data.frame=FALSE, include.data is ignored.

...

further arguments that are currently ignored.

Details

Simulation of the state process and of the measurement process are each accomplished by a single call to the user-supplied rprocess and rmeasure functions, respectively. This makes it possible for the user to write highly optimized code for these potentially expensive computations.

Value

If states=FALSE and obs=FALSE (the default), a list of nsim pomp objects is returned. Each has a simulated data set, together with the parameters used (in slot params) and the state trajectories also (in slot states). If times is specified, then the simulated observations will be at times times.

If nsim=1, then a single pomp object is returned (and not a singleton list).

If states=TRUE and obs=FALSE, simulated state trajectories are returned as a rank-3 array with dimensions nvar x (ncol(params)*nsim) x ntimes. Here, nvar is the number of state variables and ntimes the length of the argument times. The measurement process is not simulated in this case.

If states=FALSE and obs=TRUE, simulated observations are returned as a rank-3 array with dimensions nobs x (ncol(params)*nsim) x ntimes. Here, nobs is the number of observables.

If both states=TRUE and obs=TRUE, then a named list is returned. It contains the state trajectories and simulated observations as above.

Author(s)

Aaron A. King kingaa at umich dot edu

See Also

pomp

Examples

1
2
3
4
5
pompExample(ou2)
x <- simulate(ou2,seed=3495485,nsim=10)
x <- simulate(ou2,seed=3495485,nsim=10,states=TRUE,obs=TRUE)
x <- simulate(ou2,seed=3495485,nsim=10,obs=TRUE,
              as.data.frame=TRUE,include.data=TRUE)

pomp documentation built on May 2, 2019, 4:09 p.m.

Related to simulate-pomp in pomp...