OEComplexFF

Attention

This API is currently available in C++ and Python.

class OEComplexFF : public OEMolPotential::OEMolFunc2

The OEComplexFF is a generic class for force-fields of complexes. This class defines an interface for combining multiple OEForceField to easily construct a force field for a host/guest or protein/ligand complex. The OEComplexFF extends the OEMolFunc2 class to allow this being a collection of multiple force fields.

The following methods are publicly inherited from OEFunc0:
The following methods are publicly inherited from OEFunc1:
The following methods are publicly inherited from OEMolFunc:
The OEComplexFF class defines the following public methods:
The following classes derive from this class:

Constructors

OEComplexFF(ligandFF: OEForceField, hostFF: OEForceField,
            interFF: OEInterMolFunc2) -> OEComplexFF
OEComplexFF(arg2: OEComplexFF) -> OEComplexFF

Default and copy constructors.

Construction of a OEComplexFF requires a OEForceField for the guest or the ligand molecule, a OEForceField for the host or the protein molecule, and an OEInterMolFunc2 for the inter-molecular interactions.

AdaptHostCoords

AdaptHostCoords(coords: OEDoubleArray, var: OEDoubleArray) -> bool

Takes a set of variables as the second argument and provides the corresponding host molecule coordinates into the first argument. This method is used to obtain optimized coordinates for the flexible host or protein molecule.

GetLigandFF

GetLigandFF() -> OEForceField

Returns reference to the underlying forcefield used for small molecules.

GetVar

GetVar(var: OEDoubleArray, x: OEDoubleArray) -> None

Takes reference coordinates of the molecule, and transforms them into the variable type or coordinate system (var) that will be used during an optimization. The transfored variables here provides the combined host/guest coordinates, whenoptimization involves flexible host or protein molecule.

Set

bool Set(const OESystem::OEUnaryPredicate<OEChem::OEBondBase> &pred,
         unsigned int functype)
bool Set(const OESystem::OEUnaryPredicate<OEChem::OEAtomBase> &pred,
         unsigned int functype)
bool Set(const OESystem::OEBinaryPredicate<OEChem::OEAtomBase,OEChem::OEAtomBase> &pred,
         unsigned int functype)
bool Set(const OESystem::OEBinaryPredicate<OEChem::OEBondBase,OEChem::OEBondBase> &pred,
         unsigned int functype)

These methods assigns interaction-control predicates, and only applies to the guest or the ligand molecule. The first argument is the predicate type to be passed to the interaction component. The second argument is a value or a set of binary OR’ed values taken from the OEFuncType namespace which specifies the intended target for the predicate assignment.

The Set method passes on the interaction-control predicates to the appropriate force field components contained. Method returns false if predicate was not set to any of the components contained by the force field.

Set must be called before the Setup for it to be effective.

SetHostFlex

SetHostFlex(pred: OEUnaryAtomPred) -> bool

Set predicate to define the flexible portion of the host or protein molecule. If no predicate is set to define flexibility, the host or protein is considered rigid.

SetHostFlex must be called before the Setup for it to be effective.

SetNonBondCutoff

SetNonBondCutoff(arg2: float) -> bool

Sets non-bonded interactions cutoff. Setting a value of 0.0 or less assumes that all interactions should be included without any cutoff.

SetupHost

SetupHost(host: Union[OEGraphMol,OEMol,OEQMol]) -> bool

This method defines the interface for initializing the host in the OEComplexFF.

SetupHost must be called before calling Setup .