OEScaledMolFunc

Attention

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

class OEScaledMolFunc : public OEMolFunc2

The OEScaledMolFunc class allows scaling energies, gradients and hessians of a molecule function, with a specified constant.

../../_images/OEScaledMolFunc.png
The following methods are publicly inherited from OEFunc0:
The following methods are publicly inherited from OEFunc1:
The following methods are publicly inherited from OEFunc2:
The following methods are publicly inherited from OEMolFunc:
The OEScaledMolFunc class defines the following public methods:

Constructors

OEScaledMolFunc(argFunc: OEMolFunc1, argFactor: float,
                argOwn: bool = False) -> OEScaledMolFunc
OEScaledMolFunc(argFunc: OEMolFunc2, argFactor: float,
                argOwn: bool = False) -> OEScaledMolFunc

Default and copy constructors.

The molecule function used for function evaluation and to be scaled must be provided as the first argument to the constructor. The second argument specifies the scaling factor. The third argument specifies whether the OEScaledMolFunc object takes ownership of the memory of the molecule function instance. By default that does not happen, so the OEScaledMolFunc destructor does not delete the molecule function instance. If ownership of the molecule function is transferred to the OEScaledMolFunc instance, the molecule function’s delete operator will be called in the OEScaledMolFunc destructor.

Set

Set(pred: OEUnaryBondPred, functype: int) -> bool
Set(pred: OEUnaryAtomPred, functype: int) -> bool
Set(pred: OEBinaryAtomPred, functype: int) -> bool
Set(pred: OEBinaryBondPred, functype: int) -> bool

Predicates are passed directly to the molecule function that is to be scaled.