Compute the flow generated by a deterministic vectorfield or map.
## 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.
Returns
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].
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.
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 (t[k],t[k+1]), k=0,1,2,… 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 a[k] of accumulator variable a at times t[k], k=1,2,… will be A[k]−A[k−1], where A[k] is the solution of the corresponding differential equation at t[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()