{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Calculating the Harmonic Ensemble Similarity between ensembles\n", "\n", "Here we compare the conformational ensembles of proteins in four trajectories, using the harmonic ensemble similarity method.\n", "\n", "**Last executed:** Sep 25, 2020 with MDAnalysis 1.0.0\n", "\n", "**Last updated:** September 2020\n", "\n", "**Minimum version of MDAnalysis:** 1.0.0\n", "\n", "**Packages required:**\n", " \n", "* MDAnalysis (Michaud-Agrawal *et al.*, 2011, Gowers *et al.*, 2016)\n", "* MDAnalysisTests\n", "\n", "\n", "**Optional packages for visualisation:**\n", "\n", "* [matplotlib](https://matplotlib.org)\n", "\n", "\n", "
\n", " \n", "**Note**\n", "\n", "The metrics and methods in the `encore` module are from (Tiberti *et al.*, 2015). Please cite them when using the ``MDAnalysis.analysis.encore`` module in published work.\n", "\n", "
" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2020-09-25T05:47:24.628167Z", "start_time": "2020-09-25T05:47:22.580836Z" } }, "outputs": [], "source": [ "import MDAnalysis as mda\n", "from MDAnalysis.tests.datafiles import (PSF, DCD, DCD2, GRO, XTC, \n", " PSF_NAMD_GBIS, DCD_NAMD_GBIS,\n", " PDB_small, CRD)\n", "from MDAnalysis.analysis import encore\n", "\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Loading files" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The test files we will be working with here feature adenylate kinase (AdK), a phosophotransferase enzyme. (Beckstein *et al.*, 2009)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2020-09-25T05:47:34.271010Z", "start_time": "2020-09-25T05:47:33.722128Z" } }, "outputs": [], "source": [ "u1 = mda.Universe(PSF, DCD)\n", "u2 = mda.Universe(PSF, DCD2)\n", "u3 = mda.Universe(GRO, XTC)\n", "u4 = mda.Universe(PSF_NAMD_GBIS, DCD_NAMD_GBIS)\n", "\n", "labels = ['DCD', 'DCD2', 'XTC', 'NAMD']" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The trajectories can have different lengths, as seen below." ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "ExecuteTime": { "end_time": "2020-09-25T05:47:35.055174Z", "start_time": "2020-09-25T05:47:35.049296Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "98 102 10\n" ] } ], "source": [ "print(len(u1.trajectory), len(u2.trajectory), len(u3.trajectory))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Calculating harmonic similarity" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The harmonic ensemble similarity method treats the conformational ensemble within each trajectory as a high-dimensional Gaussian distribution $N(\\mu, \\Sigma)$. The mean $\\mu$ is estimated as the average over the ensemble. The covariance matrix $\\Sigma$ is calculated either using a shrinkage estimator (`cov_estimator='shrinkage'`) or a maximum-likelihood method (`cov_estimator='ml'`).\n", "\n", "The harmonic ensemble similarity is then calculated using the symmetrised version of the Kullback-Leibler divergence. This has no upper bound, so you can get some very high values for very different ensembles.\n", "\n", "The function we will use is `encore.hes` ([API docs here](https://docs.mdanalysis.org/stable/documentation_pages/analysis/encore/similarity.html#MDAnalysis.analysis.encore.similarity.hes)). It is recommended that you align your trajectories before computing the harmonic similarity. You can either do this yourself with `align.AlignTraj`, or pass `align=True` into `encore.hes`. The latter option will align each of your Universes to the current timestep of the first Universe. Note that since `encore.hes` will pull your trajectories into memory, this changes the positions of your Universes." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "ExecuteTime": { "end_time": "2020-09-25T05:48:57.293061Z", "start_time": "2020-09-25T05:47:36.853297Z" } }, "outputs": [], "source": [ "hes, details = encore.hes([u1, u2, u3, u4],\n", " select='backbone',\n", " align=True,\n", " cov_estimator='shrinkage',\n", " weights='mass')" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "ExecuteTime": { "end_time": "2020-09-25T05:49:00.760513Z", "start_time": "2020-09-25T05:49:00.753313Z" }, "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "array([[ 0. , 24955.71872369, 1879874.46766093,\n", " 145622.25410607],\n", " [ 24955.71872369, 0. , 1659867.54598667,\n", " 161102.3362092 ],\n", " [1879874.46766093, 1659867.54598667, 0. ,\n", " 9900092.71861893],\n", " [ 145622.25410607, 161102.3362092 , 9900092.71861893,\n", " 0. ]])" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hes" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The mean and covariance matrices for each Universe are saved in `details`. " ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "ExecuteTime": { "end_time": "2020-09-25T05:49:19.580520Z", "start_time": "2020-09-25T05:49:19.575275Z" } }, "outputs": [ { "data": { "text/plain": [ "array([14.349085 , 7.2700276, -8.721732 , ..., 10.346109 , 16.531553 ,\n", " -6.686297 ], dtype=float32)" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "details[\"ensemble1_mean\"]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Plotting" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "ExecuteTime": { "end_time": "2020-09-25T05:49:23.911436Z", "start_time": "2020-09-25T05:49:23.743708Z" } }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "im = plt.imshow(hes)\n", "plt.xticks(np.arange(4), labels)\n", "plt.yticks(np.arange(4), labels)\n", "plt.title('Harmonic ensemble similarity')\n", "cbar = fig.colorbar(im)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## References" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "[1] R. J. Gowers, M. Linke, J. Barnoud, T. J. E. Reddy, M. N. Melo, S. L. Seyler, D. L. Dotson, J. Domanski, S. Buchoux, I. M. Kenney, and O. Beckstein. [MDAnalysis: A Python package for the rapid analysis of molecular dynamics simulations](http://conference.scipy.org/proceedings/scipy2016/oliver_beckstein.html). In S. Benthall and S. Rostrup, editors, *Proceedings of the 15th Python in Science Conference*, pages 98-105, Austin, TX, 2016. SciPy, doi: [10.25080/majora-629e541a-00e](https://doi.org/10.25080/majora-629e541a-00e).\n", "\n", "[2] N. Michaud-Agrawal, E. J. Denning, T. B. Woolf, and O. Beckstein. MDAnalysis: A Toolkit for the Analysis of Molecular Dynamics Simulations. *J. Comput. Chem*. 32 (2011), 2319-2327, [doi:10.1002/jcc.21787](https://dx.doi.org/10.1002/jcc.21787). PMCID:[PMC3144279](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3144279/)\n", "\n", "[3] ENCORE: Software for Quantitative Ensemble Comparison. Matteo Tiberti, Elena Papaleo, Tone Bengtsen, Wouter Boomsma, Kresten Lindorff-Larsen. *PLoS Comput Biol.* 2015, 11, e1004415.\n", "\n", "[4] Beckstein O, Denning EJ, Perilla JR, Woolf TB. Zipping and unzipping of adenylate kinase: atomistic insights into the ensemble of open<-->closed transitions. *J Mol Biol*. 2009;394(1):160–176. [doi:10.1016/j.jmb.2009.09.009](https://dx.doi.org/10.1016%2Fj.jmb.2009.09.009)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## References\n", "\n", "[1] Oliver Beckstein, Elizabeth J. Denning, Juan R. Perilla, and Thomas B. Woolf.\n", "Zipping and Unzipping of Adenylate Kinase: Atomistic Insights into the Ensemble of OpenClosed Transitions.\n", "Journal of Molecular Biology, 394(1):160–176, November 2009.\n", "00107.\n", "URL: https://linkinghub.elsevier.com/retrieve/pii/S0022283609011164, doi:10.1016/j.jmb.2009.09.009.\n", "\n", "[2] Richard J. Gowers, Max Linke, Jonathan Barnoud, Tyler J. E. Reddy, Manuel N. Melo, Sean L. Seyler, Jan Domański, David L. Dotson, Sébastien Buchoux, Ian M. Kenney, and Oliver Beckstein.\n", "MDAnalysis: A Python Package for the Rapid Analysis of Molecular Dynamics Simulations.\n", "Proceedings of the 15th Python in Science Conference, pages 98–105, 2016.\n", "00152.\n", "URL: https://conference.scipy.org/proceedings/scipy2016/oliver_beckstein.html, doi:10.25080/Majora-629e541a-00e.\n", "\n", "[3] Naveen Michaud-Agrawal, Elizabeth J. Denning, Thomas B. Woolf, and Oliver Beckstein.\n", "MDAnalysis: A toolkit for the analysis of molecular dynamics simulations.\n", "Journal of Computational Chemistry, 32(10):2319–2327, July 2011.\n", "00778.\n", "URL: http://doi.wiley.com/10.1002/jcc.21787, doi:10.1002/jcc.21787.\n", "\n", "[4] Matteo Tiberti, Elena Papaleo, Tone Bengtsen, Wouter Boomsma, and Kresten Lindorff-Larsen.\n", "ENCORE: Software for Quantitative Ensemble Comparison.\n", "PLOS Computational Biology, 11(10):e1004415, October 2015.\n", "00031.\n", "URL: https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1004415, doi:10.1371/journal.pcbi.1004415." ] } ], "metadata": { "kernelspec": { "display_name": "Python (mda-user-guide)", "language": "python", "name": "mda-user-guide" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.3" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": false, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 2 }