pompBuilder is a tool for producing compiled pomp objects.
It was an early attempt to facilitate the use of compiled codes but has been replaced by the more flexible use of Csnippets in the regular pomp constructor function.
It is not being actively maintained and is no longer exported: users are encouraged to migrate to using Csnippets.pompBuilder(data, times, t0, name, statenames, paramnames,
tcovar, covar,
rmeasure, dmeasure, step.fn, step.fn.delta.t,
skeleton, skeleton.type = c("map","vectorfield"),
skelmap.delta.t = 1,
fromEstimationScale, toEstimationScale,
rprior, dprior, globals, ..., save = FALSE)pomp for more information.
data must be a data-frame.covar is a data-frame containing covariates (variables in columns, timepoints in rows);
tcovar is the name of the column containing time.step.fn is a C code that implements an Euler step function.
The Euler time-step is step.fn.delta.t, which should be a positive number.skeleton is a C code that implements the deterministic skeleton.
As in pomp, skeleton.type indicates whether the skeleton is a map (discrete-time) or vectorfield (continuous-time)toEstimationScale maps parameters from the model scale to the estimation scale.
fromEstimationScale maps them from the estimation scale to the model scale;pomppomp object.
A side-effect is the writing and compilation of a C code into a dynamics shared object. Parallel computing caution:
note that, since a side-effect of running pompBuilder is the writing and compilation of a file, caution must be used when running parallel computations.
Simultaneous execution of pompBuilder on nodes sharing a common disk will cause all nodes to attempt to write the same file at the same time;
the results will be undefined.
If multiple nodes are to work on the same pomp object built by pompBuilder, first run pompBuilder once (with save = TRUE) to write the C file and compile it into a dynamic shared object file.
The pomp object returned by pompBuilder can then be shared with all worker nodes.
pompBuilder with save=TRUE assumes that files can be written to the current working directory and that dynamic shared objects can be compiled and linked, i.e., that R CMD SHLIB will work.
This will not typically be the case in out-of-the-box Windows installations.pomp, Csnippet