schrodinger.application.transforms.ligprep.tautomerizer module¶
Apache Beam transform for tautomer enumeration.
Thin Beam adapter around the legacy ligprep3 Tautomerizer class
(schrodinger.application.macromodel.packages.ligprep3.tautomerizer.Tautomerizer),
which is reused verbatim.
- class schrodinger.application.transforms.ligprep.tautomerizer.TautomerizerConfig(*, target_tautomers: int = 8, max_tautomers: int = 32, max_atom: int = 200, min_probability: float = 0.01, retain: bool = False, retain_labeled: bool = False, report_matches: bool = False, vcs_run: bool = False, solvent: str | None = None, tautomer_spec_file: str = '', verbosity: int = 0)¶
Bases:
BaseModelConfiguration for the tautomerizer transform.
Defaults match the legacy ligprep workflow’s invocation of the tautomerizer.
- target_tautomers: int¶
- max_tautomers: int¶
- max_atom: int¶
- min_probability: float¶
- retain: bool¶
- retain_labeled: bool¶
- report_matches: bool¶
- vcs_run: bool¶
- solvent: str | None¶
- tautomer_spec_file: str¶
- verbosity: int¶
- to_arg_list() list¶
Build the legacy tautomerizer command-line argument list.
- model_config: ClassVar[ConfigDict] = {}¶
Configuration for the model, should be a dictionary conforming to [
ConfigDict][pydantic.config.ConfigDict].
- class schrodinger.application.transforms.ligprep.tautomerizer.Tautomerizer(*, _config: pydantic.main.BaseModel | None = None, **kwargs)¶
Bases:
PTransformWithConfigEnumerate tautomers for structures using the legacy ligprep3 tautomerizer. Structures that fail are dropped.
Example usage:
>>> from schrodinger import adapter >>> import apache_beam as beam >>> st = adapter.to_structure('O=c1cc[nH]nc1') >>> with beam.Pipeline() as p: ... tautomers = (p ... | beam.Create([st]) ... | Tautomerizer(target_tautomers=4))
See
TautomerizerConfigfor the available parameters.- config_class¶
alias of
TautomerizerConfig
- expand(pcoll) OutcomePCollections¶