Angle1Potential

class Angle1Potential(particleType1, particleType2, particleType3, k, theta0, rho1, rho2, r_cut=None)

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. This is the central particle (the vertex) when calculating the angle.
  • particleType3 (ParticleType or ParticleIdentifier) – Identifier of the second particle type.
  • k (PhysicalQuantity of type energy / angle**2) – Potential parameter.
  • theta0 (PhysicalQuantity of type angle) – Potential parameter.
  • rho1 (PhysicalQuantity of type length) – Potential parameter.
  • rho2 (PhysicalQuantity of type length) – Potential parameter.
  • r_cut (PhysicalQuantity of type length) – The cutoff radius of this potential.
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)

Sets the cutoff radius for the given 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.
setRho1(rho1)

Set the parameter rho1.

Parameters:rho1 (PhysicalQuantity of type length) – Potential parameter.
setRho2(rho2)

Set the parameter rho2.

Parameters:rho2 (PhysicalQuantity of type length) – Potential parameter.
setTheta0(theta0)

Set the parameter theta0.

Parameters:theta0 (PhysicalQuantity of type angle) – Potential parameter.
setk(k)

Set the parameter k.

Parameters:k (PhysicalQuantity of type energy / angle**2) – Potential parameter.

Notes

This potential specifies a three-body potential:

\[E_{ijk}(\theta_{ijk}, r_{ij}, r_{jk}) = \frac{1}{2} k (\theta_{ijk} - \theta_0)^2 \exp[-(r_{ij}/\rho_1 + r_{jk}/\rho_2)] \, ,\]

which is often used in core-shell potentials.