RDKit::DGeomHelpers::EmbedParameters Struct Reference

Parameter object for controlling embedding. More...

`#include <Embedder.h>`

## Public Member Functions

| EmbedParameters ()

EmbedParameters (unsigned int maxIterations, int numThreads, int randomSeed, bool clearConfs, bool useRandomCoords, double boxSizeMult, bool randNegEig, unsigned int numZeroFail, const std::map< int, RDGeom::Point3D > *coordMap, double optimizerForceTol, bool ignoreSmoothingFailures, bool enforceChirality, bool useExpTorsionAnglePrefs, bool useBasicKnowledge, bool verbose, double basinThresh, double pruneRmsThresh, bool onlyHeavyAtomsForRMS, unsigned int ETversion=1, const DistGeom::BoundsMatrix *boundsMat=nullptr, bool embedFragmentsSeparately=true, bool useSmallRingTorsions=false, bool useMacrocycleTorsions=false, bool useMacrocycle14config=false, std::shared_ptr< std::map< std::pair< unsigned int, unsigned int >, double >> CPCI=nullptr, void(*callback)(unsigned int)=nullptr)

## Public Attributes

unsigned int | maxIterations {0}
int | numThreads {1}
int | randomSeed {-1}
bool | clearConfs {true}
bool | useRandomCoords {false}
double | boxSizeMult {2.0}
bool | randNegEig {true}
unsigned int | numZeroFail {1}
const std::map< int, RDGeom::Point3D > * | coordMap {nullptr}
double | optimizerForceTol {1e-3}
bool | ignoreSmoothingFailures {false}
bool | enforceChirality {true}
bool | useExpTorsionAnglePrefs {false}
bool | useBasicKnowledge {false}
bool | verbose {false}
double | basinThresh {5.0}
double | pruneRmsThresh {-1.0}
bool | onlyHeavyAtomsForRMS {false}
unsigned int | ETversion {1}
boost::shared_ptr< const DistGeom::BoundsMatrix > | boundsMat
bool | embedFragmentsSeparately {true}
bool | useSmallRingTorsions {false}
bool | useMacrocycleTorsions {false}
bool | useMacrocycle14config {false}
std::shared_ptr< std::map< std::pair< unsigned int, unsigned int >, double > > | CPCI
void(* | callback )(unsigned int)
bool | forceTransAmides {true}
bool | useSymmetryForPruning {true}
double | boundsMatForceScaling {1.0}

## Detailed Description

Parameter object for controlling embedding.

numConfs Number of conformations to be generated numThreads Sets the number of threads to use (more than one thread will only be used if the RDKit was build with multithread support) If set to zero, the max supported by the system will be used. maxIterations Max. number of times the embedding will be tried if coordinates are not obtained successfully. The default value is 10x the number of atoms. randomSeed provides a seed for the random number generator (so that the same coordinates can be obtained for a molecule on multiple runs) If -1, the RNG will not be seeded. clearConfs Clear all existing conformations on the molecule useRandomCoords Start the embedding from random coordinates instead of using eigenvalues of the distance matrix. boxSizeMult Determines the size of the box that is used for random coordinates. If this is a positive number, the side length will equal the largest element of the distance matrix times `boxSizeMult`. If this is a negative number, the side length will equal `-boxSizeMult` (i.e. independent of the elements of the distance matrix). randNegEig Picks coordinates at random when a embedding process produces negative eigenvalues numZeroFail Fail embedding if we find this many or more zero eigenvalues (within a tolerance) pruneRmsThresh Retain only the conformations out of 'numConfs' after embedding that are at least this far apart from each other. RMSD is computed on the heavy atoms. Prunining is greedy; i.e. the first embedded conformation is retained and from then on only those that are at least `pruneRmsThresh` away from already retained conformations are kept. The pruning is done after embedding and bounds violation minimization. No pruning by default. coordMap a map of int to Point3D, between atom IDs and their locations their locations. If this container is provided, the coordinates are used to set distance constraints on the embedding. The resulting conformer(s) should have distances between the specified atoms that reproduce those between the points in `coordMap`. Because the embedding produces a molecule in an arbitrary reference frame, an alignment step is required to actually reproduce the provided coordinates. optimizerForceTol set the tolerance on forces in the DGeom optimizer (this shouldn't normally be altered in client code). ignoreSmoothingFailures try to embed the molecule even if triangle bounds smoothing fails enforceChirality enforce the correct chirality if chiral centers are present useExpTorsionAnglePrefs impose experimental torsion-angle preferences useBasicKnowledge impose "basic knowledge" terms such as flat aromatic rings, ketones, etc. ETversion version of the experimental torsion-angle preferences verbose print output of experimental torsion-angle preferences basinThresh set the basin threshold for the DGeom force field, (this shouldn't normally be altered in client code). onlyHeavyAtomsForRMS only use the heavy atoms when doing RMS filtering boundsMat custom bound matrix to specify upper and lower bounds of atom pairs embedFragmentsSeparately embed each fragment of molecule in turn useSmallRingTorsions optional torsions to improve small ring conformer sampling useMacrocycleTorsions optional torsions to improve macrocycle conformer sampling useMacrocycle14config If 1-4 distances bound heuristics for macrocycles is used CPCI custom columbic interactions between atom pairs callback void pointer to a function for reporting progress, will be called with the current iteration number. forceTransAmides constrain amide bonds to be trans. useSymmetryForPruning use molecule symmetry when doing the RMSD pruning. NOTE that for reasons of computational efficiency, setting this will also set onlyHeavyAtomsForRMS to true.

Definition at line 102 of file Embedder.h.

## Constructor & Destructor Documentation

## EmbedParameters() [1/2]

RDKit::DGeomHelpers::EmbedParameters::EmbedParameters | ( |  | ) |

inline

Definition at line 132 of file Embedder.h.

## EmbedParameters() [2/2]

RDKit::DGeomHelpers::EmbedParameters::EmbedParameters | ( | unsigned int | maxIterations,
|  | int | numThreads,
|  | int | randomSeed,
|  | bool | clearConfs,
|  | bool | useRandomCoords,
|  | double | boxSizeMult,
|  | bool | randNegEig,
|  | unsigned int | numZeroFail,
|  | const std::map< int, RDGeom::Point3D > * | coordMap,
|  | double | optimizerForceTol,
|  | bool | ignoreSmoothingFailures,
|  | bool | enforceChirality,
|  | bool | useExpTorsionAnglePrefs,
|  | bool | useBasicKnowledge,
|  | bool | verbose,
|  | double | basinThresh,
|  | double | pruneRmsThresh,
|  | bool | onlyHeavyAtomsForRMS,
|  | unsigned int | ETversion = `1`,
|  | const DistGeom::BoundsMatrix * | boundsMat = `nullptr`,
|  | bool | embedFragmentsSeparately = `true`,
|  | bool | useSmallRingTorsions = `false`,
|  | bool | useMacrocycleTorsions = `false`,
|  | bool | useMacrocycle14config = `false`,
|  | std::shared_ptr< std::map< std::pair< unsigned int, unsigned int >, double >> | CPCI = `nullptr`,
|  | void(*)(unsigned int) | callback = `nullptr`
| ) |  |

inline

Definition at line 133 of file Embedder.h.

## Member Data Documentation

## basinThresh

double RDKit::DGeomHelpers::EmbedParameters::basinThresh {5.0}

Definition at line 118 of file Embedder.h.

## boundsMat

boost::shared_ptr<const DistGeom::BoundsMatrix> RDKit::DGeomHelpers::EmbedParameters::boundsMat

Definition at line 122 of file Embedder.h.

## boundsMatForceScaling

double RDKit::DGeomHelpers::EmbedParameters::boundsMatForceScaling {1.0}

Definition at line 131 of file Embedder.h.

## boxSizeMult

double RDKit::DGeomHelpers::EmbedParameters::boxSizeMult {2.0}

Definition at line 108 of file Embedder.h.

## callback

void(* RDKit::DGeomHelpers::EmbedParameters::callback) (unsigned int)

Definition at line 128 of file Embedder.h.

## clearConfs

bool RDKit::DGeomHelpers::EmbedParameters::clearConfs {true}

Definition at line 106 of file Embedder.h.

## coordMap

const std::map<int, RDGeom::Point3D>* RDKit::DGeomHelpers::EmbedParameters::coordMap {nullptr}

Definition at line 111 of file Embedder.h.

## CPCI

std::shared_ptr<std::map<std::pair<unsigned int, unsigned int>, double> > RDKit::DGeomHelpers::EmbedParameters::CPCI

Definition at line 127 of file Embedder.h.

## embedFragmentsSeparately

bool RDKit::DGeomHelpers::EmbedParameters::embedFragmentsSeparately {true}

Definition at line 123 of file Embedder.h.

## enforceChirality

bool RDKit::DGeomHelpers::EmbedParameters::enforceChirality {true}

Definition at line 114 of file Embedder.h.

## ETversion

unsigned int RDKit::DGeomHelpers::EmbedParameters::ETversion {1}

Definition at line 121 of file Embedder.h.

## forceTransAmides

bool RDKit::DGeomHelpers::EmbedParameters::forceTransAmides {true}

Definition at line 129 of file Embedder.h.

## ignoreSmoothingFailures

bool RDKit::DGeomHelpers::EmbedParameters::ignoreSmoothingFailures {false}

Definition at line 113 of file Embedder.h.

## maxIterations

unsigned int RDKit::DGeomHelpers::EmbedParameters::maxIterations {0}

Definition at line 103 of file Embedder.h.

## numThreads

int RDKit::DGeomHelpers::EmbedParameters::numThreads {1}

Definition at line 104 of file Embedder.h.

## numZeroFail

unsigned int RDKit::DGeomHelpers::EmbedParameters::numZeroFail {1}

Definition at line 110 of file Embedder.h.

## onlyHeavyAtomsForRMS

bool RDKit::DGeomHelpers::EmbedParameters::onlyHeavyAtomsForRMS {false}

Definition at line 120 of file Embedder.h.

## optimizerForceTol

double RDKit::DGeomHelpers::EmbedParameters::optimizerForceTol {1e-3}

Definition at line 112 of file Embedder.h.

## pruneRmsThresh

double RDKit::DGeomHelpers::EmbedParameters::pruneRmsThresh {-1.0}

Definition at line 119 of file Embedder.h.

## randNegEig

bool RDKit::DGeomHelpers::EmbedParameters::randNegEig {true}

Definition at line 109 of file Embedder.h.

## randomSeed

int RDKit::DGeomHelpers::EmbedParameters::randomSeed {-1}

Definition at line 105 of file Embedder.h.

## useBasicKnowledge

bool RDKit::DGeomHelpers::EmbedParameters::useBasicKnowledge {false}

Definition at line 116 of file Embedder.h.

## useExpTorsionAnglePrefs

bool RDKit::DGeomHelpers::EmbedParameters::useExpTorsionAnglePrefs {false}

Definition at line 115 of file Embedder.h.

## useMacrocycle14config

bool RDKit::DGeomHelpers::EmbedParameters::useMacrocycle14config {false}

Definition at line 126 of file Embedder.h.

## useMacrocycleTorsions

bool RDKit::DGeomHelpers::EmbedParameters::useMacrocycleTorsions {false}

Definition at line 125 of file Embedder.h.

## useRandomCoords

bool RDKit::DGeomHelpers::EmbedParameters::useRandomCoords {false}

Definition at line 107 of file Embedder.h.

## useSmallRingTorsions

bool RDKit::DGeomHelpers::EmbedParameters::useSmallRingTorsions {false}

Definition at line 124 of file Embedder.h.

## useSymmetryForPruning

bool RDKit::DGeomHelpers::EmbedParameters::useSymmetryForPruning {true}

Definition at line 130 of file Embedder.h.

## verbose

bool RDKit::DGeomHelpers::EmbedParameters::verbose {false}

Definition at line 117 of file Embedder.h.

The documentation for this struct was generated from the following file:

- Embedder.h