OEHermite¶

class OESHAPE_API OEHermite


This class performs Hermite expansion for a given molecule or a grid representation of a molecule and returns the coefficients of expansion and creates a grid representation of Hermite shape.

Constructors¶

OEHermite()
OEHermite(const OEHermite &)
OEHermite(const OEHermiteOptions &HermiteOptions)


This class has three constructors. First two are default and copy constructors. The third one is the constructor that takes an option class OEHermiteOptions.

operator=¶

OEHermite &operator=(const OEHermite &)


The assignment operator allows for equating two OEHermite classes which would copy the one on the right into the one on the left.

CreateGrid¶

void CreateGrid(OESystem::OEScalarGrid &, const float scale)


This method creates a grid representation of the obtained Hermite expansion. Depending on the grid spacing parameter (scale) the number of grid points to cover the entire molecule will be calculated. If this number exceeds 300 points per space dimension, the user will be warned that instead the maximum allowed value of ngrid=300 will be used.

GetCoefficients¶

bool GetCoefficients(std::vector<double> &) const


Returns the values of Hermite expansion coefficients in the form of an STL vector. These are precisely the coefficients $$f_{lmn}$$ introduced in Shape from Hermite Representation section above in the following order: $$\,l = 0\dots \text{NPolyMax},\, m = 0\dots \text{NPolyMax}-l, \,n = 0\dots \text{NPolyMax}-l-m$$. One can show that the total number of such possible sets of $$l, m, n$$ equals to $$\,\frac{(\text{NPolyMax}+1)(\text{NPolyMax}+2)(\text{NPolyMax}+3)}{6}$$, which is precisely the length of the returned STL vector.

GetOptions¶

const OEHermiteOptions &GetOptions() const


Returns the option class OEHermiteOptions that the OEHermite class is currently using.

GetSelfOverlap¶

double GetSelfOverlap() const


Returns the self-overlap of the molecule corresponding to Hermite expansion.

Setup¶

bool Setup(const OEShapeQuery &argQuery)
bool Setup(const OEChem::OEMolBase &mol)
bool Setup(const OESystem::OEScalarGrid &grid)


This overloaded method allows user to input into the OEHermite class a molecule as a shape query object, a molecule object, or via a grid representation. Method returns True if the setup was successful and False otherwise.