Chemical Data Processing Library Python API - Version 1.4.0
Public Member Functions | Properties | List of all members
CDPL.Chem.BemisMurckoAnalyzer Class Reference

Decomposes a molecular graph into its Bemis-Murcko framework, ring systems, linkers and side chains. More...

+ Inheritance diagram for CDPL.Chem.BemisMurckoAnalyzer:

Public Member Functions

None __init__ ()
 Constructs the BemisMurckoAnalyzer instance.
 
None __init__ (BemisMurckoAnalyzer analyzer)
 Initializes a copy of the BemisMurckoAnalyzer instance analyzer. More...
 
BemisMurckoAnalyzer assign (BemisMurckoAnalyzer gen)
 Replaces the current state of self with a copy of the state of the BemisMurckoAnalyzer instance gen. More...
 
None stripHydrogens (bool strip)
 Specifies whether hydrogen atoms shall be stripped from the input before the decomposition. More...
 
bool hydrogensStripped ()
 Tells whether hydrogen atoms are stripped from the input before the decomposition. More...
 
None analyze (MolecularGraph molgraph)
 Performs the Bemis-Murcko decomposition of the molecular graph molgraph. More...
 
FragmentList getRingSystems ()
 Returns the perceived ring systems of the input molecular graph. More...
 
FragmentList getSideChains ()
 Returns the side chains (acyclic substituents) of the input molecular graph. More...
 
FragmentList getLinkers ()
 Returns the linker fragments connecting different ring systems of the input molecular graph. More...
 
FragmentList getFrameworks ()
 Returns the Bemis-Murcko frameworks of the input molecular graph (union of ring systems and linkers). More...
 

Properties

 hydrogenStripping = property(hydrogensStripped, stripHydrogens)
 
 ringSystems = property(getRingSystems)
 
 sideChains = property(getSideChains)
 
 linkers = property(getLinkers)
 
 frameworks = property(getFrameworks)
 

Detailed Description

Decomposes a molecular graph into its Bemis-Murcko framework, ring systems, linkers and side chains.

After calling analyze() the four constituent fragment sets can be queried separately via getRingSystems(), getLinkers(), getFrameworks() and getSideChains(). The framework of a molecule is the union of all ring systems together with the linker chains that connect them; side chains are the remaining acyclic substituents. Hydrogen atoms can optionally be stripped from the input.

See also
[BEMU]
Since
1.1

Constructor & Destructor Documentation

◆ __init__()

None CDPL.Chem.BemisMurckoAnalyzer.__init__ ( BemisMurckoAnalyzer  analyzer)

Initializes a copy of the BemisMurckoAnalyzer instance analyzer.

Parameters
analyzerThe BemisMurckoAnalyzer instance to copy.

Member Function Documentation

◆ assign()

BemisMurckoAnalyzer CDPL.Chem.BemisMurckoAnalyzer.assign ( BemisMurckoAnalyzer  gen)

Replaces the current state of self with a copy of the state of the BemisMurckoAnalyzer instance gen.

Parameters
genThe BemisMurckoAnalyzer instance to copy.
Returns
self

◆ stripHydrogens()

None CDPL.Chem.BemisMurckoAnalyzer.stripHydrogens ( bool  strip)

Specifies whether hydrogen atoms shall be stripped from the input before the decomposition.

Parameters
stripIf True, hydrogens are removed prior to analysis.

◆ hydrogensStripped()

bool CDPL.Chem.BemisMurckoAnalyzer.hydrogensStripped ( )

Tells whether hydrogen atoms are stripped from the input before the decomposition.

Returns
True if hydrogens are stripped, and False otherwise.

◆ analyze()

None CDPL.Chem.BemisMurckoAnalyzer.analyze ( MolecularGraph  molgraph)

Performs the Bemis-Murcko decomposition of the molecular graph molgraph.

After this call the four fragment sets produced by the decomposition are available via getRingSystems(), getLinkers(), getFrameworks() and getSideChains().

Parameters
molgraphThe molecular graph to decompose.

◆ getRingSystems()

FragmentList CDPL.Chem.BemisMurckoAnalyzer.getRingSystems ( )

Returns the perceived ring systems of the input molecular graph.

Returns
A reference to the list of ring-system fragments.

◆ getSideChains()

FragmentList CDPL.Chem.BemisMurckoAnalyzer.getSideChains ( )

Returns the side chains (acyclic substituents) of the input molecular graph.

Returns
A reference to the list of side-chain fragments.

◆ getLinkers()

FragmentList CDPL.Chem.BemisMurckoAnalyzer.getLinkers ( )

Returns the linker fragments connecting different ring systems of the input molecular graph.

Returns
A reference to the list of linker fragments.

◆ getFrameworks()

FragmentList CDPL.Chem.BemisMurckoAnalyzer.getFrameworks ( )

Returns the Bemis-Murcko frameworks of the input molecular graph (union of ring systems and linkers).

Returns
A reference to the list of framework fragments.