Public Member Functions | Protected Attributes
denseConstMetric Class Reference

#include <denseConstMetric.h>

Inheritance diagram for denseConstMetric:
constMetric baseHamiltonian

List of all members.

Public Member Functions

 denseConstMetric (int dim, MatrixXd &massInv)
double T ()
 Return the kinetic energy.
void evolveQ (const double epsilon)
 Evolve the position through some time epsilon.
void bounceP (const VectorXd &normal)
void sampleP (Random &random)
void setInvMass (MatrixXd &massInv)
 Set the inverse mass matrix and recompute the Cholesky decomposition.

Protected Attributes

MatrixXd mMassInv
 Inverse mass matrix.
LLT< MatrixXd > mMassL
 Cholesky factorization of mass matrix.

Detailed Description

Author:
Michael Betancourt

Abstract base class defining the interface for a Hamiltonian with quadratic kinetic energy defined on a Euclidean manifold with dense metric.


Constructor & Destructor Documentation

denseConstMetric::denseConstMetric ( int  dim,
MatrixXd &  massInv 
) [explicit]

Constructor

Parameters:
dimDimension of the target space
massInvEuclidean metric

Member Function Documentation

void denseConstMetric::bounceP ( const VectorXd &  normal) [virtual]

Evolve the momentum through a bounce off of a constraint surface

Parameters:
normalVector normal to constraint surface

Implements baseHamiltonian.

void denseConstMetric::sampleP ( Random &  random) [virtual]

Sample the momentum from the conditional distribution $ \pi \left( \mathbf{p} | \mathbf{q} \right) \propto \exp \left( - T \left( \mathbf{p}, \mathbf{q} \right) \right) $

Parameters:
randomExternal RandomLib generator

Implements baseHamiltonian.


The documentation for this class was generated from the following files:
 All Classes Functions Variables