md.bond

Overview

Bond

Constructs the bond potential.

FENE

FENE bond potential.

Harmonic

Harmonic bond potential.

Details

Bond potentials.

class hoomd.md.bond.Bond

Bases: hoomd.md.force.Force

Constructs the bond potential.

Note

Bond is the base class for all bond potentials. Users should not instantiate this class directly.

class hoomd.md.bond.FENE

Bases: hoomd.md.bond.Bond

FENE bond potential.

FENE specifies a FENE potential energy between the two particles in each defined bond.

\[V(r) = - \frac{1}{2} k r_0^2 \ln \left( 1 - \left( \frac{r - \Delta}{r_0} \right)^2 \right) + V_{\mathrm{WCA}}(r)\]

where \(\vec{r}\) is the vector pointing from one particle to the other in the bond, \(\Delta = (d_i + d_j)/2 - 1\), \(d_i\) is the diameter of particle \(i\), and

\begin{eqnarray*} V_{\mathrm{WCA}}(r) = & 4 \varepsilon \left[ \left( \frac{\sigma}{r - \Delta} \right)^{12} - \left( \frac{\sigma}{r - \Delta} \right)^{6} \right] + \varepsilon & r-\Delta < 2^{\frac{1}{6}}\sigma\\ = & 0 & r-\Delta \ge 2^{\frac{1}{6}}\sigma \end{eqnarray*}
params

The parameter of the FENE potential bonds. The dictionary has the following keys:

  • k (float, required) - attractive force strength (in units of energy/distance^2)

  • r0 (float, required) - size parameter (in units distance)

  • epsilon (float, required) - repulsive force strength (in units of energy)

  • sigma (float, required) - repulsive force interaction distance (in units of distance)

Type

TypeParameter[bond type, dict]

Examples:

bond_potential = bond.FENE()
bond_potential.params['molecule'] = dict(k=3.0, r0=2.38, epsilon=1.0, sigma=1.0)
bond_potential.params['backbone'] = dict(k=10.0, r0=1.0, epsilon=0.8, sigma=1.2)
class hoomd.md.bond.Harmonic

Bases: hoomd.md.bond.Bond

Harmonic bond potential.

Harmonic specifies a harmonic potential energy between the two particles in each defined bond.

\[V(r) = \frac{1}{2} k \left( r - r_0 \right)^2\]

where \(\vec{r}\) is the vector pointing from one particle to the other in the bond.

params

The parameter of the harmonic bonds for each particle type. The dictionary has the following keys:

  • k (float, required) - potential constant (in units of energy/distance^2)

  • r0 (float, required) - rest length (in units distance)

Type

TypeParameter[bond type, dict]

Examples:

harmonic = bond.Harmonic()
harmonic.params['polymer'] = dict(k=3.0, r0=2.38)
harmonic.params['backbone'] = dict(k=10.0, r0=1.0)