autoppl  v0.8
A C++ template library for probabilistic programming
ppl::mcmc::MomentumHandler< diag_var > Struct Reference

#include <momentum_handler.hpp>

Public Types

using adapter_policy_t = diag_var
 
using variance_t = Eigen::VectorXd
 

Public Member Functions

 MomentumHandler (size_t n_params)
 
template<class MatType , class GenType >
void sample (Eigen::MatrixBase< MatType > &rho, GenType &gen)
 
template<class MatType >
double kinetic (const Eigen::MatrixBase< MatType > &rho) const
 
template<class MatType >
auto dkinetic_dr (const Eigen::MatrixBase< MatType > &rho) const
 
variance_tget_m_inverse ()
 
const variance_tget_m_inverse () const
 

Detailed Description

Diagonal variance with adaptation.

Member Typedef Documentation

◆ adapter_policy_t

◆ variance_t

using ppl::mcmc::MomentumHandler< diag_var >::variance_t = Eigen::VectorXd

Constructor & Destructor Documentation

◆ MomentumHandler()

ppl::mcmc::MomentumHandler< diag_var >::MomentumHandler ( size_t  n_params)
inline

Member Function Documentation

◆ dkinetic_dr()

template<class MatType >
auto ppl::mcmc::MomentumHandler< diag_var >::dkinetic_dr ( const Eigen::MatrixBase< MatType > &  rho) const
inline

◆ get_m_inverse() [1/2]

variance_t& ppl::mcmc::MomentumHandler< diag_var >::get_m_inverse ( )
inline

◆ get_m_inverse() [2/2]

const variance_t& ppl::mcmc::MomentumHandler< diag_var >::get_m_inverse ( ) const
inline

◆ kinetic()

template<class MatType >
double ppl::mcmc::MomentumHandler< diag_var >::kinetic ( const Eigen::MatrixBase< MatType > &  rho) const
inline

Compute corresponding kinetic energy

◆ sample()

template<class MatType , class GenType >
void ppl::mcmc::MomentumHandler< diag_var >::sample ( Eigen::MatrixBase< MatType > &  rho,
GenType &  gen 
)
inline

Sample from N(0, M) where M inverse ~ sample variance matrix


The documentation for this struct was generated from the following file: