Atomic

Module to store interatomic potentials that can be used for atomistic systems. Contains the classes to compute the energy of atomic clusters within the Lennard-Jones and Gupta potentials

class topsearch.potentials.atomic.BinaryGupta(species: list)

Description

Evaluate energy of binary metal clusters with the Gupta potential. Here only contains the parameters for Au and Ag.

atom_labels

Denotes the species of atoms, can be ‘Au’ or ‘Ag’

Type:

array

a_repulsive

Repulsive coefficient

Type:

array

zeta

Attractive coefficient

Type:

array

p_range

Range of interaction

Type:

array

q_range

Range of interaction

Type:

array

r_eq

Equilibrium bond lengths

Type:

array

function(position: NDArray[Any, Any]) float

Return the potential energy of the system at position

class topsearch.potentials.atomic.LennardJones(epsilon: float = 1.0, sigma: float = 1.0)

Description

The Lennard-Jones pair potential to evaluate the energy for a set of atoms. Simple but fast representation of interatomic potentials

epsilon

The well depth of the pair potential

Type:

float

sigma

The length scale of the pair potential

Type:

float

function(position: NDArray[Any, Any]) float

Return the potential energy of a set of atoms evaluated using the Lennard Jones potential

function_gradient(position: NDArray[Any, Any]) tuple

Return both the function and gradient at point position

get_atom(position: NDArray[Any, Any], atom_ind: int) NDArray[Any, Any]

Get the Cartesian position of the atom given index atom_ind

gradient(position: NDArray[Any, Any]) NDArray[Any, Any]

Return the gradient vector at configuration position

pair_potential(atom1: NDArray[Any, Any], atom2: NDArray[Any, Any]) tuple

Return the value of the pair potential and terms needed for the gradient

squared_distance(atom1: NDArray[Any, Any], atom2: NDArray[Any, Any]) float

Return the squared distance between two atoms