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#include <string>
20
21#include <vector>
22
23namespace RDKit {
24class ROMol;
25namespace Descriptors {
26const std::string labuteASAVersion = "1.0.2";
27
28//! calculates atomic contributions to Labute's Approximate Surface Area
29/*!
30 Definition from P. Labute's article in the Journal of the
31 Chemical Computing Group and J. Mol. Graph. Mod. _18_ 464-477
32 (2000)
33
34 \param mol the molecule of interest
35 \param Vi used to return the explicit atom contribs
36 \param hContrib used to return the H contributions (if calculated)
37 \param includeHs (optional) if this is true (the default),
38 the contribution of H atoms to the ASA will be included.
39 \param force (optional) calculate the values even if they are cached.
40
41 \return the sum of the atomic contributions
42
43*/
45 std::vector<double> &Vi,
46 double &hContrib,
47 bool includeHs = true,
48 bool force = false);
49
50//! calculates Labute's Approximate Surface Area (ASA from MOE)
51/*!
52 Definition from P. Labute's article in the Journal of the
53 Chemical Computing Group and J. Mol. Graph. Mod. _18_ 464-477
54 (2000)
55
56 \param mol the molecule of interest
57 \param includeHs (optional) if this is true (the default),
58 the contribution of H atoms to the ASA will be included.
59 \param force (optional) calculate the value even if it's cached.
60
61*/
63 bool includeHs = true,
64 bool force = false);
65
66const std::string tpsaVersion = "2.0.0";
67//! calculates atomic contributions to the TPSA value
68/*!
69 The TPSA definition is from:
70 P. Ertl, B. Rohde, P. Selzer
71 Fast Calculation of Molecular Polar Surface Area as a Sum of Fragment-based
72 Contributions and Its Application to the Prediction of Drug Transport
73 Properties, J.Med.Chem. 43, 3714-3717, 2000
74 By default the calculation does not include contributions from S or P atoms,
75 this can be be changed with the includeSandP argument.
76
77 \param mol the molecule of interest
78 \param Vi used to return the atom contribs
79 \param force (optional) calculate the values even if they are cached.
80 \param includeSandP (optional) include contributions from S and P atoms
81
82 \return the sum of the atomic contributions
83
84*/
86 std::vector<double> &Vi,
87 bool force = false,
88 bool includeSandP = false);
89
90//! calculates the TPSA value for a molecule
91/*!
92 The TPSA definition is from:
93 P. Ertl, B. Rohde, P. Selzer
94 Fast Calculation of Molecular Polar Surface Area as a Sum of Fragment-based
95 Contributions and Its Application to the Prediction of Drug Transport
96 Properties, J.Med.Chem. 43, 3714-3717, 2000
97 By default the calculation does not include contributions from S or P atoms,
98 this can be be changed with the includeSandP argument.
99
100 \param mol the molecule of interest
101 \param force (optional) calculate the value even if it's cached.
102 \param includeSandP (optional) include contributions from S and P atoms
103
104*/
105RDKIT_DESCRIPTORS_EXPORT double calcTPSA(const ROMol &mol, bool force = false,
106 bool includeSandP = false);
107
109 const ROMol &mol, std::vector<double> *bins = nullptr, bool force = false);
111 const ROMol &mol, std::vector<double> *bins = nullptr, bool force = false);
113 const ROMol &mol, std::vector<double> *bins = nullptr, bool force = false);
115 const ROMol &mol, const std::string &customPropName,
116 const std::vector<double> &bins, bool force = false);
117
118} // end of namespace Descriptors
119} // end of namespace RDKit
120
121#endif
#define RDKIT_DESCRIPTORS_EXPORT
Definition export.h:141
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:66
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:26
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.