schrodinger.application.transforms.synthesis_enumeration.workflow module¶
- class schrodinger.application.transforms.synthesis_enumeration.workflow.ProductRecord(smiles: str, title: str, reagent_ids: tuple[str, ...], reagent_cxsmiles: tuple[str, ...], reagent_inchi_keys: tuple[str, ...] = (), reaction_route: str = '')¶
Bases:
objectOutput-safe product data for synthesis enumeration results.
- smiles: str¶
- title: str¶
- reagent_ids: tuple[str, ...]¶
- reagent_cxsmiles: tuple[str, ...]¶
- reagent_inchi_keys: tuple[str, ...] = ()¶
- reaction_route: str = ''¶
- __init__(smiles: str, title: str, reagent_ids: tuple[str, ...], reagent_cxsmiles: tuple[str, ...], reagent_inchi_keys: tuple[str, ...] = (), reaction_route: str = '') None¶
- schrodinger.application.transforms.synthesis_enumeration.workflow.record_to_smiles_line(record: ProductRecord) str¶
Return a SMILES output line with the product title as the SMILES title.
- schrodinger.application.transforms.synthesis_enumeration.workflow.record_to_csv_line(record: ProductRecord) str¶
Return a CSV row for an enumerated product.
- class schrodinger.application.transforms.synthesis_enumeration.workflow.RouteReagentFile(source_path: Path, runtime_path: str | None = None)¶
Bases:
objectA reagent file that should be staged for route-file enumeration.
- source_path: Path¶
- runtime_path: str | None = None¶
- __init__(source_path: Path, runtime_path: str | None = None) None¶
- schrodinger.application.transforms.synthesis_enumeration.workflow.enumerate_product_records(pbegin: PBegin, config: SynthesisEnumerationConfig, route_node: RouteNode | None = None, reagent_search_dirs: list[pathlib.Path] | None = None) PCollection¶
Exhaustively enumerate products as output-safe records.
- Parameters:
pbegin – Beam pipeline begin object
config – synthesis enumeration configuration
route_node – optional route node to enumerate. If provided, route-generation fields in
configare ignored.reagent_search_dirs – optional reagent library directories to use. If omitted, the reagent library directories are taken from
config.
- schrodinger.application.transforms.synthesis_enumeration.workflow.read_route_file(route_file: str | pathlib.Path) RouteNode¶
Read a single route JSON file.
- Parameters:
route_file – route JSON file
- schrodinger.application.transforms.synthesis_enumeration.workflow.find_route_reagent_files(route_node: RouteNode, reagent_search_dirs: list[pathlib.Path] | None = None, route_file: str | pathlib.Path | None = None) list[RouteReagentFile]¶
Return reagent files needed to enumerate a route.
Starting materials with embedded SMILES and installed default reagent library files do not need to be staged.
- Parameters:
route_node – route to inspect
reagent_search_dirs – optional reagent library directories to search
route_file – optional route JSON file. If provided, explicit relative reagent filenames are also resolved relative to this file.