azplugins.bond¶
Overview
Double-well bond potential. |
|
Quartic bond potential. |
Details
Bond potentials.
- class hoomd.azplugins.bond.DoubleWell¶
Bases:
BondDouble-well bond potential.
DoubleWellspecifies a double well potential between the two particles in the simulation state with:\[\begin{split}U(r) &= U_1 \left[1 - \left(\frac{r_1-r}{r_1-r_0}\right)^2 \right]^2 \\ &+ U_{\rm{tilt}}\left(1 - \frac{r_1-r}{r_1-r_0} -\left[1 - \left(\frac{r_1-r}{r_1-r_0}\right)^2 \right]^2 \right)\end{split}\]- params¶
The parameter of the double-well bonds for each particle type. The dictionary has the following keys:
r_0(float, required) - Location of the first potential minimum \(r_0\) when \(U_{\rm tilt} = 0\) \([\mathrm{length}]\)r_1(float, required) - Location of the potential local maximum \(r_1\) when \(U_{\rm tilt} = 0\) \([\mathrm{length}]\)U_1(float, required) - Potential energy \(U_1 = U(r_1)\) \([\mathrm{energy}]\)U_tilt(float, required) - Tunes the energy offset \(U_{\rm tilt}\) between the two potential minima values, i.e. it tilts the potential \([\mathrm{energy}]\)
- Type:
TypeParameter[
bond type, dict]
Examples:
dw = azplugins.bond.DoubleWell() dw.params['A-A'] = dict(r_0=0.5, r_1=2.5, U_1=5.0, U_tilt=0.0) dw.params['A-A'] = dict(r_0=1.0, r_1=2.0, U_1=1.0, U_tilt=0.5)
- class hoomd.azplugins.bond.Quartic¶
Bases:
BondQuartic bond potential.
Quarticspecifies a quartic potential between the two particles in the simulation state with:\[\begin{split}U(r) &= k (r - \Delta - r_0 - b_1)(r - \Delta - r_0 - b_2) (r - \Delta -r_0)^2 & \\ &+ U_0 + U_{\rm WCA}(r), & r < r_0 + \Delta \\ &= U_0 + U_{\rm WCA}(r), & r \ge r_0 + \Delta\end{split}\]where \(r\) is the distance from one particle to the other in the bond. The potential \(U_{\rm WCA}(r)\) is given by:
\[\begin{split}U_{\rm WCA}(r) &= 4 \varepsilon \left[ \left( \frac{\sigma}{r-\Delta} \right)^{12} - \left( \frac{\sigma}{r-\Delta} \right)^{6} \right] + \varepsilon, & r < 2^{1/6}\sigma + \Delta \\ &= 0, & r \ge 2^{1/6}\sigma + \Delta\end{split}\]- params¶
The parameters of the quartic bonds for each particle type. The dictionary has the following keys:
k(float, required) - quartic attractive force strength \([\mathrm{energy}/\mathrm{length}^4]\).r_0(float, required) - Location of the quartic potential cutoff \(r_0\). Intended to be larger than the WCA cutoff, \(2^{1/6}\sigma\). When true, \(U(r_0) = U_{0} + U_{\rm WCA}(r_0)\) \([\mathrm{length}]\).b_1(float, required) - First quartic potential fitting parameter \(b_1\) \([\mathrm{length}]\).b_2(float, required) - Second quartic potential fitting parameter \(b_2\) \([\mathrm{length}]\).U_0(float, required) - Quartic potential energy barrier height \(U_0\) at \(r_0\) when \(r_0 > 2^{1/6}\sigma\) \([\mathrm{energy}]\).epsilon(float, required) - Repulsive WCA interaction energy \(\varepsilon\) \([\mathrm{energy}]\).sigma(float, required) - Repulsive WCA interaction size \(\sigma\) \([\mathrm{length}]\).delta(float, optional) - Shift \(\Delta\), defaults to zero \([\mathrm{length}]\).
- Type:
TypeParameter[
bond type, dict]
Examples:
Tsige and Stevens bond potential.
quartic = hoomd.azplugins.bond.Quartic() quartic.params['A-A'] = dict(k=1434.3, r_0=1.5, b_1=-0.7589, b_2=0.0, U_0=67.2234, sigma=1, epsilon=1, delta=0.0)