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

Classes

struct  FragmenterBondType
 

Functions

ROMolfragmentOnBonds (const ROMol &mol, const std::vector< unsigned int > &bondIndices, bool addDummies=true, const std::vector< std::pair< unsigned int, unsigned int > > *dummyLabels=0, const std::vector< Bond::BondType > *bondTypes=0, std::vector< unsigned int > *nCutsPerAtom=0)
 Fragments a molecule by breaking a set of bonds. More...
 
ROMolfragmentOnBonds (const ROMol &mol, const std::vector< FragmenterBondType > &bondPatterns, const std::map< unsigned int, ROMOL_SPTR > *atomEnvirons=0, std::vector< unsigned int > *nCutsPerAtom=0)
 
void fragmentOnSomeBonds (const ROMol &mol, const std::vector< unsigned int > &bondIndices, std::vector< ROMOL_SPTR > &resMols, unsigned int maxToCut=1, bool addDummies=true, const std::vector< std::pair< unsigned int, unsigned int > > *dummyLabels=0, const std::vector< Bond::BondType > *bondTypes=0, std::vector< std::vector< unsigned int > > *nCutsPerAtom=0)
 
ROMolfragmentOnBRICSBonds (const ROMol &mol)
 Fragments a molecule by breaking all BRICS bonds. More...
 
void constructFragmenterAtomTypes (std::istream *inStream, std::map< unsigned int, std::string > &defs, const std::string &comment="//", bool validate=true, std::map< unsigned int, ROMOL_SPTR > *environs=0)
 
void constructFragmenterAtomTypes (const std::string &str, std::map< unsigned int, std::string > &defs, const std::string &comment="//", bool validate=true, std::map< unsigned int, ROMOL_SPTR > *environs=0)
 
void constructBRICSAtomTypes (std::map< unsigned int, std::string > &defs, std::map< unsigned int, ROMOL_SPTR > *environs=0)
 
void constructFragmenterBondTypes (std::istream *inStream, const std::map< unsigned int, std::string > &atomTypes, std::vector< FragmenterBondType > &defs, const std::string &comment="//", bool validate=true, bool labelByConnector=true)
 
void constructFragmenterBondTypes (const std::string &str, const std::map< unsigned int, std::string > &atomTypes, std::vector< FragmenterBondType > &defs, const std::string &comment="//", bool validate=true, bool labelByConnector=true)
 
void constructBRICSBondTypes (std::vector< FragmenterBondType > &defs)
 

Function Documentation

void RDKit::MolFragmenter::constructBRICSAtomTypes ( std::map< unsigned int, std::string > &  defs,
std::map< unsigned int, ROMOL_SPTR > *  environs = 0 
)
void RDKit::MolFragmenter::constructBRICSBondTypes ( std::vector< FragmenterBondType > &  defs)
void RDKit::MolFragmenter::constructFragmenterAtomTypes ( std::istream *  inStream,
std::map< unsigned int, std::string > &  defs,
const std::string &  comment = "//",
bool  validate = true,
std::map< unsigned int, ROMOL_SPTR > *  environs = 0 
)
void RDKit::MolFragmenter::constructFragmenterAtomTypes ( const std::string &  str,
std::map< unsigned int, std::string > &  defs,
const std::string &  comment = "//",
bool  validate = true,
std::map< unsigned int, ROMOL_SPTR > *  environs = 0 
)
void RDKit::MolFragmenter::constructFragmenterBondTypes ( std::istream *  inStream,
const std::map< unsigned int, std::string > &  atomTypes,
std::vector< FragmenterBondType > &  defs,
const std::string &  comment = "//",
bool  validate = true,
bool  labelByConnector = true 
)
void RDKit::MolFragmenter::constructFragmenterBondTypes ( const std::string &  str,
const std::map< unsigned int, std::string > &  atomTypes,
std::vector< FragmenterBondType > &  defs,
const std::string &  comment = "//",
bool  validate = true,
bool  labelByConnector = true 
)
ROMol* RDKit::MolFragmenter::fragmentOnBonds ( const ROMol mol,
const std::vector< unsigned int > &  bondIndices,
bool  addDummies = true,
const std::vector< std::pair< unsigned int, unsigned int > > *  dummyLabels = 0,
const std::vector< Bond::BondType > *  bondTypes = 0,
std::vector< unsigned int > *  nCutsPerAtom = 0 
)

Fragments a molecule by breaking a set of bonds.

Parameters
mol- the molecule to be modified
bondIndices- indices of the bonds to be broken

optional:

Parameters
addDummies- toggles addition of dummy atoms to indicate where bonds were broken
dummyLabels- used to provide the labels to be used for the dummies. the first element in each pair is the label for the dummy that replaces the bond's beginAtom, the second is for the dummy that replaces the bond's endAtom. If not provided, the dummies are labeled with atom indices.
bondTypes- used to provide the bond type to use between the fragments and the dummy atoms. If not provided, defaults to single.
nCutsPerAtom- used to return the number of bonds that were cut at each atom. Should be nAtoms long.
Returns
a new ROMol with the modifications The client is responsible for deleting this molecule.
ROMol* RDKit::MolFragmenter::fragmentOnBonds ( const ROMol mol,
const std::vector< FragmenterBondType > &  bondPatterns,
const std::map< unsigned int, ROMOL_SPTR > *  atomEnvirons = 0,
std::vector< unsigned int > *  nCutsPerAtom = 0 
)

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

ROMol* RDKit::MolFragmenter::fragmentOnBRICSBonds ( const ROMol mol)

Fragments a molecule by breaking all BRICS bonds.

Returns
a new ROMol with the modifications The client is responsible for deleting this molecule.
void RDKit::MolFragmenter::fragmentOnSomeBonds ( const ROMol mol,
const std::vector< unsigned int > &  bondIndices,
std::vector< ROMOL_SPTR > &  resMols,
unsigned int  maxToCut = 1,
bool  addDummies = true,
const std::vector< std::pair< unsigned int, unsigned int > > *  dummyLabels = 0,
const std::vector< Bond::BondType > *  bondTypes = 0,
std::vector< std::vector< unsigned int > > *  nCutsPerAtom = 0 
)