Mici
Documentation for Mici.
Mici.AbstractIntegrationTransitionMici.AbstractIntegratorMici.AbstractMetropolisIntegrationTransitionMici.AbstractMiciSamplerMici.AbstractMomentumTransitionMici.AbstractStateMici.AbstractSystemMici.AbstractTractableFlowSystemMici.AbstractTransitionMici.EuclideanSystemMici.HMCMici.IndependentMomentumTransitionMici.MetropolisHMCStateMici.PhasePointMici.StaticMetropolisIntegrationTransitionMici.metropolis_integration_transition!Mici.refresh!Mici.Φ₁!Mici.Φ₂!Mici.ℓ
Mici.AbstractIntegrationTransition — Type
AbstractIntegrationTransition <: AbstractTransitionAbstract supertype for integration transitions in MCMC samplers. Integration transitions update the state according to the Hamiltonian dynamics of the system, typically using a numerical integrator.
Mici.AbstractIntegrator — Type
AbstractIntegratorAbstract supertype for numerical integrators used to simulate Hamiltonian dynamics in MCMC samplers.
Mici.AbstractMetropolisIntegrationTransition — Type
AbstractMetropolisIntegrationTransition{T} <: AbstractIntegrationTransitionAbstract supertype for Metropolis-adjusted integration transitions in MCMC samplers, parameterized by: T – type of the integration time (e.g., Float64)
Mici.AbstractMiciSampler — Type
AbstractMiciSampler{S, I} <: AbstractMCMC.AbstractSamplerAbstract supertype for Mici samplers, parameterized by the system type S and integrator type I.
Mici.AbstractMomentumTransition — Type
AbstractMomentumTransition <: AbstractTransitionAbstract supertype for momentum transitions in MCMC samplers. Momentum transitions update the momentum component of the state, typically by resampling from a distribution or applying a transformation.
Mici.AbstractState — Type
AbstractState{P,S,I}Abstract supertype for states of MCMC samplers, parameterized by: P – type of the phase point (e.g., PhasePoint{T}) S – type of the system (e.g., EuclideanSystem) I – type of the integrator (e.g., LeapfrogIntegrator)
Concrete subtypes of AbstractState should contain at least the following fields: - phase_point::P – the current phase point of the sampler - system::S – the Hamiltonian system being sampled - integrator::I – the integrator used for simulating Hamiltonian dynamics
Mici.AbstractSystem — Type
AbstractSystemAbstract supertype for Hamiltonian systems with energy h(q, p) = h₁(q) + h₂(q, p) for position q and momentum p and where the energy is decomposed into two components, h₁ and h₂.
In a standard Euclidean System, h₁ and h₂ correspond to potential energy and kinetic energy respectively. However, solving the Hamiltonian dynamics in more complex systems may benefit from a more flexible distinction between (position) and (momentum, position) energy components.
Mici.AbstractTractableFlowSystem — Type
AbstractTractableFlowSystem <: AbstractSystemAbstract supertype for systems where the Hamiltonian dynamics can be solved in closed form, allowing for exact flow transitions in MCMC samplers.
Mici.AbstractTransition — Type
AbstractTransitionAbstract supertype for transitions in MCMC samplers. A transition represents a change in state of the Markov chain in either position or momentum.
Mici.EuclideanSystem — Type
EuclideanSystem{M, L} <: AbstractTractableFlowSystemStruct for a Euclidean Hamiltonian system, where the kinetic energy is defined by a metric M
Mici.HMC — Type
HMC{S,I,TI,TM} <: AbstractMiciSampler{S,I}Struct representing a Hamiltonian Monte Carlo sampler, parameterized by:
S- type of the system (e.g.,EuclideanSystem),I- type of the integrator (e.g.,LeapfrogIntegrator),TI- type of the integration transition (e.g.,StaticMetropolisIntegrationTransition),TM- type of the momentum transition (e.g.,IndependentMomentumTransition).
Mici.IndependentMomentumTransition — Type
IndependentMomentumTransition <: AbstractMomentumTransitionStruct representing an independent momentum transition, where the momentum is resampled independently from a distribution defined by the system (e.g., a Gaussian distribution with covariance given by the metric of the system).
Mici.MetropolisHMCState — Type
MetropolisHMCState{P, S, I} <: AbstractState{P,S,I}Concrete state type for a Metropolis-adjusted Hamiltonian Monte Carlo sampler.
Mici.PhasePoint — Type
PhasePointStruct representing a point in the phase space of a Hamiltonian system, consisting of: q – current position p – current momentum logdens – log density at the current position grad – gradient of the log density at the current position valid – indicator for whether the log density and gradient are up-to-date
Mici.StaticMetropolisIntegrationTransition — Type
StaticMetropolisIntegrationTransition{T} <: AbstractMetropolisIntegrationTransition{T}Struct for a static Metropolis-adjusted integration transition, where the integration time is fixed.
Mici.metropolis_integration_transition! — Method
metropolis_integration_transition!(state::MetropolisHMCState, rng::AbstractRNG, integration_time::Real)Perform a Metropolis-adjusted integration transition
Mici.refresh! — Method
Indicate the log density and gradient needs to be updated at the current position.