Get the equilibrium data (test)

(main author: Yalun Yu, email: alanyu17@terpmail.umd.edu / yalun.research@gmail.com)
(updates: Joshua Lucker, email: jlucker1@umd.edu)
(Error handling updates: Eric Zhang, email: ezhang32@umd.edu)

< Email jlucker1@umd.edu if you have any questions about this wiki page >

This is a brief instruction to obtain the time range of equilibrium (and also the minimum block size can be used for standard error calculation). Calculation of SA/lipid and Ka is done automatically for your lipid only system. Make sure you run the 1_run_area.scr script from Surface Area of Lipid before doing this section. Please put the scripts listed in this wiki in the same folder as you run 1_run_area.scr. You will need pymbar package (in python) for this:

1. Install Anaconda (https://www.anaconda.com/download).

 a) Download the python3.7, python3.9 or lastest version for Linux [I used the '64-Bit (x86) Installer'] 
 and put the .sh installer in your home directory (or any other place you can access and execute it) on ZT1.
 b) make the .sh file an executable (chmod u+x $NameOfInstaller.sh)
 c) Install by running "./$NameOfInstaller.sh", KEEP IN MIND where you have installed it. You will likely be asked to run "conda init" at the end of the installation. If so, skip that step.

2a. Make sure the Anaconda installation path is included (see below) in your ~/.cshrc.mine and ~/.bashrc and source the appropriate file for your shell file (ZT1 default is bash).

 
 In ~/.cshrc.mine, add this line:
 set path = ($HOME/anaconda3/bin $path)
 AND
 in ~/.bashrc, add this line:
 export PATH="$HOME/anaconda3/bin:$PATH" (The path, $HOME/anaconda3/bin, may differ depending on where Anaconda is installed, see 1c)

2b.

 1) For bash, adding "source $path_of_your_installation/anaconda3/etc/profile.d/conda.sh" as an additional line in your bashrc file;
 2) For tcsh/csh, adding "source $path_of_your_installation/anaconda3/etc/profile.d/conda.csh" as an additional line in your cshrc.mine file.
 

Source the bashrc/cshrc.mine file or just logout and login again to make these changes effective.

3. create a conda environment and activate the env. I would recommend conda's website for this (https://conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html). If you don't want to look it in detail. The following commands can be used:

 step 1. "conda create -n geteq python=3.9 numpy"(this creates an environment called "geteq" with python 3.9 and numpy. You can give whatever environment name to the environment.)
 step 2. "conda activate geteq" (this activates the environment called "geteq")

4a. Install the pymbar package.

 conda install -c conda-forge pymbar

This works currently based on the instructions from the github page: https://github.com/choderalab/pymbar

4b. Install the pymbar package. (just another method)

Go to https://anaconda.org/omnia/pymbar/files → find the python3.7 version for linux → copy the link to that file, let's call it “$link” → go to anywhere in your deepthought2 account and run “wget $link” → (you should see a file named “pymbar-*.tar.bz2”) → in your activated conda environment, run “conda install pymbar-*.tar.bz2” to do a local install. This works for me as of May 25th, 2021.

Download the script: area_ka.tar.gz

Change the temperature and number of lipids per leaflet in pymbar_area_ka.scr:

 temp=323.15
 nlip=36

Change the initial guess (or your preference) for block size (in ns) and the steps size (in ns) of your output (usually 10ps, but make sure to match your xst freq. As a note, xstfreq=5000 means 10ps):

# the formula for step size in ns is xstfreq * timestep * 10^-6 (assuming timestep is fs/step)
# Example: if xstfreq is 5000 and timestep is 2.0 (values located in dyn.inp) step size = 0.01

./area_handling.py 10 0.01 >& all.dat

After running pymbar_area_ka.scr, you'll see all.dat, SA/lipid is in angstrom^2 and Ka is in N/m.

Warnings / Error Handling
a) If you're getting segmentation faults, run conda update numpy. This should fix the issue.
b) Ensure that all geteq files are placed in the same directory as area_time_acc.dat and your other area_1_lipid files. There should not be a geteq subdirectory.
c) If you see “Skipping 10 ns of equilibrium data,” that is intended and not an error.
d) If conda is returning a massive error report when trying to run conda create -n geteq python=3.9 numpy, try running

conda clean --all -y
# if that still doesn't work, run
echo "number_channel_notices: 0" >> ~/.condarc