This API is currently available in C++ and Python.
class OEMMFFInterVdwNN : public OEMolPotential::OEMolFunc1
The OEMMFFInterVdwNN class is used for calculating intermolecular VdW interactions using near neighbor lists. This type of calculation is particularly useful in cases where a small molecule interacts with a large molecule, and the large molecule is held rigid during a geometry optimization.
OEMMFFInterVdwNN(const OEMMFFInterVdwNN &) OEMMFFInterVdwNN(const OEChem::OEMolBase &, const OEMolPotential::OEFFParams &, double minmax, double radius=6.0, double resolution=1.0)
Default and copy constructors.
Constructs an OEMMFFInterVdwNN instance given a molecule and additional parameters. The first argument is the molecule held rigid during an optimization. Hydrogen atoms positions should be assigned for the molecule prior to construction of an OEMMFFInterVdwNN instance. The second argument is a reference to either OEMMFFParams or OEMMFF94sParams object. The third argument is an array of double precision floating point values which describe the boundaries of the near-neighbor grid. The first three array values are the minimum x, y, and z Cartesian coordinates, respectively. The final three array values are the maximum x, y and z Cartesian coordinates. Subsequent calculations will only include contributions from atoms with coordinates located inside the bounding box. Atoms which fall outside the bounding box do not contribute to the VdW calculation. The minimum and maximum grid values should therefore be chosen carefully to include interactions from all reasonable atom coordinates. The third argument is the inclusion radius. All atoms in the rigid molecule within the inclusion radius from a grid point will be added to the near neighbor list at that grid point. VdW interactions, therefore, are computed between mobile and rigid atoms only if their inter-atomic distance is shorter than the inclusion radius. The final argument specifies the resolution to be used when constructing the VdW grid. Resolution is equivalent to the length of one side of one grid unit (in Angstroms).
OEMMFFInterVdwNN &operator=(const OEMMFFInterVdwNN &)
The assignment operator.
bool Set(const OESystem::OEUnaryPredicate<OEChem::OEAtomBase>&)
This method can be used for interaction-level control of the Van der Waals term. VdW interactions of an atom with the host molecule atoms is only included if the test of the predicate returns true. The Set method must be called before the Setup for it to be effective.