|
| 1 | +# OpenPathSampling Alanine Dipeptide Tutorial |
| 2 | + |
| 3 | +This is an introductory tutorial for OpenPathSampling, and is generally the |
| 4 | +tutorial that we recommend as a starting place for new users. It is primarily |
| 5 | +focused on basic transition path sampling, using the OpenMM engine. It also |
| 6 | +includes analysis of a committor simulation. Although the OpenMM engine is |
| 7 | +used, most of the setup and analysis is valid for other engines, as well. |
| 8 | + |
| 9 | +This tutorial also introduces several other packages, both from the domain of |
| 10 | +(bio)molecular simulation specifically, and from scientific Python generally. |
| 11 | +Tools we will use that focus on molecular simulation include |
| 12 | +[OpenPathSampling](http://openpathsampling.org), |
| 13 | +[OpenMM](http://openmm.org/), |
| 14 | +[OpenMMTools](https://github.com/choderalab/openmmtools), |
| 15 | +[NGLView](https://github.com/arose/nglview), |
| 16 | +and |
| 17 | +[MDTraj](http://mdtraj.org/). |
| 18 | +More generic Python tools that will be used include |
| 19 | +[Jupyter notebooks](https://jupyter.org/), |
| 20 | +[matplotlib](https://matplotlib.org/), |
| 21 | +and |
| 22 | +[pandas](https://pandas.pydata.org/). |
| 23 | + |
| 24 | +## Requirements |
| 25 | + |
| 26 | +### Software |
| 27 | + |
| 28 | +Note that OpenPathSampling does not support Windows; if you're using a Windows |
| 29 | +machine, you should use the Windows Subsystem for Linux. |
| 30 | + |
| 31 | +We strongly recommend installing the requirements using conda. Once you have |
| 32 | +installed conda, the following commands will install OpenPathSampling and the |
| 33 | +extras that are required for this tutorial: |
| 34 | + |
| 35 | +```bash |
| 36 | +conda install -c conda-forge openpathsampling |
| 37 | +conda install -c conda-forge -c omnia openmm openmmtools |
| 38 | +conda install -c conda-forge nglview |
| 39 | +jupyter-nbextension enable nglview --py --sys-prefix |
| 40 | +``` |
| 41 | + |
| 42 | +### Space and time |
| 43 | + |
| 44 | +In addition to software installation, we recommend ensuring that you have |
| 45 | +approximately 2GB of disk space free. The majority of the space needed will be |
| 46 | +used by precomputed files, which can be downloaded from |
| 47 | +https://figshare.com/s/01302bc7a39ec7648ea1, and which provide data for |
| 48 | +detailed analysis. |
| 49 | + |
| 50 | +Most people complete the three main parts of the tutorial in less than 90 |
| 51 | +minutes. The most time-consuming step is the analysis of the committor |
| 52 | +simulation, in notebook 3 (`analyzer = paths.ShootingPointAnalysis(...)`). To |
| 53 | +save time, you can start that analysis (running the cells up to and including |
| 54 | +that one) before starting the tutorial (but after downloading the precomputed |
| 55 | +files from figshare) and let that analysis run while you work through the |
| 56 | +earlier parts. |
| 57 | + |
| 58 | +## Using the tutorial |
| 59 | + |
| 60 | +Each notebook has a numeric prefix, and they should be run in that order. |
| 61 | +Notebook 0 is optional; it teaches some basics of working with Jupyter |
| 62 | +notebooks for those who are not familiar with them. |
| 63 | + |
| 64 | +To start the notebook server, switch to the directory with this tutorial and |
| 65 | +type `jupyter notebook` at the command prompt. This may immediately launch |
| 66 | +your browser; if not, you should see text like: |
| 67 | +```text |
| 68 | +The Jupyter Notebook is running at: |
| 69 | +http://localhost:8888/?token={LONG_HEXIDECIMAL_TOKEN_HERE} |
| 70 | + or http://127.0.0.1:8888/?token={LONG_HEXIDECIMAL_TOKEN_HERE} |
| 71 | +``` |
| 72 | +You can copy-paste that link into your web browser. |
| 73 | + |
| 74 | +You should see a directory listing in your browser. Clicking on a filename |
| 75 | +should open a new tab with that notebook. Open notebook |
| 76 | +`0_jupyter_intro.ipynb`, and start the tutorial! |
| 77 | + |
| 78 | +During the tutorial, you'll see several cells marked with the words "YOUR TURN" |
| 79 | +in comments. In these cells, you will need to add code. Frequently, this just |
| 80 | +involves a slight modification to a previous cell. There are also a few |
| 81 | +optional tasks that more advanced students might attempt, marked as advanced |
| 82 | +exercises. |
| 83 | + |
| 84 | +## History |
| 85 | + |
| 86 | +This tutorial has been used in multiple classes and workshops, including |
| 87 | +several E-CAM Extended Software Development Workshops (Leiden, The Netherlands, |
| 88 | +2017; Lyon, France, 2019), and Master's-level courses in Biomolecular |
| 89 | +Simulation at the University of Amsterdam (2017--2019). |
| 90 | + |
| 91 | +This tutorial was developed with financial support from the European Union's |
| 92 | +Horizon 2020 research and innovation program, under grant agreement No. 676531 |
| 93 | +(project E-CAM). |
0 commit comments