if (requireNamespace("ggdmcModel", quietly = TRUE)) {
BuildModel <- getFromNamespace("BuildModel", "ggdmcModel")
model <- BuildModel(
p_map = list(
A = "1", B = "1", t0 = "1", mean_v = "M", sd_v = "M",
st0 = "1"
),
match_map = list(M = list(s1 = "r1", s2 = "r2")),
factors = list(S = c("s1", "s2")),
constants = c(sd_v.false = 1, st0 = 0),
accumulators = c("r1", "r2"),
type = "lba"
)
####################################
# priors for subject-level modelling
####################################
p0 <- rep(0, model@npar)
names(p0) <- model@pnames
p_prior <- BuildPrior(
p0 = p0,
p1 = rep(10, model@npar),
lower = rep(0, model@npar),
upper = rep(NA, model@npar),
dist = rep("unif", model@npar),
log_p = rep(TRUE, model@npar)
)
sub_priors <- set_priors(p_prior = p_prior)
####################################
# priors for hierarchical modelling
####################################
p0 <- runif(model@npar)
names(p0) <- model@pnames
model_likelihood <- BuildPrior(
p0 = p0,
p1 = rep(10, model@npar),
lower = rep(0, model@npar),
upper = rep(NA, model@npar),
dist = rep("tnorm", model@npar),
log_p = rep(TRUE, model@npar)
)
p0 <- rep(0, model@npar)
names(p0) <- model@pnames
l_prior <- BuildPrior(
p0 = p0,
p1 = rep(10, model@npar),
lower = rep(0, model@npar),
upper = rep(NA, model@npar),
dist = rep("unif", model@npar),
log_p = rep(TRUE, model@npar)
)
s_prior <- BuildPrior(
p0 = p0,
p1 = rep(10, model@npar),
lower = rep(NA, model@npar),
upper = rep(NA, model@npar),
dist = rep("unif", model@npar),
log_p = rep(TRUE, model@npar)
)
pop_priors <- set_priors(
p_prior = model_likelihood,
l_prior = l_prior, s_prior = s_prior
)
}
Run the code above in your browser using DataLab