![]() |
Chemical Data Processing Library C++ API - Version 1.4.0
|
Shape::GaussianShapeOverlapFunction implementation that evaluates the overlap analytically using the full Gaussian-product expansion (no approximations). More...
#include <ExactGaussianShapeOverlapFunction.hpp>
Inheritance diagram for CDPL::Shape::ExactGaussianShapeOverlapFunction:Public Types | |
| typedef std::shared_ptr< ExactGaussianShapeOverlapFunction > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated ExactGaussianShapeOverlapFunction instances. More... | |
Public Types inherited from CDPL::Shape::GaussianShapeOverlapFunction | |
| typedef std::shared_ptr< GaussianShapeOverlapFunction > | SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated GaussianShapeOverlapFunction instances. More... | |
| typedef std::function< bool(std::size_t)> | ColorFilterFunction |
| Type of the function used to filter color (pharmacophore) features by type. More... | |
| typedef std::function< bool(std::size_t, std::size_t)> | ColorMatchFunction |
| Type of the function used to decide whether two color features match. More... | |
Public Member Functions | |
| ExactGaussianShapeOverlapFunction () | |
Constructs the ExactGaussianShapeOverlapFunction instance without associated shape functions. More... | |
| ExactGaussianShapeOverlapFunction (const ExactGaussianShapeOverlapFunction &func) | |
Constructs a copy of the ExactGaussianShapeOverlapFunction instance func. More... | |
| ExactGaussianShapeOverlapFunction (const GaussianShapeFunction &ref_shape_func, const GaussianShapeFunction &ovl_shape_func) | |
Constructs the ExactGaussianShapeOverlapFunction instance with the given reference and aligned shape functions. More... | |
| ~ExactGaussianShapeOverlapFunction () | |
| Destructor. More... | |
| void | setShapeFunction (const GaussianShapeFunction &func, bool is_ref) |
| Specifies the reference or aligned shape function used by the overlap evaluation. More... | |
| const GaussianShapeFunction * | getShapeFunction (bool ref) const |
| Returns the reference or aligned shape function. More... | |
| void | setColorMatchFunction (const ColorMatchFunction &func) |
| Specifies the function used to decide whether two color features match. More... | |
| const ColorMatchFunction & | getColorMatchFunction () const |
| Returns the currently configured color-match function. More... | |
| void | setColorFilterFunction (const ColorFilterFunction &func) |
| Specifies the function used to filter color features by type. More... | |
| const ColorFilterFunction & | getColorFilterFunction () const |
| Returns the currently configured color-filter function. More... | |
| double | calcSelfOverlap (bool ref) const |
| Calculates the shape-only self-overlap of the reference or aligned shape function. More... | |
| double | calcColorSelfOverlap (bool ref) const |
| Calculates the color self-overlap of the reference or aligned shape function. More... | |
| double | calcOverlap () const |
| Calculates the shape-only overlap of the reference and aligned shape functions. More... | |
| double | calcColorOverlap () const |
| Calculates the color overlap of the reference and aligned shape functions. More... | |
| double | calcOverlap (const Math::Vector3DArray &coords) const |
| Calculates the shape-only overlap with the aligned shape element positions taken from coords. More... | |
| double | calcColorOverlap (const Math::Vector3DArray &coords) const |
| Calculates the color overlap with the aligned shape element positions taken from coords. More... | |
| double | calcOverlapGradient (const Math::Vector3DArray &coords, Math::Vector3DArray &grad) const |
| Calculates the shape overlap with the aligned shape element positions taken from coords and returns the gradient with respect to those positions. More... | |
| ExactGaussianShapeOverlapFunction & | operator= (const ExactGaussianShapeOverlapFunction &func) |
| Copy assignment operator. More... | |
Public Member Functions inherited from CDPL::Shape::GaussianShapeOverlapFunction | |
| virtual | ~GaussianShapeOverlapFunction () |
| Virtual destructor. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from CDPL::Shape::GaussianShapeOverlapFunction | |
| GaussianShapeOverlapFunction () | |
| GaussianShapeOverlapFunction (const GaussianShapeOverlapFunction &func) | |
| GaussianShapeOverlapFunction & | operator= (const GaussianShapeOverlapFunction &func) |
Shape::GaussianShapeOverlapFunction implementation that evaluates the overlap analytically using the full Gaussian-product expansion (no approximations).
The exact evaluation is more accurate but typically slower than Shape::FastGaussianShapeOverlapFunction.
| typedef std::shared_ptr<ExactGaussianShapeOverlapFunction> CDPL::Shape::ExactGaussianShapeOverlapFunction::SharedPointer |
A reference-counted smart pointer [SHPTR] for dynamically allocated ExactGaussianShapeOverlapFunction instances.
| CDPL::Shape::ExactGaussianShapeOverlapFunction::ExactGaussianShapeOverlapFunction | ( | ) |
Constructs the ExactGaussianShapeOverlapFunction instance without associated shape functions.
| CDPL::Shape::ExactGaussianShapeOverlapFunction::ExactGaussianShapeOverlapFunction | ( | const ExactGaussianShapeOverlapFunction & | func | ) |
Constructs a copy of the ExactGaussianShapeOverlapFunction instance func.
| func | The ExactGaussianShapeOverlapFunction to copy. |
| CDPL::Shape::ExactGaussianShapeOverlapFunction::ExactGaussianShapeOverlapFunction | ( | const GaussianShapeFunction & | ref_shape_func, |
| const GaussianShapeFunction & | ovl_shape_func | ||
| ) |
Constructs the ExactGaussianShapeOverlapFunction instance with the given reference and aligned shape functions.
| ref_shape_func | The reference shape function. |
| ovl_shape_func | The aligned shape function. |
| CDPL::Shape::ExactGaussianShapeOverlapFunction::~ExactGaussianShapeOverlapFunction | ( | ) |
Destructor.
|
virtual |
Specifies the reference or aligned shape function used by the overlap evaluation.
| func | The shape function. |
| is_ref | If true, func is the reference shape function; otherwise the aligned shape function. |
Implements CDPL::Shape::GaussianShapeOverlapFunction.
|
virtual |
Returns the reference or aligned shape function.
| ref | If true, the reference shape function is returned; otherwise the aligned shape function. |
nullptr if none is associated). Implements CDPL::Shape::GaussianShapeOverlapFunction.
|
virtual |
Specifies the function used to decide whether two color features match.
| func | The color-match function. |
Implements CDPL::Shape::GaussianShapeOverlapFunction.
|
virtual |
Returns the currently configured color-match function.
const reference to the color-match function. Implements CDPL::Shape::GaussianShapeOverlapFunction.
|
virtual |
Specifies the function used to filter color features by type.
| func | The color-filter function. |
Implements CDPL::Shape::GaussianShapeOverlapFunction.
|
virtual |
Returns the currently configured color-filter function.
const reference to the color-filter function. Implements CDPL::Shape::GaussianShapeOverlapFunction.
|
virtual |
Calculates the shape-only self-overlap of the reference or aligned shape function.
| ref | If true, the reference self-overlap is returned; otherwise the aligned self-overlap. |
Implements CDPL::Shape::GaussianShapeOverlapFunction.
|
virtual |
Calculates the color self-overlap of the reference or aligned shape function.
| ref | If true, the reference color self-overlap is returned; otherwise the aligned color self-overlap. |
Implements CDPL::Shape::GaussianShapeOverlapFunction.
|
virtual |
Calculates the shape-only overlap of the reference and aligned shape functions.
Implements CDPL::Shape::GaussianShapeOverlapFunction.
|
virtual |
Calculates the color overlap of the reference and aligned shape functions.
Implements CDPL::Shape::GaussianShapeOverlapFunction.
|
virtual |
Calculates the shape-only overlap with the aligned shape element positions taken from coords.
| coords | The element 3D positions of the aligned shape. |
Implements CDPL::Shape::GaussianShapeOverlapFunction.
|
virtual |
Calculates the color overlap with the aligned shape element positions taken from coords.
| coords | The element 3D positions of the aligned shape. |
Implements CDPL::Shape::GaussianShapeOverlapFunction.
|
virtual |
Calculates the shape overlap with the aligned shape element positions taken from coords and returns the gradient with respect to those positions.
| coords | The element 3D positions of the aligned shape. |
| grad | The output element-wise gradient of the overlap. |
Implements CDPL::Shape::GaussianShapeOverlapFunction.
| ExactGaussianShapeOverlapFunction& CDPL::Shape::ExactGaussianShapeOverlapFunction::operator= | ( | const ExactGaussianShapeOverlapFunction & | func | ) |
Copy assignment operator.
| func | The other ExactGaussianShapeOverlapFunction instance. |