schrodinger.livedesign.check_reaction module¶
- class schrodinger.livedesign.check_reaction.RxnCheckResult(num_reactants: int = - 1, num_products: int = - 1, rxn_validated: bool = False, valid_rgroups: bool = False, valid_mapping: bool = False)¶
Bases:
object
- num_reactants: int = -1¶
- num_products: int = -1¶
- rxn_validated: bool = False¶
- valid_rgroups: bool = False¶
- valid_mapping: bool = False¶
- __init__(num_reactants: int = - 1, num_products: int = - 1, rxn_validated: bool = False, valid_rgroups: bool = False, valid_mapping: bool = False) None ¶
- schrodinger.livedesign.check_reaction.setup_rgroup_rxn_map_nums(mol: rdkit.Chem.rdchem.Mol) bool ¶
Turn indexed R groups into dummy atoms with atom map numbers > 100
Reactions are commonly drawn with mapped R groups, and nothing else mapped. The R groups should be turned into star (wildcard) atoms with the correct atom mapping.
to be tested: - collisions if some existing atoms are mapped
- schrodinger.livedesign.check_reaction.initialize_map_numbers(reactants: list[rdkit.Chem.rdchem.Mol], products: list[rdkit.Chem.rdchem.Mol]) bool ¶
A reaction isn’t fully mapped if: * There are no atoms mapped * There are are unmapped dummy atoms in the product.
It’s OK to have some unmapped atoms, that means that they are annhilated or created in the reaction. If _all_ atoms are unmapped, though, that’s a problem because we don’t know how to specific reactants interact with the reaction.
- schrodinger.livedesign.check_reaction.check_rxn(rxn: rdkit.Chem.rdChemReactions.ChemicalReaction) schrodinger.livedesign.check_reaction.RxnCheckResult ¶