controlling reversible-jump Markov chain Monte Carlo sampling
make.gbm(phy, dat, SE=NA, type = c("bm", "rbm", "jump-bm", "jump-rbm"), ...)
The items that can be tailored in the resulting control object are as follows:
default direct
; this defines the implementation for computing model likelihood (currently with only the default available)
default FALSE
; if integer given, this constrains the number of local clocks in the diffusive process
default FALSE
; if integer given, this constrains the number of pulses in the jump process
default dcount(0:(nn - 1), FUN = dpois, lambda = log(2))
, where nn
is the number of branches in the tree; this controls the prior density on the number of shifts between local clocks in the tree (and applies only if the type
argument to rjmcmc.bm
is "rbm"
or "jump-rbm"
) and if constrainSHIFT
is FALSE
)
default dcount(0:nn, FUN = dlunif, min = 0, max = nn, dzero = 0.5)
, where nn
is the number of branches in the tree; this controls the prior density on the number of evolutionary pulses across the tree (and applies only if the type
argument to rjmcmc.bm
is "jump-bm"
or "jump-rbm"
and if constrainJUMP
is FALSE
)
default function (x) dexp(x, rate = 1/(10^3), log = TRUE)
; this defines the prior density on rate scalars
default function (x) dexp(x, rate = 1/(10^3), log = TRUE)
; this defines the prior density on measurement error
default function (x) dexp(x, rate = 1/(10^3), log = TRUE)
; this defines the prior density on jump variance
default function (x) dunif(x, min=-10^3, max=10^3, log=TRUE)
; this defines the prior density on root state
default list(min=0, max=Inf)
; this defines the numerical limits on the rate scalars
default list(min=0, max=Inf)
; this defines the numerical limits on the measurement error
default list(min=-Inf, max=Inf)
; this defines the numerical limits on the root state
default 1
; determines the number of jumps permissible along each branch (1 is currently supported)
default c()
; if this argument is not empty, these are branches (specified by numeric node-identifiers) which cannot be chosen for a novel local clock
default c()
; if this argument if not empty, these are branches (specified by numeric node-identifiers) which cannot be chosen for an evolutionary pulse
default 0.5
; this defines the ratio between proposals for the diffusion and jump processes (0.5 is perfectly balanced)
default 0.5
; this defines the ratio between proposals that scale model complexity and those that do not
default 0.65
; this defines the ratio between proposals that modify the model branchwise versus treewide
default 0.25
; this defines the ratio between sliding window and multiplier proposals
default 0.65
; this defines the proportion of proposals used to modify model dimensionality
default 0.3
; this defines the proportion of proposals that do not alter dimensionality
default 0.03
; this defines the proportion of proposals that alter the (unknown) measurement error
default 0.02
; this defines the proportion of proposals that alter the root state
default 1
; this defines the proposal width used for multiplier and sliding-window proposals
default TRUE
; this determines whether to start the MCMC sampler with minimal dimensionality
default "result"
; this defines a 'base' filename for the output
a phylogenetic tree of class 'phylo'
a named vector of continuous trait values, associated with each species in phy
a named vector of standard errors for each trait value; applied to all trait values if given a single value
the class of model to use (see rjmcmc.bm
)
arguments passed internally to control other settings (see Details)
JM Eastman
The argument ...
controls the substitution of default settings for Markov-chain Monte Carlo sampling. Below are the settings that are controllable by the user.
These parameters and their default settings can also be found with an empty call to the function (e.g., make.gbm()
).
measurement error (SE): one of the arguments necessary for running rjmcmc.bm
is SE
, which is a statement about the error associated with the values
given in dat
. Measurement error (whose argument is SE
) can be a named vector of numeric values (including NA
) or a single value (including NA
). If given as
a vector, SE
must have names that correspond to the those found for dat
. If given a single value for
SE
, the sampler will apply that value of measurement error to all tips in the tree. If NA
appears for the measurement error for any species,
SE
becomes an additional parameter of the model: this density is consequently sampled by rjmcmc.bm
. The default for rjmcmc.bm
is to estimate a single SE
(which is applied to all species).
control settings: default settings for each control parameter are given below. Note that for the discrete random variables (for which dlnSHIFT
and dlnJUMP
) apply,
certain criteria must be met if the user prefers to supply a different prior density. The function dcount
is useful for building a custom prior density function
for discrete variables.
rjmcmc.bm