{ "cells": [ { "cell_type": "markdown", "id": "2c40a806-bb68-4a5d-b83f-b12e680bb75c", "metadata": { "tags": [] }, "source": [ "# Brief introduction to Molecular Dynamics analysis with MDanalysis" ] }, { "cell_type": "markdown", "id": "d238c07a-f3d4-48c4-8d04-bd29c2e3f9f4", "metadata": {}, "source": [ "\"drawing\"" ] }, { "cell_type": "markdown", "id": "48cb3513-f665-4346-a90a-4a3c962ceda7", "metadata": {}, "source": [ "In this entry, I'd like to present a basic analysis of molecular dynamics (MD) systems using MD Analysis (MDA).\n", "\n", "https://www.mdanalysis.org/\n", "\n", "Despite its simplicity, this workflow could be a good starting point for those interested in MD analysis with Python and Jupyter notebooks." ] }, { "cell_type": "markdown", "id": "996d8896-ce65-42cc-8eaa-aff5e91e8760", "metadata": {}, "source": [ "## Importing the libraries" ] }, { "cell_type": "code", "execution_count": 1, "id": "32f401bd-2189-4e6f-9ab2-2607c9631e3b", "metadata": {}, "outputs": [], "source": [ "'''\n", "Main modules for this workflow\n", "'''\n", "import MDAnalysis as mda\n", "from MDAnalysis.analysis import align, rms\n", "from MDAnalysis.tests.datafiles import PSF, DCD #These are testing files from MDanalysis, when using your own MD files don't need to import this anymore\n", "\n", "'''\n", "Packages to visualize, plot data, and utilities\n", "'''\n", "\n", "import pandas as pd\n", "import matplotlib as mpl\n", "from matplotlib import pyplot as plt\n", "import seaborn as sns\n", "import py3Dmol\n", "import progressbar # Not needed but useful to see analysis progress\n", "\n", "\n", "%matplotlib inline\n", "%config Completer.use_jedi = False" ] }, { "cell_type": "code", "execution_count": 2, "id": "ba6b7f03-ef7f-453a-bfc8-3212cd4a655b", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'0.20.1'" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "'''\n", "MDA version\n", "'''\n", "\n", "mda.__version__" ] }, { "cell_type": "markdown", "id": "345ee21d-639a-4d7b-847d-0226ddb1f9c7", "metadata": {}, "source": [ "MDA loads MD systems as \"Universe,\" which contains all trajectory and topology data.\n", "Keep in mind that MDA accepts a wide range of MD formats (gromacs, amber, NAMD, ...)." ] }, { "cell_type": "code", "execution_count": 3, "id": "e77cb138-d650-4996-870c-55230b8ada64", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "]> with 214 residues\n" ] } ], "source": [ "u=mda.Universe(PSF,DCD) #Loading the MD data topology=PSF, trajectory=DCD; \n", "print(u.segments,'with {} residues'.format(len(u.residues))) #Inspecting our system" ] }, { "cell_type": "markdown", "id": "9c18207b-f250-4e70-ba47-bc0635b592d3", "metadata": {}, "source": [ "## Conducting a Pairwise RMSD analysis on the MD simulation\n", "\n", "The pairwise analysis is a method for observing a molecule's RMSD changes over simulation time in order to identify related conformations (or states).\n", "\n", "A pairwise analysis in MDA is simple to perform by aligning and computing the RMSD over the simulation time.\n", "\n", "Depending on the interest shown by the user. The RMSD can be calculated for various system selections. Protein, ligand, protein-ligand complex, a list of residues, only one chain, and so on.\n", "\n", "MDA allows for a robust and well-documented selection algebra in: https://docs.mdanalysis.org/stable/documentation_pages/selections.html\n", "\n", "For this example, I'll run a pairwise RMSD on the entire \"Universe\", which is made up of only the ADENYLATE KINASE protein (PDB: 4AKE) and no other organic molecules or solven. As a result, the pairwise RMSD must be consistent with the protein analysis." ] }, { "cell_type": "code", "execution_count": 4, "id": "803c45f8-1912-4678-944b-725f5d632ad6", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "100% (98 of 98) |########################| Elapsed Time: 0:01:02 ETA: 00:00:00" ] } ], "source": [ "bar=progressbar.ProgressBar(max_value=len(u.trajectory)) #loading a progressbar using the lenght of the simulation\n", "RMSD_hmap=pd.DataFrame() # The Pairwise values will be saved on a pandas dataFrame\n", "for i in range(len(u.trajectory)): #Depending on simulation 's lenght the calculations could be time-consuming. It could be advisable to compute the RMSD in a different step interval than 1\n", " for j in range(len(u.trajectory)):\n", " bb = u.select_atoms('backbone') # I'll compute only Backbone RMSD of the protein\n", " u.trajectory[i]\n", " A = bb.positions.copy() # coordinates of first frame\n", " u.trajectory[j] # forward to second frame\n", " B = bb.positions.copy() # coordinates of second frame\n", " rmsd=rms.rmsd(A, B, center=True, superposition=True) # Center and superposition is enabled to consider only protein movements and not any influence of Periodic Boundary Conditions\n", " RMSD_hmap.loc[i,j]=rmsd\n", " bar.update(i+1)" ] }, { "cell_type": "markdown", "id": "d6e1f0d4-d85d-4295-963f-961bf0effec5", "metadata": {}, "source": [ "As previously stated, the outcome of this analysis is a table containing all vs all RMSD values of MD's frames." ] }, { "cell_type": "code", "execution_count": 5, "id": "e06c7cb6-67c8-4f0e-a745-dc3d5edc7e8c", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
0123456789...88899091929394959697
03.689963e-074.636592e-016.419340e-010.7743980.8588600.9460031.0320531.1444031.2231251.333624...6.8171686.8264636.8544056.8173406.8349956.8178986.8042116.8079876.8212056.820322
14.636592e-016.391203e-074.679325e-010.6106750.6899140.8034940.8908561.0062481.0853141.184401...6.7057326.7149706.7428116.7064756.7204966.7055296.6938366.6968346.7094666.709791
26.419340e-014.679325e-012.609198e-070.4728590.5722000.7038420.7810400.9017480.9704601.064710...6.5973846.6069336.6360206.6019226.6129786.5988726.5879606.5911286.6058706.606415
37.743983e-016.106747e-014.728589e-010.0000000.4484130.5831840.6637500.7936060.8555670.948946...6.5068276.5167306.5462716.5135876.5240066.5083096.4971816.5015876.5166046.517636
48.588600e-016.899145e-015.722000e-010.4484130.0000000.4744050.5652400.6855160.7517120.848518...6.4130746.4227876.4530806.4203976.4294066.4164446.4053956.4097186.4255466.427296
\n", "

5 rows × 98 columns

\n", "
" ], "text/plain": [ " 0 1 2 3 4 5 \\\n", "0 3.689963e-07 4.636592e-01 6.419340e-01 0.774398 0.858860 0.946003 \n", "1 4.636592e-01 6.391203e-07 4.679325e-01 0.610675 0.689914 0.803494 \n", "2 6.419340e-01 4.679325e-01 2.609198e-07 0.472859 0.572200 0.703842 \n", "3 7.743983e-01 6.106747e-01 4.728589e-01 0.000000 0.448413 0.583184 \n", "4 8.588600e-01 6.899145e-01 5.722000e-01 0.448413 0.000000 0.474405 \n", "\n", " 6 7 8 9 ... 88 89 90 \\\n", "0 1.032053 1.144403 1.223125 1.333624 ... 6.817168 6.826463 6.854405 \n", "1 0.890856 1.006248 1.085314 1.184401 ... 6.705732 6.714970 6.742811 \n", "2 0.781040 0.901748 0.970460 1.064710 ... 6.597384 6.606933 6.636020 \n", "3 0.663750 0.793606 0.855567 0.948946 ... 6.506827 6.516730 6.546271 \n", "4 0.565240 0.685516 0.751712 0.848518 ... 6.413074 6.422787 6.453080 \n", "\n", " 91 92 93 94 95 96 97 \n", "0 6.817340 6.834995 6.817898 6.804211 6.807987 6.821205 6.820322 \n", "1 6.706475 6.720496 6.705529 6.693836 6.696834 6.709466 6.709791 \n", "2 6.601922 6.612978 6.598872 6.587960 6.591128 6.605870 6.606415 \n", "3 6.513587 6.524006 6.508309 6.497181 6.501587 6.516604 6.517636 \n", "4 6.420397 6.429406 6.416444 6.405395 6.409718 6.425546 6.427296 \n", "\n", "[5 rows x 98 columns]" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "RMSD_hmap.head(5)" ] }, { "cell_type": "markdown", "id": "36c13285-bb64-4333-87da-4451766d1b96", "metadata": {}, "source": [ "Plotting the results in a heatmap may reveal information about the protein deviations throughout the simulation." ] }, { "cell_type": "code", "execution_count": 6, "id": "7a10a7cb-98e1-4fe0-a71d-8af2922b9186", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(8,6))\n", "\n", "n = 10\n", "while len(RMSD_hmap)/n > 6: #This generates new ticks list to label every 10 units for readability of the plot\n", " n += 10\n", " \n", "ax=sns.heatmap(RMSD_hmap,square=True,xticklabels=n,yticklabels=n,vmin=0,cmap='RdBu_r',\n", " cbar_kws=dict(label='RMSD (Å)',shrink=1,orientation='vertical',spacing='uniform',pad=0.02))\n", "\n", "plt.title('4AKE',size=26,weight='bold',color='k')\n", "plt.ylabel('Frame',fontsize=22,fontweight='bold', rotation=90)\n", "plt.xlabel('Frame',fontsize=22,fontweight='bold', rotation=0)\n", "\n", "#ax.xaxis.tick_top()\n", "plt.tick_params ('both',width=2,labelsize=18)\n", "cax = plt.gcf().axes[-1]\n", "cax.tick_params(labelsize=16)\n", "ax.figure.axes[-1].yaxis.label.set_size(22)\n", "plt.tight_layout()\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "19541dff-a06b-4407-b164-6c07f9830efa", "metadata": {}, "source": [ "## RMSF analysis\n", "\n", "As the RMSD the RMSF is another commonly measurement after performing a MD simulation.\n", "\n", "The RMSF is a measure of the displacement of a particular atom, or group of atoms, relative to the reference structure, averaged over the number of atoms. It is frequently used to discern whether a structure is stable in the time-scale of the simulations or if it is diverging from the initial coordinates [10.1371/journal.pone.0119264]." ] }, { "cell_type": "code", "execution_count": 10, "id": "57b65132-495e-4cd9-879b-d61b0c7a15d9", "metadata": {}, "outputs": [], "source": [ "calphas = u.select_atoms(\"name CA\") #Commonly the RMSD is computed using the aC of the protein to evaluate protein flucturation respecting the initial coordinates\n", "rmsfer = rms.RMSF(calphas,verbose=False).run()\n", "RMSF_table=pd.DataFrame(rmsfer.rmsf,index=calphas.resnums,columns=['RMSF']) #Saving the RMSF value for every aC residue " ] }, { "cell_type": "code", "execution_count": 11, "id": "5624d973-f077-43ce-85b0-35b30ad2b54f", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
RMSF
11.281315
21.132856
30.962724
40.703146
50.623795
\n", "
" ], "text/plain": [ " RMSF\n", "1 1.281315\n", "2 1.132856\n", "3 0.962724\n", "4 0.703146\n", "5 0.623795" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "RMSF_table.head(5)" ] }, { "cell_type": "markdown", "id": "8b993b36-8fd7-47ed-950c-7c2d9347bcf9", "metadata": {}, "source": [ "The RMSF plot depicts the fluctuations of the protein's atoms (aC) in relation to the initial coordinates." ] }, { "cell_type": "code", "execution_count": 13, "id": "9fa08f3e-51f1-44a4-89ec-5ba0721b4468", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plt.rcParams['axes.linewidth'] = 1.5\n", "fig, ax = plt.subplots(figsize=(8,6))\n", "\n", "\n", "plt.plot(calphas.resnums, rmsfer.rmsf,linewidth=1.5,color='k')\n", "\n", "plt.xlabel ('Residue αC',fontsize=16,fontweight='bold')\n", "plt.ylabel ('RMSF (Å)',fontsize=16,fontweight='bold')\n", "\n", "ax.spines['top'].set_visible(False)\n", "ax.spines['right'].set_visible(False)\n", "\n", "plt.tick_params ('both',width=2,labelsize=12)\n", "plt.grid (axis='y',alpha=0.5)\n", "plt.tight_layout()\n", "plt.show()" ] }, { "cell_type": "markdown", "id": "8953f7b1-e99e-4009-9d1e-0041892d7a9b", "metadata": {}, "source": [ "The RMSF is frequently used to determine whether a structure is stable in the simulation's time-scale. Identifying the higher fluctuations in the 3D protein structure is frequently interesting. MDA allows you to save new trajectories as well as different formats. This allows the user to save the RMSF values as custom B factors and generate a snapshot for visualisation and analysis." ] }, { "cell_type": "code", "execution_count": 14, "id": "e13920a5-0d29-4213-8023-ae75e1a7a814", "metadata": {}, "outputs": [], "source": [ "u.add_TopologyAttr('tempfactors') #Initialization of B factors (tempfactors) by MDA in the Universe atoms\n", "rmsf=[]\n", "for atom in u.atoms:\n", " rmsf.append(RMSF_table.loc[atom.resid,'RMSF']) #A new list of RMSF must be created by ATOM. Our table has this values per aC. We can create a longer list easily" ] }, { "cell_type": "code", "execution_count": 15, "id": "037a455a-dc2f-4324-b4ca-8a5e1c3799d9", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/mnt/c/Users/angel/Linux_programs/miniconda3/envs/AnalysisMD/lib/python3.7/site-packages/MDAnalysis/coordinates/PDB.py:916: UserWarning: Found no information for attr: 'altLocs' Using default value of ' '\n", " \"\".format(attrname, default))\n", "/mnt/c/Users/angel/Linux_programs/miniconda3/envs/AnalysisMD/lib/python3.7/site-packages/MDAnalysis/coordinates/PDB.py:916: UserWarning: Found no information for attr: 'icodes' Using default value of ' '\n", " \"\".format(attrname, default))\n", "/mnt/c/Users/angel/Linux_programs/miniconda3/envs/AnalysisMD/lib/python3.7/site-packages/MDAnalysis/coordinates/PDB.py:916: UserWarning: Found no information for attr: 'occupancies' Using default value of '1.0'\n", " \"\".format(attrname, default))\n", "/mnt/c/Users/angel/Linux_programs/miniconda3/envs/AnalysisMD/lib/python3.7/site-packages/MDAnalysis/core/topologyattrs.py:1698: VisibleDeprecationWarning: Creating an ndarray from ragged nested sequences (which is a list-or-tuple of lists-or-tuples-or ndarrays with different lengths or shapes) is deprecated. If you meant to do this, you must specify 'dtype=object' when creating the ndarray\n", " np.array(sorted(unique_bonds)), 4)\n" ] } ], "source": [ "with mda.Writer(\"RMSf_factor.pdb\", u) as PDB: #This is the functionality from MDA which allos us to save PDB files.\n", " for ts in u.trajectory[0:1]: #I'll save just the first frame in PDB as snapshot \n", " u.atoms.tempfactors = rmsf #This adds the custom B factors to the PDB snapshot \n", " PDB.write(u.atoms) " ] }, { "cell_type": "markdown", "id": "0a571d76-38d1-4d59-ba7b-f98feac43d29", "metadata": {}, "source": [ "After we save the snapshot, the B factor corresponds to our calculated RMSF. The fluctuation can now be seen using py3Dmol, PyMol, or another visualiser." ] }, { "cell_type": "code", "execution_count": 21, "id": "dc14c49f-5045-45d3-8a20-3bf8586f1fcb", "metadata": {}, "outputs": [ { "data": { "application/3dmoljs_load.v0": "
\n

You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
\n jupyter labextension install jupyterlab_3dmol

\n
\n", "text/html": [ "
\n", "

You appear to be running in JupyterLab (or JavaScript failed to load for some other reason). You need to install the 3dmol extension:
\n", " jupyter labextension install jupyterlab_3dmol

\n", "
\n", "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "view = py3Dmol.view(js='https://3dmol.org/build/3Dmol.js',height=400,width=600)\n", "\n", "view.addModel(open('RMSf_factor.pdb','r').read(),'pdb')\n", "\n", "view.setStyle({'cartoon': {'colorscheme': {'prop':'b','gradient': 'roygb','min':min(RMSF_table['RMSF']),'max':max(RMSF_table['RMSF'])}}})\n", "\n", "view.show()" ] }, { "cell_type": "markdown", "id": "0a145d08-fdba-4d79-b393-72a6f376b17e", "metadata": {}, "source": [ "A colorbar to interpret the results" ] }, { "cell_type": "code", "execution_count": 22, "id": "7aba367f-6428-4d3c-920c-268ba9413421", "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots(figsize=(6, 1))\n", "fig.subplots_adjust(bottom=0.5)\n", "\n", "cmap = mpl.cm.jet_r\n", "norm = mpl.colors.Normalize(vmin=min(RMSF_table['RMSF']), vmax=max(RMSF_table['RMSF']))\n", "\n", "cb1 = mpl.colorbar.ColorbarBase(ax, cmap=cmap,norm=norm,orientation='horizontal')\n", "cb1.set_label('RMSF (Å)',fontsize=20,fontweight='bold')\n", "cb1.ax.tick_params(labelsize=16) \n", "fig.show()" ] }, { "cell_type": "markdown", "id": "990ec602-2980-406e-b389-93fe9775b333", "metadata": {}, "source": [ ".. disqus::" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "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.11.4" } }, "nbformat": 4, "nbformat_minor": 5 }