Chemical Data Processing Library Python API - Version 1.4.0
Classes | Functions
CDPL.ConfGen Package Reference

Contains classes and functions related to conformer ensemble generation. More...

Classes

class  CFLMoleculeInputHandler
 Handler for the input of molecule fragments stored in the CDPL Conformer Generator Fragment Library (CFL) format. More...
 
class  CFLMoleculeReader
 Reader for molecule fragment data stored in the CDPL Conformer Generator Fragment Library (CFL) format. More...
 
class  CallbackFunction
 Generic wrapper for storing user-defined callback functions returning a bool status flag (see [FUNWRP]). More...
 
class  CanonicalFragment
 Data structure representing a canonicalized molecular fragment. More...
 
class  ConformerData
 Container for the 3D coordinates of a generated conformer plus its associated energy value. More...
 
class  ConformerGenerator
 High-level driver for the generation of low-energy conformer ensembles of molecular graphs. More...
 
class  ConformerGeneratorSettings
 Bundle of configuration parameters for conformer ensemble generation via class ConfGen.ConformerGenerator. More...
 
class  ConformerSamplingMode
 Provides constants used to specify the employed conformer sampling method. More...
 
class  ControlParameter
 Provides keys for built-in control-parameters. More...
 
class  ControlParameterDefault
 Provides default values for built-in control-parameters. More...
 
class  DGConstraintGenerator
 Constructs geometric constraints (distance, planarity, volume) for distance-geometry-based 3D structure generation. More...
 
class  DGConstraintGeneratorSettings
 Bundle of configuration parameters for distance-geometry constraint generation via class ConfGen.DGConstraintGenerator. More...
 
class  DGStructureGenerator
 Distance-geometry-based generation of raw 3D structures for molecular graphs. More...
 
class  DGStructureGeneratorSettings
 Bundle of configuration parameters for raw coordinates generation via class ConfGen.DGStructureGenerator. More...
 
class  DataFormat
 Provides preinitialized Base.DataFormat objects for all supported data formats. More...
 
class  FileCFLMoleculeReader
 
class  ForceFieldType
 Provides constants used to specify the forcefield that shall be used for 3D coordinates refinement and energy calculations. More...
 
class  FragmentAssembler
 Driver for the fragment-based generation of 3D starting conformers. More...
 
class  FragmentAssemblerSettings
 Bundle of configuration parameters for fragment conformer assembly via class ConfGen.FragmentAssembler. More...
 
class  FragmentConformerGenerator
 Driver for the generation of low-energy conformer ensembles for single molecular fragments (chain, small ring system or macrocycle) More...
 
class  FragmentConformerGeneratorSettings
 Bundle of configuration parameters for fragment conformer ensemble generation via class ConfGen.FragmentConformerGenerator. More...
 
class  FragmentLibrary
 Data structure representing a library of pre-generated molecular fragment conformer ensembles. More...
 
class  FragmentLibraryEntry
 Data structure representing a single entry of a conformer generation fragment library. More...
 
class  FragmentLibraryGenerator
 Driver for populating a ConfGen.FragmentLibrary with conformers of canonicalized molecular fragments. More...
 
class  FragmentType
 Provides constants that are used to describe the nature of fragments used to build-up molecule 3D models. More...
 
class  LogMessageCallbackFunction
 Generic wrapper for storing user-defined log message callback functions (see [FUNWRP]). More...
 
class  NitrogenEnumerationMode
 Provides constants for specifying the mode of invertible nitrogen enumeration. More...
 
class  RMSDConformerSelector
 Greedy RMSD-based conformer-diversity filter. More...
 
class  ReturnCode
 Provides constants that are used to describe the result of operations related to conformer generation. More...
 
class  StructureGenerationMode
 Provides constants used to specify the 3D structure generation method that shall be employed. More...
 
class  StructureGenerator
 High-level driver for the generation of a single low-energy 3D structure from a molecular graph. More...
 
class  StructureGeneratorSettings
 Bundle of configuration parameters for single 3D structure generation via class ConfGen.StructureGenerator. More...
 
class  TorsionCategory
 Represents a node of a hierarchical torsion library. More...
 
class  TorsionDriver
 Driver for the systematic enumeration of conformers obtained by rotating around rotatable bonds of a molecular graph, using preferred torsion angles taken from configured ConfGen.TorsionLibrary instances. More...
 
class  TorsionDriverSettings
 Bundle of configuration parameters for systematic conformer enumeration via class ConfGen.TorsionDriver. More...
 
class  TorsionLibrary
 Data structure representing a hierarchical library of torsion rules organized into categories. More...
 
class  TorsionRule
 Data structure for the representation of single torsion library rules. More...
 
class  TorsionRuleMatch
 A single match of a ConfGen.TorsionRule against a rotatable bond: the rule, the bond and the four atoms that span the torsion. More...
 
class  TorsionRuleMatcher
 Finds torsion rules from a ConfGen.TorsionLibrary instance that match a given rotatable bond. More...
 

Functions

int getRotatableBondCount (Chem.MolecularGraph molgraph, bool het_h_rotors)
 Returns the number of rotatable bonds in molgraph (see ConfGen.isRotatableBond()). More...
 
int createFragmentLinkBondMask (Chem.MolecularGraph molgraph, Util.BitSet bond_mask, bool reset=True)
 Sets bits in bond_mask for every fragment-link bond of molgraph (see ConfGen.isFragmentLinkBond()). More...
 
int createRotatableBondMask (Chem.MolecularGraph molgraph, Util.BitSet bond_mask, bool het_h_rotors, bool reset=True)
 Sets bits in bond_mask for every rotatable bond of molgraph (see ConfGen.isRotatableBond()). More...
 
int createRotatableBondMask (Chem.MolecularGraph molgraph, Util.BitSet excl_bond_mask, Util.BitSet bond_mask, bool het_h_rotors, bool reset=True)
 Sets bits in bond_mask for every rotatable bond of molgraph that is not already marked in excl_bond_mask. More...
 
bool initFixedSubstructurePattern (Chem.MolecularGraph molgraph, Chem.MolecularGraph tmplt)
 Initializes molgraph as a fixed-substructure pattern matched against the supplied tmplt template. More...
 
None initFixedSubstructureTemplate (Chem.MolecularGraph molgraph, bool init_match_expr)
 Initializes molgraph as a fixed-substructure template (perception of atom/bond properties and optionally match expressions). More...
 
bool isFragmentLinkBond (Chem.Bond bond, Chem.MolecularGraph molgraph)
 Tells whether bond is a link bond between two fragments under the fragment-based conformer generation heuristics. More...
 
bool isRotatableBond (Chem.Bond bond, Chem.MolecularGraph molgraph, bool het_h_rotors)
 Tells whether bond is rotatable under the conformer generation rotatable bond heuristics. More...
 
int parameterizeMMFF94Interactions (Chem.MolecularGraph molgraph, ForceField.MMFF94InteractionParameterizer parameterizer, ForceField.MMFF94InteractionData param_data, int ff_type, bool strict, float estat_de_const, float estat_dist_expo)
 Parameterizes the MMFF94 interactions of molgraph via parameterizer and stores them in param_data. More...
 
int perceiveFragmentType (Chem.MolecularGraph molgraph)
 Classifies molgraph as a ConfGen.FragmentType (chain, flexible ring, rigid ring, etc.). More...
 
None prepareForConformerGeneration (Chem.Molecule mol, bool canonicalize=False)
 Prepares the molecule mol for conformer generation. More...
 
int setupFixedSubstructureData (Chem.CommonConnectedSubstructureSearch sub_search, int max_num_matches, Chem.MolecularGraph molgraph, Chem.Fragment fixed_substr, Math.Vector3DArray fixed_substr_coords=0)
 Configures the fixed-substructure handling of molgraph using the matches produced by sub_search. More...
 
int setupFixedSubstructureData (Chem.SubstructureSearch sub_search, int max_num_matches, Chem.MolecularGraph molgraph, Chem.Fragment fixed_substr, Math.Vector3DArray fixed_substr_coords=0)
 Configures the fixed-substructure handling of molgraph using the matches produced by sub_search. More...
 
None setStrictErrorCheckingParameter (Base.ControlParameterContainer cntnr, bool strict)
 Sets the value of the ConfGen.ControlParameter.STRICT_ERROR_CHECKING parameter stored in cntnr. More...
 
bool hasStrictErrorCheckingParameter (Base.ControlParameterContainer cntnr)
 Tells whether the ConfGen.ControlParameter.STRICT_ERROR_CHECKING parameter is set on cntnr. More...
 
bool getStrictErrorCheckingParameter (Base.ControlParameterContainer cntnr)
 Returns the value of the ConfGen.ControlParameter.STRICT_ERROR_CHECKING parameter stored in cntnr. More...
 
None clearStrictErrorCheckingParameter (Base.ControlParameterContainer cntnr)
 Removes the ConfGen.ControlParameter.STRICT_ERROR_CHECKING parameter from cntnr. More...
 

Detailed Description

Contains classes and functions related to conformer ensemble generation.

Function Documentation

◆ getRotatableBondCount()

int CDPL.ConfGen.getRotatableBondCount ( Chem.MolecularGraph  molgraph,
bool  het_h_rotors 
)

Returns the number of rotatable bonds in molgraph (see ConfGen.isRotatableBond()).

Parameters
molgraphThe molecular graph.
het_h_rotorsIf True, rotors involving only heteroatom-bound hydrogens are also counted as rotatable.
Returns
The rotatable bond count.

◆ createFragmentLinkBondMask()

int CDPL.ConfGen.createFragmentLinkBondMask ( Chem.MolecularGraph  molgraph,
Util.BitSet  bond_mask,
bool   reset = True 
)

Sets bits in bond_mask for every fragment-link bond of molgraph (see ConfGen.isFragmentLinkBond()).

Parameters
molgraphThe molecular graph.
bond_maskThe output bit mask sized to the number of bonds in molgraph.
resetIf True, the output mask is cleared before bits are set.
Returns
The number of fragment-link bonds encountered.

◆ createRotatableBondMask() [1/2]

int CDPL.ConfGen.createRotatableBondMask ( Chem.MolecularGraph  molgraph,
Util.BitSet  bond_mask,
bool  het_h_rotors,
bool   reset = True 
)

Sets bits in bond_mask for every rotatable bond of molgraph (see ConfGen.isRotatableBond()).

Parameters
molgraphThe molecular graph.
bond_maskThe output bit mask sized to the number of bonds in molgraph.
het_h_rotorsIf True, rotors involving only heteroatom-bound hydrogens are also counted as rotatable.
resetIf True, the output mask is cleared before bits are set.
Returns
The number of rotatable bonds encountered.

◆ createRotatableBondMask() [2/2]

int CDPL.ConfGen.createRotatableBondMask ( Chem.MolecularGraph  molgraph,
Util.BitSet  excl_bond_mask,
Util.BitSet  bond_mask,
bool  het_h_rotors,
bool   reset = True 
)

Sets bits in bond_mask for every rotatable bond of molgraph that is not already marked in excl_bond_mask.

Parameters
molgraphThe molecular graph.
excl_bond_maskThe bit mask of bonds to exclude from rotatable bond consideration.
bond_maskThe output bit mask sized to the number of bonds in molgraph.
het_h_rotorsIf True, rotors involving only heteroatom-bound hydrogens are also counted as rotatable.
resetIf True, the output mask is cleared before bits are set.
Returns
The number of rotatable bonds encountered.

◆ initFixedSubstructurePattern()

bool CDPL.ConfGen.initFixedSubstructurePattern ( Chem.MolecularGraph  molgraph,
Chem.MolecularGraph  tmplt 
)

Initializes molgraph as a fixed-substructure pattern matched against the supplied tmplt template.

Parameters
molgraphThe molecular graph to initialize.
tmpltThe template molecular graph (may be nullptr).
Returns
True if the initialization succeeded, and False otherwise.
Since
1.1

◆ initFixedSubstructureTemplate()

None CDPL.ConfGen.initFixedSubstructureTemplate ( Chem.MolecularGraph  molgraph,
bool  init_match_expr 
)

Initializes molgraph as a fixed-substructure template (perception of atom/bond properties and optionally match expressions).

Parameters
molgraphThe molecular graph that will serve as the template.
init_match_exprIf True, atom/bond match expressions are also generated.
Since
1.1

◆ isFragmentLinkBond()

bool CDPL.ConfGen.isFragmentLinkBond ( Chem.Bond  bond,
Chem.MolecularGraph  molgraph 
)

Tells whether bond is a link bond between two fragments under the fragment-based conformer generation heuristics.

Parameters
bondThe bond to test.
molgraphThe parent molecular graph.
Returns
True if bond connects two fragments, and False otherwise.

◆ isRotatableBond()

bool CDPL.ConfGen.isRotatableBond ( Chem.Bond  bond,
Chem.MolecularGraph  molgraph,
bool  het_h_rotors 
)

Tells whether bond is rotatable under the conformer generation rotatable bond heuristics.

Parameters
bondThe bond to test.
molgraphThe parent molecular graph.
het_h_rotorsIf True, rotors involving only heteroatom-bound hydrogens are also counted as rotatable.
Returns
True if bond is rotatable, and False otherwise.

◆ parameterizeMMFF94Interactions()

int CDPL.ConfGen.parameterizeMMFF94Interactions ( Chem.MolecularGraph  molgraph,
ForceField.MMFF94InteractionParameterizer  parameterizer,
ForceField.MMFF94InteractionData  param_data,
int  ff_type,
bool  strict,
float  estat_de_const,
float  estat_dist_expo 
)

Parameterizes the MMFF94 interactions of molgraph via parameterizer and stores them in param_data.

Parameters
molgraphThe molecular graph.
parameterizerThe MMFF94 interaction parameterizer.
param_dataThe output interaction-data structure.
ff_typeThe MMFF94 force field variant (see ForceField.MMFF94InteractionParameterizer for valid values).
strictIf True, missing parameters are treated as fatal errors. Otherwise, in case of parameterization problems, suitable fallback parameters will be used.
estat_de_constThe dielectric constant used in the electrostatic energy term.
estat_dist_expoThe distance exponent used in the electrostatic energy term.
Returns
A ConfGen.ReturnCode value reporting the outcome of the parameterization.

◆ perceiveFragmentType()

int CDPL.ConfGen.perceiveFragmentType ( Chem.MolecularGraph  molgraph)

Classifies molgraph as a ConfGen.FragmentType (chain, flexible ring, rigid ring, etc.).

Parameters
molgraphThe molecular graph.
Returns
The ConfGen.FragmentType identifier.

◆ prepareForConformerGeneration()

None CDPL.ConfGen.prepareForConformerGeneration ( Chem.Molecule  mol,
bool   canonicalize = False 
)

Prepares the molecule mol for conformer generation.

The molecules gets prepared by completing its hydrogens, perceiving the SSSR, ring flags, implicit hydrogen counts, hybridization states, aromaticity and (optionally) canonicalizing the atom ordering.

Parameters
molThe molecule to prepare (modified in place).
canonicalizeIf True, the atom ordering of mol is canonicalized.

◆ setupFixedSubstructureData() [1/2]

int CDPL.ConfGen.setupFixedSubstructureData ( Chem.CommonConnectedSubstructureSearch  sub_search,
int  max_num_matches,
Chem.MolecularGraph  molgraph,
Chem.Fragment  fixed_substr,
Math.Vector3DArray   fixed_substr_coords = 0 
)

Configures the fixed-substructure handling of molgraph using the matches produced by sub_search.

Parameters
sub_searchThe common-connected-substructure search engine providing the matches.
max_num_matchesThe maximum number of matches to process (0 means unlimited).
molgraphThe molecular graph that holds the input atoms (modified in place).
fixed_substrThe output fragment receiving the matched atoms/bonds.
fixed_substr_coordsOptional output array receiving the 3D coordinates of the fixed substructure atoms.
Returns
The number of matches processed.
Since
1.1

◆ setupFixedSubstructureData() [2/2]

int CDPL.ConfGen.setupFixedSubstructureData ( Chem.SubstructureSearch  sub_search,
int  max_num_matches,
Chem.MolecularGraph  molgraph,
Chem.Fragment  fixed_substr,
Math.Vector3DArray   fixed_substr_coords = 0 
)

Configures the fixed-substructure handling of molgraph using the matches produced by sub_search.

Parameters
sub_searchThe common-connected-substructure search engine providing the matches.
max_num_matchesThe maximum number of matches to process (0 means unlimited).
molgraphThe molecular graph that holds the input atoms (modified in place).
fixed_substrThe output fragment receiving the matched atoms/bonds.
fixed_substr_coordsOptional output array receiving the 3D coordinates of the fixed substructure atoms.
Returns
The number of matches processed.
Since
1.1

◆ setStrictErrorCheckingParameter()

None CDPL.ConfGen.setStrictErrorCheckingParameter ( Base.ControlParameterContainer  cntnr,
bool  strict 
)

Sets the value of the ConfGen.ControlParameter.STRICT_ERROR_CHECKING parameter stored in cntnr.

Parameters
cntnrThe control-parameter container.
strictThe new STRICT_ERROR_CHECKING value.

◆ hasStrictErrorCheckingParameter()

bool CDPL.ConfGen.hasStrictErrorCheckingParameter ( Base.ControlParameterContainer  cntnr)

Tells whether the ConfGen.ControlParameter.STRICT_ERROR_CHECKING parameter is set on cntnr.

Parameters
cntnrThe control-parameter container.
Returns
True if the parameter is set, and False otherwise.

◆ getStrictErrorCheckingParameter()

bool CDPL.ConfGen.getStrictErrorCheckingParameter ( Base.ControlParameterContainer  cntnr)

Returns the value of the ConfGen.ControlParameter.STRICT_ERROR_CHECKING parameter stored in cntnr.

Parameters
cntnrThe control-parameter container to query.
Returns
The current value of the STRICT_ERROR_CHECKING parameter (the ConfGen.ControlParameterDefault.STRICT_ERROR_CHECKING value if the parameter is unset).

◆ clearStrictErrorCheckingParameter()

None CDPL.ConfGen.clearStrictErrorCheckingParameter ( Base.ControlParameterContainer  cntnr)

Removes the ConfGen.ControlParameter.STRICT_ERROR_CHECKING parameter from cntnr.

Parameters
cntnrThe control-parameter container.