Make an xds
model object:
Define the dynamical components:
X Component modules for human / host infection dynamics of class Xname
with trivial demographics
MYZ Component modules for adult mosquito ecology and infection dynamics of class MYZname
L Component modules for aquatic mosquito ecology of class Lname
Define basic structural parameters for a single host and vector population:
\(n_p\) or nPatches
- the number of patches
\(n_q\) or nHabitats = length(membership)
- the number and locations of aquatic habitats
\(n_h\) or nStrata = length(residence)
- the number of human / host population strata and basic demographic information
Configure some of the basic elements
Search weights for human population strata
Search weights for aquatic habitats
The mosquito dispersal matrix, \(\cal K\)
The time spent matrix \(\Theta\)
Configure runtime parameters for discrete-time systems
Advanced options can be configured after basic setup.
xds_setup(
xds = "ode",
Xname = "SIS",
Xopts = list(),
MYZname = "macdonald",
MYZopts = list(),
Lname = "trivial",
Lopts = list(),
nPatches = 1,
HPop = 1000,
residence = 1,
membership = 1,
searchB = 1,
TimeSpent = list(),
calK = list(),
searchQ = 1,
Xday = 1,
MYZday = 1,
Lday = 1,
BFopts = list(),
model_name = "unnamed"
)
is ode
or dde
or dts
for ordinary OR delay differential OR difference equations
a character string defining a X Component module
a list to configure the X Component module
a character string defining a MYZ Component module
a list to configure the MYZ Component module
a character string defining a L Component module
a list to configure the L Component module
is the number of patches
is the number of humans in each patch
is a vector that describes the patch where each human stratum lives
is a vector that describes the patch where each aquatic habitat is found
is a vector of search weights for blood feeding
is either a TimeSpent matrix or a string to call a function that sets it up
is either a calK matrix or a string that defines how to set it up
is a vector of search weights for egg laying
is the run-time time step for X Component (in days): integer or 1/integer
is the run-time time step for MYZ Component (in days): integer or 1/integer
is the run-time time step for L Component (in days): integer or 1/integer
a list to configure the blood feeding model
is a name for the model (arbitrary)
an xds
object
Using the basic structural parameters, a basic template is created by make_xds_template with
a properly configured interface for blood feeding and egg laying, and pars$frame = class(pars$frame) = 'full'
.
nPatches
is passed as a parameter
nHabitats
is configured by passing the habitat membership
vector, and nHabitats = length(membership)
nStrata
is configured by passing a vector of human population densities and a residence vector, and nStrata = length(residence) = length(HPop)
nHosts=1
(basic setup handles only the first host species)
nVectors=1
(basic setup handles only the first vector species)
. 2. Each one of the dynamical components is configured.
pars$Xpar[[1]]
defines a model for human / host infection dynamics of class Xname
(the X component). The parameter values passed in a named list, Xopts.
pars$MYZpar[[1]]
defines a model for adult mosquito ecology & infection dynamics of class MYZname
(the MYZ Component). The parameter values are passed in a named list, MYZopts.
pars$Lpar[[1]]
defines a model for aquatic mosquito ecology of class Lname
(The L Component). The parameter values are passed in a named list, Lopts.
After configuring the dynamical components, several structural parameters can be configured at the command line:
Habitat search weights can be set
Host population search weights can be set
A mosquito dispersal matrix, \(\cal K\), can be set
A time spent matrix, \(\Theta\), can be set
Runtime parameters for dts
models can be configured by passing values: Xday
, MYZday
, and Lday
Advanced features must be configured later, including:
multiple-host species or multiple-vector species
exogenous forcing by weather, resources, or other factors
vector control, vaccines, or other mass
If the MYZ Component is the trivial
module, consider using xds_setup_aquatic or xds_setup_human or xds_setup_cohort. Models for mosquito
ecology need not include states describing infection status (see xds_setup_mosy).