Do random number draws to initialize a truncated Gaussian mixture

init_trunc_gauss_mix(
  K,
  num_draws,
  tau_min,
  tau_max,
  s_min = 0,
  input_seed = NA
)

Arguments

K

The number of mixture components

num_draws

The number of draws to make (if more than one, a matrix is returned rather than a vector)

tau_min

The minimum calendar date (AD) for the sampling grid

tau_max

The maximum calendar date (AD) for the sampling grid

s_min

The minimum value for the mixture standard deviations (default: 0)

input_seed

A single integer for initializing the random number seed prior to making draws (default: NA, no seed set)

Value

A matrix of parameter vectors with dimensions 3K by num_draws. If num_draws=1, a vector with length 3K is returned rather than a matrix.

Details

The parameter vector, theta (th), has the ordering th = (pi_1,...,pi_K,mu_1,..mu_K,s_1,...s_K), where K is the number of mixture components and pi_k / mu_k / s_k are, respectively, the weighting / mean / standard deviation of the k-th mixture. The mixture proportions are drawn from a Dirichlet distribution with rep(1,K) used for the dispersion parameter. The means are drawn from a uniform distribution on the interval tau_min to tau_max. The standard deviations are drawn from a uniform distribution on the interval s_min to tau_max - tau_min. By default, s_min is 0.