MolecularDiffusion.runmodes.analyze.similarity3d¶
3D similarity of generated molecules to a reference molecule.
Backs MolCraftDiff analyze metrics --metrics similarity3d, which needs
--reference-mol. Three Gaussian-overlap scores, each aligned before
scoring:
shape_sim– molecular-surface overlap (ROCS-style);esp_sim– surface overlap weighted by electrostatic potential;pharm_sim– pharmacophore-point overlap.
The scoring itself comes from the vendored utils/shepherd_score package;
this module only prepares the profiles and drives the alignment. Logic is
lifted unchanged from the former shepherd metric block so the numbers stay
identical across the rename.
Generated molecules may ship precomputed profiles as sidecar files next to the
.xyz (.npz, _surface.npy, _esp.npz, _pharm.npz); those are
reused when present and recomputed from the molecule otherwise.
Attributes¶
Functions¶
|
Shape / ESP / pharmacophore similarity of |
|
Surface points, ESP values and pharmacophores for one molecule. |
|
Open a reference |
|
Pull one molecule out of a reference source by index. |
Module Contents¶
- MolecularDiffusion.runmodes.analyze.similarity3d.compare(mol, ref_data, xyz_path=None)¶
Shape / ESP / pharmacophore similarity of
molagainstref_data.Returns a dict of the three scores; a modality that cannot be computed is reported as
0.0, matching the behaviour of the former shepherd block.
- MolecularDiffusion.runmodes.analyze.similarity3d.extract_profiles(mol)¶
Surface points, ESP values and pharmacophores for one molecule.
- MolecularDiffusion.runmodes.analyze.similarity3d.load_reference_source(path)¶
Open a reference
.pkl(list of molblocks) or.sdfsupplier.
- MolecularDiffusion.runmodes.analyze.similarity3d.reference_mol(data_source, index)¶
Pull one molecule out of a reference source by index.
- MolecularDiffusion.runmodes.analyze.similarity3d.ESP_LAMBDA = 0.3¶
- MolecularDiffusion.runmodes.analyze.similarity3d.NUM_ALIGN_REPEATS = 45¶
- MolecularDiffusion.runmodes.analyze.similarity3d.NUM_SURFACE_POINTS = 75¶
- MolecularDiffusion.runmodes.analyze.similarity3d.PROBE_RADIUS = 1.2¶
- MolecularDiffusion.runmodes.analyze.similarity3d.SAMPLES_PER_ATOM = 25¶
- MolecularDiffusion.runmodes.analyze.similarity3d.logger¶