Nothing
brms_inla_power() now raises a hard error (rather than a warning) when
effect_name does not match a formula-level fixed-effect term and the
automatic data generator is in use. Previously such a name was silently
ignored when building the linear predictor, so the requested effect was never
applied to the simulated data even though its grid value was recorded. The
error message clarifies that the formula term should be used (e.g.
effect_name = "Condition"), not a fitted coefficient level (e.g.
"Condition1"). When a custom data_generator is supplied the check is
downgraded to a warning, since the naming convention is then under user
control. This validation now runs before the INLA dependency check.decide_sample_size() in conditional mode now requires at least one decision
target (direction, threshold, rope_in, or bf10); supplying none
previously produced an arbitrary smallest-n recommendation. Assurance mode
already enforced this.decide_sample_size() no longer mistakes the per-cell SD-moment summary
columns (mean_sampled_error_sd, sd_sampled_error_sd,
mean_sampled_group_sd, sd_sampled_group_sd) for effect-grid/design
columns. Only sampled_* was excluded previously, which left the
mean_sampled_* / sd_sampled_* columns to fragment the effect grouping.sequential_design() for prespecifying a sequential Bayesian analysis:
model, analysis priors, monitored effect, decision metric (direction /
threshold / ROPE), per-look success and futility thresholds, and the
planned look schedule. The object carries an MD5 fingerprint of all
decision-relevant fields for quotation in preregistrations; any change to
the rules changes the fingerprint.sequential_analysis() for monitoring a real study as data accumulate:
fits the prespecified model with INLA at each interim look, applies the
prespecified stopping rule, and records an auditable trajectory (estimates,
credible intervals, monitored probabilities, decisions, and any protocol
deviations). Refuses to continue after a recorded stop unless explicitly
overridden, in which case the continuation is logged as a deviation.plot_sequential_monitor() for trajectory plots of the monitored
posterior probability against the prespecified stopping boundaries, or of
the effect estimate with its credible interval across looks.brms_inla_sequential_trial() simulates the operating characteristics
of a sequential design before data collection: probabilities of stopping
for success / futility / equivalence, expected sample size, the per-look
stopping distribution, and the exaggeration of effect estimates at early
stops. True effects may be fixed scenarios or drawn from a design prior
(sequential assurance). Accepts sequential_design() objects so the
simulated design is exactly the design that is later monitored.brms_inla_power_sequential() summaries, the column previously named
assurance is now conditional_power. The old name was misleading: the
quantity is conditional power at a fixed effect-grid value, not
unconditional assurance (which compute_assurance() provides).brms_inla_power_two_stage() no longer errors when called with default
arguments (error_sd and obs_per_group previously defaulted to NULL,
which the input validator rejects); defaults are now 1 and 10, matching
brms_inla_power().brms_inla_power_sequential() now returns an object of class
"brms_inla_power", so the print method applies; it also validates
effect_name and target on entry.sequencial-test.R, set-up.R) did not match testthat's
file-name conventions and were silently never executed; they have been
renamed (test-sequential-stopping.R, setup.R), updated, and now run..plot_decision_assurance_curve_from_summary() is no longer exported (it
is an internal helper)..geom_point_lw() helper, which passed linewidth
to ggplot2::geom_point() on ggplot2 >= 3.4; the parameter was silently
ignored ("Ignoring unknown parameters" warning) and points rendered at
their default size. Point sizing now uses size, as geom_point expects.utils-helpers.R); pruned stray globalVariables entries; large PNG/PDF
artefacts at the package root are excluded from builds via .Rbuildignore.compute_assurance() function for unconditional Bayesian assurance
(O'Hagan & Stevens, 2001) computed as a weighted average of conditional
power over a design prior on the effect size.assurance_prior_weights() convenience wrapper for constructing
normalised design-prior weights (normal, uniform, beta) over an effect grid.decide_sample_size() function with both assurance mode (design prior)
and conditional mode for recommending sample sizes from simulation output.validate_inla_vs_brms() function for spot-checking INLA posterior
estimates against brms/Stan.brms_inla_power, powerbrmsINLA_assurance, and
powerbrmsINLA_sample_size objects.plot_assurance_curve() and plot_assurance_with_robustness() for
unconditional assurance visualisation.plot_bf_assurance_curve_smooth(), plot_bf_assurance_curve(),
plot_bf_expected_evidence(), and plot_bf_heatmap() for Bayes factor
visualisation.plot_decision_assurance_curve(), plot_decision_threshold_contour(),
and add_decision_overlay() for decision-rule visualisation.plot_design_prior() for visualising design priors.plot_interaction_surface() for multi-effect grid visualisation.plot_power_contour(), plot_power_heatmap(), and
plot_power_assurance_overlay() for conditional power visualisation.plot_precision_assurance_curve() and plot_precision_fan_chart().brms_inla_power() now supports multi-effect grids (data.frame
effect_grid), brms-to-INLA prior translation with full audit trail,
marginal-likelihood Bayes factors (bf_method = "marglik"), and automatic
INLA thread detection.brms_inla_power_sequential() rewritten with multi-effect support and
prior translation.brms_inla_power_two_stage() now uses the modernised engine internally..to_inla_family(),
.scale_fill_viridis_discrete()).requireNamespace("MASS") guard for negative binomial data
generation..Rbuildignore to exclude .claude/, .DS_Store, .Rcheck/,
and .tar.gz artefacts.brms_inla_power_parallel() for parallel simulations.decide_sample_size() and add_decision_overlay() helpers.error_sd and group_sd now accept distributional specifications (halfnormal, lognormal, uniform) for variance-uncertainty integration; new validate_sd_spec() helper exported.test-validation-classical.R, test-validation-bayesassurance.R) and accompanying vignette benchmarking against power.t.test() and bayesassurance::assurance_nd_na()..github, LICENSE.md, and cran-comments.md from the source tarball via .Rbuildignore.Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.