Path Integral Quantum Monte Carlo
Public Member Functions
LorentzianPotential Class Reference

Computes the potential energy for delta function interaction potential, approximated here as the limit of a Cauchy distribution. More...

#include <potential.h>

+ Inheritance diagram for LorentzianPotential:
+ Collaboration diagram for LorentzianPotential:

Public Member Functions

 LorentzianPotential (double, double)
 Constructor. More...
 
 ~LorentzianPotential ()
 Destructor.
 
double V (const dVec &r)
 Return the delta function potential with strength 2c approximated as the limit of a Lorentzian distribution. More...
 
dVec gradV (const dVec &r)
 Return the gradient of the delta function potential with strength 2c approximated as the limit of a Lorentzian distribution. More...
 
- Public Member Functions inherited from PotentialBase
 PotentialBase ()
 Constructor.
 
virtual ~PotentialBase ()
 Destructor.
 
virtual double V (const dVec &, const dVec &)
 The effective potential for the pair product approximation.
 
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...
 

Additional Inherited Members

- Data Fields inherited from PotentialBase
double tailV
 Tail correction factor.
 
- Protected Member Functions inherited from PotentialBase
double deltaSeparation (double sep1, double sep2) const
 Return the minimum image difference for 1D separations.
 

Detailed Description

Computes the potential energy for delta function interaction potential, approximated here as the limit of a Cauchy distribution.

Definition at line 275 of file potential.h.

Constructor & Destructor Documentation

◆ LorentzianPotential()

LorentzianPotential::LorentzianPotential ( double  _a,
double  _c 
)

Constructor.

Setup the delta function strength and normalization constant.

Parameters
_aThe width^2 of the Lorentzian
_cThe integrated strength of the Lorentzian

Definition at line 413 of file potential.cpp.

413  : PotentialBase()
414 {
415  /* Define the parameters of the Lorentzian delta function potential. */
416  a = _a;
417  c = _c;
418  norm = 2.0 * c * a / M_PI;
419 }
PotentialBase()
Constructor.
Definition: potential.cpp:25

Member Function Documentation

◆ gradV()

dVec LorentzianPotential::gradV ( const dVec r)
inlinevirtual

Return the gradient of the delta function potential with strength 2c approximated as the limit of a Lorentzian distribution.

Tested and working in Mathematica.

Reimplemented from PotentialBase.

Definition at line 294 of file potential.h.

294  {
295  double b = a*a + dot(r,r);
296  return ((-(2.0*norm*a)/(b*b))*r);
297  }

◆ V()

double LorentzianPotential::V ( const dVec r)
inlinevirtual

Return the delta function potential with strength 2c approximated as the limit of a Lorentzian distribution.

Tested and working in Mathematica.

Reimplemented from PotentialBase.

Definition at line 285 of file potential.h.

285  {
286  return (norm / (a*a + dot(r,r)));
287  }

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