Function to simulate population dynamics of Aedes mosquitoes

dynamAedes.m(
  species = NULL,
  intro.eggs = 0,
  intro.deggs = 0,
  intro.adults = 0,
  intro.juveniles = 0,
  scale = NULL,
  intro.cells = NULL,
  jhwv = NULL,
  temps.matrix = NULL,
  startd = 1,
  endd = NA,
  cells.coords = NULL,
  coords.proj4 = NA,
  lat = NA,
  long = NA,
  road.dist.matrix = NULL,
  avgpdisp = NA,
  pDispersal = TRUE,
  iter = 1,
  n.clusters = 1,
  cluster.type = "PSOCK",
  compressed.output = TRUE,
  suffix = NA,
  cellsize = 250,
  maxadisp = 600,
  dispbins = 10,
  verbose = 0,
  seeding = FALSE
)

Arguments

species

character. Select what species to model: "aegypti", "albopictus", "japonicus", "koreicus". Default species = "aegypti".

intro.eggs

positive integer. number of introduced eggs, default intro.eggs = 0.

intro.deggs

positive integer. number of introduced diapause eggs, default intro.deggs = 100.

intro.adults

positive integer. number of introduced adults, default intro.adults = 0.

intro.juveniles

positive integer. number of introduced juveniles, default intro.juveniles = 0.

scale

character. Define the model spatial scale: punctual/weather station "ws", local "lc", or regional "rg". Active and passive dispersal is enabled only for scale = "lc". Default scale = "ws".

intro.cells

positive integer. One or more cells (id) where to introduce the population at local ("lc") scale. If intro.cells=NULL, then a random cell is used for introduction; If intro.cells is a vector of cell ids then a cell is drawn at random from the vector (with repetition) for introduction in each model iteration.

jhwv

positive integer. Juvenile-habitat water volume, define the volume (L) of water habitat presents in each spatial unit (parametrised with data retrieved from doi:10.1111/1365-2664.12620 ). Default lhwv = 1.

temps.matrix

matrix. A matrix of daily (average) temperatures (in degrees Celsius degree x 1000) used to fit the life cycle rates. This matrix must be organised with the daily temperature observations as columns and the geographic position of the i-grid cell as rows. Importantly, the first column must match startd date.

startd

Character date (ISO format "%Y-%m-%d"). Date of start of simulations.

endd

Character date (ISO format "%Y-%m-%d"). Date of end of simulation. It can be NA; then it will be derived using the number of columns in temps.matrix.

cells.coords

matrix. A matrix reporting the spatial coordinates of the temperature observations.

coords.proj4

string. Proj4 string of cell coordinates used for the calculation of photoperiod.

lat

numeric. Latitude value of the area of interested used to derive the photoperiod (and thus the diapause eggs allocation function).

long

numeric. Longitude value of the area of interested used to derive the photoperiod (and thus the diapause eggs allocation function)

road.dist.matrix

matrix. when scale = "lc", defines the matrix containing the distances (in meters) between grid cells intersecting the road network for the mosquito passive dispersal process. colnames(road.dist.matrix) must correspond to the same cell in temps.matrix (may be an issue if the coordinates used for creating road.dist.matrix have been subset to match road segments).

avgpdisp

optional. when scale = "lc", define the average car trip distance (in meters) for the mosquito passive dispersal process. The value can be set by the users (positive numeric), or the estimates made by Pasaoglu et al. 2012) for the following European countries: France "fra", Germany "deu", Italy "ita", Poland "pol", Spain "esp" and the United Kingdom "uk". The average passive dispersal distance must be smaller than the maximum distance in road.dist.matrix.

pDispersal

boolean. if TRUE (default) then the model considers passive dispersal.

iter

positive integer. Define the number of model iterations.

n.clusters

positive integer. Defines the number of parallel processes.

cluster.type

character. Defines the type of cluster, default "PSOCK".

compressed.output

logical. Default TRUE, if FALSE provide abundance for each model's subcompartiment; if FALSE abundances are summed per compartment.

suffix

character. Model output suffix for output RDS.

cellsize

positive integer. When scale = "lc", defines the minimal distance for the active dispersal kernel and should match the spatial resolution of temps.matrix to avoid inconsistencies. Default cellsize = 250.

maxadisp

positive integer. When scale = "lc", defines the maximum daily active dispersal, default maxadisp = 600.

dispbins

positive integer. When scale = "lc", defines the resolution of the active dispersal kernel, default dispbins = 10.

verbose

integer. if 1 then an overview of population dynamics is printed in the console, if 2 more information on population dynamics are printed out. Default is 0 (silent).

seeding

logical, default FALSE, if seeding=TRUE a fixed seed is applied for result reproducibility.

Value

Matrix or a list of matrices containing, for each iteration, the number of individuals in each life stage per day (and for each grid cell of the study area if scale="lc" or "rg"). If the argument compressed.output=FALSE (default TRUE), the model returns the daily number of individuals in each life stage sub-compartment.

See also

Beta regression functions were taken from the R package aomisc, which may be available at https://github.com/OnofriAndreaPG/aomisc.

Author

Matteo Marcantonio marcantoniomatteo@gmail.com, Daniele Da Re daniele.dare@uclouvain.be

Examples

# \donttest{
## Run dynamAedes at local scale for 5 days
# Make a toy temperature time series
w <- matrix(seq(20,25,length.out=5),ncol=5)*1000
# Run the model
  simout <- dynamAedes.m(
  species="koreicus", 
  scale="ws",
  intro.eggs=10, 
  jhwv=2, 
  temps.matrix=w, 
  startd="2021-06-21", 
  endd="2021-06-25",
  lat=42,
  long=8,
  n.clusters=1, 
  iter=1,
  compressed.output=TRUE,
  verbose=FALSE)
#> 
#>  ### Model without dispersal ### 
#> ##########################################
#> ## Life cycle iterations have begun... ##
#> ##########################################
#> 
  |                                                                            
  |                                                                      |   0%
#> 
#> 
#> 
#> ########################################
#> ## Iterations concluded.##
#> ########################################
#> 
#> 
# }