RDKit
Open-source cheminformatics and machine learning.
Loading...
Searching...
No Matches
MolTransforms Namespace Reference

Functions

RDKIT_MOLTRANSFORMS_EXPORT void transformMolsAtoms (RDKit::ROMol *mol, RDGeom::Transform3D &tform)
 
RDKIT_MOLTRANSFORMS_EXPORT void transformAtom (RDKit::Atom *atom, RDGeom::Transform3D &tform)
 
RDKIT_MOLTRANSFORMS_EXPORT RDGeom::Point3D computeCentroid (const RDKit::Conformer &conf, bool ignoreHs=true, const std::vector< double > *weights=nullptr)
 Compute the centroid of a conformer.
 
RDKIT_MOLTRANSFORMS_EXPORT RDGeom::Transform3DcomputeCanonicalTransform (const RDKit::Conformer &conf, const RDGeom::Point3D *center=nullptr, bool normalizeCovar=false, bool ignoreHs=true)
 
RDKIT_MOLTRANSFORMS_EXPORT void transformConformer (RDKit::Conformer &conf, const RDGeom::Transform3D &trans)
 Transform the conformation using the specified transformation.
 
RDKIT_MOLTRANSFORMS_EXPORT void transformMolSubstanceGroups (RDKit::ROMol &mol, const RDGeom::Transform3D &trans)
 Transforms coordinates in a molecule's substance groups.
 
RDKIT_MOLTRANSFORMS_EXPORT void canonicalizeConformer (RDKit::Conformer &conf, const RDGeom::Point3D *center=nullptr, bool normalizeCovar=false, bool ignoreHs=true)
 
RDKIT_MOLTRANSFORMS_EXPORT void canonicalizeMol (RDKit::ROMol &mol, bool normalizeCovar=false, bool ignoreHs=true)
 Canonicalize all the conformations in a molecule.
 
RDKIT_MOLTRANSFORMS_EXPORT double getBondLength (const RDKit::Conformer &conf, unsigned int iAtomId, unsigned int jAtomId)
 Get the bond length between the specified atoms i, j.
 
RDKIT_MOLTRANSFORMS_EXPORT void setBondLength (RDKit::Conformer &conf, unsigned int iAtomId, unsigned int jAtomId, double value)
 
RDKIT_MOLTRANSFORMS_EXPORT double getAngleRad (const RDKit::Conformer &conf, unsigned int iAtomId, unsigned int jAtomId, unsigned int kAtomId)
 Get the angle in radians among the specified atoms i, j, k.
 
double getAngleDeg (const RDKit::Conformer &conf, unsigned int iAtomId, unsigned int jAtomId, unsigned int kAtomId)
 Get the angle in degrees among the specified atoms i, j, k.
 
RDKIT_MOLTRANSFORMS_EXPORT void setAngleRad (RDKit::Conformer &conf, unsigned int iAtomId, unsigned int jAtomId, unsigned int kAtomId, double value)
 
void setAngleDeg (RDKit::Conformer &conf, unsigned int iAtomId, unsigned int jAtomId, unsigned int kAtomId, double value)
 
RDKIT_MOLTRANSFORMS_EXPORT double getDihedralRad (const RDKit::Conformer &conf, unsigned int iAtomId, unsigned int jAtomId, unsigned int kAtomId, unsigned int lAtomId)
 Get the dihedral angle in radians among the specified atoms i, j, k, l.
 
double getDihedralDeg (const RDKit::Conformer &conf, unsigned int iAtomId, unsigned int jAtomId, unsigned int kAtomId, unsigned int lAtomId)
 Get the dihedral angle in degrees among the specified atoms i, j, k, l.
 
RDKIT_MOLTRANSFORMS_EXPORT void setDihedralRad (RDKit::Conformer &conf, unsigned int iAtomId, unsigned int jAtomId, unsigned int kAtomId, unsigned int lAtomId, double value)
 
void setDihedralDeg (RDKit::Conformer &conf, unsigned int iAtomId, unsigned int jAtomId, unsigned int kAtomId, unsigned int lAtomId, double value)
 

Function Documentation

◆ canonicalizeConformer()

RDKIT_MOLTRANSFORMS_EXPORT void MolTransforms::canonicalizeConformer ( RDKit::Conformer conf,
const RDGeom::Point3D center = nullptr,
bool  normalizeCovar = false,
bool  ignoreHs = true 
)

Canonicalize the orientation of a conformer so that its principal axes around the specified center point coincide with the x, y, z axes

Parameters
confThe conformer of interest
centerOptional center point about which the principal axes are computed if not specified the centroid of the conformer will be used
normalizeCovarOptionally normalize the covariance matrix by the number of atoms
ignoreHsIf true, ignore hydrogen atoms

◆ canonicalizeMol()

RDKIT_MOLTRANSFORMS_EXPORT void MolTransforms::canonicalizeMol ( RDKit::ROMol mol,
bool  normalizeCovar = false,
bool  ignoreHs = true 
)

Canonicalize all the conformations in a molecule.

Parameters
molthe molecule of interest
normalizeCovarOptionally normalize the covariance matrix by the number of atoms
ignoreHsIf true, ignore hydrogens

◆ computeCanonicalTransform()

RDKIT_MOLTRANSFORMS_EXPORT RDGeom::Transform3D * MolTransforms::computeCanonicalTransform ( const RDKit::Conformer conf,
const RDGeom::Point3D center = nullptr,
bool  normalizeCovar = false,
bool  ignoreHs = true 
)

Compute the transformation required to orient the conformation along the principal axes about the center; i.e. center is made to coincide with the origin, the largest principal axis with the x-axis, the next largest with the y-axis and the smallest with the z-axis

If center is not specified the centroid of the conformer will be used

Parameters
confConformer of interest
centerCenter to be used for canonicalization, defaults to the centroid of the conformation
normalizeCovarNormalize the covariance matrix with the number of atoms
ignoreHsOptionally ignore hydrogens

◆ computeCentroid()

RDKIT_MOLTRANSFORMS_EXPORT RDGeom::Point3D MolTransforms::computeCentroid ( const RDKit::Conformer conf,
bool  ignoreHs = true,
const std::vector< double > *  weights = nullptr 
)

Compute the centroid of a conformer.

This is simple the average of the heavy atom locations in the conformer, not attention is paid to hydrogens or the differences in atomic radii

Parameters
confConformer of interest
ignoreHsIf true, ignore hydrogen atoms
weightsIf present, used to weigh the atomic coordinates

◆ getAngleDeg()

double MolTransforms::getAngleDeg ( const RDKit::Conformer conf,
unsigned int  iAtomId,
unsigned int  jAtomId,
unsigned int  kAtomId 
)
inline

Get the angle in degrees among the specified atoms i, j, k.

Definition at line 173 of file MolTransforms.h.

References getAngleRad(), and M_PI.

◆ getAngleRad()

RDKIT_MOLTRANSFORMS_EXPORT double MolTransforms::getAngleRad ( const RDKit::Conformer conf,
unsigned int  iAtomId,
unsigned int  jAtomId,
unsigned int  kAtomId 
)

Get the angle in radians among the specified atoms i, j, k.

Referenced by getAngleDeg().

◆ getBondLength()

RDKIT_MOLTRANSFORMS_EXPORT double MolTransforms::getBondLength ( const RDKit::Conformer conf,
unsigned int  iAtomId,
unsigned int  jAtomId 
)

Get the bond length between the specified atoms i, j.

◆ getDihedralDeg()

double MolTransforms::getDihedralDeg ( const RDKit::Conformer conf,
unsigned int  iAtomId,
unsigned int  jAtomId,
unsigned int  kAtomId,
unsigned int  lAtomId 
)
inline

Get the dihedral angle in degrees among the specified atoms i, j, k, l.

Definition at line 201 of file MolTransforms.h.

References getDihedralRad(), and M_PI.

◆ getDihedralRad()

RDKIT_MOLTRANSFORMS_EXPORT double MolTransforms::getDihedralRad ( const RDKit::Conformer conf,
unsigned int  iAtomId,
unsigned int  jAtomId,
unsigned int  kAtomId,
unsigned int  lAtomId 
)

Get the dihedral angle in radians among the specified atoms i, j, k, l.

Referenced by getDihedralDeg().

◆ setAngleDeg()

void MolTransforms::setAngleDeg ( RDKit::Conformer conf,
unsigned int  iAtomId,
unsigned int  jAtomId,
unsigned int  kAtomId,
double  value 
)
inline

Set the angle in degrees among the specified atoms i, j, k (all atoms bonded to atom k are moved)

Definition at line 187 of file MolTransforms.h.

References M_PI, and setAngleRad().

◆ setAngleRad()

RDKIT_MOLTRANSFORMS_EXPORT void MolTransforms::setAngleRad ( RDKit::Conformer conf,
unsigned int  iAtomId,
unsigned int  jAtomId,
unsigned int  kAtomId,
double  value 
)

Set the angle in radians among the specified atoms i, j, k (all atoms bonded to atom k are moved)

Referenced by setAngleDeg().

◆ setBondLength()

RDKIT_MOLTRANSFORMS_EXPORT void MolTransforms::setBondLength ( RDKit::Conformer conf,
unsigned int  iAtomId,
unsigned int  jAtomId,
double  value 
)

Set the bond length between the specified atoms i, j (all atoms bonded to atom j are moved)

◆ setDihedralDeg()

void MolTransforms::setDihedralDeg ( RDKit::Conformer conf,
unsigned int  iAtomId,
unsigned int  jAtomId,
unsigned int  kAtomId,
unsigned int  lAtomId,
double  value 
)
inline

Set the dihedral angle in degrees among the specified atoms i, j, k, l (all atoms bonded to atom l are moved)

Definition at line 216 of file MolTransforms.h.

References M_PI, and setDihedralRad().

◆ setDihedralRad()

RDKIT_MOLTRANSFORMS_EXPORT void MolTransforms::setDihedralRad ( RDKit::Conformer conf,
unsigned int  iAtomId,
unsigned int  jAtomId,
unsigned int  kAtomId,
unsigned int  lAtomId,
double  value 
)

Set the dihedral angle in radians among the specified atoms i, j, k, l (all atoms bonded to atom l are moved)

Referenced by setDihedralDeg().

◆ transformAtom()

RDKIT_MOLTRANSFORMS_EXPORT void MolTransforms::transformAtom ( RDKit::Atom atom,
RDGeom::Transform3D tform 
)

◆ transformConformer()

RDKIT_MOLTRANSFORMS_EXPORT void MolTransforms::transformConformer ( RDKit::Conformer conf,
const RDGeom::Transform3D trans 
)

Transform the conformation using the specified transformation.

◆ transformMolsAtoms()

RDKIT_MOLTRANSFORMS_EXPORT void MolTransforms::transformMolsAtoms ( RDKit::ROMol mol,
RDGeom::Transform3D tform 
)

◆ transformMolSubstanceGroups()

RDKIT_MOLTRANSFORMS_EXPORT void MolTransforms::transformMolSubstanceGroups ( RDKit::ROMol mol,
const RDGeom::Transform3D trans 
)

Transforms coordinates in a molecule's substance groups.