PairPotential

class PairPotential(element_pair, distances, values)

Input class for setting the repulsive pair potential between two elements in the HuckelCalculator.

Parameters:
  • element_pair (tuple of PeriodicTableElement) – The two elements to set the pair potential for.

  • distances (PhysicalQuantity of type length) – A list of distances for the pair potential. The length of this vector should be len(values).

  • values (PhysicalQuantity of type energy) – The values of the pair potential at the given distances. The length of this vector should be len(distances).

distances()
Returns:

The distances of the pair potential.

Return type:

PhysicalQuantity of type length

elementPair()
Returns:

The element pair of the pair potential.

Return type:

tuple of PeriodicTableElement

uniqueString()

Return a unique string representing the state of the object.

values()
Returns:

The values of the pair potential.

Return type:

PhysicalQuantity of type energy

Usage Examples

Make a repulsive exponential pair potential between two carbon atoms

# Define a cutoff distance
rc = 4.

# Define a list of distances
distances = numpy.linspace(0.0,rc,401)

# Evaluate an exponential function at the distance
# (subtract the value in the endpoint to make it go to 0)
values = 50.*(numpy.exp(-3.*distances)-numpy.exp(-3.*rc))

# Setup the pair potential object
pair_potential = PairPotential(
    element_pair = (Carbon, Carbon),
    distances = distances * Bohr,
    values = values * eV,
    )

Notes

The PairPotential is used to define a pair wise interaction between two elements. It is used to define the repulsive term for HuckelCalculator, DeviceHuckelCalculator, SlaterKosterCalculator and DeviceSlaterKosterCalculator.