Chemical Data Processing Library Python API - Version 1.4.0
Public Member Functions | Static Public Attributes | Properties | List of all members
CDPL.Shape.FastGaussianShapeOverlapFunction Class Reference

Shape.GaussianShapeOverlapFunction implementation that uses two approximation techniques to trade some accuracy for a substantial speedup compared to Shape.ExactGaussianShapeOverlapFunction. More...

+ Inheritance diagram for CDPL.Shape.FastGaussianShapeOverlapFunction:

Public Member Functions

None __init__ ()
 Constructs the FastGaussianShapeOverlapFunction instance without associated shape functions.
 
None __init__ (GaussianShapeFunction ref_shape_func, GaussianShapeFunction ovl_shape_func)
 Constructs the FastGaussianShapeOverlapFunction instance with the given reference and aligned shape functions. More...
 
None __init__ (FastGaussianShapeOverlapFunction func)
 Constructs a copy of the FastGaussianShapeOverlapFunction instance func. More...
 
FastGaussianShapeOverlapFunction assign (FastGaussianShapeOverlapFunction func)
 Copy assignment operator. More...
 
None proximityOptimization (bool enable)
 Enables or disables the proximity-check pruning of Gaussian-product pair contributions. More...
 
bool proximityOptimization ()
 Tells whether the proximity-check pruning is enabled. More...
 
None setRadiusScalingFactor (float factor)
 Sets the scaling factor applied to Van der Waals radii during the proximity check. More...
 
float getRadiusScalingFactor ()
 Returns the currently configured radius scaling factor. More...
 
None fastExpFunction (bool enable)
 Enables or disables the use of a fast approximation for the exponential function. More...
 
bool fastExpFunction ()
 Tells whether the fast-exponential approximation is enabled. More...
 
- Public Member Functions inherited from CDPL.Shape.GaussianShapeOverlapFunction
int getObjectID ()
 Returns the numeric identifier (ID) of the wrapped C++ class instance. More...
 
None setShapeFunction (GaussianShapeFunction func, bool is_ref)
 Specifies the reference or aligned shape function used by the overlap evaluation. More...
 
GaussianShapeFunction getShapeFunction (bool ref)
 Returns the reference or aligned shape function. More...
 
None setColorMatchFunction (Pharm.BoolSizeType2Functor func)
 Specifies the function used to decide whether two color features match. More...
 
Pharm.BoolSizeType2Functor getColorMatchFunction ()
 Returns the currently configured color-match function. More...
 
None setColorFilterFunction (BoolSizeTypeFunctor func)
 Specifies the function used to filter color features by type. More...
 
BoolSizeTypeFunctor getColorFilterFunction ()
 Returns the currently configured color-filter function. More...
 
float calcSelfOverlap (bool ref)
 Calculates the shape-only self-overlap of the reference or aligned shape function. More...
 
float calcColorSelfOverlap (bool ref)
 Calculates the color self-overlap of the reference or aligned shape function. More...
 
float calcOverlap ()
 Calculates the shape-only overlap of the reference and aligned shape functions. More...
 
float calcOverlap (Math.Vector3DArray coords)
 Calculates the shape-only overlap with the aligned shape element positions taken from coords. More...
 
float calcColorOverlap ()
 Calculates the color overlap of the reference and aligned shape functions. More...
 
float calcColorOverlap (Math.Vector3DArray coords)
 Calculates the color overlap with the aligned shape element positions taken from coords. More...
 
float calcOverlapGradient (Math.Vector3DArray coords, Math.Vector3DArray grad)
 Calculates the shape overlap with the aligned shape element positions taken from coords and returns the gradient with respect to those positions. More...
 

Static Public Attributes

float DEF_RADIUS_SCALING_FACTOR = 1.4
 Default scaling factor applied to Van der Waals radii for the proximity-check pruning.
 

Properties

 proximityOpt = property(proximityOptimization, proximityOptimization)
 
 radiusScalingFactor = property(getRadiusScalingFactor, setRadiusScalingFactor)
 
 fastExpFunc = property(fastExpFunction, fastExpFunction)
 
- Properties inherited from CDPL.Shape.GaussianShapeOverlapFunction
 objectID = property(getObjectID)
 
 colorMatchFunction = property(getColorMatchFunction, setColorMatchFunction)
 
 colorFilterFunction = property(getColorFilterFunction, setColorFilterFunction)
 

Detailed Description

Shape.GaussianShapeOverlapFunction implementation that uses two approximation techniques to trade some accuracy for a substantial speedup compared to Shape.ExactGaussianShapeOverlapFunction.

Two independent acceleration features can be enabled:

Constructor & Destructor Documentation

◆ __init__() [1/2]

None CDPL.Shape.FastGaussianShapeOverlapFunction.__init__ ( GaussianShapeFunction  ref_shape_func,
GaussianShapeFunction  ovl_shape_func 
)

Constructs the FastGaussianShapeOverlapFunction instance with the given reference and aligned shape functions.

Parameters
ref_shape_funcThe reference shape function.
ovl_shape_funcThe aligned shape function.

◆ __init__() [2/2]

None CDPL.Shape.FastGaussianShapeOverlapFunction.__init__ ( FastGaussianShapeOverlapFunction  func)

Constructs a copy of the FastGaussianShapeOverlapFunction instance func.

Parameters
funcThe FastGaussianShapeOverlapFunction to copy.

Member Function Documentation

◆ assign()

FastGaussianShapeOverlapFunction CDPL.Shape.FastGaussianShapeOverlapFunction.assign ( FastGaussianShapeOverlapFunction  func)

Copy assignment operator.

Parameters
funcThe other FastGaussianShapeOverlapFunction instance.
Returns
self

◆ proximityOptimization() [1/2]

None CDPL.Shape.FastGaussianShapeOverlapFunction.proximityOptimization ( bool  enable)

Enables or disables the proximity-check pruning of Gaussian-product pair contributions.

Parameters
enableTrue to enable the proximity check, and False to disable it.

◆ proximityOptimization() [2/2]

bool CDPL.Shape.FastGaussianShapeOverlapFunction.proximityOptimization ( )

Tells whether the proximity-check pruning is enabled.

Returns
True if the proximity check is enabled, and False otherwise.

◆ setRadiusScalingFactor()

None CDPL.Shape.FastGaussianShapeOverlapFunction.setRadiusScalingFactor ( float  factor)

Sets the scaling factor applied to Van der Waals radii during the proximity check.

Parameters
factorThe new radius scaling factor.

◆ getRadiusScalingFactor()

float CDPL.Shape.FastGaussianShapeOverlapFunction.getRadiusScalingFactor ( )

Returns the currently configured radius scaling factor.

Returns
The radius scaling factor.

◆ fastExpFunction() [1/2]

None CDPL.Shape.FastGaussianShapeOverlapFunction.fastExpFunction ( bool  enable)

Enables or disables the use of a fast approximation for the exponential function.

Parameters
enableTrue to enable the fast-exponential approximation, and False to use the standard exponential.

◆ fastExpFunction() [2/2]

bool CDPL.Shape.FastGaussianShapeOverlapFunction.fastExpFunction ( )

Tells whether the fast-exponential approximation is enabled.

Returns
True if the fast-exponential approximation is enabled, and False otherwise.