Package schrodinger :: Package structutils :: Module createfragments :: Class _StructureFragmenter
[hide private]
[frames] | no frames]

Class _StructureFragmenter

object --+
         |
        _StructureFragmenter

Class to create fragments from a given set of _Options and a given schrodinger.structure.Structure.

Instance Methods [hide private]
 
__init__(self, st, options)
Create a StructureFragmenter object.
 
findBreakableBonds(self)
Gets the list of those C-C bonds that should be broken.
 
breakBonds(self)
Breaks the C-C bonds that should be broken and returns a list of new molecules
 
generateFinalMolecules(self)
Create a list of fragments that meet all the criteria
 
removeTerminalAtoms(self)
Remove atoms that are bound to only one other atom.
 
generateMurckoScaffold(self)
 
storeFragments(self, options)
Creates the final fragment list - also adds hydrogen atoms and sets the title
 
getStOutput(self)
bool
_checkMolecule(self, mol)
Check to see if a fragment structure passes all the criteria
bool
hasEnoughHeavyAtoms(self, mol)
Calculates how many non-hydgrogen atoms the molecule contains and returns False if less than user-specified minimum.
bool
isAllowedSmartsPattern(self, mol)
Checks if any prohibited SMARTS pattern matches fragment
bool
checkBrokenBonds(self, mol)
Checks if molecule has more than the cutoff number of broken bonds
 
alternateFurthurBonds(self)
Recursive function for breaking any combination of brekable bonds.
 
makeFragments(self)
Generate fragments by breaking bonds that have True set for them in self.break_nobreak_dict.
 
_makeFragmentsUsingBondsSet(self, bonds_set)
Generate fragments by breaking the bonds in the bonds_set.
list of lists
getCombinations(self, bonds)
Get all possible combinations of bonds to break that will return all possible fragments, including intermediates.

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, st, options)
(Constructor)

 

Create a StructureFragmenter object.

Parameters:
Overrides: object.__init__

removeTerminalAtoms(self)

 

Remove atoms that are bound to only one other atom. Returns True if such atoms were found.

_checkMolecule(self, mol)

 

Check to see if a fragment structure passes all the criteria

Parameters:
Returns: bool
True if structure passes the criteria, False if not

hasEnoughHeavyAtoms(self, mol)

 

Calculates how many non-hydgrogen atoms the molecule contains and returns False if less than user-specified minimum.

Parameters:
Returns: bool
True if the fragment has enough heavy atoms, False if not

isAllowedSmartsPattern(self, mol)

 

Checks if any prohibited SMARTS pattern matches fragment

Parameters:
Returns: bool
True if the fragment has an allowed SMARTS pattern, False if not

checkBrokenBonds(self, mol)

 

Checks if molecule has more than the cutoff number of broken bonds

Parameters:
Returns: bool
True if the molecule has fewer than the maximum number of cutoff bonds, False if not

alternateFurthurBonds(self)

 

Recursive function for breaking any combination of brekable bonds.
For example, if there are 3 bonds, then the following breaks will be
produced:
    1  2  3  12  23  13  123

For 4 bonds the following:
    1  2  3  4  12  13  14  23  24  14  123  124  134  234 1234

etc.

_makeFragmentsUsingBondsSet(self, bonds_set)

 

Generate fragments by breaking the bonds in the bonds_set. Each bond is a set of 2 atoms.

getCombinations(self, bonds)

 

Get all possible combinations of bonds to break that will return all possible fragments, including intermediates.

Returns: list of lists
List of lists where each list contains the bonds to be cleaved for one copy of the molecule.