% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/sim_pop_data_multi.R
\name{sim_pop_data_multi}
\alias{sim_pop_data_multi}
\title{Simulate multiple data sets}
\usage{
sim_pop_data_multi(
  nclus = 10,
  sample_sizes = 100,
  lambdas = c(0.05, 0.1, 0.15, 0.2, 0.3),
  num_cores = 2L,
  rng_seed = 1234,
  verbose = FALSE,
  ...
)
}
\arguments{
\item{nclus}{number of clusters}

\item{sample_sizes}{sample sizes to simulate}

\item{lambdas}{incidence rate, in events/person*year}

\item{num_cores}{number of cores to use for parallel computations}

\item{rng_seed}{starting seed for random number generator,
passed to \code{\link[rngtools:RNGseq]{rngtools::RNGseq()}}}

\item{verbose}{whether to report verbose information}

\item{...}{
  Arguments passed on to \code{\link[=sim_pop_data]{sim_pop_data}}
  \describe{
    \item{\code{lambda}}{a \code{\link[=numeric]{numeric()}} scalar indicating the incidence rate
(in events per person-years)}
    \item{\code{n_samples}}{number of samples to simulate}
    \item{\code{age_range}}{age range of sampled individuals, in years}
    \item{\code{age_fixed}}{specify the curve parameters to use by age
(does nothing at present?)}
    \item{\code{antigen_isos}}{Character vector with one or more antibody names.
Values must match \code{curve_params}.}
    \item{\code{n_mcmc_samples}}{how many MCMC samples to use:
\itemize{
\item when \code{n_mcmc_samples} is in \code{1:4000} a fixed posterior sample is used
\item when \code{n_mcmc_samples} = \code{0}, a random sample is chosen
}}
    \item{\code{renew_params}}{whether to generate a new parameter set for each
infection
\itemize{
\item \code{renew_params = TRUE} generates a new parameter set for each infection
\item \code{renew_params = FALSE} keeps the one selected at birth,
but updates baseline y0
}}
    \item{\code{add_noise}}{a \code{\link[=logical]{logical()}} indicating
whether to add biological and measurement noise}
    \item{\code{noise_limits}}{biologic noise distribution parameters}
    \item{\code{format}}{a \code{\link[=character]{character()}} variable, containing either:
\itemize{
\item \code{"long"} (one measurement per row) or
\item \code{"wide"} (one serum sample per row)
}}
    \item{\code{curve_params}}{a \code{\link[=data.frame]{data.frame()}} containing MCMC samples of parameters
from the Bayesian posterior distribution of a longitudinal decay curve model.
The parameter columns must be named:
\itemize{
\item \code{antigen_iso}: a \code{\link[=character]{character()}} vector indicating antigen-isotype
combinations
\item \code{iter}: an \code{\link[=integer]{integer()}} vector indicating MCMC sampling iterations
\item \code{y0}: baseline antibody level at $t=0$ ($y(t=0)$)
\item \code{y1}: antibody peak level (ELISA units)
\item \code{t1}: duration of infection
\item \code{alpha}: antibody decay rate
(1/days for the current longitudinal parameter sets)
\item \code{r}: shape factor of antibody decay
}}
  }}
}
\value{
a \code{\link[tibble:tibble]{tibble::tibble()}}
}
\description{
Simulate multiple data sets
}
\examples{
\donttest{
# Load curve parameters
dmcmc <- typhoid_curves_nostrat_100

# Specify the antibody-isotype responses to include in analyses
antibodies <- c("HlyE_IgA", "HlyE_IgG")

# Set seed to reproduce results
set.seed(54321)

# Simulated incidence rate per person-year
lambdas = c(.05, .1, .15, .2, .3)

# Range covered in simulations
lifespan <- c(0, 10);

# Cross-sectional sample size
nrep <- 100

# Biologic noise distribution
dlims <- rbind(
  "HlyE_IgA" = c(min = 0, max = 0.5),
  "HlyE_IgG" = c(min = 0, max = 0.5)
)

sim_data <- sim_pop_data_multi(
  curve_params = dmcmc,
  lambdas = lambdas,
  sample_sizes = nrep,
  age_range = lifespan,
  antigen_isos = antibodies,
  n_mcmc_samples = 0,
  renew_params = TRUE,
  add_noise = TRUE,
  noise_limits = dlims,
  format = "long",
  nclus = 10,
  num_cores = 2)

sim_data

}
}
