% Generated by roxygen2: do not edit by hand
% Please edit documentation in R/wrappers_doc.R
\name{rtmb_wrappers}
\alias{rtmb_wrappers}
\title{Common Features and Arguments of RTMB Wrapper Functions}
\description{
The RTMB wrapper functions (`rtmb_lm`, `rtmb_glm`, `rtmb_glmer`, `rtmb_fa`, etc.)
share a unified interface designed to make Bayesian and Frequentist inference
accessible through familiar R formulas and standard model specifications.
}
\details{
All wrapper functions in this package are built upon the same core engine.
This ensures that regardless of the model type, the workflow for estimation,
summary, and expansion remains consistent.

\strong{1. Unified Inference Methods:}
Every model object returned by a wrapper function provides the following methods:
\itemize{
  \item \code{$classic()}: Performs standard frequentist estimation (MLE/REML) using `prior_flat()`. Supports robust standard errors and Satterthwaite/Between-Within degrees of freedom approximations.
  \item \code{$optimize()}: Performs Maximum A Posteriori (MAP) estimation (Empirical Bayes).
  \item \code{$sample()}: Performs MCMC sampling (NUTS via tmbstan) for full Bayesian inference.
  \item \code{$variational()}: Performs Variational Inference (ADVI) for fast posterior approximation.
}

\strong{2. Prior API and Regularization:}
You can specify the prior distribution using the `prior` argument:
\itemize{
  \item \code{prior_flat()}: No additional prior (default). Required for \code{classic()} inference.
  \item \code{prior_normal()}: Manual normal/exponential priors for parameters.
  \item \code{prior_weak()}: Weakly informative priors based on \code{y_range}.
  \item \code{prior_rhs()}: Regularized Horseshoe prior for continuous shrinkage.
  \item \code{prior_ssp()}: Spike-and-Slab prior for sparse variable selection.
}
\emph{Note: When using `prior_weak()`, `prior_rhs()`, or `prior_ssp()`, you must specify \code{y_range = c(min, max)}
to let the model set appropriate global scales for the priors.}

\strong{3. Model Comparison and Bayes Factors:}
Model comparison is performed exclusively via Bridge Sampling. To compare a full model 
against a nested null model, use the \code{$bayes_factor(fixed = list(...))} method on an 
MCMC fit object. For example, \code{fit$bayes_factor(fixed = list(b = 0))} tests the 
hypothesis that the fixed effect \code{b} is exactly zero.

\strong{4. Standard Errors and Degrees of Freedom:}
The \code{$classic()} and \code{$optimize()} methods provide advanced summary options:
\itemize{
  \item \code{se_method}: Calculate `"robust"` (Huber-White) or `"cluster-robust"` standard errors by providing a cluster variable.
  \item \code{df_method}: Use `"satterthwaite"` for mixed models or `"bw"` (Between-Within) for multilevel correlation models to obtain accurate p-values and confidence intervals.
}

\strong{5. Fixed parameters:}
Use \code{fixed = list(...)} during model construction to fix model parameters to specified values.
For example, \code{fixed = list(delta = 0)} fixes the parameter \code{delta} to zero.
This same syntax is used in \code{$bayes_factor()} to define the restricted model.
}
\concept{wrappers}
