Class
NumCosmoMathFitESMCMCWalkerStretch
Description [src]
final class NumCosmoMath.FitESMCMCWalkerStretch : NumCosmoMath.FitESMCMCWalker
{
/* No available fields */
}
Stretch move of Goodman and Weare for NcmFitESMCMC.
Walker $k$ moves along the line to a walker $j$ of the other half of the ensemble,
$X^\star = X_j + z\,(X_k - X_j)$, with $z$ drawn from $g(z) \propto 1/\sqrt{z}$ on
$[1/a, a]$ (NcmFitESMCMCWalkerStretch:scale); the proposal factor is $z^{d - 1}$ in $d$
dimensions. The move is affine invariant. With multi-stretch it applies $d$ stretches
in sequence, each toward a different walker, and the factor is the product of the
$z^{d - 1}$. With box sampling (ncm_fit_esmcmc_walker_stretch_set_box()) a bounded
parameter is stretched in $x = \operatorname{atanh}(2(\theta - l)/(u - l) - 1)$, so the
proposal stays inside $(l, u)$, and the factor includes the Jacobian.
Constructors
ncm_fit_esmcmc_walker_stretch_new
Creates a NcmFitESMCMCWalkerStretch for nwalkers walkers in nparams dimensions.
Instance methods
ncm_fit_esmcmc_walker_stretch_multi
Sets whether each step is $d$ stretches in sequence instead of one.
ncm_fit_esmcmc_walker_stretch_set_box
Stretches the n-th parameter in the transformed coordinate that maps $(lb, ub)$ to the
real line, so its proposals stay inside the box.
ncm_fit_esmcmc_walker_stretch_set_box_mset
Sets box sampling for every free parameter of mset with its bounds.
Methods inherited from NcmFitESMCMCWalker (16)
ncm_fit_esmcmc_walker_clean
Releases what the moves of the walkers ki to kf - 1 needed.
ncm_fit_esmcmc_walker_desc
ncm_fit_esmcmc_walker_end_run
Called by NcmFitESMCMC once when a run ends.
ncm_fit_esmcmc_walker_free
Decreases the reference count of walker atomically.
ncm_fit_esmcmc_walker_get_nparams
ncm_fit_esmcmc_walker_get_size
ncm_fit_esmcmc_walker_is_markovian
Whether the acceptance of the last completed iteration was the exact Metropolis-Hastings
one for every walker. FALSE means some walker was moved by a rule that does not satisfy
detailed balance (an exploration phase), and NcmFitESMCMC then moves the catalog’s
NcmMSetCatalog:markovian-id past that iteration.
ncm_fit_esmcmc_walker_opts
The walker’s tunable settings as a colon separated list of `name=value’ pairs, the companion of ncm_fit_esmcmc_walker_desc(), which names the structure alone. Two runs of the same walker differ here and nowhere else, so a catalog records both.
ncm_fit_esmcmc_walker_prob
Computes the acceptance ratio $q\,L^\star/L$ of moving walker k from $-2\ln L$ =
m2lnL_cur to thetastar with $-2\ln L^\star$ = m2lnL_star.
ncm_fit_esmcmc_walker_prob_norm
Computes $\ln q$, the proposal factor of the acceptance ratio of moving walker k to
thetastar (e.g. $(d - 1)\ln z$ for the stretch move).
ncm_fit_esmcmc_walker_ref
Increases the reference count of walker atomically.
ncm_fit_esmcmc_walker_set_nparams
Sets the number of free parameters; NcmFitESMCMC sets it to the number of free
parameters of its fit.
ncm_fit_esmcmc_walker_set_size
Sets the number of walkers.
ncm_fit_esmcmc_walker_setup
Draws the random numbers of the moves of the walkers ki to kf - 1.
ncm_fit_esmcmc_walker_start_run
Called by NcmFitESMCMC once when a run starts, before the first iteration. initial is
TRUE when the run starts from the initial ensemble, or resumes a catalog whose
NcmMSetCatalog:markovian-id lies beyond its last row, i.e. an interrupted exploration
phase; the walker then resumes the phase with exploration_done iterations already
counted. initial is FALSE when the catalog already holds Markovian rows, and the walker
must not start any non-Markovian phase.
ncm_fit_esmcmc_walker_step
Computes the proposal of walker k in thetastar, from the numbers drawn by ncm_fit_esmcmc_walker_setup().
Properties
Properties inherited from NcmFitESMCMCWalker (2)
NumCosmoMath.FitESMCMCWalker:nparams
NumCosmoMath.FitESMCMCWalker:size
Signals
Signals inherited from GObject (1)
GObject::notify
The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.