:mod:`atsim.potentials.potentialfunctions` ========================================== .. py:module:: atsim.potentials.potentialfunctions .. autoapi-nested-parse:: Functions for different potential forms. Most of the potentials in this module are implemented as callable _Potential_Function_Bases. The potential energy is evaluated by calling one of these objects. By convention the first argument of each is the atomic separation `r`, with other potential parameters following after. For instance, to evaluate a Buckingham potential at `r` = 2.0 the following could be called for `A`, `rho` and `C` values 1000.0, 0.2 and 32.0 respectively: .. code-block:: python atsim.potentialfunctions.buck(2.0, 1000.0, 0.2, 32.0) The callable objects also have other useful methods. Perhaps most importantly is the `.deriv()` method this returns the first derivative of the given potential (force). Again using the Buckingham potential as an example its derivative can be evaluated for `r` = 2.0 as follows: .. code-block:: python atsim.potentialfunctions.buck.deriv(2.0, 1000.0, 0.2, 32.0) See :ref:`list-of-potential-forms` for descriptions of these potential forms. Module Contents --------------- .. data:: buck .. data:: bornmayer .. data:: coul .. data:: constant .. data:: exponential .. data:: hbnd .. data:: lj .. data:: morse .. data:: polynomial .. data:: sqrt .. data:: tang_toennies .. data:: zbl .. data:: zero .. data:: exp_spline