This module contains all the potentials that are included in pele. The list is not very long because we have made it very easy for you to write your own.
All potentials are derived from the base class
BasePotential | Base class for all potentials |
When creating your own potential, only member function which must absolutely be overloaded is getEnergy(). Many routines in pele also use gradient information, so it is highly recommended to also implement getEnergyGradient(). Otherwise the gradients will be calculated numerically and your system will run a lot slower.
these are potentials that exist completely within the pele package
LJ | define the python interface to the c++ LJ implementation |
LJCut([eps, sig, rcut, boxl]) | lennard jones potential with a cutoff that is continuous and smooth |
LJpshift(natoms, ntypeA[, boxl, rcut, ...]) | binary lennard jones potential with smooth cutoff |
ATLJ([eps, sig, Z]) | Lennard Jones + three body Axilrod-Teller term |
XYModel([dim, phi, periodic, phases]) | XY model of 2d spins on a lattice |
HeisenbergModel([dim, field_disorder, fields]) | The classical Heisenberg Model of 3d spins on a lattice. |
HeisenbergModelRA([dim, field_disorder, fields]) | The classical Heisenberg Model of 3d spins on a lattice with random anisotropy. |
MaxNeibsLJ | |
MaxNeibsBLJ |
GMINPotential(GMIN) | Interface to fortran GMIN potential |
to be written