29 #ifndef CDPL_PHARM_PHARMACOPHOREFITSCORE_HPP
30 #define CDPL_PHARM_PHARMACOPHOREFITSCORE_HPP
33 #include <unordered_set>
48 class FeatureContainer;
61 static constexpr
double DEF_FTR_MATCH_COUNT_WEIGHT = 1.0;
66 static constexpr
double DEF_FTR_POS_MATCH_WEIGHT = 0.5;
71 static constexpr
double DEF_FTR_GEOM_MATCH_WEIGHT = 0.4;
83 double match_cnt_weight = DEF_FTR_MATCH_COUNT_WEIGHT,
84 double pos_match_weight = DEF_FTR_POS_MATCH_WEIGHT,
85 double geom_match_weight = DEF_FTR_GEOM_MATCH_WEIGHT);
157 typedef std::vector<const Feature*> FeatureList;
158 typedef std::vector<std::size_t> IndexList;
159 typedef std::unordered_set<const Feature*> FeatureSet;
162 std::size_t mat_ftr_cnt, std::size_t mat_mand_ftr_cnt,
double tot_fit_score);
165 double ftrMatchCntWeight;
166 double ftrPosMatchWeight;
167 double ftrGeomMatchWeight;
169 FeatureList grpdRefFtrs;
170 IndexList refFtrGrpBounds;
172 FeatureSet assignedAlgdFtrs;
174 std::size_t maxMpdMandFtrCount;
175 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.