schrodinger.application.transforms.filters module

class schrodinger.application.transforms.filters.ProductFilter(filters: List[schrodinger.structutils.filter.SingleSmartsFilter])

Bases: apache_beam.transforms.ptransform.PTransform

A PTransform that returns molecules that match every SingleSmartsFilter in filters.

To be used with PCollections of Mol or Structure objects.

__init__(filters: List[schrodinger.structutils.filter.SingleSmartsFilter])
Parameters

filters – the SingleSmartsFilters that must all match

expand(pcoll)
classmethod FromFilterFile(path: Union[str, pathlib.Path])

Load filters from a product filter file.

class schrodinger.application.transforms.filters.FepAmenable(fep_references_path: pathlib.Path, max_hac_diff: int)

Bases: apache_beam.transforms.ptransform.PTransform

A PTransform that returns molecules that have a perturbation that is amenable to FEP calculations.

A perturbation is considered acceptable if the number of heavy atoms in the perturbation from the maximum common substructure (MCS) is less than or equal to max_hac_diff.

__init__(fep_references_path: pathlib.Path, max_hac_diff: int)
Parameters
  • fep_references_path – the path to the FEP references file

  • max_hac_diff – the maximum number of heavy atoms not part of the maximum common substructure with molecules in the FEP references

expand(pcoll)
class schrodinger.application.transforms.filters.DistinctStructures(label: Optional[str] = None)

Bases: apache_beam.transforms.ptransform.PTransform

A PTransform that returns the unique structures based on the SMILES.

expand(pcoll)