Path Integral Quantum Monte Carlo
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
PotentialBase Class Reference

The base class from which all specific potentials are derived from. More...

#include <potential.h>

+ Inheritance diagram for PotentialBase:

Public Member Functions

 PotentialBase ()
 Constructor.
 
virtual ~PotentialBase ()
 Destructor.
 
virtual double V (const dVec &)
 The potential.
 
virtual double V (const dVec &, const dVec &)
 The effective potential for the pair product approximation.
 
virtual dVec gradV (const dVec &)
 The gradient of the potential.
 
virtual double grad2V (const dVec &)
 Grad^2 of the potential.
 
virtual double dVdlambda (const dVec &, const dVec &)
 The derivative of the effective potential with respect to lambda and tau.
 
virtual double dVdtau (const dVec &, const dVec &)
 
virtual Array< dVec, 1 > initialConfig (const Container *, MTRand &, const int)
 Default Initial configuration of particles. More...
 
void output (const double)
 A debug method that output's the potential to a supplied separation. More...
 
virtual Array< double, 1 > getExcLen ()
 Array to hold data elements. More...
 

Public Attributes

double tailV
 Tail correction factor.
 

Protected Member Functions

double deltaSeparation (double sep1, double sep2) const
 Return the minimum image difference for 1D separations.
 

Detailed Description

The base class from which all specific potentials are derived from.

This class contains methods which return the actual value of the potential, an effective potential related to the pair product approximation, one which returns the gradient of the potential and a final one which generates a sensible initial particle configuration. We require knowledge of both the interaction as well as external potential to run the simulation.

Definition at line 32 of file potential.h.

Member Function Documentation

◆ getExcLen()

Array< double, 1 > PotentialBase::getExcLen ( )
virtual

Array to hold data elements.

Initialize getExcLen method.

This is only used for Gasparini potential, could probably be better.

Reimplemented in Gasparini_1_Potential.

Definition at line 132 of file potential.cpp.

◆ initialConfig()

Array< dVec, 1 > PotentialBase::initialConfig ( const Container boxPtr,
MTRand &  random,
const int  numParticles 
)
virtual

Default Initial configuration of particles.

Return an initial particle configuration.

The default version creates a list of particle positions in an equally spaced grid.

Reimplemented in GraphenePotential, Gasparini_1_Potential, FixedAzizPotential, LJHourGlassPotential, LJCylinderPotential, and HarmonicPotential.

Definition at line 38 of file potential.cpp.

◆ output()

void PotentialBase::output ( const double  maxSep)

A debug method that output's the potential to a supplied separation.

Ouptut the potential.

For use during comparison and debugging, we output the potential out to a supplied separation.

Parameters
maxSepthe maximum separation

Definition at line 103 of file potential.cpp.


The documentation for this class was generated from the following files: