TersoffBrennerPairPotential2

class TersoffBrennerPairPotential2(particleType1, particleType2, A, l, Q, B1, B2, B3, mu1, mu2, mu3, Re, R1, R2)

Constructor of the potential.

Parameters:
  • particleType1 (ParticleType or ParticleIdentifier) – Identifier of the first particle type.
  • particleType2 (ParticleType or ParticleIdentifier) – Identifier of the second particle type.
  • A (PhysicalQuantity of type energy) – Potential parameter.
  • l (PhysicalQuantity of type length**-1) – Potential parameter (lambda).
  • Q (PhysicalQuantity of type length) – Potential parameter.
  • B1 (PhysicalQuantity of type energy) – Potential parameter.
  • B2 (PhysicalQuantity of type energy) – Potential parameter.
  • B3 (PhysicalQuantity of type energy) – Potential parameter.
  • mu1 (PhysicalQuantity of type length**-1) – Potential parameter.
  • mu2 (PhysicalQuantity of type length**-1) – Potential parameter.
  • mu3 (PhysicalQuantity of type length**-1) – Potential parameter.
  • Re (PhysicalQuantity of type length) – Potential parameter.
  • R1 (PhysicalQuantity of type length) – Potential parameter.
  • R2 (PhysicalQuantity of type length) – Potential parameter.
getAllParameterNames()

Return the names of all used parameters as a list.

getAllParameters()

Return all parameters of this potential and their current values as a <parameterName / parameterValue> dictionary.

static getDefaults()

Get the default parameters of this potential and return them in form of a dictionary of <parameter name, default value> key-value pairs.

getParameter(parameterName)

Get the current value of the parameter parameterName.

setCutoff(r_cut)

Set the cutoff radius for this potential.

Parameters:r_cut (PhysicalQuantity of type length) – The cutoff radius of this potential.
setParameter(parameterName, value)

Set the parameter parameterName to the given value.

Parameters:
  • parameterName (str) – The name of the parameter that will be modified.
  • value – The new value that will be assigned to the parameter parameterName.

Usage Examples

Define Tersoff-Brenner pair potentials for carbon.

potentialSet = TremoloXPotentialSet(name = 'Brenner_CH_2002')
potentialSet.addParticleType(ParticleType(
	symbol = 'C',
	mass = 12.0107*atomic_mass_unit,
	charge = None,
	sigma = None,
	sigma14 = None,
	epsilon = None,
	epsilon14 = None,
	atomicNumber = 6,
	tags = [],
))

_potential = TersoffBrennerPairPotential2(
	particleType1 = ParticleIdentifier('C', []),
	particleType2 = ParticleIdentifier('C', []),
	A = 10953.5441622*eV,
	Q = 0.313460296083*Angstrom,
	l = 4.74653906066*1/Angstrom,
	B1 = 12388.791978*eV,
	B2 = 17.567406465*eV,
	B3 = 30.7149320807*eV,
	mu1 = 4.7204523127*1/Angstrom,
	mu2 = 1.4332132499*1/Angstrom,
	mu3 = 1.3826912506*1/Angstrom,
	Re = 0.0*Angstrom,
	R1 = 1.7*Angstrom,
	R2 = 2.0*Angstrom,
)

tersoffbrenner_carbon.py

Notes

The pair potential that is used in the second generation REBO [BSH+02] and the AIREBO [STH00] potential. When added to a potential set, this class activates the repulsive and attractive terms between two types of particles. Interactions are added in a symmetric fashion, which means that adding a TersoffBrennerPairPotential2 object with particle types A and B to a potential set will activate interactions between particles of type A and B but also between B and A.

[BSH+02]D. W. Brenner, O. Shenderova, J. Harrison, S. J. Stuart, B. Ni, and S. B Sinnott. A second-generation reactive empirical bond order (REBO) potential energy expression for hydrocarbons. J. Phys.: Condensed Matter, 14(4):783–802, 2002. arXiv:S0953-8984(02)31186-X, doi:10.1088/0953-8984/14/4/312.
[STH00]Steven J. Stuart, Alan B. Tutein, and Judith A. Harrison. A reactive potential for hydrocarbons with intermolecular interactions. J. Chem. Phys., 112(14):6472–6486, 2000. URL: https://doi.org/10.1063/1.481208.