RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
MolSurf.h
Go to the documentation of this file.
1//
2// Copyright (C) 2007-2011 Greg Landrum
3//
4// @@ All Rights Reserved @@
5// This file is part of the RDKit.
6// The contents are covered by the terms of the BSD license
7// which is included in the file license.txt, found at the root
8// of the RDKit source tree.
9//
10
11/*! \file MolSurf.h
12
13 \brief Use MolDescriptors.h in client code.
14
15*/
16#include <RDGeneral/export.h>
17#ifndef __RD_MOLSURF_H__
18#define __RD_MOLSURF_H__
19
20#include <vector>
21
22namespace RDKit {
23class ROMol;
24namespace Descriptors {
25const std::string labuteASAVersion = "1.0.2";
26
27//! calculates atomic contributions to Labute's Approximate Surface Area
28/*!
29 Definition from P. Labute's article in the Journal of the
30 Chemical Computing Group and J. Mol. Graph. Mod. _18_ 464-477
31 (2000)
32
33 \param mol the molecule of interest
34 \param Vi used to return the explicit atom contribs
35 \param hContrib used to return the H contributions (if calculated)
36 \param includeHs (optional) if this is true (the default),
37 the contribution of H atoms to the ASA will be included.
38 \param force (optional) calculate the values even if they are cached.
39
40 \return the sum of the atomic contributions
41
42*/
44 std::vector<double> &Vi,
45 double &hContrib,
46 bool includeHs = true,
47 bool force = false);
48
49//! calculates Labute's Approximate Surface Area (ASA from MOE)
50/*!
51 Definition from P. Labute's article in the Journal of the
52 Chemical Computing Group and J. Mol. Graph. Mod. _18_ 464-477
53 (2000)
54
55 \param mol the molecule of interest
56 \param includeHs (optional) if this is true (the default),
57 the contribution of H atoms to the ASA will be included.
58 \param force (optional) calculate the value even if it's cached.
59
60*/
62 bool includeHs = true,
63 bool force = false);
64
65const std::string tpsaVersion = "2.0.0";
66//! calculates atomic contributions to the TPSA value
67/*!
68 The TPSA definition is from:
69 P. Ertl, B. Rohde, P. Selzer
70 Fast Calculation of Molecular Polar Surface Area as a Sum of Fragment-based
71 Contributions and Its Application to the Prediction of Drug Transport
72 Properties, J.Med.Chem. 43, 3714-3717, 2000
73 By default the calculation does not include contributions from S or P atoms,
74 this can be be changed with the includeSandP argument.
75
76 \param mol the molecule of interest
77 \param Vi used to return the atom contribs
78 \param force (optional) calculate the values even if they are cached.
79 \param includeSandP (optional) include contributions from S and P atoms
80
81 \return the sum of the atomic contributions
82
83*/
85 std::vector<double> &Vi,
86 bool force = false,
87 bool includeSandP = false);
88
89//! calculates the TPSA value for a molecule
90/*!
91 The TPSA definition is from:
92 P. Ertl, B. Rohde, P. Selzer
93 Fast Calculation of Molecular Polar Surface Area as a Sum of Fragment-based
94 Contributions and Its Application to the Prediction of Drug Transport
95 Properties, J.Med.Chem. 43, 3714-3717, 2000
96 By default the calculation does not include contributions from S or P atoms,
97 this can be be changed with the includeSandP argument.
98
99 \param mol the molecule of interest
100 \param force (optional) calculate the value even if it's cached.
101 \param includeSandP (optional) include contributions from S and P atoms
102
103*/
104RDKIT_DESCRIPTORS_EXPORT double calcTPSA(const ROMol &mol, bool force = false,
105 bool includeSandP = false);
106
108 const ROMol &mol, std::vector<double> *bins = nullptr, bool force = false);
110 const ROMol &mol, std::vector<double> *bins = nullptr, bool force = false);
112 const ROMol &mol, std::vector<double> *bins = nullptr, bool force = false);
114 const ROMol &mol, const std::string &customPropName,
115 const std::vector<double> &bins, bool force = false);
116
117} // end of namespace Descriptors
118} // end of namespace RDKit
119
120#endif
#define RDKIT_DESCRIPTORS_EXPORT
Definition export.h:105
RDKIT_DESCRIPTORS_EXPORT double getTPSAAtomContribs(const ROMol &mol, std::vector< double > &Vi, bool force=false, bool includeSandP=false)
calculates atomic contributions to the TPSA value
RDKIT_DESCRIPTORS_EXPORT std::vector< double > calcSlogP_VSA(const ROMol &mol, std::vector< double > *bins=nullptr, bool force=false)
RDKIT_DESCRIPTORS_EXPORT double calcTPSA(const ROMol &mol, bool force=false, bool includeSandP=false)
calculates the TPSA value for a molecule
const std::string tpsaVersion
Definition MolSurf.h:65
RDKIT_DESCRIPTORS_EXPORT std::vector< double > calcSMR_VSA(const ROMol &mol, std::vector< double > *bins=nullptr, bool force=false)
RDKIT_DESCRIPTORS_EXPORT std::vector< double > calcCustomProp_VSA(const ROMol &mol, const std::string &customPropName, const std::vector< double > &bins, bool force=false)
RDKIT_DESCRIPTORS_EXPORT double getLabuteAtomContribs(const ROMol &mol, std::vector< double > &Vi, double &hContrib, bool includeHs=true, bool force=false)
calculates atomic contributions to Labute's Approximate Surface Area
const std::string labuteASAVersion
Definition MolSurf.h:25
RDKIT_DESCRIPTORS_EXPORT double calcLabuteASA(const ROMol &mol, bool includeHs=true, bool force=false)
calculates Labute's Approximate Surface Area (ASA from MOE)
RDKIT_DESCRIPTORS_EXPORT std::vector< double > calcPEOE_VSA(const ROMol &mol, std::vector< double > *bins=nullptr, bool force=false)
Std stuff.
bool rdvalue_is(const RDValue_cast_t)