The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
RBesT and its dependency
closure is now produced as a mountable library image.gMAP now samples the group random effects in a
sum-to-zero parametrization whenever the model has an intercept, normal
random effects and a single tau stratum. The data-free
common shift shared by the intercept and the random effects is
marginalized analytically using an orthonormal basis of the sum-to-zero
subspace, which removes the ridge between beta[1] and
mean(eps) that made the posterior hard to explore. The
model is mathematically unchanged and all outputs keep their previous
meaning; only the sampling geometry differs. Student-t random effects,
several tau strata and intercept-free models continue to
use the previous parametrization. Set
options(RBesT.MC.s2z = FALSE) to use the conventional
parametrization. Many thanks to Sean Pinkney and Nikolai Vetr for
presenting the approch at StanCon 2026.gMAP model variants
(options(RBesT.MC.ncp = 3)). Before sampling, fixed-effort
Gaussian quadrature estimates the posterior median of each heterogeneity
stratum and converts it to per-group Fisher-information centering
fractions. If the fixed numerical checks do not agree, gMAP
warns and uses the exact non-centered model parametrization.
RBesT.MC.ncp = 0 and 1 keep their existing
meanings (centered / non-centered); RBesT.MC.ncp = 2 keeps
its existing endpoint threshold but now bases its centered/non-centered
decision on the same quadrature fractions instead of a cruder scalar
heterogeneity guess (see below). Partial centering is independent of
whether the model is eligible for the sum-to-zero representation. To
restore the pre-1.12 sampling scheme, set
options(RBesT.MC.s2z = FALSE, RBesT.MC.ncp = 1). Man thanks
to Sean Pinkney for the implementation in brms used as
template.log(tau), fixed effects, and group effects for sampling.
Fixed-effect locations remain pooled-GLM estimates, while group
locations and scales enter an exact affine reparametrization. If
quadrature is unavailable, gMAP warns and uses heuristic
sampler-scaling estimates. The statistical model, reported summaries,
and numeric init argument are unchanged.adapt_delta for gMAP
from 0.99 to 0.95
(options(RBesT.MC.control)). The sum-to-zero
parametrization no longer needs the very conservative target acceptance
rate that the old geometry required, and the lower target draws the same
effective sample size from substantially fewer gradient evaluations.
Should divergent transitions still occur, the reported warning now
recommends raising adapt_delta to 0.99.
Setting options(RBesT.MC.s2z = FALSE) also restores the
previous adapt_delta default of 0.99, since
the legacy geometry needs the more conservative target acceptance
rate.gMAP object
are now ordered theta, tau, beta,
theta_pred, theta_resp_pred,
lp__. Their names, dimensions and meaning are unchanged and
all RBesT functions access them by name, such that only
code relying on the column order of as_draws*() output is
affected.write_mix_json now warns whenever the requested
precision (argument digits) is so low that a mixture weight
is written as zero and it aborts with an error in case all mixture
weights are written as zero. Reading a mixture with zero weighted
components with read_mix_json works as before and keeps all
components of the mixture.read_mix_json robust against jsonlite
2.0.0 simplification behavior by using deterministic JSON parsing,
fixing reads of normal mixtures with three or more components.decision2S_boundary /
decision1S_boundary (and hence oc1S,
oc2S, pos1S, pos2S) is replaced
by an adaptive scheme that only solves where the boundary bends (normal)
or fills provably constant runs of the monotone integer boundary without
further root searches (binomial, Poisson). Boundary construction is
roughly 10x faster for normal endpoints and up to orders of
magnitude faster for near-flat discrete boundaries
(e.g. large-n Poisson); normal
oc2S/pos2S run about 2-3x faster.
Boundary values are unchanged (identical for discrete, within
~1e-5 for normal). Set
options(RBesT.decision2S_boundary = "grid") to restore the
legacy sweep.decision2S_boundary interpolant
consistent with the adaptive point placement. Curved and mixture
boundaries are now interpolated with a shape-preserving monotone Hermite
spline (splinefun(method = "monoH.FC")) instead of a global
cubic, which matches the adaptive tracer’s curvature-graded points and
avoids overshoot. For the provably-linear case (single-component priors
with constant sigma, including multi-criteria and
n2 = 0 decisions) the boundary is now built as an exact
straight line from two solves rather than a grid, making these
boundaries exact (previously accurate to ~1e-6). Operating
characteristics / probability of success are unchanged to within
tolerance.Ngrid from 10 to 5 in
oc2S, pos2S, and
decision2S_boundary for the normal case. Ngrid
now sets the finest resolution of the adaptive scheme and the grid
density of the "grid" fallback; for the grid path a coarser
grid roughly halves the boundary cost. Either way the resulting
operating characteristics / probability of success change by at most
about 1e-5 across a range of mixture and exponential-family
settings. Pass Ngrid = 10 to restore the previous
behaviour.inst/REFERENCES.bib. Documentation now cites it via the
Rdpack \insertRef macro (roxygen
@references), and the vignettes and articles cite the same
file through the R Markdown bibliography: field, removing
duplicated per-file reference lists.inst/sbc, which was shipped broken in 1.10-0: the
gMAP posterior storage refactor removed the raw
rstan stanfit fit slot, causing
run_sbc_case to fail with
no applicable method for '@' applied to an object of class "NULL".
The SBC helper fit_rbest now reads sampler diagnostics and
posterior draws from the stored posterior draws objects
instead of the removed stanfit.family argument to oc1S,
oc2S, pos1S, pos2S,
decision1S_boundary, and decision2S_boundary
for the normal case. Under the normal approximation this allows
operating characteristics, probability of success, and decision
boundaries to be evaluated for arbitrary exponential family
endpoints.normMix, Gauss-Jacobi
for betaMix, Gauss-Laguerre for gammaMix),
replacing adaptive Gauss-Kronrod integration on identity-link paths in
oc2S, pos2S, dmixdiff,
pmixdiff, and ess for deterministic and robust
results. The node count is refined automatically (starting from
RBesT.GQ_nodes) until successive estimates agree within
max(RBesT.GQ_abs_tol, RBesT.GQ_rel_tol * |I|), falling
through to adaptive integration if the node cap is reached. Non-identity
link cases and betaMix ESS continue to use adaptive integration, which
can also be restored globally with
options(RBesT.integrate_method = "adaptive").gMAP posterior sample storage to use
posterior draws objects plus aligned sampler diagnostics
instead of relying on a raw rstan stanfit;
update summaries, predictions, plotting, and posterior accessors
accordingly. The previously stored fit slot has been
removed.gMAP related functions
using compact approximate posterior draw fixtures, so these tests can
run routinely without full MCMC fixture generation.read_mix_json robust against jsonlite
2.0.0 simplification behavior by using deterministic JSON parsing,
fixing reads of normal mixtures with three or more components.Air.decision1S and decision2S now allow
lower.tail to have as many elements as pc to
allow the specification of two-sided decision boundaries (mixed
lower.tail elements, i.e. some specifying “lower” and some
“upper”) to capture intermediate result scenarios.RBesT.MC.save_warmup, which is
set to FALSE causing to drop warmup samples from the
gMAP fit object. Note that the pre-1.9.0 behavior was to
store the warmup samples (but these were not used). To restore the
original behavior set options(RBesT.MC.save_warmup=TRUE)
once globally.as_draws* functions allowing to
extract samples in the posterior draws format from gMAP
objects.size argument to ggplot2
routines, which have been deprecated.write_mix_json and
read_mix_json functions which write and read mixture
objects as JSON to/from files."msr" parametrization to mixmvnorm
which allows to consturct multi-variate normal mixtures in a
parametrization using the mean vector, standard deviations and the
correlations. This functionality is based on the new
msr2mvnorm utility function.ess function for beta and gamma
mixtures when used inside of lapply or
sapply.family argument. For example, this can be used to calculate
the ESS of a normal mixture density representing a logit transformed
response scale.styler.BinaryExactCI function
whenever no responses or no non-responses are observed. Fixes issue
#21.mixstanvar automatic generation of
distribution functions allowing truncated priors in brms
with mixturesgMAP objects by
avoiding to store redundant variables.testthat edition to version 3.ggplot2::qplot with
respective calls to ggplot2::ggplot.array notation for mixstanvar
generated Stan code to make generated Stan programs compatible with Stan
>= 2.33pngquant to system requirements of package as
requested by CRAN.mixstanvar function and disabled
integration tests on CI/CD systems as these require significant
resources due to the need to compile Stan models. The unit tests do
ensure that things are correct from the RBesT side of
things.roxygen2 to document package
documentation.brms models with the new
adapter function mixstanvar.aes_string.constrain_gt1 of the
EM for beta mixtures to TRUE. This will be default
constrain the fitted parameters of each beta mixture component to be
greater than unity as required for finite ESS elir calculations.rstantoolsRBesT will now report the date of the
release and the respective git commit hash used to create the sources of
the package.predict for new studies will sample the
study specifc random effect per iteration only once. This is important
for MAP priors with covariate effects (which are pooled over the
studies).matrixStats to speed up EM algorithms &
OCsmixdist plot when plotting a mixture resulting from
*mixfit callgMAP analysis for
which the Stan sampler had issues due to divergent transitions or
non-convergence as indicated by large Rhatdmix) with a defined link
function did not evaluate correctly, which was visible when plotting
mixtures (with more than one component) with link functionsThese binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.