schrodinger.rdkit_extensions module

schrodinger::rdkit_extensions C++ wrappers

class schrodinger.rdkit_extensions.CompressionType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: enum.Enum

UNKNOWN = 0
GZIP = 1
ZSTD = 2
class schrodinger.rdkit_extensions.Format(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)

Bases: enum.Enum

AUTO_DETECT = 0
RDMOL_BINARY_BASE64 = 1
SMILES = 2
EXTENDED_SMILES = 3
SMARTS = 4
EXTENDED_SMARTS = 5
MDL_MOLV2000 = 6
MDL_MOLV3000 = 7
MAESTRO = 8
INCHI = 9
INCHI_KEY = 10
PDB = 11
XYZ = 12
HELM = 13
FASTA_PEPTIDE = 14
FASTA_DNA = 15
FASTA_RNA = 16
FASTA = 17
FMP = 18
schrodinger.rdkit_extensions.UseModernStereoPerception()
schrodinger.rdkit_extensions.get_mol_layers(original_molecule: rdkit.Chem.rdchem.Mol, data_field_names: Optional[Iterable] = None) {<HashLayer.SGROUP_DATA: 6>, <HashLayer.FORMULA: 3>, <HashLayer.CANONICAL_SMILES: 1>, <HashLayer.TAUTOMER_HASH: 7>, <HashLayer.NO_STEREO_TAUTOMER_HASH: 5>, <HashLayer.ESCAPE: 2>, <HashLayer.NO_STEREO_SMILES: 4>}

Wrapper function for RDKit’s RegistrationHash.GetMolLayers that enables the v2 tautomer hash.

We prefer this function over calling RDKit directly because this allows us to centralize the calls and make sure we always use the v2 hash, which has several improvement’s over v1, which is the default in RDKit. (e.g. deduplication of keto/enol tautomers; see SHARED-9769)