Proper RMSD calculation between molecules using the Kuhn-Munkres Hungarian algorithm.
Project description
RMSD
Determining the Root Mean Square Deviation (RMSD) between the Maximum Common Substructures (MCS) of two molecules.
The Kuhn-Munkres Hungarian algorithm allows for a fast match of atoms based on:
- atomic symbol
- Sybyl atom types
- pharmacophoric types (i.e. H-bond donors and acceptors or charges)
Example
from munkres_rmsd import CalcLigRMSD, AtomType
from munkres_rmsd.RMSD import get_example_molecules
# First, load 3D poses of molecules
mol1, mol2 = get_example_molecules()
# Then compute the RMSD of the best atomic match
rmsd = CalcLigRMSD(mol1, mol2)
print(rmsd) # 10.76150...
Let's use Sybyl atom types to match atoms between the two molecules instead of the default, using atomic elements.
# Then compute the RMSD of the best atomic match
rmsd = CalcLigRMSD(mol1, mol2, AtomType.Sybyl)
print(rmsd) # 11.59752...
Should you prefer pharmacophore types (i.e. H-bond donors & acceptors, charges and others):
# Then compute the RMSD of the best atomic match
rmsd = CalcLigRMSD(mol1, mol2, AtomType.Pharmacophore)
print(rmsd) # 9.49120...
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for munkres_rmsd-0.0.1.dev0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | eef764c20f3df8ec73ec8aa520f9ffd59b88b1b51a97471164d29b944244759b |
|
MD5 | 6e904be260dddbe1dace3c642140e00d |
|
BLAKE2b-256 | ab9829fee86d2021a7cb0a78d4587e2510c3d3d0b717f846fdbb14f77fa9f813 |