This library contains a Python implementation of the probabilistic analysis of molecular motifs (PAMM) algorithm. PAMM provides a method of identifying reoccurring structural patterns in a molecular dynamics (MD) simulation. Our implementation includes the following steps:
- convert raw atomic position data to local structure features
- create a grid for density estimation with farthest point sampling
- estimate the probability density in different areas of phase space with kernel density estimation
- identify clusters in phase space with the quick shift mode seeking algorithm
- build a gaussian mixture model to describe preidentified clusters
We suggest that you use this software in conjunction with the PLUMED 2 software plugin, which can incorporate the GMM output from PAMM into an enhanced sampling simulation in your MD engine of choice. You can also use the collective variable functionality in PLUMED to efficiently calculate local structural features (step 1 above) if you don't want to define these features yourself in Python.