OEHermite

class OESHAPE_API OEHermite

This class performs Hermite expansion for a given molecule or a grid representation of a molecule, then 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. The first two are default and copy constructors. The third one is a constructor that takes an option class OEHermiteOptions.

operator=

OEHermite &operator=(const OEHermite &)

The assignment operator acts in the context of the equation A = B, where A and B are two object instances of the class OEHermite; as such, it copies the contents of object B into object A.

CreateGrid

void CreateGrid(OESystem::OEScalarGrid&, const float spacing)
void CreateGrid(OESystem::OEScalarGrid&, const float spacing, const OEChem::OETrans)

This method creates a grid representation of the obtained Hermite expansion. Depending on the grid spacing parameter, the number of grid points to cover the entire molecule will be calculated. If this number exceeds 500 points per space dimension, the user will be warned that the maximum allowed value of 500 will be used instead. The second overload uses the transform that is applied to transform the generated grid.

GetCoefficients

bool GetCoefficients(std::vector<double> &) const
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_{\ell mn}\) introduced in the Shape from Hermite Representation, in the following order: \(\,N = 0\dots \text{NPolyMax},\, \ell = 0\dots \text{N}, \,m = 0\dots \text{N}-\ell, \,n = \text{N}-\ell-m\).

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.

NumCoefficients

unsigned int NumCoefficients() const

Returns the size of the Hermite expansion representation. This number is given by \(\,(\text{NPolyMax}+1)(\text{NPolyMax}+2)(\text{NPolyMax}+3)/6\), which is the number of possible sets \((\ell, m, n)\) such that \(\ell + m + n \leq NPolyMax\).

Setup

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

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