PRELIMINARY-IMAGE This is a preliminary API until 2018.Feb and may be improved based on user feedback. It is currently available in C++ and Python.

class 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.


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 given an option class OEHermiteOptions.


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.


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.


const std::vector<double> &GetCoefficients() 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.


const OEHermiteOptions &GetOptions() const

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


double GetSelfOverlap() const

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


bool Setup(const OEChem::OEMCMolBase &mol)
bool Setup(const OESystem::OEScalarGrid &grid)

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