# OBForceFieldGhemical

## OBForceFieldGhemical class

This class is an implementation of the molecular mechanics force field used in the Ghemical program. It is an all-atom method similar to the Tripos-5.2 force field.

### Bond Stretching

$E_{bond}=k_{b}(r_{ab}-r_{ab}^0)^2$

$k_b$: bond stretching force constant (ghemical.prm)

$r_{ab}^0$: ideal bond length (ghemical.prm)

$r_{ab}$: bond length between atoms a and b

### Angle Bending

$E_{angle}=k_a(\theta_{abc}-\theta_{abc}^0)^2$

$k_a$: angle bending force constant (ghemical.prm)

$\theta_{abc}^0$: ideal angle (ghemical.prm)

$\theta_{abc}$: angle

### Torsional

$E_{torsion}=\frac{1}{2}V_t(1 + s_t cos(n_t \omega_{abcd}))$

$V_t$: rotational barrier (ghemical.prm)

$s_t$: +1 if staggered minimum, -1 if eclipsed minimum (ghemical.prm)

$n_t$: multiplicity (ghemical.prm)

$\omega_{abcd}$: torsion angle

### Van der Waals

$E_{vdw}=k_{ab}\left(\frac{1}{\sigma_{ab}^{12}} - \frac{2}{\sigma_{ab}^6}\right)$

$k_{ab} = \sqrt{k_a k_b}$: force constant (ghemical.prm)

$\sigma_{ab} = \frac{r_{ab}}{R_a + R_b}$

$R_a$: vdw radius of atom a (ghemical.prm)

$r_{ab}$: separation (calulated in the same way as bondlengths)