This repository contains Python code and Jupyter Notebooks for reproducing the results presented in the manuscript Topological analysis reveals multiple pathways in molecular dynamics.
The same code and processed data are also available on Zenodo: https://doi.org/10.5281/zenodo.14229803
MoKiTo (Molecular Kinetics via Topology) is a Python-based toolkit designed for analyzing and extracting topological insights from Molecular Dynamics (MD) simulations.
It enables researchers to study conformational transitions and kinetic pathways in molecular systems by generating Molecular Kinetics Maps (MKMs).
git clone https://github.com/donatiluca/MoKiTo.git
pip install -r requirements.txt
The workflow depends on whether you're working with toy model systems (typically one- or two-dimensional systems driven by overdamped Langevin dynamics) or all-atom molecular systems.
The directory examples/ contains sample workflows for both use cases. Modify the scripts as needed for your specific data and analysis.
For low-dimensional systems, follow these steps:
- Use
generate_trajectories.ipynbto create the initial trajectory and the short trajectories. - Use
isokann.ipynbto learn the$\chi$ -function. - Use
mokito.ipynbto load the trajectories and the$\chi$ -function to generate the MKM and the energy landscape.
For MD simulations, ensure the relevant .pdb file is placed into the input/ directory.
Then follow these steps:
- Run
generate_initial_trajectory.ipynbto create the initial trajectory. - Use
generate_short_trajectories.ipynbto sample the system's dynamics. - Run
calculate_PWDs.ipynbto convert the MD trajectories saved as.dcdfiles into.ptarrays that contain the pairwise distance matrices. - Use
isokann.ipynbto learn the$\chi$ -function. - Use
mokito.ipynbto load the pairwise distance matrices and the$\chi$ -function to generate the MKM and the energy landscape.