OEHermiteOptions

class OEHermiteOptions

This is an option class for the OEHermite class. It allows the user to input the level of the Hermite expansion NPolyMax, the parameters \(\lambda_x, \lambda_y, \lambda_z\), and whether or not the parameters need to be optimized inside the OEHermite class.

Constructors

OEHermiteOptions()
OEHermiteOptions(const OEHermiteOptions &)

Default and copy constructors.

operator=

OEHermiteOptions &operator=(const OEHermiteOptions &)

GetLambdaX

double GetLambdaX() const

Returns the value of the \(\lambda_x\) parameter.

GetLambdaY

double GetLambdaY() const

Returns the value of the \(\lambda_y\) parameter.

GetLambdaZ

double GetLambdaZ() const

Returns the value of the \(\lambda_z\) parameter.

GetNPolyMax

unsigned int GetNPolyMax() const

Returns the value of the NPolyMax parameter, which controls the level of Hermite expansion. In particular, the lowest value 0 corresponds to a very inaccurate expansion, approximating the entire molecule by a single Gaussian. In the limit NPolyMax \(\rightarrow \infty\), we obtain exact equivalence of the Hermite expansion to the original representation of the molecule.

GetUseOptimalLambdas

bool GetUseOptimalLambdas() const

When UseOptimalLambdas is True, the parameters \(\lambda_x, \lambda_y, \lambda_z\) of the Hermite expansion will be chosen automatically based on the molecule input and resolution of expansion. Alternatively, when UseOptimalLambdas is False, the current values of the \(\,\lambda_{x,y,z}\,\) parameters will be used instead. Note that the Hermite expansion will converge regardless of the choice of \(\,\lambda_{x,y,z}\,\) as long as NPolyMax is high enough, but in practice, at a given low resolution of Hermite expansion, it is useful to use optimal \(\,\lambda_{x,y,z}\,\) parameters for faster convergence.

SetLambdaX

void SetLambdaX(double)

Sets the value of the \(\lambda_x\) parameter. Default: 0.5.

SetLambdaY

void SetLambdaY(double)

Sets the value of the \(\lambda_y\) parameter. Default: 0.5.

SetLambdaZ

void SetLambdaZ(double)

Sets the value of the \(\lambda_z\) parameter. Default: 0.5.

SetNPolyMax

void SetNPolyMax(unsigned int)

Sets the value of the NPolyMax parameter. Default: 4.

SetUseOptimalLambdas

void SetUseOptimalLambdas(bool)

Sets the value of the UseOptimalLambdas parameter. Default: True.