Path Integral Quantum Monte Carlo
Public Member Functions
FixedPositionLJPotential Class Reference

Returns Lennard-Jones potential between adatoms and fixed postions in FILENAME. More...

#include <potential.h>

+ Inheritance diagram for FixedPositionLJPotential:
+ Collaboration diagram for FixedPositionLJPotential:

Public Member Functions

 FixedPositionLJPotential (const double, const double, const Container *)
 Constructor.
 
 ~FixedPositionLJPotential ()
 Destructor.
 
double V (const dVec &r)
 Return the value of the van der Waals' interaction between a graphene sheet and a helium adatom at a position, r, above the sheet. 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 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...
 

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

Returns Lennard-Jones potential between adatoms and fixed postions in FILENAME.

Author: Nathan Nichols Returns the potential energy resulting from interaction between adatom and fixed positions given in FILENAME.

Definition at line 961 of file potential.h.

Member Function Documentation

◆ V()

double FixedPositionLJPotential::V ( const dVec r)
virtual

Return the value of the van der Waals' interaction between a graphene sheet and a helium adatom at a position, r, above the sheet.

Parameters
rthe position of a helium particle
Returns
the van der Waals' potential for graphene-helium

Reimplemented from PotentialBase.

Definition at line 742 of file potential.cpp.

742  {
743 
744  /* Notes: for now I hard-code the potential at 1.5 \AA and a LJ-cutoff of
745  * 20 \AA */
746 
747  if (r[NDIM-1] < (-0.5*Lz + 1.5) )
748  return 87292.0;
749 
750  else if (r[NDIM-1] > 0.0)
751  return 0.0;
752 
753  double v = 0.0;
754  double sor = 0.0;
755  double x = 0.0;
756  dVec sep;
757  for (int i = 0; i < numFixedParticles; i++) {
758  sep[0] = fixedParticles(i)[0] - r[0];
759  sep[1] = fixedParticles(i)[1] - r[1];
760  boxPtr->putInBC(sep);
761  sep[2] = fixedParticles(i)[2] - r[2];
762  x = sqrt(dot(sep,sep));
763  if (x < 20.0) {
764  sor = sigma/x;
765  v += pow(sor,12)-pow(sor,6);
766  }
767  }
768  return 4.0*epsilon*v;
769 }
void putInBC(dVec &r) const
Place a vector in boundary conditions.
Definition: container.h:50
#define NDIM
Number of spatial dimnsions.
Definition: common.h:71
TinyVector< double, NDIM > dVec
A NDIM-vector of type double.
Definition: common.h:111
+ Here is the call graph for this function:

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