rdkit.Chem.FilterCatalog module¶
-
class
rdkit.Chem.FilterCatalog.FilterMatcher(name='Unamed FilterMatcher')¶ Bases:
rdkit.Chem.rdfiltercatalog.PythonFilterMatcherFilterMatcher - This class allows creation of Python based filters. Subclass this class to create a Filter useable in a FilterCatalogEntry
Simple Example:
from rdkit.Chem import rdMolDescriptors class MWFilter(FilterMatcher):
- def __init__(self, minMw, maxMw):
- FilterMatcher.__init__(self, “MW violation”) self.minMw = minMw self.maxMw = maxMw
- def IsValid(self):
- return True
- def HasMatch(self, mol):
- mw = rdMolDescriptors.CalcExactMolWt(mol) return not self.minMw <= mw <= self.maxMw
-
GetMatches(mol, matchVect) → returns True if the filter matches¶ (By default, this calls HasMatch and does not modify matchVect)
matchVect is a vector of FilterMatch’s which hold the matching filter and the matched query_atom, mol_atom pairs if applicable. To append to this vector: v = MatchTypeVect() v.append(IntPair( query_atom_idx, mol_atom_idx ) ) match = FilterMatch(self, v) matchVect.append( match )
-
GetName()¶
-
HasMatch(mol)¶ Return True if the filter matches the molecule
-
IsValid(mol)¶ Must override this function