RDKit
Open-source cheminformatics and machine learning.
|
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=2, 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) | |
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. trackFailures keep track of which checks during the embedding process fail failures if trackFailures is true, this is used to track the number of times each embedding check fails enableSequentialRandomSeeds handle the random number seeds so that conformer generation can be restarted
Definition at line 120 of file Embedder.h.
|
inline |
Definition at line 155 of file Embedder.h.
|
inline |
Definition at line 156 of file Embedder.h.
double RDKit::DGeomHelpers::EmbedParameters::basinThresh {5.0} |
Definition at line 136 of file Embedder.h.
boost::shared_ptr<const DistGeom::BoundsMatrix> RDKit::DGeomHelpers::EmbedParameters::boundsMat |
Definition at line 140 of file Embedder.h.
double RDKit::DGeomHelpers::EmbedParameters::boundsMatForceScaling {1.0} |
Definition at line 149 of file Embedder.h.
double RDKit::DGeomHelpers::EmbedParameters::boxSizeMult {2.0} |
Definition at line 126 of file Embedder.h.
Definition at line 146 of file Embedder.h.
Definition at line 124 of file Embedder.h.
const std::map<int, RDGeom::Point3D>* RDKit::DGeomHelpers::EmbedParameters::coordMap {nullptr} |
Definition at line 129 of file Embedder.h.
std::shared_ptr<std::map<std::pair<unsigned int, unsigned int>, double> > RDKit::DGeomHelpers::EmbedParameters::CPCI |
Definition at line 145 of file Embedder.h.
Definition at line 141 of file Embedder.h.
Definition at line 152 of file Embedder.h.
Definition at line 132 of file Embedder.h.
Definition at line 139 of file Embedder.h.
Definition at line 151 of file Embedder.h.
Definition at line 147 of file Embedder.h.
Definition at line 131 of file Embedder.h.
Definition at line 121 of file Embedder.h.
int RDKit::DGeomHelpers::EmbedParameters::numThreads {1} |
Definition at line 122 of file Embedder.h.
Definition at line 128 of file Embedder.h.
Definition at line 138 of file Embedder.h.
Definition at line 130 of file Embedder.h.
double RDKit::DGeomHelpers::EmbedParameters::pruneRmsThresh {-1.0} |
Definition at line 137 of file Embedder.h.
Definition at line 127 of file Embedder.h.
int RDKit::DGeomHelpers::EmbedParameters::randomSeed {-1} |
Definition at line 123 of file Embedder.h.
Definition at line 153 of file Embedder.h.
Definition at line 150 of file Embedder.h.
Definition at line 134 of file Embedder.h.
Definition at line 133 of file Embedder.h.
Definition at line 144 of file Embedder.h.
Definition at line 143 of file Embedder.h.
Definition at line 125 of file Embedder.h.
Definition at line 142 of file Embedder.h.
Definition at line 148 of file Embedder.h.
Definition at line 135 of file Embedder.h.