#include <Tautomer.h>
Definition at line 241 of file MolStandardize/Tautomer.h.
◆ TautomerEnumerator() [1/3]
RDKit::MolStandardize::TautomerEnumerator::TautomerEnumerator |
( |
TautomerCatalog * |
tautCat | ) |
|
|
inline |
◆ TautomerEnumerator() [2/3]
◆ TautomerEnumerator() [3/3]
◆ canonicalize()
returns the canonical tautomer for a molecule
Note that the canonical tautomer is very likely not the most stable tautomer for any given conditions. The default scoring rules are designed to produce "reasonable" tautomers, but the primary concern is that the results are canonical: you always get the same canonical tautomer for a molecule regardless of what the input tautomer or atom ordering were.
The default scoring scheme is inspired by the publication: M. Sitzmann et al., “Tautomerism in Large Databases.”, JCAMD 24:521 (2010) https://doi.org/10.1007/s10822-010-9346-4
◆ canonicalizeInPlace()
◆ enumerate() [1/2]
returns a TautomerEnumeratorResult
structure for the input molecule
The enumeration rules are inspired by the publication: M. Sitzmann et al., “Tautomerism in Large Databases.”, JCAMD 24:521 (2010) https://doi.org/10.1007/s10822-010-9346-4
- Parameters
-
mol | the molecule to be enumerated |
Note: the definitions used here are that the atoms modified during tautomerization are the atoms at the beginning and end of each tautomer transform (the H "donor" and H "acceptor" in the transform) and the bonds modified during transformation are any bonds whose order is changed during the tautomer transform (these are the bonds between the "donor" and the "acceptor")
◆ enumerate() [2/2]
std::vector< ROMOL_SPTR > RDKit::MolStandardize::TautomerEnumerator::enumerate |
( |
const ROMol & |
mol, |
|
|
boost::dynamic_bitset<> * |
modifiedAtoms, |
|
|
boost::dynamic_bitset<> * |
modifiedBonds = nullptr |
|
) |
| const |
◆ getCallback()
◆ getMaxTautomers()
unsigned int RDKit::MolStandardize::TautomerEnumerator::getMaxTautomers |
( |
| ) |
|
|
inline |
◆ getMaxTransforms()
unsigned int RDKit::MolStandardize::TautomerEnumerator::getMaxTransforms |
( |
| ) |
|
|
inline |
◆ getReassignStereo()
bool RDKit::MolStandardize::TautomerEnumerator::getReassignStereo |
( |
| ) |
|
|
inline |
◆ getRemoveBondStereo()
bool RDKit::MolStandardize::TautomerEnumerator::getRemoveBondStereo |
( |
| ) |
|
|
inline |
- Returns
- whether stereochemistry information will be removed from double bonds involved in tautomerism
Definition at line 318 of file MolStandardize/Tautomer.h.
◆ getRemoveIsotopicHs()
bool RDKit::MolStandardize::TautomerEnumerator::getRemoveIsotopicHs |
( |
| ) |
|
|
inline |
◆ getRemoveSp3Stereo()
bool RDKit::MolStandardize::TautomerEnumerator::getRemoveSp3Stereo |
( |
| ) |
|
|
inline |
- Returns
- whether stereochemistry information will be removed from sp3 atoms involved in tautomerism
Definition at line 304 of file MolStandardize/Tautomer.h.
◆ operator=()
◆ pickCanonical() [1/2]
◆ pickCanonical() [2/2]
◆ setCallback()
◆ setMaxTautomers()
void RDKit::MolStandardize::TautomerEnumerator::setMaxTautomers |
( |
unsigned int |
maxTautomers | ) |
|
|
inline |
◆ setMaxTransforms()
void RDKit::MolStandardize::TautomerEnumerator::setMaxTransforms |
( |
unsigned int |
maxTransforms | ) |
|
|
inline |
- Parameters
-
maxTransforms | maximum number of transformations to be applied this limit is usually hit earlier than the maxTautomers limit and leads to a more linear scaling of CPU time with increasing number of tautomeric centers (see Sitzmann et al.) |
Definition at line 286 of file MolStandardize/Tautomer.h.
◆ setReassignStereo()
void RDKit::MolStandardize::TautomerEnumerator::setReassignStereo |
( |
bool |
reassignStereo | ) |
|
|
inline |
- Parameters
-
reassignStereo; | if set to true, assignStereochemistry will be called on each tautomer generated by the enumerate() method. This defaults to true. |
Definition at line 333 of file MolStandardize/Tautomer.h.
◆ setRemoveBondStereo()
void RDKit::MolStandardize::TautomerEnumerator::setRemoveBondStereo |
( |
bool |
removeBondStereo | ) |
|
|
inline |
- Parameters
-
removeBondStereo; | if set to true, stereochemistry information will be removed from double bonds involved in tautomerism. This means that enols will lose their E/Z stereochemistry after going through tautomer enumeration because of the keto-enolic tautomerism. This defaults to true in RDKit and also in the workflow described by Sitzmann et al. |
Definition at line 312 of file MolStandardize/Tautomer.h.
◆ setRemoveIsotopicHs()
void RDKit::MolStandardize::TautomerEnumerator::setRemoveIsotopicHs |
( |
bool |
removeIsotopicHs | ) |
|
|
inline |
- Parameters
-
removeIsotopicHs; | if set to true, isotopic Hs will be removed from centers involved in tautomerism. |
Definition at line 322 of file MolStandardize/Tautomer.h.
◆ setRemoveSp3Stereo()
void RDKit::MolStandardize::TautomerEnumerator::setRemoveSp3Stereo |
( |
bool |
removeSp3Stereo | ) |
|
|
inline |
- Parameters
-
removeSp3Stereo; | if set to true, stereochemistry information will be removed from sp3 atoms involved in tautomerism. This means that S-aminoacids will lose their stereochemistry after going through tautomer enumeration because of the amido-imidol tautomerism. This defaults to true in RDKit, false in the workflow described by Sitzmann et al. |
Definition at line 298 of file MolStandardize/Tautomer.h.
The documentation for this class was generated from the following file: