![]() |
RDKit
Open-source cheminformatics and machine learning.
|
Namespaces | |
namespace | detail |
Classes | |
struct | BondWedgingParameters |
struct | StereoInfo |
class | WedgeInfoAtropisomer |
class | WedgeInfoBase |
class | WedgeInfoChiral |
Enumerations | |
enum class | StereoType { Unspecified , Atom_Tetrahedral , Atom_SquarePlanar , Atom_TrigonalBipyramidal , Atom_Octahedral , Bond_Double , Bond_Cumulene_Even , Bond_Atropisomer } |
enum class | StereoDescriptor { None , Tet_CW , Tet_CCW , Bond_Cis , Bond_Trans , Bond_AtropCW , Bond_AtropCCW } |
enum class | StereoSpecified { Unspecified , Specified , Unknown } |
enum class | WedgeInfoType { WedgeInfoTypeChiral , WedgeInfoTypeAtropisomer } |
Variables | |
constexpr unsigned int | minRingSizeForDoubleBondStereo = 8 |
double bond stereo will be ignored/removed for rings smaller than this: | |
constexpr auto | nonTetrahedralStereoEnvVar = "RDK_ENABLE_NONTETRAHEDRAL_STEREO" |
constexpr auto | useLegacyStereoEnvVar = "RDK_USE_LEGACY_STEREO_PERCEPTION" |
constexpr bool | nonTetrahedralStereoDefaultVal |
whether or not nontetrahedral stereo is perceived by default | |
constexpr bool | useLegacyStereoDefaultVal |
RDKIT_GRAPHMOL_EXPORT bool | useLegacyStereoPerception |
Enumerator | |
---|---|
None | |
Tet_CW | |
Tet_CCW | |
Bond_Cis | |
Bond_Trans | |
Bond_AtropCW | |
Bond_AtropCCW |
Definition at line 101 of file Chirality.h.
Enumerator | |
---|---|
Unspecified | |
Specified | |
Unknown |
Definition at line 111 of file Chirality.h.
Enumerator | |
---|---|
Unspecified | |
Atom_Tetrahedral | |
Atom_SquarePlanar | |
Atom_TrigonalBipyramidal | |
Atom_Octahedral | |
Bond_Double | |
Bond_Cumulene_Even | |
Bond_Atropisomer |
Definition at line 90 of file Chirality.h.
Enumerator | |
---|---|
WedgeInfoTypeChiral | |
WedgeInfoTypeAtropisomer |
Definition at line 240 of file Chirality.h.
RDKIT_GRAPHMOL_EXPORT void RDKit::Chirality::addStereoAnnotations | ( | ROMol & | mol, |
std::string | absLabel = "abs ({cip})" , |
||
std::string | orLabel = "or{id}" , |
||
std::string | andLabel = "and{id}" , |
||
std::string | cipLabel = "({cip})" , |
||
std::string | bondLabel = "({cip})" |
||
) |
add R/S, relative stereo, and E/Z annotations to atoms and bonds
mol | molecule to modify |
absLabel | label for atoms in an ABS stereo group |
orLabel | label for atoms in an OR stereo group |
andLabel | label for atoms in an AND stereo group |
cipLabel | label for chiral atoms that aren't in a stereo group. |
bondLabel | label for CIP stereochemistry on bonds |
If any label is empty, the corresponding annotations will not be added.
The labels can contain the following placeholders: {id} - the stereo group's index {cip} - the atom or bond's CIP stereochemistry
Note that CIP labels will only be added if CIP stereochemistry has been assigned to the molecule.
RDKIT_GRAPHMOL_EXPORT void RDKit::Chirality::assignLegacyCIPLabels | ( | ROMol & | mol, |
bool | flagPossibleStereoCenters = false |
||
) |
calls the approximate legacy code for assigning CIP labels
RDKIT_GRAPHMOL_EXPORT void RDKit::Chirality::cleanupStereoGroups | ( | ROMol & | mol | ) |
removes atoms without specified chirality from stereo groups
RDKIT_GRAPHMOL_EXPORT void RDKit::Chirality::clearMolBlockWedgingInfo | ( | ROMol & | mol | ) |
Remove MolBlock bond wedging information from molecule.
mol | molecule to modify |
RDKIT_GRAPHMOL_EXPORT std::vector< std::pair< unsigned int, unsigned int > > RDKit::Chirality::findMesoCenters | ( | const ROMol & | mol, |
bool | includeIsotopes = true , |
||
bool | includeAtomMaps = false |
||
) |
returns the meso centers in a molecule (if any)
mol | molecule to work with |
RDKIT_GRAPHMOL_EXPORT std::vector< StereoInfo > RDKit::Chirality::findPotentialStereo | ( | const ROMol & | mol | ) |
overload
RDKIT_GRAPHMOL_EXPORT std::vector< StereoInfo > RDKit::Chirality::findPotentialStereo | ( | ROMol & | mol, |
bool | cleanIt, | ||
bool | flagPossible = true |
||
) |
identifies potential stereoatoms and stereobonds in a molecule
Note that this function is still somewhat experimental and the API and results may change in a future release.
mol | the molecule to look for stereo in |
cleanIt | remove chirality/stereo specifications from atoms/bonds that cannot be chiral/stereo |
RDKIT_GRAPHMOL_EXPORT INT_VECT RDKit::Chirality::findStereoAtoms | ( | const Bond * | bond | ) |
|
extern |
RDKIT_GRAPHMOL_EXPORT Atom * RDKit::Chirality::getChiralAcrossAtom | ( | const Atom * | center, |
const Atom * | qry | ||
) |
RDKIT_GRAPHMOL_EXPORT Atom * RDKit::Chirality::getChiralAcrossAtom | ( | const Atom * | center, |
const Bond * | qry | ||
) |
RDKIT_GRAPHMOL_EXPORT Bond * RDKit::Chirality::getChiralAcrossBond | ( | const Atom * | center, |
const Atom * | qry | ||
) |
RDKIT_GRAPHMOL_EXPORT Bond * RDKit::Chirality::getChiralAcrossBond | ( | const Atom * | center, |
const Bond * | qry | ||
) |
RDKIT_GRAPHMOL_EXPORT unsigned int RDKit::Chirality::getChiralPermutation | ( | const Atom * | center, |
const INT_LIST & | probe, | ||
bool | inverse = false |
||
) |
RDKIT_GRAPHMOL_EXPORT double RDKit::Chirality::getIdealAngleBetweenLigands | ( | const Atom * | center, |
const Atom * | lig1, | ||
const Atom * | lig2 | ||
) |
RDKIT_GRAPHMOL_EXPORT unsigned int RDKit::Chirality::getMaxNbors | ( | const Atom::ChiralType | tag | ) |
RDKIT_GRAPHMOL_EXPORT void RDKit::Chirality::GetMolFileBondStereoInfo | ( | const Bond * | bond, |
const std::map< int, std::unique_ptr< RDKit::Chirality::WedgeInfoBase > > & | wedgeBonds, | ||
const Conformer * | conf, | ||
Bond::BondDir & | dir, | ||
bool & | reverse | ||
) |
RDKIT_GRAPHMOL_EXPORT void RDKit::Chirality::GetMolFileBondStereoInfo | ( | const Bond * | bond, |
const std::map< int, std::unique_ptr< RDKit::Chirality::WedgeInfoBase > > & | wedgeBonds, | ||
const Conformer * | conf, | ||
int & | dirCode, | ||
bool & | reverse | ||
) |
gets stereo info for a bond
bond | bond to check |
wedgeBonds | - the list of bonds to have wedges |
conf | - Conformer to use |
dirCode | - receives the dircode for the bond |
reverse | - receives the reverse flag only returned if it was exlicility set witha wiggle bond |
RDKIT_GRAPHMOL_EXPORT Atom * RDKit::Chirality::getTrigonalBipyramidalAxialAtom | ( | const Atom * | center, |
int | which = 0 |
||
) |
RDKIT_GRAPHMOL_EXPORT Bond * RDKit::Chirality::getTrigonalBipyramidalAxialBond | ( | const Atom * | center, |
int | which = 0 |
||
) |
which | if this is -1 then the second axial bond will be returned, otherwise the first |
|
extern |
RDKIT_GRAPHMOL_EXPORT bool RDKit::Chirality::hasNonTetrahedralStereo | ( | const Atom * | center | ) |
RDKIT_GRAPHMOL_EXPORT void RDKit::Chirality::invertMolBlockWedgingInfo | ( | ROMol & | mol | ) |
Invert bond wedging information read from a mol block (if present).
mol | molecule to modify |
RDKIT_GRAPHMOL_EXPORT int RDKit::Chirality::isTrigonalBipyramidalAxialAtom | ( | const Atom * | center, |
const Atom * | qry | ||
) |
RDKIT_GRAPHMOL_EXPORT int RDKit::Chirality::isTrigonalBipyramidalAxialBond | ( | const Atom * | center, |
const Bond * | qry | ||
) |
RDKIT_GRAPHMOL_EXPORT std::ostream & RDKit::Chirality::operator<< | ( | std::ostream & | oss, |
const StereoSpecified & | s | ||
) |
RDKIT_GRAPHMOL_EXPORT std::ostream & RDKit::Chirality::operator<< | ( | std::ostream & | oss, |
const StereoType & | s | ||
) |
RDKIT_GRAPHMOL_EXPORT std::map< int, std::unique_ptr< Chirality::WedgeInfoBase > > RDKit::Chirality::pickBondsToWedge | ( | const ROMol & | mol, |
const BondWedgingParameters * | params, | ||
const Conformer * | conf | ||
) |
RDKIT_GRAPHMOL_EXPORT std::map< int, std::unique_ptr< Chirality::WedgeInfoBase > > RDKit::Chirality::pickBondsToWedge | ( | const ROMol & | mol, |
const BondWedgingParameters * | params = nullptr |
||
) |
picks the bonds which should be wedged returns a map from bond idx -> controlling atom idx
RDKIT_GRAPHMOL_EXPORT void RDKit::Chirality::reapplyMolBlockWedging | ( | ROMol & | mol, |
bool | allBondTypes = true |
||
) |
Clears existing bond wedging and forces use of atom wedging from MolBlock.
mol | molecule to have its wedges altered |
allBondTypes | reapply the wedging also on bonds other than single and aromatic ones |
RDKIT_GRAPHMOL_EXPORT void RDKit::Chirality::removeNonExplicit3DChirality | ( | ROMol & | mol | ) |
|
extern |
|
extern |
RDKIT_GRAPHMOL_EXPORT bool RDKit::Chirality::shouldBeACrossedBond | ( | const Bond * | bond | ) |
Returns true for double bonds which should be shown as a crossed bonds.
RDKIT_GRAPHMOL_EXPORT void RDKit::Chirality::simplifyEnhancedStereo | ( | ROMol & | mol, |
bool | removeAffectedStereoGroups = true |
||
) |
simplifies the stereochemical representation of a molecule where all specified stereocenters are in the same StereoGroup
mol | molecule to modify |
removeAffectedStereoGroups | if set then the affected StereoGroups will be removed |
If all specified stereocenters are in the same AND or OR stereogroup, a moleculeNote property will be set on the molecule with the value "AND enantiomer" or "OR enantiomer". CIP labels, if present, are removed.
RDKIT_GRAPHMOL_EXPORT void RDKit::Chirality::wedgeBond | ( | Bond * | bond, |
unsigned int | fromAtomIdx, | ||
const Conformer * | conf | ||
) |
RDKIT_GRAPHMOL_EXPORT void RDKit::Chirality::wedgeMolBonds | ( | ROMol & | mol, |
const Conformer * | conf = nullptr , |
||
const BondWedgingParameters * | params = nullptr |
||
) |
double bond stereo will be ignored/removed for rings smaller than this:
Definition at line 31 of file Chirality.h.
whether or not nontetrahedral stereo is perceived by default
Definition at line 35 of file Chirality.h.
|
constexpr |
Definition at line 33 of file Chirality.h.
whether or not the legacy stereo perception code is used by default
Definition at line 37 of file Chirality.h.
|
constexpr |
Definition at line 34 of file Chirality.h.
|
extern |
Toggle usage of the legacy stereo perception code
Definition at line 54 of file Chirality.h.