flow {pomp}R Documentation

flow workhorse

Description

Compute the flow generated by a deterministic vectorfield or map.

Usage

## S4 method for signature 'pomp'
flow(
  object,
  ...,
  x0,
  t0 = timezero(object),
  times = time(object),
  params = coef(object),
  verbose = getOption("verbose", FALSE)
)

Arguments

object

an object of class ‘pomp’, or of a class that extends ‘pomp’. This will typically be the output of pomp, simulate, or one of the pomp inference algorithms.

...

Additional arguments are passed to the ODE integrator (if the skeleton is a vectorfield) and are ignored if it is a map. See ode for a description of the additional arguments accepted by the ODE integrator. By default, this is the parameter vector stored in object (see coef).

x0

an array with dimensions nvar x nrep giving the initial conditions of the trajectories to be computed.

t0

the time at which the initial conditions are assumed to hold. By default, this is the zero-time (see timezero).

times

a numeric vector (length ntimes) containing times at which the itineraries are desired. These must be in non-decreasing order with times[1]>t0. By default, this is the full set of observation times (see time).

params

a npar x nrep matrix of parameters. Each column is treated as an independent parameter set, in correspondence with the corresponding column of x.

verbose

logical; if TRUE, diagnostic messages will be printed to the console.

Details

In the case of a discrete-time system (map), flow iterates the map to yield trajectories of the system. In the case of a continuous-time system (vectorfield), flow uses the numerical solvers in deSolve to integrate the vectorfield starting from given initial conditions.

Value

flow returns an array of dimensions nvar x nrep x ntimes. If x is the returned matrix, x[i,j,k] is the i-th component of the state vector at time times[k] given parameters params[,j].

Accumulator variables

When there are accumulator variables (as determined by the accumvars argument), their handling in the continuous-time (vectorfield) case differs from that in the discrete-time (map) case. In the latter, accumulator variables are set to zero at the beginning of each interval (tk,tk+1)(t_k,t_{k+1}), k=0,1,2,k=0,1,2,\dots over which flow computation is required. In the former, the flow computation proceeds over the entire set of intervals required, and accumulator variables are then differenced. That is, the value aka_k of accumulator variable aa at times tkt_k, k=1,2,k=1,2,\dots will be AkAk1A_k-A_{k-1}, where AkA_k is the solution of the corresponding differential equation at tkt_k.

See Also

More on pomp workhorse functions: dinit(), dmeasure(), dprior(), dprocess(), emeasure(), partrans(), pomp-package, rinit(), rmeasure(), rprior(), rprocess(), skeleton(), vmeasure(), workhorses

More on methods for deterministic process models: skeleton(), skeleton_spec, traj_match, trajectory()


[Package pomp version 6.1.0.0 Index]