29 #ifndef CDPL_PHARM_PHARMACOPHOREFITSCORE_HPP
30 #define CDPL_PHARM_PHARMACOPHOREFITSCORE_HPP
33 #include <unordered_set>
48 class FeatureContainer;
59 static constexpr
double DEF_FTR_MATCH_COUNT_WEIGHT = 1.0;
61 static constexpr
double DEF_FTR_POS_MATCH_WEIGHT = 0.5;
63 static constexpr
double DEF_FTR_GEOM_MATCH_WEIGHT = 0.4;
75 double match_cnt_weight = DEF_FTR_MATCH_COUNT_WEIGHT,
76 double pos_match_weight = DEF_FTR_POS_MATCH_WEIGHT,
77 double geom_match_weight = DEF_FTR_GEOM_MATCH_WEIGHT);
149 typedef std::vector<const Feature*> FeatureList;
150 typedef std::vector<std::size_t> IndexList;
151 typedef std::unordered_set<const Feature*> FeatureSet;
154 std::size_t mat_ftr_cnt, std::size_t mat_mand_ftr_cnt,
double tot_fit_score);
157 double ftrMatchCntWeight;
158 double ftrPosMatchWeight;
159 double ftrGeomMatchWeight;
161 FeatureList grpdRefFtrs;
162 IndexList refFtrGrpBounds;
164 FeatureSet assignedAlgdFtrs;
166 std::size_t maxMpdMandFtrCount;
167 std::size_t maxMpdFtrCount;
Declaration of type CDPL::Util::BitSet.
Definition of the type CDPL::Pharm::FeatureMapping.
Definition of the preprocessor macro CDPL_PHARM_API.
#define CDPL_PHARM_API
Tells the compiler/linker which classes, functions and variables are part of the library API.
Definition of class CDPL::Pharm::SpatialFeatureMapping.
Abstract base class for containers holding a sequence of Pharm::Feature objects with associated prope...
Definition: FeatureContainer.hpp:55
Scoring functor that quantifies how well a candidate set of features fits a reference pharmacophore,...
Definition: PharmacophoreFitScore.hpp:55
void setFeatureGeometryMatchWeight(double weight)
Sets the weight of the feature-geometry-match contribution.
double getFeatureMatchCountWeight() const
Returns the currently configured weight of the matched-feature-count contribution.
void setFeaturePositionMatchWeight(double weight)
Sets the weight of the feature-position-deviation contribution.
void groupReferenceFeatures(bool group)
Specifies whether reference features should be grouped before scoring (groups share a common mandator...
double operator()(const FeatureContainer &ref_ftrs, const FeatureContainer &algnd_ftrs, const Math::Matrix4D &xform)
Computes the fit score of algnd_ftrs against ref_ftrs after applying the rigid-body transformation xf...
bool referenceFeaturesGrouped() const
Tells whether reference features are grouped before scoring.
double operator()(const FeatureContainer &ref_ftrs, const SpatialFeatureMapping &mapping)
Computes the fit score from a pre-computed feature mapping.
double getFeatureGeometryMatchWeight() const
Returns the currently configured weight of the feature-geometry-match contribution.
void setFeatureMatchCountWeight(double weight)
Sets the weight of the matched-feature-count contribution.
double getFeaturePositionMatchWeight() const
Returns the currently configured weight of the feature-position-deviation contribution.
PharmacophoreFitScore(bool query_mode=false, double match_cnt_weight=DEF_FTR_MATCH_COUNT_WEIGHT, double pos_match_weight=DEF_FTR_POS_MATCH_WEIGHT, double geom_match_weight=DEF_FTR_GEOM_MATCH_WEIGHT)
Constructs the PharmacophoreFitScore instance.
Pharm::FeatureMapping specialization that perceives a reference-to-aligned feature mapping based on t...
Definition: SpatialFeatureMapping.hpp:57
boost::dynamic_bitset BitSet
Dynamic bitset class.
Definition: BitSet.hpp:46
The namespace of the Chemical Data Processing Library.