RDKit: AtomTyper.h Source File

| RDKit Open-source cheminformatics and machine learning.

Loading...
Searching...
No Matches
MMFF/AtomTyper.h
Go to the documentation of this file.
1//
2// Copyright (C) 2013-2016 Paolo Tosco
3//
4// Copyright (C) 2004-2006 Rational Discovery LLC
5//
6// @@ All Rights Reserved @@
7// This file is part of the RDKit.
8// The contents are covered by the terms of the BSD license
9// which is included in the file license.txt, found at the root
10// of the RDKit source tree.
11//
12#include <RDGeneral/export.h>
13#ifndef _RD_MMFFATOMTYPER_H__
14#define _RD_MMFFATOMTYPER_H__
15
16#include <vector>
17#include <string>
18#include <ForceField/MMFF/Params.h>
19#include <cstdint>
20
21namespace RDKit {
22class ROMol;
23class RWMol;
24class Atom;
25class Bond;
26
27 namespace MMFF {
28
29 namespace DefaultParameters {
30 RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFPropCollection *
31getMMFFProp();
32 RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFAromCollection *
33getMMFFArom();
34 RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFDefCollection *
35getMMFFDef();
36 RDKIT_FORCEFIELDHELPERS_EXPORT const
37 ForceFields::MMFF::MMFFHerschbachLaurieCollection *
38 getMMFFHerschbachLaurie();
39 RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFPBCICollection *
40getMMFFPBCI();
41 RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFAngleCollection *
42getMMFFAngle();
43 RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFStbnCollection *
44getMMFFStbn();
45 RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFDfsbCollection *
46getMMFFDfsb();
47 RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFTorCollection *
48getMMFFTor(const bool isMMFFs);
49 RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFOopCollection *
50getMMFFOop(const bool isMMFFs);
51 RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFVdWCollection *
52getMMFFVdW();
53} // namespace DefaultParameters
54
55class RingMembershipSize;
56using namespace ForceFields::MMFF;
57 class RDKIT_FORCEFIELDHELPERS_EXPORT MMFFAtomProperties {
58 public:
59 MMFFAtomProperties() {}
60 ~MMFFAtomProperties() = default;
61 std::uint8_t mmffAtomType{0};
62 double mmffFormalCharge{0.0};
63 double mmffPartialCharge{0.0};
64};
65
66 typedef boost::shared_ptr<MMFFAtomProperties> MMFFAtomPropertiesPtr;
67enum {
68 CONSTANT = 1,
69 DISTANCE = 2
70};
71enum {
72 MMFF_VERBOSITY_NONE = 0,
73 MMFF_VERBOSITY_LOW = 1,
74 MMFF_VERBOSITY_HIGH = 2
75};
76 class RDKIT_FORCEFIELDHELPERS_EXPORT MMFFMolProperties {
77 public:
78 MMFFMolProperties(ROMol &mol, const std::string &mmffVariant = "MMFF94",
79 std::uint8_t verbosity = MMFF_VERBOSITY_NONE,
80 std::ostream &oStream = std::cout);
81 ~MMFFMolProperties() = default;
82 unsigned int getMMFFBondType(const Bond *bond);
83 unsigned int getMMFFAngleType(const ROMol &mol, const unsigned int idx1,
84 const unsigned int idx2,
85 const unsigned int idx3);
86 const std::pair<unsigned int, unsigned int> getMMFFTorsionType(
87 const ROMol &mol, const unsigned int idx1, const unsigned int idx2,
88 const unsigned int idx3, const unsigned int idx4);
89 void computeMMFFCharges(const ROMol &mol);
90 const ForceFields::MMFF::MMFFTor *getMMFFTorsionEmpiricalRuleParams(
91 const ROMol &mol, unsigned int idx2, unsigned int idx3);
92 const ForceFields::MMFF::MMFFBond *getMMFFBondStretchEmpiricalRuleParams(
93 const ROMol &mol, const Bond *bond);
94 std::uint8_t getMMFFAtomType(const unsigned int idx) {
95 URANGE_CHECK(idx, this->d_MMFFAtomPropertiesPtrVect.size());
96
97 return this->d_MMFFAtomPropertiesPtrVect[idx]->mmffAtomType;
98 }
99 double getMMFFFormalCharge(const unsigned int idx) {
100 URANGE_CHECK(idx, this->d_MMFFAtomPropertiesPtrVect.size());
101
102 return this->d_MMFFAtomPropertiesPtrVect[idx]->mmffFormalCharge;
103 }
104 double getMMFFPartialCharge(const unsigned int idx) {
105 URANGE_CHECK(idx, this->d_MMFFAtomPropertiesPtrVect.size());
106
107 return this->d_MMFFAtomPropertiesPtrVect[idx]->mmffPartialCharge;
108 }
109 void setMMFFBondTerm(const bool state) { this->d_bondTerm = state; }
110 bool getMMFFBondTerm() { return this->d_bondTerm; }
111 void setMMFFAngleTerm(const bool state) { this->d_angleTerm = state; }
112 bool getMMFFAngleTerm() { return this->d_angleTerm; }
113 void setMMFFStretchBendTerm(const bool state) {
114 this->d_stretchBendTerm = state;
115 }
116 bool getMMFFStretchBendTerm() { return this->d_stretchBendTerm; }
117 void setMMFFOopTerm(const bool state) { this->d_oopTerm = state; }
118 bool getMMFFOopTerm() { return this->d_oopTerm; }
119 void setMMFFTorsionTerm(const bool state) { this->d_torsionTerm = state; }
120 bool getMMFFTorsionTerm() { return this->d_torsionTerm; }
121 void setMMFFVdWTerm(const bool state) { this->d_vdWTerm = state; }
122 bool getMMFFVdWTerm() { return this->d_vdWTerm; }
123 void setMMFFEleTerm(const bool state) { this->d_eleTerm = state; }
124 bool getMMFFEleTerm() { return this->d_eleTerm; }
125 void setMMFFVariant(const std::string &mmffVariant) {
126 PRECONDITION((mmffVariant == "MMFF94") || (mmffVariant == "MMFF94s"),
127 "bad MMFF variant");
128
129 this->d_mmffs = mmffVariant == "MMFF94s";
130 }
131 const std::string getMMFFVariant() {
132 return (this->d_mmffs ? "MMFF94s" : "MMFF94");
133 }
134 void setMMFFDielectricConstant(const double dielConst) {
135 PRECONDITION(dielConst > 0.0, "bad dielectric constant");
136
137 this->d_dielConst = dielConst;
138 }
139 double getMMFFDielectricConstant() { return this->d_dielConst; }
140 void setMMFFDielectricModel(std::uint8_t dielModel) {
141 this->d_dielModel = dielModel;
142 }
143 std::uint8_t getMMFFDielectricModel() { return this->d_dielModel; }
144 void setMMFFVerbosity(std::uint8_t verbosity) {
145 this->d_verbosity = verbosity;
146 }
147 std::uint8_t getMMFFVerbosity() { return this->d_verbosity; }
148 void setMMFFOStream(std::ostream *oStream) { this->d_oStream = oStream; }
149 std::ostream &getMMFFOStream() { return *(this->d_oStream); }
150 bool isValid() { return d_valid; }
151 bool getMMFFBondStretchParams(const ROMol &mol, const unsigned int idx1,
152 const unsigned int idx2, unsigned int &bondType,
153 MMFFBond &mmffBondStretchParams);
154 bool getMMFFAngleBendParams(const ROMol &mol, const unsigned int idx1,
155 const unsigned int idx2, const unsigned int idx3,
156 unsigned int &angleType,
157 MMFFAngle &mmffAngleBendParams);
158 bool getMMFFStretchBendParams(const ROMol &mol, const unsigned int idx1,
159 const unsigned int idx2,
160 const unsigned int idx3,
161 unsigned int &stretchBendType,
162 MMFFStbn &mmffStretchBendParams,
163 MMFFBond mmffBondStretchParams[2],
164 MMFFAngle &mmffAngleBendParams);
165 bool getMMFFTorsionParams(const ROMol &mol, const unsigned int idx1,
166 const unsigned int idx2, const unsigned int idx3,
167 const unsigned int idx4, unsigned int &torsionType,
168 MMFFTor &mmffTorsionParams);
169 bool getMMFFOopBendParams(const ROMol &mol, const unsigned int idx1,
170 const unsigned int idx2, const unsigned int idx3,
171 const unsigned int idx4,
172 MMFFOop &mmffOopBendParams);
173 bool getMMFFVdWParams(const unsigned int idx1, const unsigned int idx2,
174 MMFFVdWRijstarEps &mmffVdWParams);
175
176 private:
177 void setMMFFHeavyAtomType(const RingMembershipSize &rmSize, const Atom *atom);
178 void setMMFFHydrogenType(const Atom *atom);
179 void setMMFFFormalCharge(const unsigned int idx, const double fChg) {
180 URANGE_CHECK(idx, this->d_MMFFAtomPropertiesPtrVect.size());
181
182 this->d_MMFFAtomPropertiesPtrVect[idx]->mmffFormalCharge = fChg;
183 }
184 void setMMFFPartialCharge(const unsigned int idx, const double pChg) {
185 URANGE_CHECK(idx, this->d_MMFFAtomPropertiesPtrVect.size());
186
187 this->d_MMFFAtomPropertiesPtrVect[idx]->mmffPartialCharge = pChg;
188 }
189 bool d_valid;
190 bool d_mmffs;
191 bool d_bondTerm;
192 bool d_angleTerm;
193 bool d_stretchBendTerm;
194 bool d_oopTerm;
195 bool d_torsionTerm;
196 bool d_vdWTerm;
197 bool d_eleTerm;
198 double d_dielConst; //!< the dielectric constant
199 std::uint8_t d_dielModel; //!< the dielectric model (1 = constant, 2 =
200 // distance-dependent)
201 std::uint8_t d_verbosity;
202 std::ostream *d_oStream;
203 std::vector<MMFFAtomPropertiesPtr> d_MMFFAtomPropertiesPtrVect;
204};
205 RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int isAngleInRingOfSize3or4(
206 const ROMol &mol, const unsigned int idx1, const unsigned int idx2,
207 const unsigned int idx3);
208 RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int isTorsionInRingOfSize4or5(
209 const ROMol &mol, const unsigned int idx1, const unsigned int idx2,
210 const unsigned int idx3, const unsigned int idx4);
211 RDKIT_FORCEFIELDHELPERS_EXPORT bool isRingAromatic(
212 const ROMol &mol, const INT_VECT &ringIndxVect);
213 RDKIT_FORCEFIELDHELPERS_EXPORT bool isAtomInAromaticRingOfSize(
214 const Atom *atom, const unsigned int ringSize);
215 RDKIT_FORCEFIELDHELPERS_EXPORT bool isAtomNOxide(const Atom *atom);
216 RDKIT_FORCEFIELDHELPERS_EXPORT bool areAtomsInSameAromaticRing(
217 const ROMol &mol, const unsigned int idx1, const unsigned int idx2);
218 RDKIT_FORCEFIELDHELPERS_EXPORT bool areAtomsInSameRingOfSize(
219 const ROMol &mol, const unsigned int ringSize, const unsigned int numAtoms,
220 ...);
221 RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int sanitizeMMFFMol(RWMol &mol);
222 RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int getMMFFStretchBendType(
223 const unsigned int angleType, const unsigned int bondType1,
224 const unsigned int bondType2);
225 RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int getPeriodicTableRow(
226 const int atomicNum);
227 RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFAngle *
228getMMFFAngleBendEmpiricalRuleParams(
229 const ROMol &mol, const ForceFields::MMFF::MMFFAngle *oldMMFFAngleParams,
230 const ForceFields::MMFF::MMFFProp *mmffPropParamsCentralAtom,
231 const ForceFields::MMFF::MMFFBond *mmffBondParams1,
232 const ForceFields::MMFF::MMFFBond *mmffBondParams2, unsigned int idx1,
233 unsigned int idx2, unsigned int idx3);
234} // namespace MMFF
235} // namespace RDKit
236
237#endif
URANGE_CHECK
#define URANGE_CHECK(x, hi)
Definition Invariant.h:141
PRECONDITION
#define PRECONDITION(expr, mess)
Definition Invariant.h:108
Params.h
ForceFields::MMFF::MMFFAngleCollection
Definition MMFF/Params.h:507
ForceFields::MMFF::MMFFAngle
class to store MMFF parameters for angle bending
Definition MMFF/Params.h:104
ForceFields::MMFF::MMFFAromCollection
Definition MMFF/Params.h:150
ForceFields::MMFF::MMFFBond
class to store MMFF parameters for bond stretching
Definition MMFF/Params.h:80
ForceFields::MMFF::MMFFDefCollection
Definition MMFF/Params.h:165
ForceFields::MMFF::MMFFDfsbCollection
Definition MMFF/Params.h:684
ForceFields::MMFF::MMFFHerschbachLaurieCollection
Definition MMFF/Params.h:427
ForceFields::MMFF::MMFFOopCollection
Definition MMFF/Params.h:723
ForceFields::MMFF::MMFFOop
class to store MMFF parameters for out-of-plane bending
Definition MMFF/Params.h:118
ForceFields::MMFF::MMFFPBCICollection
Definition MMFF/Params.h:219
ForceFields::MMFF::MMFFPropCollection
Definition MMFF/Params.h:191
ForceFields::MMFF::MMFFProp
class to store MMFF Properties
Definition MMFF/Params.h:53
ForceFields::MMFF::MMFFStbnCollection
Definition MMFF/Params.h:601
ForceFields::MMFF::MMFFStbn
class to store MMFF parameters for stretch-bending
Definition MMFF/Params.h:111
ForceFields::MMFF::MMFFTorCollection
Definition MMFF/Params.h:816
ForceFields::MMFF::MMFFTor
class to store MMFF parameters for torsions
Definition MMFF/Params.h:124
ForceFields::MMFF::MMFFVdWCollection
Definition MMFF/Params.h:960
ForceFields::MMFF::MMFFVdWRijstarEps
Definition MMFF/Params.h:142
RDKit::Atom
The class for representing atoms.
Definition Atom.h:74
RDKit::Bond
class for representing a bond
Definition Bond.h:46
RDKit::MMFF::MMFFAtomProperties::~MMFFAtomProperties
~MMFFAtomProperties()=default
RDKit::MMFF::MMFFAtomProperties::mmffFormalCharge
double mmffFormalCharge
Definition MMFF/AtomTyper.h:62
RDKit::MMFF::MMFFAtomProperties::MMFFAtomProperties
MMFFAtomProperties()
Definition MMFF/AtomTyper.h:59
RDKit::MMFF::MMFFAtomProperties::mmffPartialCharge
double mmffPartialCharge
Definition MMFF/AtomTyper.h:63
RDKit::MMFF::MMFFAtomProperties::mmffAtomType
std::uint8_t mmffAtomType
Definition MMFF/AtomTyper.h:61
RDKit::MMFF::MMFFMolProperties::getMMFFStretchBendParams
bool getMMFFStretchBendParams(const ROMol &mol, const unsigned int idx1, const unsigned int idx2, const unsigned int idx3, unsigned int &stretchBendType, MMFFStbn &mmffStretchBendParams, MMFFBond mmffBondStretchParams[2], MMFFAngle &mmffAngleBendParams)
RDKit::MMFF::MMFFMolProperties::setMMFFStretchBendTerm
void setMMFFStretchBendTerm(const bool state)
Definition MMFF/AtomTyper.h:113
RDKit::MMFF::MMFFMolProperties::getMMFFDielectricModel
std::uint8_t getMMFFDielectricModel()
Definition MMFF/AtomTyper.h:143
RDKit::MMFF::MMFFMolProperties::setMMFFOopTerm
void setMMFFOopTerm(const bool state)
Definition MMFF/AtomTyper.h:117
RDKit::MMFF::MMFFMolProperties::isValid
bool isValid()
Definition MMFF/AtomTyper.h:150
RDKit::MMFF::MMFFMolProperties::getMMFFVdWParams
bool getMMFFVdWParams(const unsigned int idx1, const unsigned int idx2, MMFFVdWRijstarEps &mmffVdWParams)
RDKit::MMFF::MMFFMolProperties::getMMFFOStream
std::ostream & getMMFFOStream()
Definition MMFF/AtomTyper.h:149
RDKit::MMFF::MMFFMolProperties::setMMFFVariant
void setMMFFVariant(const std::string &mmffVariant)
Definition MMFF/AtomTyper.h:125
RDKit::MMFF::MMFFMolProperties::getMMFFEleTerm
bool getMMFFEleTerm()
Definition MMFF/AtomTyper.h:124
RDKit::MMFF::MMFFMolProperties::setMMFFDielectricModel
void setMMFFDielectricModel(std::uint8_t dielModel)
Definition MMFF/AtomTyper.h:140
RDKit::MMFF::MMFFMolProperties::getMMFFBondStretchParams
bool getMMFFBondStretchParams(const ROMol &mol, const unsigned int idx1, const unsigned int idx2, unsigned int &bondType, MMFFBond &mmffBondStretchParams)
RDKit::MMFF::MMFFMolProperties::getMMFFVerbosity
std::uint8_t getMMFFVerbosity()
Definition MMFF/AtomTyper.h:147
RDKit::MMFF::MMFFMolProperties::getMMFFDielectricConstant
double getMMFFDielectricConstant()
Definition MMFF/AtomTyper.h:139
RDKit::MMFF::MMFFMolProperties::getMMFFAngleBendParams
bool getMMFFAngleBendParams(const ROMol &mol, const unsigned int idx1, const unsigned int idx2, const unsigned int idx3, unsigned int &angleType, MMFFAngle &mmffAngleBendParams)
RDKit::MMFF::MMFFMolProperties::getMMFFAngleType
unsigned int getMMFFAngleType(const ROMol &mol, const unsigned int idx1, const unsigned int idx2, const unsigned int idx3)
RDKit::MMFF::MMFFMolProperties::getMMFFVdWTerm
bool getMMFFVdWTerm()
Definition MMFF/AtomTyper.h:122
RDKit::MMFF::MMFFMolProperties::getMMFFOopTerm
bool getMMFFOopTerm()
Definition MMFF/AtomTyper.h:118
RDKit::MMFF::MMFFMolProperties::getMMFFAtomType
std::uint8_t getMMFFAtomType(const unsigned int idx)
Definition MMFF/AtomTyper.h:94
RDKit::MMFF::MMFFMolProperties::getMMFFBondType
unsigned int getMMFFBondType(const Bond *bond)
RDKit::MMFF::MMFFMolProperties::setMMFFBondTerm
void setMMFFBondTerm(const bool state)
Definition MMFF/AtomTyper.h:109
RDKit::MMFF::MMFFMolProperties::setMMFFVerbosity
void setMMFFVerbosity(std::uint8_t verbosity)
Definition MMFF/AtomTyper.h:144
RDKit::MMFF::MMFFMolProperties::getMMFFBondStretchEmpiricalRuleParams
const ForceFields::MMFF::MMFFBond * getMMFFBondStretchEmpiricalRuleParams(const ROMol &mol, const Bond *bond)
RDKit::MMFF::MMFFMolProperties::computeMMFFCharges
void computeMMFFCharges(const ROMol &mol)
RDKit::MMFF::MMFFMolProperties::setMMFFTorsionTerm
void setMMFFTorsionTerm(const bool state)
Definition MMFF/AtomTyper.h:119
RDKit::MMFF::MMFFMolProperties::getMMFFTorsionTerm
bool getMMFFTorsionTerm()
Definition MMFF/AtomTyper.h:120
RDKit::MMFF::MMFFMolProperties::setMMFFEleTerm
void setMMFFEleTerm(const bool state)
Definition MMFF/AtomTyper.h:123
RDKit::MMFF::MMFFMolProperties::setMMFFDielectricConstant
void setMMFFDielectricConstant(const double dielConst)
Definition MMFF/AtomTyper.h:134
RDKit::MMFF::MMFFMolProperties::getMMFFStretchBendTerm
bool getMMFFStretchBendTerm()
Definition MMFF/AtomTyper.h:116
RDKit::MMFF::MMFFMolProperties::setMMFFVdWTerm
void setMMFFVdWTerm(const bool state)
Definition MMFF/AtomTyper.h:121
RDKit::MMFF::MMFFMolProperties::getMMFFOopBendParams
bool getMMFFOopBendParams(const ROMol &mol, const unsigned int idx1, const unsigned int idx2, const unsigned int idx3, const unsigned int idx4, MMFFOop &mmffOopBendParams)
RDKit::MMFF::MMFFMolProperties::getMMFFVariant
const std::string getMMFFVariant()
Definition MMFF/AtomTyper.h:131
RDKit::MMFF::MMFFMolProperties::getMMFFPartialCharge
double getMMFFPartialCharge(const unsigned int idx)
Definition MMFF/AtomTyper.h:104
RDKit::MMFF::MMFFMolProperties::getMMFFBondTerm
bool getMMFFBondTerm()
Definition MMFF/AtomTyper.h:110
RDKit::MMFF::MMFFMolProperties::getMMFFFormalCharge
double getMMFFFormalCharge(const unsigned int idx)
Definition MMFF/AtomTyper.h:99
RDKit::MMFF::MMFFMolProperties::setMMFFAngleTerm
void setMMFFAngleTerm(const bool state)
Definition MMFF/AtomTyper.h:111
RDKit::MMFF::MMFFMolProperties::~MMFFMolProperties
~MMFFMolProperties()=default
RDKit::MMFF::MMFFMolProperties::MMFFMolProperties
MMFFMolProperties(ROMol &mol, const std::string &mmffVariant="MMFF94", std::uint8_t verbosity=MMFF_VERBOSITY_NONE, std::ostream &oStream=std::cout)
RDKit::MMFF::MMFFMolProperties::setMMFFOStream
void setMMFFOStream(std::ostream *oStream)
Definition MMFF/AtomTyper.h:148
RDKit::MMFF::MMFFMolProperties::getMMFFAngleTerm
bool getMMFFAngleTerm()
Definition MMFF/AtomTyper.h:112
RDKit::MMFF::MMFFMolProperties::getMMFFTorsionEmpiricalRuleParams
const ForceFields::MMFF::MMFFTor * getMMFFTorsionEmpiricalRuleParams(const ROMol &mol, unsigned int idx2, unsigned int idx3)
RDKit::MMFF::MMFFMolProperties::getMMFFTorsionParams
bool getMMFFTorsionParams(const ROMol &mol, const unsigned int idx1, const unsigned int idx2, const unsigned int idx3, const unsigned int idx4, unsigned int &torsionType, MMFFTor &mmffTorsionParams)
RDKit::MMFF::MMFFMolProperties::getMMFFTorsionType
const std::pair< unsigned int, unsigned int > getMMFFTorsionType(const ROMol &mol, const unsigned int idx1, const unsigned int idx2, const unsigned int idx3, const unsigned int idx4)
RDKit::ROMol
Definition ROMol.h:199
RDKit::RWMol
RWMol is a molecule class that is intended to be edited.
Definition RWMol.h:32
export.h
RDKIT_FORCEFIELDHELPERS_EXPORT
#define RDKIT_FORCEFIELDHELPERS_EXPORT
Definition export.h:209
ForceFields::MMFF
Definition MMFF/AngleBend.h:17
RDKit::MMFF::DefaultParameters
Definition MMFF/AtomTyper.h:29
RDKit::MMFF::DefaultParameters::getMMFFTor
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFTorCollection * getMMFFTor(const bool isMMFFs)
RDKit::MMFF::DefaultParameters::getMMFFOop
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFOopCollection * getMMFFOop(const bool isMMFFs)
RDKit::MMFF::DefaultParameters::getMMFFDef
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFDefCollection * getMMFFDef()
RDKit::MMFF::DefaultParameters::getMMFFArom
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFAromCollection * getMMFFArom()
RDKit::MMFF::DefaultParameters::getMMFFPBCI
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFPBCICollection * getMMFFPBCI()
RDKit::MMFF::DefaultParameters::getMMFFAngle
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFAngleCollection * getMMFFAngle()
RDKit::MMFF::DefaultParameters::getMMFFHerschbachLaurie
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFHerschbachLaurieCollection * getMMFFHerschbachLaurie()
RDKit::MMFF::DefaultParameters::getMMFFVdW
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFVdWCollection * getMMFFVdW()
RDKit::MMFF::DefaultParameters::getMMFFProp
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFPropCollection * getMMFFProp()
RDKit::MMFF::DefaultParameters::getMMFFStbn
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFStbnCollection * getMMFFStbn()
RDKit::MMFF::DefaultParameters::getMMFFDfsb
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFDfsbCollection * getMMFFDfsb()
RDKit::MMFF
Definition MMFF/AtomTyper.h:27
RDKit::MMFF::CONSTANT
@ CONSTANT
Definition MMFF/AtomTyper.h:68
RDKit::MMFF::DISTANCE
@ DISTANCE
Definition MMFF/AtomTyper.h:69
RDKit::MMFF::getPeriodicTableRow
RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int getPeriodicTableRow(const int atomicNum)
RDKit::MMFF::sanitizeMMFFMol
RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int sanitizeMMFFMol(RWMol &mol)
RDKit::MMFF::areAtomsInSameAromaticRing
RDKIT_FORCEFIELDHELPERS_EXPORT bool areAtomsInSameAromaticRing(const ROMol &mol, const unsigned int idx1, const unsigned int idx2)
RDKit::MMFF::MMFFAtomPropertiesPtr
boost::shared_ptr< MMFFAtomProperties > MMFFAtomPropertiesPtr
Definition MMFF/AtomTyper.h:66
RDKit::MMFF::getMMFFStretchBendType
RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int getMMFFStretchBendType(const unsigned int angleType, const unsigned int bondType1, const unsigned int bondType2)
RDKit::MMFF::isRingAromatic
RDKIT_FORCEFIELDHELPERS_EXPORT bool isRingAromatic(const ROMol &mol, const INT_VECT &ringIndxVect)
RDKit::MMFF::isAtomInAromaticRingOfSize
RDKIT_FORCEFIELDHELPERS_EXPORT bool isAtomInAromaticRingOfSize(const Atom *atom, const unsigned int ringSize)
RDKit::MMFF::isAngleInRingOfSize3or4
RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int isAngleInRingOfSize3or4(const ROMol &mol, const unsigned int idx1, const unsigned int idx2, const unsigned int idx3)
RDKit::MMFF::areAtomsInSameRingOfSize
RDKIT_FORCEFIELDHELPERS_EXPORT bool areAtomsInSameRingOfSize(const ROMol &mol, const unsigned int ringSize, const unsigned int numAtoms,...)
RDKit::MMFF::getMMFFAngleBendEmpiricalRuleParams
RDKIT_FORCEFIELDHELPERS_EXPORT const ForceFields::MMFF::MMFFAngle * getMMFFAngleBendEmpiricalRuleParams(const ROMol &mol, const ForceFields::MMFF::MMFFAngle *oldMMFFAngleParams, const ForceFields::MMFF::MMFFProp *mmffPropParamsCentralAtom, const ForceFields::MMFF::MMFFBond *mmffBondParams1, const ForceFields::MMFF::MMFFBond *mmffBondParams2, unsigned int idx1, unsigned int idx2, unsigned int idx3)
RDKit::MMFF::MMFF_VERBOSITY_NONE
@ MMFF_VERBOSITY_NONE
Definition MMFF/AtomTyper.h:72
RDKit::MMFF::MMFF_VERBOSITY_HIGH
@ MMFF_VERBOSITY_HIGH
Definition MMFF/AtomTyper.h:74
RDKit::MMFF::MMFF_VERBOSITY_LOW
@ MMFF_VERBOSITY_LOW
Definition MMFF/AtomTyper.h:73
RDKit::MMFF::isAtomNOxide
RDKIT_FORCEFIELDHELPERS_EXPORT bool isAtomNOxide(const Atom *atom)
RDKit::MMFF::isTorsionInRingOfSize4or5
RDKIT_FORCEFIELDHELPERS_EXPORT unsigned int isTorsionInRingOfSize4or5(const ROMol &mol, const unsigned int idx1, const unsigned int idx2, const unsigned int idx3, const unsigned int idx4)
RDKit
Std stuff.
Definition Abbreviations.h:19
RDKit::INT_VECT
std::vector< int > INT_VECT
Definition types.h:303