1 #ifndef BALL_STRUCTURE_BINDINGPOCKETPROCESSOR_H
2 #define BALL_STRUCTURE_BINDINGPOCKETPROCESSOR_H
4 #ifndef BALL_CONCEPT_PROCESSOR_H
8 #ifndef BALL_KERNEL_RESIDUE_H
12 #ifndef BALL_MATHS_VECTOR3_H
16 #ifndef BALL_KERNEL_SYSTEM_H
20 #ifndef BALL_DATATYPE_HASHGRID_H
24 #ifndef BALL_DATATYPE_OPTIONS_H
137 virtual bool finish();
143 const vector<std::pair<Vector3,double> >& getActiveSitePoints()
const;
147 const vector<vector<std::pair<Vector3,double> > >& getLayers()
const;
186 inline bool operator<(
const Sphere_& sp)
const {
return probe_weight > sp.probe_weight;};
191 static int global_id;
196 inline bool operator==(
const Sphere_& sp)
const {
return a == sp.a && b == sp.b &&
c == sp.c && d == sp.d;};
201 class SphereComparator_
204 int operator()(
const Sphere_& sp1,
const Sphere_& sp2)
const
207 return sp1.a < sp2.a;
209 return sp1.b < sp2.b;
211 return sp1.c < sp2.c;
213 return sp1.d < sp2.d;
225 friend std::ostream&
operator<<(std::ostream& os,
const BindingPocketProcessor::Sphere_& ) {
return os;};
255 std::vector<Sphere_> sorted_spheres_;
263 double second_layer_rad_;
267 double protein_clash_rad_;
271 double BC_threshold_;
281 std::vector<Sphere_> candidates;
283 std::vector<std::pair<Vector3,double> > asps_;
285 std::vector<std::vector<std::pair<Vector3,double> > > layers_;
293 double radius_(
const String& element);
321 bool testSphereClash_(
Vector3& v);
325 bool testProteinClash_(
Vector3& v);
329 bool testBC_(Sphere_& sp);
333 void weedCandidates_();
346 #endif // BALL_STRUCTURE_BINDINGPOCKETPROCESSOR_H
friend std::ostream & operator<<(std::ostream &os, const BindingPocketProcessor::Sphere_ &)
static const double PW_MAX_DISTANCE
static const String RADIUS_SULFUR
static const String RADIUS_HYDROGEN
atom radius of individual elements
static const double RADIUS_SULFUR
static const String RADIUS_NITROGEN
static const String INI_FILE_NAME
static const double PW_GAUSSIAN_WIDTH
static const double PROBE_SPHERE_RADIUS_HYDROGEN_FREE
static const String BURIAL_COUNT_RADIUS
radius for the computation of the burial count
static const String PROBE_SPHERE_RADIUS_HYDROGEN_FREE
probe sphere radius for heavy atoms only
static const double CLASH_FACTOR
static const double RADIUS_NITROGEN
static const String INI_FILE_NAME
name of the ini-file
static const double RADIUS_OXYGEN
BALL_EXTERN_VARIABLE const double c
static const double PROBE_LAYER_RADIUS
static const String PW_MAX_DISTANCE
static const String PW_SQUARE_WELL
options for the computation of the probe weight
static const String PARSE_INI_FILE
try to parse ini-file
static const double RADIUS_HYDROGEN
static const double ASP_SEPERATION
static const String HEAVY_ONLY
use only heavy atoms for computation
static const String ASP_SEPERATION
minumum distance between two active site points
static const String BURIAL_COUNT_THRESHOLD_HYDROGEN_FREE
burial count threshold for heavy atoms only
BALL_EXPORT bool operator==(const String &s1, const String &s2)
static const double BURIAL_COUNT_RADIUS
static const bool HEAVY_ONLY
static const String MAX_ASPS
maximum number of active site points
static const Position BURIAL_COUNT_THRESHOLD_HYDROGEN_FREE
static const String RADIUS_CARBON
static const double RADIUS_CARBON
static const String PROBE_SPHERE_RADIUS
probe sphere radius for computation with hydrogen atoms
static const double PROBE_SPHERE_RADIUS
static const double PW_SQUARE_WELL
static const String RADIUS_OXYGEN
static const Position MAX_ASPS
static const Position BURIAL_COUNT_THRESHOLD
static const String PROBE_LAYER_RADIUS
probe radius for colision of probes in one layer
static const String PW_GAUSSIAN_WIDTH
static const bool PARSE_INI_FILE
static const String BURIAL_COUNT_THRESHOLD
burial count threshold for computation with hydrogen atoms
static const String CLASH_FACTOR
BALL_EXPORT bool operator<(const String &s1, const String &s2)