Path Integral Quantum Monte Carlo
|
A base class to be inherited by actions that are non-local in imaginary time. More...
#include <action.h>
Public Member Functions | |
NonLocalAction (const Path &, LookupTable &, PotentialBase *, PotentialBase *, WaveFunctionBase *, bool _local=false, string _name="Non-local") | |
Setup the path data members for non-local actions. | |
virtual | ~NonLocalAction () |
Empty constructor. | |
double | potentialAction () |
Return the potential action for all time slices and all particles. More... | |
double | potentialAction (const beadLocator &) |
Return the potential action for a single bead indexed with beadIndex. More... | |
double | derivPotentialActionTau (int) |
The derivative of the potential action wrt tau on all links starting on slice. More... | |
double | derivPotentialActionLambda (int) |
The derivative of the potential action wrt lambda on all links starting on slice. More... | |
virtual TinyVector< double, 2 > | potential (int slice) |
Public Member Functions inherited from ActionBase | |
ActionBase (const Path &, LookupTable &, PotentialBase *, PotentialBase *, WaveFunctionBase *, bool _local=true, string _name="Base", double _endFactor=1.0, int _period=1) | |
Setup the path data members and canonical re-weighting factors. | |
virtual | ~ActionBase () |
Empty base constructor. | |
string | getActionName () |
Returns the action name. | |
double | kineticAction () |
The full kinetic Action More... | |
double | kineticAction (const beadLocator &) |
The kinetic Action at a single slice More... | |
double | kineticAction (const beadLocator &, int wlLength) |
The kinetic Action for wlLength slices. More... | |
virtual double | potentialAction (const beadLocator &, const beadLocator &) |
Return the potential action for a path. More... | |
virtual double | barePotentialAction (const beadLocator &) |
virtual double | potentialActionCorrection (const beadLocator &) |
virtual double | potentialActionCorrection (const beadLocator &, const beadLocator &) |
virtual double | secondderivPotentialActionTau (int) |
virtual double | derivPotentialActionTau (int, double) |
virtual double | derivPotentialActionLambda (int, double) |
virtual dVec | gradPotentialAction (int) |
virtual double | rDOTgradUterm1 (int) |
virtual double | rDOTgradUterm2 (int) |
virtual double | deltaDOTgradUterm1 (int) |
virtual double | deltaDOTgradUterm2 (int) |
virtual double | virKinCorr (int) |
virtual double | potential (int, double) |
void | setShift (int _shift) |
The public method that sets the tau scaling factor. | |
int | getShift () |
Get the tau scaling factor. | |
double | rho0 (const dVec &, const dVec &, int) |
The free-particle density matrix. More... | |
double | rho0 (const beadLocator &, const beadLocator &, int) |
The free-particle density matrix for two beadLocators with imaginary time separation M. | |
double | rho0 (const dVec &, const int) |
The free-particle density matrix for a given spatial and temporal separation. More... | |
double | ensembleWeight (const int) |
The ensemble particle number weighting factor. More... | |
Protected Member Functions | |
TinyVector< double, 2 > | U (int) |
Return the potential action for all time slices and all particles. More... | |
Protected Member Functions inherited from ActionBase | |
double | tau () |
The local shifted value of tau. | |
void | updateSepHist (const dVec &) |
Update the separation histogram. More... | |
Additional Inherited Members | |
Data Fields inherited from ActionBase | |
const bool | local |
Is the action local in imaginary time? | |
const int | period |
PotentialBase * | externalPtr |
The external potential. | |
PotentialBase * | interactionPtr |
The interaction potential. | |
Array< int, 1 > | sepHist |
A histogram of separations. | |
Array< int, 1 > | cylSepHist |
A histogram of separations for a cylinder. | |
Protected Attributes inherited from ActionBase | |
string | name |
The name of the action. | |
LookupTable & | lookup |
We need a non-constant reference for updates. | |
const Path & | path |
A reference to the paths. | |
WaveFunctionBase * | waveFunctionPtr |
A pointer to a trial wave function object. | |
double | endFactor |
Mutiplictive factor of the potential action on ends. | |
int | shift |
The scaling factor for tau. | |
bool | canonical |
Are we in the canonical ensemble? | |
int | numBeads0 |
The target number of beads. | |
bool | window |
int | windowWidth |
bool | gaussianEnsemble |
double | gaussianEnsembleSD |
beadLocator | bead2 |
beadLocator | bead3 |
dVec | sep |
dVec | sep2 |
double | dSep |
A base class to be inherited by actions that are non-local in imaginary time.
|
virtual |
The derivative of the potential action wrt lambda on all links starting on slice.
It is essential to have these slice overloaded values as we need to be careful of the factor of 1/2 or i<j in the full potential action.
slice | the imaginary timeslice of the first link |
Reimplemented from ActionBase.
Definition at line 1709 of file action.cpp.
|
virtual |
The derivative of the potential action wrt tau on all links starting on slice.
It is essential to have these slice overloaded values as we need to be careful of the factor of 1/2 or i<j in the full potential action.
slice | the imaginary timeslice of the first link |
Reimplemented from ActionBase.
Definition at line 1664 of file action.cpp.
|
virtual |
Return the potential action for all time slices and all particles.
Computes the total potential energy by summing over all particles and time slices. We must be very careful with the factor of 1/2 or the fact that the sum is over i<j for particles to avoid double counting.
Reimplemented from ActionBase.
Definition at line 1514 of file action.cpp.
|
virtual |
Return the potential action for a single bead indexed with beadIndex.
beadIndex | the bead to compute the advanced link action for. |
Reimplemented from ActionBase.
Definition at line 1528 of file action.cpp.
|
protected |
Return the potential action for all time slices and all particles.
Computes the total potential energy by summing over all particles and time slices.
Definition at line 1619 of file action.cpp.