Add a utility function that energy-minimizes a mol's 0'th conformer, while otherwise remaining as close as possible to the input conformer.
For example, if mol has a pair of atoms placed on top of each other:
(resulting in |force(x)| of +inf)
resolve_intramol_clashes(mol, ff) will produce:
This is implemented by introducing a softened potential function U(x, lam), with lam increasing the distances used in NonbondedPairListPrecomputed. At lam=1 all intramolecular pairs ij have their effective distance d_ij increased to >= 0.75 * sig_ij, and at lam=0 we recover the original U(x).
A restrained minimization is performed at lam=1, then another restrained minimization is performed at lam=0.
Add a utility function that energy-minimizes a
mol
's 0'th conformer, while otherwise remaining as close as possible to the input conformer.For example, if
mol
has a pair of atoms placed on top of each other:(resulting in |force(x)| of +inf)
resolve_intramol_clashes(mol, ff)
will produce:This is implemented by introducing a softened potential function
U(x, lam)
, withlam
increasing the distances used inNonbondedPairListPrecomputed
. Atlam=1
all intramolecular pairsij
have their effective distanced_ij
increased to>= 0.75 * sig_ij
, and atlam=0
we recover the originalU(x)
.A restrained minimization is performed at
lam=1
, then another restrained minimization is performed atlam=0
.