MfU.Control: Constructing Control List for MfU.Sample

View source: R/MfUSampler.R

MfU.ControlR Documentation

Constructing Control List for MfU.Sample

Description

Returns a list of all control parameters needed for univariate samplers. Parameter names (after removing the prefixes) are identical to those used in original packages / source code. To be used with multivariate distributions, all control parameters must have the same length as the dimensionality of state space, either as vectors or lists.

Usage

MfU.Control(n, slice.w=1, slice.m=Inf, slice.lower=-Inf, slice.upper=+Inf
  , ars.x=c(-4,1,4), ars.ns=100, ars.m=3, ars.emax=64, ars.lb=FALSE, ars.xlb=0
  , ars.ub=FALSE, ars.xub=0, arms.indFunc = function(x) TRUE
  , unimet.sigma = 1.0)

Arguments

n

Dimensionality of state space, corresponding to length(x) in MfU.Sample.

slice.w

Size of the steps for creating slice sampler interval.

slice.m

Limit on stepout steps.

slice.lower

Lower bound on support of the distribution.

slice.upper

Upper bound on support of the distribution.

ars.x

A vector of starting points for each coordinate, over which log-density is defined.

ars.ns

Maximum number of points defining the hulls.

ars.m

Number of starting points.

ars.emax

Large value for which it is possible to compute an exponential.

ars.lb

Boolean indicating if there is a lower bound to the domain.

ars.xlb

Value of the lower bound.

ars.ub

Boolean indicating if there is an upper bound to the domain.

ars.xub

Value of the upper bound.

arms.indFunc

Indicator function of the convex support of the target density.

unimet.sigma

Standard deviation of Gaussian proposal.

Details

All arguments (aside from n) supplied to MfU.Control can be vectors (or in the case of ars.x a list) of length n, in which case they are kept unmodified. Alternatively, a single parameter can be passed into MfU.Control, which is then expanded by the function into a vector/list of length n by simple replication. Each element of the resulting vector/list is used for one of the n visited coordinates during the univariate sampling cycles. Naming and description of arguments for each univariare sampler is kept in maximal consistency with original source codes / libraries.

Value

A list with 4 elements, slice, ars, arms, and unimet, each containing elements of the same name as their corresponding arguments in the function call.

Author(s)

Alireza S. Mahani, Mansour T.A. Sharabiani

References

Gilks WR and Wild P (1992). Adaptive Rejection Sampling. Applied Statistics, 41, 337-348.

Gilks WR, Best NG, and Tan KKC (1995). Adaptive rejection Metropolis sampling within Gibbs sampling. Applied Statistics, 44, 455-472.

Mahani A.S and Sharabiani M.T.A. (2017). Multivariate-From-Univariate MCMC Sampler: The R Package MfUSampler. Journal of Statistical Software, Code Snippets, 78(1), 1-22. doi:10.18637/jss.v078.c01

Neal R.M. (2003). Slice Sampling. Annals of Statistics, 31, 705-767.

Examples


# default control a for 10-dimensional space
mycontrol <- MfU.Control(10)
# setting a lower bound of 0 for last coordinate
mycontrol <- MfU.Control(10, slice.lower=c(rep(-Inf,9),0.0))


MfUSampler documentation built on Dec. 8, 2022, 9:13 a.m.