![]() |
#include <dynamMetric.h>
Public Member Functions | |
| dynamMetric (int dim) | |
| virtual double | tau ()=0 |
| Return the quadratic form of the kinetic energy. | |
| double | phi () |
| Return the pseudo-potential. | |
| void | setMaxNumFixedPoint (int n) |
| Set the maximum number of fixed-point iterations for implicit updates. | |
| void | setFixedPointThreshold (double t) |
| Set the difference threshold for terminating fixed-point iterations. | |
| void | evolveQ (const double epsilon) |
| Evolve the position through some time epsilon. | |
| void | beginEvolveP (const double epsilon) |
| Evolve the momenta through an initial half step of time epsilon. | |
| void | finishEvolveP (const double epsilon) |
| Evolve the momenta through a final half step of time epsilon. | |
| virtual void | prepareEvolution () |
Protected Member Functions | |
| virtual void | fComputeMetric ()=0 |
| Compute the metric at the current position. | |
| virtual void | fUpdateP () |
| Update any momenta-dependent auxiliary terms. | |
| virtual void | fPrepareSpatialGradients () |
| virtual void | fHatT (const double epsilon) |
| Evolve
. | |
| virtual void | fHatTau (const double epsilon, const int numFixedPoint) |
| void | fHatPhi (const double epsilon) |
| virtual VectorXd & | dTaudp ()=0 |
| Gradient of the quadrtic form with respect to the momenta. | |
| virtual VectorXd & | dTaudq ()=0 |
| Gradient of the quadratic form with respect to the position. | |
| virtual VectorXd & | dPhidq ()=0 |
| Gradient of the psuedo-potential with respect to the momenta. | |
Protected Attributes | |
| int | mMaxNumFixedPoint |
| Maximum number of fixed-point iterations for implicit updates. | |
| double | mFixedPointThreshold |
| Difference threshold for terminating fixed-point iterations. | |
| VectorXd | mAuxVector |
| Auxiliary vector for storing various gradients. | |
| VectorXd | mInit |
| Auxiliary vector for fixed-point iterations. | |
| VectorXd | mDelta |
| Auxiliary vector for fixed-point iteration termination criteria. | |
| double | mLogDetMetric |
| Log determinant of the metric. | |
Abstract base class defining the interface for a Hamiltonian defined on a Riemannian manifold,
, where
and
The Poisson operators are defined as
where
and
| dynamMetric::dynamMetric | ( | int | dim | ) | [explicit] |
Constructor
| dim | Dimension of the target space |
| void dynamMetric::fHatPhi | ( | const double | epsilon | ) | [protected] |
Evolve
| void dynamMetric::fHatTau | ( | const double | epsilon, |
| const int | numFixedPoint | ||
| ) | [protected, virtual] |
Evolve
| virtual void dynamMetric::fPrepareSpatialGradients | ( | ) | [inline, protected, virtual] |
Update any position-dependent auxiliary terms in preparation for spatial gradients
Reimplemented in diagOuterSoftAbsMetric, diagSoftAbsMetric, outerSoftAbsMetric, and softAbsMetric.
| virtual void dynamMetric::prepareEvolution | ( | ) | [inline, virtual] |
Perform any necessary calculations before simulation Hamiltonian dynamics
Reimplemented from baseHamiltonian.
Reimplemented in denseFisherMetric, and outerSoftAbsMetric.
1.7.4