schrodinger.application.transforms.enumerators.decorate module

class schrodinger.application.transforms.enumerators.decorate.Decorate(core_smarts: str, rgroups: List[schrodinger.application.transforms.enumerators.decorate.RGroup], property_ranges: Optional[Dict[str, List[float]]] = None, rgroup_atoms: Optional[str] = None, decoratable_atoms: Optional[str] = None)

Bases: apache_beam.transforms.ptransform.PTransform

A PTransform that enumerates unique sanitized molecules formed by replacing a hydrogen on atoms described by decoratable_atoms in the ligand with an R-group that was attached to an Ar.

__init__(core_smarts: str, rgroups: List[schrodinger.application.transforms.enumerators.decorate.RGroup], property_ranges: Optional[Dict[str, List[float]]] = None, rgroup_atoms: Optional[str] = None, decoratable_atoms: Optional[str] = None)
Parameters
  • core_smarts – the SMARTS that the products should have and needs to be part of the input molecule

  • rgroups – the R-groups to use for decoration

  • property_ranges – the optional property ranges for the products

  • rgroup_atoms – the SMARTS string for the atoms an R-group is allowed to attach. ‘*’ is used if not provided, so all R-groups will be able to decorate.

  • decoratable_atoms – the SMARTS string for the atoms that an R-group is allowed decorate. ‘*’ is used if not provided, so any atom that has a hydrogen will be decorated.

expand(pcoll)
classmethod FromRGroupFile(path: Union[str, pathlib.Path], *, core_smarts: str, property_ranges: Optional[Dict[str, List[float]]] = None, rgroup_atoms: str = '#6,#7,#8,#9,#16,#17,#35,#53', decoratable_atoms: str = '#6,#7,#8', max_hac: int = 8)
Parameters
  • path – the path to the R-group file.

  • core_smarts – the SMARTS that the products should have and needs to be part of the input molecule

  • property_ranges – the optional property ranges for the products

  • rgroup_atoms – the SMARTS string selecting the atoms that the R-groups is allowed to attach. ‘#6,#7,#8,#9,#16,#17,#35,#53’ is used if not provided. Use ‘*’ to allow all R-groups to decorate.

  • decoratable_atoms – the SMARTS string for the atoms that the R-groups is allowed to attach. ‘#6,#7,#8’ is used if not provided.

  • max_hac – the maximum number of heavy atoms that the decoration is allowed add to the molecule. No limit if not provided.