RDKit
Open-source cheminformatics and machine learning.
RDKit::RxnOps Namespace Reference

Enumerations

enum  SanitizeRxnFlags {
  SANITIZE_NONE = 0x0, SANITIZE_RGROUP_NAMES = 0x1, SANITIZE_ATOM_MAPS = 0x2, SANITIZE_ADJUST_REACTANTS = 0x4,
  SANITIZE_MERGEHS = 0x8, SANITIZE_ALL = 0xFFFFFFFF
}
 

Functions

void fixRGroups (ChemicalReaction &rxn)
 
void fixAtomMaps (ChemicalReaction &rxn)
 
void adjustTemplates (ChemicalReaction &rxn, const MolOps::AdjustQueryParameters &params)
 Adjusts the reactant templates to properly match reagents. More...
 
void fixHs (ChemicalReaction &rxn)
 merge query Hs if appropriate More...
 
const MolOps::AdjustQueryParameters DefaultRxnAdjustParams ()
 
const MolOps::AdjustQueryParameters ChemDrawRxnAdjustParams ()
 
void sanitizeRxn (ChemicalReaction &rxn, unsigned int &operationsThatFailed, unsigned int sanitizeOps=SANITIZE_ALL, const MolOps::AdjustQueryParameters &params=DefaultRxnAdjustParams())
 carries out a collection of tasks for cleaning up a reaction and More...
 
void sanitizeRxn (ChemicalReaction &rxn, const MolOps::AdjustQueryParameters &params=DefaultRxnAdjustParams())
 

Enumeration Type Documentation

Enumerator
SANITIZE_NONE 
SANITIZE_RGROUP_NAMES 
SANITIZE_ATOM_MAPS 
SANITIZE_ADJUST_REACTANTS 
SANITIZE_MERGEHS 
SANITIZE_ALL 

Definition at line 96 of file SanitizeRxn.h.

Function Documentation

void RDKit::RxnOps::adjustTemplates ( ChemicalReaction rxn,
const MolOps::AdjustQueryParameters params 
)

Adjusts the reactant templates to properly match reagents.

void RDKit::RxnOps::fixAtomMaps ( ChemicalReaction rxn)

If atom maps are not defined on rgroups, attempt to deduce them from the RGroup labels, or add new ones if possible.

void RDKit::RxnOps::fixHs ( ChemicalReaction rxn)

merge query Hs if appropriate

void RDKit::RxnOps::fixRGroups ( ChemicalReaction rxn)

Any dummy atom with a map but no RGroup label, should be an RGroup in RDKit's view of a reaction. See if these atoms can be salvaged into RGroups.

void RDKit::RxnOps::sanitizeRxn ( ChemicalReaction rxn,
unsigned int &  operationsThatFailed,
unsigned int  sanitizeOps = SANITIZE_ALL,
const MolOps::AdjustQueryParameters params = DefaultRxnAdjustParams() 
)

carries out a collection of tasks for cleaning up a reaction and

that it makes "chemical sense" in the context of RDKit reacitons

This functions calls the following in sequence

  1. RxnOps::fixRGroups()
  2. RxnOps::fixupAtomMaps()
  3. RxnOps::fixupTemplateAromaticity()
  4. RxnOps::mergeHs()
Parameters
rxn: the ChemicalReaction to be cleaned
operationThatFailed: the first (if any) sanitization operation that fails is set here. The values are taken from the SanitizeFlags enum. On success, the value is SanitizeFlags::SANITIZE_NONE
sanitizeOps: the bits here are used to set which sanitization operations are carried out. The elements of the SanitizeFlags enum define the operations.

Notes:

  • This attempts to fix known issues with certain reaction drawers. HOWEVER, if any flag is returned in operationsPerformed, the reaction may still be suspect to its validity.
  • Aromaticity can be tricky when starting with Kekule structures that have query features, aromaticity works well for non-query rings, however certain structures (substitutions on Kekule rings that should really be aromatic) may not have enough information.
void RDKit::RxnOps::sanitizeRxn ( ChemicalReaction rxn,
const MolOps::AdjustQueryParameters params = DefaultRxnAdjustParams() 
)

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.