r_behavior_stream: Generates random behavior streams

View source: R/simulate_behavior_stream.R

r_behavior_streamR Documentation

Generates random behavior streams

Description

Random generation of behavior streams (based on an alternating renewal process) of a specified length and with specified mean event durations, mean interim times, event distribution, and interim distribution.

Usage

r_behavior_stream(
  n,
  mu,
  lambda,
  F_event,
  F_interim,
  stream_length,
  equilibrium = TRUE,
  p0 = 0,
  tuning = 2
)

Arguments

n

number of behavior streams to generate

mu

vector of mean event durations

lambda

vector of mean interim time

F_event

distribution of event durations. Must be of class eq_dist.

F_interim

distribution of interim times. Must be of class eq_dist.

stream_length

length of behavior stream

equilibrium

logical; if TRUE, then equilibrium initial conditions are used; if FALSE, then p0 is used to determine initial state and normal generating distributions are used for event durations and interim times.

p0

vector of initial state probabilities. Only used if equilibrium = FALSE, in which case default is zero (i.e., behavior stream always starts with an interim time).

tuning

controls the size of the chunk of random event durations and interim times. Adjusting this may be useful in order to speed computation time .

Details

Generates behavior streams by repeatedly drawing random event durations and random interim times from the distributions as specified, until the sum of the durations and interim times exceeds the requested stream length. The vectors mu, lambda, and p0 are recycled to length n.

Value

An object of class behavior_stream containing two elements.

Examples

# default equilibrium initial conditions
r_behavior_stream(n = 5, mu = 3, lambda = 10, 
                  F_event = F_exp(), F_interim = F_exp(), 
                  stream_length = 100)
                  
# non-equilibrium initial conditions
r_behavior_stream(n = 5, mu = 3, lambda = 10,
                  F_event = F_gam(3), F_interim = F_gam(3),
                  stream_length = 100, 
                  equilibrium = FALSE, p0 = 0.5)

ARPobservation documentation built on Aug. 25, 2023, 5:19 p.m.