Tinkergpu:Tinker-tut

From tinkergpu
Jump to: navigation, search


Download & Install

For TInker-OpenMM GPU code see Tinkergpu:Openmm-install for instructions

For Tinker CPU code, download from github: https://github.com/TinkerTools & follow compilation instruction: 

http://biomol.bme.utexas.edu/tinkergpu/index.php/Poltype:Poltype#Notes_about_compiling_tinker_7_or_8_with_OpenMP

Input files

You can find examples of input files in tinker distribution under tinker/bench, tinker/example or tinker/test. Two files are required to run TINKER calculations: *.xyz and *.key For example, open butane.xyz and butane.key in tinker/example/ (available in all official distributions) to see what’s inside.

*.xyz file

  • The first number on the 1st line is how many atoms total.
  • There may be a second line that specify the box dimensions if the system is periodic (newer format since tinker 6)
  • The first column is the atomic index
  • The second column is the atomic symbol
  • The 3 -5th columns are x,y,z coordinates in Angstrom
  • The 6th is the “atom type” defined in the *.key file. This is the index tinker uses to assign parameters from the key/parameter file.
  • The 7th – last columns are lists of atoms that are connected to the current atom

 


*.key file

The key file may have all the actual parameters or a link to the actual parameters file specified in the first line. The parameters specify the bond, angle, torsion, vdW and electrostatic interactions between atoms based on the “atom type”. If you see an error related to OMP, please set the OPENMP-THREADS in the key file to a number less than the # of CPU cores on your computer. This sets how many CPU cores are used in the parallel execution.

For example, in protein.key below, borrowed from tinker/bench/bench7.key, the first line specific the actual parameters are contain in the amoebapro13.prm. More examples can be found in tinker/bench, tinker/example, or tinker/test.

 

parameters           $TINKERDIR/params/amoebapro13.prm
# 
# the amoebapro13.prm is the AMOEBA protein force field in tinker/params/. If you have a ligand you can add the parameters below. More info below
#
# verbose                                  # printing info for every step, for debugging mostly
#
randomseed            123456789
integrator            respa                #this multi-time step integrator allows TINKER to use 2 fs time step
#HEAVY-HYDROGEN                    #This will increase H atom mass automatically so 3 or 3.5 fs time step can be used. Kinetics will be affected
neighbor-list                              # this below requires your box is twice the cutoff plus 2-3 Ang.
                                           If your box is too small for vdw cutoff but OK for Ewald, you can use "mpole-list" here.
openmp-threads    16                       # how many core you want to use on the node.
#
#  Define the Periodic Box and Cutoffs
#
a-axis                62.23
vdw-cutoff            12.0
vdw-correction
#
#  Set Parameters for Ewald Summation
#
ewald
ewald-cutoff          7.0                  # we can use such small cutoff because dipole/quadrupole die off faster than point charge.
pme-grid  64 64 64                         #Stronly suggest set the grid size to be slight bigger than box size  62.23 (1.2x is the best). 
                                           Must be even with factors of only 2, 3 and 5. see source/kewald.f for a list. Sometimes the default grid size is too        
                                           big and slow down the simulations noticeably..          
fft-package           FFTW
#
#  Set Parameters for Induced Dipole Convergence
#
polar-eps             0.0001                # the induced dipole convergence threshold
polar-predict
#
# Example of overwriting the parameters in the .prm file. The bond parameters between 
# atom classes 1 and 4 are redefined below, which
# will overwrite those already in the amoebapro13.prm. 
#this is only for illustration purpose
# bond          1    4          200.00     1.1

How to generate input files of your own

proteins, nucleic acids, common organics

In tinker/params, you can find pre-existing parameters for certain molecular systems, both AMOEBA, amber, charmm, opls, mmff, and mm2/3.

AMOEBA library

For AMOEBA, please use amoeba09.prm for common small molecules, amoebapro13.prm for proteins. Nucleic acid parameters coming soon (end of 2017). More information here: http://biomol.bme.utexas.edu/tinker-openmm/index.php/TINKER-OPENMM:Amoeba

If you have a protein, you use "pdbxyz" to convert it to tinker xyz file. It will ask you for a key file (1bty.key below) or you can create a key file with "parameters $TINKERDIR/params/amoebapro13.prm" in it:

pdbxyz 1bty.pdb -k ./1bty.key

AMOEBA for a new ligand

Note that pdbxyz recognize proteins, water (res name HOH and some ions). The ligand (benzamidine above) is stripped. For that you need to derive your own parameters. For AMOEBA this can be done using POLTYPE: https://biomol.bme.utexas.edu/wiki/index.php/Research_ex:Poltype

Input: ligand.sdf or ligand.pdb (for example, you can truncate the ligand "BEN" out of the 1bty.pdb) 
Output: will produce the xyz and corresponding key files (ttt.xyz and ttt.key):

If you will merge the ligand xyz file with another molecule, make sure you set the suitable range for atom types (an option for pOLTYPE) so that they won't overlap. See the "Check the results section" on POLTYPE website before using them. Use "analyze.x" to make sure the xyz and key files work correctly: "analyze.x ttt.xyz -k ttt.key ep"

 

build a solvent box

Use xyzedit.x to build a water (or any solvent) box starting from a water monomer (e.g. tinker/test/water.xyz). You can specify many monomers to add and how big the box is. Type xyzedit.x at the command line and you will be asked to enter relevant inputs (or you may type all the parameters in one line).

Make sure edit the key file to add box size and Ewald related keywords (see http://biomol.bme.utexas.edu/tinker-openmm/index.php/TINKER-OPENMM:Tinker-tut#.2A.key_file)

Some prebuilt waterboxs: http://biomol.bme.utexas.edu/~pren/downloads/waterbox

Combining two xyz files

Tinker "xyzedit.x" program (option 20) can be used to combine two xyz files into one (matching key file for each xyz is required). You can merge the key or parameter files by appending one to the other, but please make sure the atom types are not overlapping between the two.

For the above 1BTY example, poltype will translate/rotate the ligand in standard orientation. You may need a script to copy the coordinates from ligand.pdb into ttt.xyz (hwich you get out of the POLTYPE run).

Then you can use xyzedit.x to combine 1bty.xyz and lig.xyz into one xyz file with the two molecules orient/position as in PDB. Merge the key file by appending ttt.key (except the first line which contains header already in amoebapro13.prm of 1bty.key) to 1bty.key; again avoid overlapping atom types between the ligand and protein.

Soaking solute in solvent

To soak a molecule/complex in a box water, you can use this utility: http://www.ime.unicamp.br/~martinez/packmol/home.shtml

Alternatively, tinker "xyzedit.x" program (option 20) can be used for this as well. You just need a molecule.xyz and waterbox.xyz along with matching key files (actual names do not matter). One can make a water box of different size using this program too (starting from one water or a cluster of water and use option 19).

How to run Tinker and tinker-openmm

Command line

Tinker programs can be run interactively, which is the best way to learn what are the required inputs. Tinker programs can also run in background with all parameters specified, for the purpose of automation:

analyze.x ttt.xyz -k ttt.key ep
dynamic.x bench7 100000 3.0 6.0 2 298.0 N > ben7.log &
# the bench7.xyz above can be found in tinker official distribution inside tinker/bench/
#2-fs time step for MD here is ok because of the "integrator respa" in the key file

Or for tinker-openmm:

 #export CUDA_VISIBLE_DEVICES=0
 #source cuda, tinker-openmm, gcc related env var (see tinker-openmm install)
 nohup dynamic_omm.x bench7 100000 3.0 6.0 2 298.0 N > ben7.log &

Additional notes for "tinker-openmm"

  • It s recommended to use the respa inetgrator and 2-fs time step
  • "heavy-hydrogen" in key file allows a 3-fs time step
  • Default and only thermostat is Anderson
  • Only MC barostat is available for now. We are adding virial/Langevin piston pressure to openmm.

How to specify different ensembles for MD simulation

For TINKER-openmm

Not many options available. 

For NVT, use Bussi for thermostat, RESPA integrator (2fs)

For NPT, use Montecarlo for Barostat, Bussi thermostat. Verlet (1 fs) is safer than RESPA for use with MC barostat if very accurate density is needed.

See below for keyword syntax.

Available thermostat and barostat in TINKER (2/4/2016 Ponder)

Thermostats:

METHOD                     KEYWORD (lines you add to .key file)
Bussi-Parrinello           thermostat bussi
Berendsen                  thermostat berendsen
Andersen Stochastic        thermostat andersen
Nose-Hoover                thermostat nose-hoover

There are only two barostats available via the “barostat” keyword:

METHOD                     KEYWORD
Berendsen                  barostat berendsen
Monte-Carlo                barostat montecarlo

The above thermostat and barostats are available for the Verlet, Beeman and RESPA integrators, and can be used in any combination with those integrators. These integrators are available via:

METHOD                     KEYWORD
Verlet                     integrator verlet
Beeman                     integrator beeman
RESPA                      integrator respa

Note that the defaults are Bussi for thermostat, Berendsen for barostat, and Beeman for integrator.

Then there are two special integrators, a stochastic one, and a Nose-Hoover that does NPT. The stochastic integrator uses a kind of Langevin temperature bath for thermostating, and does listen to the barostat keyword. The Nose-Hoover integrator uses a separate code branch and does only NPT with Nose-Hoover methods following Martyna-Tuckerman-Klein. You can get these via:

METHOD                      KEYWORD
Stochastic                   integrator stochastic (no need for other T control)
Nose-Hoover NPT             integrator nose-hoover (no need other keywords for T or P; starting structures need to reasonable)

Recommended keywords (add somewhere in the .key file) for NVT

integrator respa
thermostat bussi

Command:

dynamic xxx.xyz 100000 2.0 1.0 2 298  (100000 steps, 2.0 fs time step, dump structure every 1.0 ps, option 2 is NVT, 298 is the target T)

It is also possible to combine "integrator Beeman" or "thermostat Berendsen” or "thermostat Andersen". But RESPA allows large time steps (2.0 or 2.5 fs) than Beeman. Berendsen thermostat does not provide canonical ensemble fluctuation.

 

Recommended keywords for NPT

Integrator nose-hoover # this will trigger also nose-hoover P and T control

Note with Nose-Hoover you can not use a time step bigger than 1. 0.5fs is the most stable

Good alternative: Berendsen produces correct average but not "correct" ensemble fluctuation (see 2003 water paper)

integrator stochastic
thermostat bussi
barostat berendsen

Command:

dynamic xxx.xyz 100000 2.0 1.0 4 298 1.0 (option 4 is NPT, 298 is T and the last 1.0 is the target pressure 1atm)

Barostat Berendsen is available and useful for equilibrate system but again not recommended for production since the ensemble fluctuation is incorrect.

NVE

integrator respa

command:

dynamic xxx.xyz 100000 2.0 1.0 1

No need for thermostat or barostat of course. It is best to use smaller time step such as 1.0fs to conserve energy better. May even use smaller polar-eps (10^-6) than default (10^-5) in the key file.

 

 

Non periodic system, e.g. gas molecules not in a box

integrate stochastic

If there is no box (a-axis) in the key file, or no box dimensions in the den file, the system is non-periodic. This will set the stochastic temperature control along with the stochastic MD integration. For gas phase molecular cluster (very few atoms), the recommended time step is 0.1 fs.

 

Free energy calculations

BAR

Alchemical free energy calculations are available in TINKER and TINKER-OpenMM. One needs to specify the ligand or solute in the key file (example below). The lambda scaling schedule can be specified by user, automated by the "bar.x" in TINKER. See this reference for examples: J Comput Chem. 2017 Sep 5;38(23):2047-2055

For host-guest, one can also apply a bond restrain between host and guest. Two corrections may be needed for this:

*when lambda=1 for both ele and vdw. You can remove the effect of restraint from FEP or BAR; or you can avoid this correction if the restraint strength is gradually set to 0 when the lambda approaches 1.
*The correction for lambda=0 from RTln(C0*V), where C0=1/1660 A^3 and V=integrate{4*pi*r^2*exp[-k*(r-r0)^2/RT]dr}. k=15 kcal/mol in the example below. If you are using a harmonic restraint (example below) and the equilibrium r0 is not 0, numerical integration is necessary. A good reference is JACS v126, NO. 24, 2004.
ligand                  -1 24, 26    #negative means range: atoms 1 to 24 plus 26
vdw-lambda              1.00
ele-lambda              0.50
GROUP 1 -1 24
GROUP 2 -25 150
RESTRAIN-GROUPS  1  2  15.0  2.0 2.0
#lower bound & upper bound do not have to be the same

OSRW

Only implemented in tinker CPU. GPU version is under development.

Visualization

Force Field Explorer

By Mike Schneider and Jay Ponder, http://dasher.wustl.edu Can visualize the xyz and arc (MD trajectory) files; create and start TINKER calcualtions

VMD

Choose TINKER format when open a xyz file. Trajectory file (.arc) also works.

Pymol

Sometimes the xyz file can not be displayed correctly

Other resources

https://sites.google.com/site/biomolsimstw/workshop-materials/tutorials

Please email me if you have tutorials related to AMOEBA or Tinker you would like to share.

 

 

Lab cluster new user

Preparation

You will need a ssh client to remote log into our computer cluster. If you use Mac or Linux, ssh client is built-in. If you use Windows, you can install this https://mobaxterm.mobatek.net/

If you are new to Linux: https://ryanstutorials.net/linuxtutorial/

Our cluster

You need to ssh into “bme-venus.bme.utexas.edu” first. You can do so off or on campus using your password (all othe rnodes need ssh key). Then "ssh bme-nova”. bme-nova is the header node of our computer cluster where we do real calcualtions and simulations. From there you can start your job by doing "ssh node120 xxx” where xxx is your simulation script. You can write your own script to submit a bunch of job to these nodes (check the availability and skip if the node is busy). Your home directory is shared among nova and all nodes vis NFS. If you write to disk very often, you should put your job on local disk /scratch on each node instead of the NFS mounted home directory.

More about cluster structure at the end.

Your home directory (echo $HOME) is located either in /home or /users. Physically these files are located on bme-nova, we use NFS mount to share your home folder on all computers/nodes in the lab so you see the same file structures. But for speed purpose when you edit a file on venus, it is actually doing so remotely (hence use /scratch that is local on each node for serious jobs). Your home directory has a limit (quota) on space and file number and you won't be able to create new files once it is reached.

You should also set up ssh key for passwordless login right awayafter you log into bme-venus using the temp password. This means you can move between clusters within the lab without using password (using a secure key stored in your home folder instead)

May need to create key gen first with "ssh-keygen"

cd ~
ssh -t rsa (then hit enter all the way)
cd .ssh 
cp id_rsa.pub  authorized_keys
chmod 600  authorized_keys

Use the command "passwd" to change your password (to something more secure) after you log into nova (your changes will be propagated eveywhere automatically).

The node activities can be monitored here:

http://biomol.bme.utexas.edu/ganglia/?c=NOVA&m=load_one&r=hour&s=by%20name&hc=4 
Nodes with GPUs: http://biomol.bme.utexas.edu/~pren/gpu.log (avoid using all CPUs on these nodes)

 

Utilities

We don’t have a job queuing system (yet) so you just log into a node to run your job.

Use "top" to check the load on a node. 600% means 6 cores are fully loaded.
"less /proc/cpuinfo" to check how many CPU cores/threads on a node
"free -g" to check free memoey (esp. for QM jobs). The line "-/+ buffers/cache:" has the real number for free space

More tips about Lnux commands and uitlies:

https://docs.google.com/document/d/1cnmSItdRXDBcpVBGhwDahJVJ2jeh4l2oDVpMBLtlySE/edit?usp=sharing 

Backups

All home directories (/home, /users, /opt, /work, /work2) are backed up twice a week for ~ 2 weeks on bigdata.bme.utexas.edu. If you need to recover any files from last couple of weeks, you should be able to find them there. Log into bigdata, cd /bigdata/renlab/.

Cluster structure

Lab Cluster.pdf

 

More Explicit Free Energy Calc Steps - Brandon Walker

  1. ttt.key and ttt.xyz is output from ligand in poltype after final parameterization
    /users/home/bdw2292/FreeEnergySims/
    "set valence, 1" in pymol to visualize double bonds
    Try not to run tinker locally, there might not be enough memory
    If see minus sign in front of multipole deffintion, that means that one of the axis was inverted
    Make sure to make a new keyfile everytime you rename or make a new .xyz file
    MAKE SURE .arc FILE AND .key FILE HAVE SAME NAMES
    For dynamics, all nodes on GPUnode list should be okay, however for minimization, some nodes at bottom of list (non-number nodes) may not have enough memory
  2. Concentrations for salt https://www.sciencedirect.com/science/article/pii/S096808961730192X
  3. 1) Source tinker from somewhere, "source ~/.bashrc.mh"
    2) Have ttt.key file for ligand
    3) Have ligand with coordinates inside protein pocket, (default is .sdf from poltype parameterization)
    4) Have Protein.xyz (tinker xyz)
    5) Have packmol installed
    6) Based on [KCl] and [MgCl2] compute water box coordinates and numbers if ions/water molecules to add, "python getboxsizeandmolnums.py [KCl] [MgCl2]"    ( in mM), make sure total charge is zero
    7) Have .xyz files for Mg2+, Cl-, K+ and H2O
    8) Create packmolwaterboxforligand.in using information just found to create input for packmol
    9) Run packmol, "packmol < packmolwaterboxforligand.in", this creates waterboxforligand.xyz (packmol xyz format)
    10) Convert packmol xyz format to tinker xyz format, "python convertWaterboxToTinker.py waterboxforligand.xyz waterboxforligandtinker.xyz"
    11) Change header line in ttt.key file to include all AMOEBABIO18 parameters,"parameters /home/bdw2292/tinker-7.1/params/amoebabio18.prm" this contains needed defintions for non-ligand terms
    12) Need to add the below stuff as a header

archive
integrator    RESPA
thermostat    BUSSI
ewald
a-axis 50.0
neighbor-list
vdw-cutoff  12.0
ewald-cutoff 7.0
polar-eps 0.00001
polar-predict
heavy-hydrogen

  1. archive saves output into one file called an .arc file, tinker and pymol can read .arc files
    # intergrator is just method for integrating
    # thermostat is method for temperature control
    # ewald is boolean to turn on ewald method for computing electrostatics
    # a-axis is the total length of box along one dimension
    # neighbor-list is a method for keeping track of neighbors
    # vdw-cutoff is max distance for vdw forces
    # ewald-cutoff is max distance for physical space cutoff, anything further is done in reciprocol space
    # polar-eps tolarance for polarization energy changes?
    # polar-predict?
    # heavy-hydrogen puts more mass on hydrogen and less on heavy atom its bound to. This reduces the bond freqeuncy and allows for longer time steps. If dynamics are occuring at time steps faster than hydrogen bond periods, dynamics may be off

12) Run Analyze to ensure no errors,"analyze.x waterboxforligandtinker.xyz -k ttt.key E", E analyze the energy components
13) Convert ligand.sdf to ligand.pdb, "babel -isdf ligand.sdf -opdb -O ligand.pdb"
14) Convert ligand.pdb to ligand.xyz, with 0's in type column instead of tinker type in column (artifcact of the program), "pdbxyz.x", see pdbxyz.x for more options
15) Convert ligand.xyz to ligand.xyz (tinker xyz, add back tinker type to column of zeros), "python AddTinkerColsBack.py ttt.xyz ligand.xyz ligandtinker.xyz"
16) Analyze file for Energy, check for errors "analyze.x ligandtinker.xyz -k ttt.key E"
17) Solvate ligand with xyzedit.x,"xyzedit.x ligandtinker.xyz -k ttt.key 18 waterboxforligandtinker.xyz"
18) Rename ligandtinker.xyz_2 solvatedligand.xyz,"mv ligandtinker.xyz_2 solvatedligand.xyz"
19) Open ttt.key and add key word, "polarizeterm none", need to first minimize without polarization because the positions of molecules might be very unfavorable (too close to ligand or protein surface), minimization may not converge if first minimization is done with polarize term on
20) minimize the solvated waterbox, "minimize.x solvatedligand.xyz -k ttt.key 10", the 10 is more of a looser restraint criteria for minimization
21) Now open ttt.key and remove the "polarizeterm none" term
22) minimize the solvated waterbox at a tighter force constant, "minimize.x solvatedligand.xyz_2 -k ttt.key 1"
23) Create packmolwaterboxforligpro.in using information generated by getboxsixeandmolnums.py input for packmol
24) "packmol < packmolwaterboxforligpro.in"
25) Convert packmol xyz format to tinker xyz format, "python convertWaterboxToTinker.py waterboxforligandprotein.xyz waterboxforligandproteintinker.xyz"
26) Make a copy of ttt.key for protein, "cp ttt.key tttprolig.key"
27) Open tttprolig.key and change a-axis term to corresponding x box dimension length, do the same for b-axis (y) and c-axis(z)
28) Run Analyze to ensure no errors,"analyze.x waterboxforligandproteintinker.xyz -k tttprolig.key E"
29) Solvate ligand with xyzedisource /users/mh43854/.bashrc.pascal.s10t.x,"xyzedit.x ligandtinker.xyz -k ttt.key 18 waterboxforligandproteintinker.xyz", output is ligandtinker.xyz_2
30) Now use output from previous step to soak protein with the ligand, "xyzedit.x prot.xyz -k ttt.key 18 ligandtinker.xyz_2", output is prot.xyz_2
30) Rename prot.xyz_2 solvatedligandprotein.xyz,"mv prot.xyz_2 solvatedligandprotein.xyz"
31) Open tttprolig.key and add key word, "polarizeterm none"
32) minimize the solvated waterbox, "minimize.x solvatedligandprotein.xyz -k tttprolig.key 10",output is solvatedligandprotein.xyz_2
33) Now open ttt.key and remove the "polarizeterm none" term
34) minimize the solvated waterbox at a tighter force constant, "minimize.x solvatedligandprotein.xyz_2 -k tttprolig.key 1"
35) rename minimized water boxes,"mv solvatedligand.xyz_3 solvatedligandmin.xyz","mv solvatedligandprotein.xyz_3 solvatedligandproteinmin.xyz"
36) Copy tttprolig.key to new name for restraining protein,"cp tttprolig.key proligrestraint.key"
37) Open solvatedligandproteinmin.xyz and find last tinker index of protein
38) Open proligrestraint.key, add line "restrain-position -1 endproteinindex", assumes that protein indexes are first in the solvatedligandproteinmin.xyz (tinker.xyz) file
39) Open up heatproteinligandbox.sh, make sure names and paths are correct. Need to equilibriate box. Open up heatligandbox.sh and do the same

Compute total time Timestep*steps=Total_time=3 (fs)* 3.3*10^6=10 (ns), "dynamic_omm.x numsteps , timestep (fs), writefreq (ps) , 2 (NVT) is constant volume (4  NPT constant pressure), 298 temperature, 1.0 atm, N is dont print out information"
Ramp up temperature and slowly equlibriate systems. For protein system need to initially restrain protein because there may be bad contacts. Last step switch to using NPT ensemble to allow for size of box to change and equlibriate. When first using NVT ensemble, although pressure can fluctuate, fluctuations are small since system is already equilbirated. Turn off restraint in last step(switch back to oringal prolig.key) to allow for protein flexibility. Write out is about 100 ps because we dont need to sample.
40) Find a GPU node or bme-jupiter to work on for running dynamics
41) "source /users/mh43854/.bashrc.pascal.s10"
42) Execute the scripts "./heatproteinligandbox.sh","./heatligandbox.sh"
43) run extra step because was using amoeba13 parameters, if starting with amoebabio18.prm this step does not apply
add lines to tttprolig.key
multipole    155  153  157             -0.35416
                                       -0.08035    0.00000    0.17352
                                       -0.33142
                                        0.00000   -0.02713
                                        0.00000    0.00000    0.35855
multipole   156 155 157               0.06420
                                        0.07412    0.00000   -0.09544
                                        0.40117
                                        0.00000   -0.10252
                                         0.00000    0.00000   -0.29865

/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k tttprolig.key 100000 3.0 100.0 4 298 1.0 N

44) For the protein-ligand anniliation step, here are the decoupling array schemes
solvvdw= [1,1,1,1,1,1,1,1,1,1,1,.9,.8,.75,.70,.65,.62,.60,.55,.5,.4,0]
solvestat=[1,.9,.8,.7,.6,.5,.4,.3,.2,.1,0,0,0,0,0,0,0,0,0,0,0,0]
torsions=[0,0,0,0,0,0,0,0,0,0,0,0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09,0.1,0.1]
45) "cp tttprolig.key tttproliglamb.key","cp ttt.key tttlamb.key"
46) Find start and end indexes of ligand in solvatedligandproteinmin.xyz. Find the start and end indexes of ligand in solvatedligandmin.xyz.
47) Add keyword to tttproliglamb.key and tttlamb.key, ligand -firstidx endidx (5446-5522) in my example, "ligand -5446 5522","ligand -1 77"

Also add the below lines to tttproliglamb.key. Need this to ensure that in protein-ligand simulation there is adequate sampling of conformations during decoupling. However, the restraint will change free energy results and will need analytical correction at the end. Make sure that these numbers correspond to your simulation box indexes.
"group 1 5462 5465 5468 5470 5469 5466"( part of ligand ex. central Aniline like ring)
"group 2 -268 286 -1418 1438"( part of protein that is close to this part of ligand)
"restrain-groups 1 2 15 4.7" 15 is restraint constant, 4.7 is average distance between groups (angstroms)

Matthew's torsion restraint had ligand indexes as below, for 18b.sdf. The last number comes from above torsion array. Just open up solvatedligandproteinmin.xyz and find the correct amount to shift each torsion restraint idx by. Add 5445 to each torsion idx(my example)
.When visualizing tinker xyz files in VMD, the indexes start with 0 instead of 1 from tinker xyz file. Assume torsion restraint is only for keeping it in "correct" pose in protein pocket
To view only ligand in VMD when visualizing solvatedligandproteinmin.xyz, click on Graphics, Representation and remove all, replace with "type > 398", only protein is "type < 247"
To extract protein and ligand from last .arc file, find index where water and ions start (>5523).
torsion-restrain 8      1       17      20      0.09
torsion-restrain 26     3       25      23      0.09
this becomes
torsion-restrain 5453     5446       5462      5465      0.09 for protein system
torsion-restrain 5471     5448       5470      5468      0.09

48) add the following to the bottom of tttproliglamb.key and tttlamb.key. Need torsion restraint in ligand only sim as well because need gas phase to be similar to each other between both sims. Make sure to shift indexes, from protein-ligand system to just ligand system.There are 5445 protein atoms in the system, need to shift indexes by 5445 for ligand system.
torsion-restrain 5453     5446       5462      5465     
torsion-restrain 5471     5448       5470      5468
Below is for ligand key file
torsion-restrain 8     1     17      20     
torsion-restrain 26    3     25      23

Reequilibirate using .arc file instead of initial .xyz file

49) Add keywords "ele-lambda", and "vdw-lambda" to tttproliglamb.key and tttlamb.key
50) Copy the end of the arc file using archive.x to extract last frame from equilibriation, copy that .xyz file to each of the folders. Do this for both ligandsimulation and proteinsimulation arc files. "solvatedligandproteinminequil.xyz" and "solvatedligandminequil.xyz". To get last frame number, divide size of .arc file by the size of input .xyz file.
51) Need to create a script that:
Easier for me to parse files in python, will just write in python
1)Contains the following arrays
solvvdw= [1,1,1,1,1,1,1,1,1,1,1,.9,.8,.75,.70,.65,.62,.60,.55,.5,.4,0]
solvestat=[1,.9,.8,.7,.6,.5,.4,.3,.2,.1,0,0,0,0,0,0,0,0,0,0,0,0]
torsions=[0,0,0,0,0,0,0,0,0,0,0,0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09,0.1,0.1]
2) For each lambda in those arrays: Make a folder for each lambda, make foldername ProteinLigandDecouple#ElectrostaticLambda#VdwLambda#torsionNumber and copy tttproliglamb.key to be "cp ../tttproliglamb.key tttprolig_VdwLambda_torsionNumber.key"
3) Open up each tttprolig_VdwLambda_torsionNumber.key and search for keyword "ele-lambda", "vdw-lambda", "torsion-restrain 5453     5446       5462      5465", "torsion-restrain 5471     5448       5470      5468", add the corresponding array values with a space after each
4) Copy solvatedligandproteinminequil.xyz, and solvatedligandminequil.xyz to appropriate folders
5) Make sure the key you are using contains the restraint keywords.
52) "python preparetheMDsim.py tttproliglamb.key solvatedligandproteinminequil.xyz tttlamb.key solvatedligandminequil.xyz"
53) Write a script that goes into each folder and executes the jobs. Script needs the following
1) List of GPU nodes that nobody is currently using
2) a queue for all of the jobs
3) ability to navigate folders and execute 1 job per GPU node, remove from queue after each execution
4) needs to detect when job is finished to be able to allow another job to be used on a node. Need a dictionary of which GPU nodes have jobs running on them
5) make sure using NVT ensemble and writeout about every 2 ps for higher sampling
6) "nvidia-smi", to look at GPU nodes and what process are running on it  
54) "python executesims.py"
55) parse the execute.txt file and make individual .sh files for every node, "nohup ./execute_node78.sh &"
56) For GPU bar just source "source ~mh43854/.bashrc.OMMFRESH", the executable is located in ~mh43854/TinkerApril15/tinker/source/bar_omm.x. Make sure to comment out nodes with pound sign in front of GPU nodes list before runnning python script. "python makeGPUbarfiles.py"
57) parse the executebar.txt script into individual .sh files for each node."nohup ./executebar_node78.sh &"
.bar files will be put in the folder that is first in the command line
58) Need to compute thermodynamic values from each .bar file. "python computefreeenergyfrombarfile.py".
59) make individual .sh files for each node from output, give permission to execute and then execute each .sh file.
60) Need to now add up the free energy from each step. "python addupfreeenergysteps.py"
61) Now need to correct for the restrain that was added to protein-ligand complex. This is an analytical correction. "source ~/.bashrc.mh","freefix.x". Inner radius and force constant are 0. Outer radius is average distance between groups specified to restraint, force constant is the restraint constant added to key file.     
62) Subtract correction from original protein-ligand binding free energy. The restraint added articifical energy so need to subtract
63) Final result is Ligand free energy change - corrected change in free energy from protein-ligand binding, should be about ~

 

 

 

Initial Poltype Structure 18.sdf

 
 OpenBabel03291810453D
 
 77 81  0  0  1  0  0  0  0  0999 V2000
    0.8180   11.9830  -19.0300 N   0  2  0  0  0  0  0  0  0  0  0  0
    4.0720   10.4860  -16.7430 N   0  0  0  0  0  0  0  0  0  0  0  0
   -2.8010   13.7300  -23.1250 N   0  0  0  0  0  0  0  0  0  0  0  0
   -0.5870   16.1360  -24.7810 N   0  0  0  0  0  0  0  0  0  0  0  0
    0.5820   18.6070  -26.0600 N   0  0  0  0  0  0  0  0  0  0  0  0
    2.0240   11.5220  -17.0170 C   0  0  0  0  0  0  0  0  0  0  0  0
    2.2570   11.4640  -15.5430 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.8880   12.0060  -17.6280 C   0  0  0  0  0  0  0  0  0  0  0  0
    3.1100   10.7450  -17.6790 C   0  0  0  0  0  0  0  0  0  0  0  0
    3.5420   10.7580  -15.4870 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.4520   11.6520  -14.3950 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.2540   12.6180  -16.8990 C   0  0  0  0  0  0  0  0  0  0  0  0
    4.0930   10.3780  -14.2310 C   0  0  0  0  0  0  0  0  0  0  0  0
    2.0130   11.2910  -13.1270 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.3800   11.8190  -16.4390 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.1490   13.9470  -16.5350 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.1930   12.4250  -19.9880 C   0  0  0  0  0  0  0  0  0  0  0  0
   -2.4880   12.4940  -15.8600 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.1890   14.5580  -15.7790 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.4640   11.5290  -21.1080 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.8040   13.7090  -19.9790 C   0  0  0  0  0  0  0  0  0  0  0  0
   -2.3540   13.8170  -15.4820 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.3220   11.9830  -22.1110 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.7540   14.0850  -20.8900 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.9560   13.2240  -21.9850 C   0  0  0  0  0  0  0  0  0  0  0  0
   -2.2500   14.5690  -24.0160 C   0  0  0  0  0  0  0  0  0  0  0  0
   -4.1290   13.0800  -23.3910 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.8280   15.0970  -23.7460 C   0  0  0  0  0  0  0  0  0  0  0  0
   -1.2170   17.5540  -24.5830 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.9110   16.2820  -25.1280 C   0  0  0  0  0  0  0  0  0  0  0  0
   -0.9460   18.4810  -25.7790 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.0900   17.2040  -26.3280 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.8560   19.5960  -27.0850 C   0  0  0  0  0  0  0  0  0  0  0  0
    3.2990   10.5430  -18.8930 O   0  0  0  0  0  0  0  0  0  0  0  0
   -2.7500   15.0470  -25.0430 O   0  0  0  0  0  0  0  0  0  0  0  0
    3.3320   10.6170  -13.0460 C   0  0  0  0  0  0  0  0  0  0  0  0
    1.2440   11.3980  -11.8220 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.1410   12.1820  -12.0220 O   0  0  0  0  0  0  0  0  0  0  0  0
    1.6240   10.9410  -10.7350 O   0  0  0  0  0  0  0  0  0  0  0  0
   -1.0160   11.9750  -11.2490 C   0  0  0  0  0  0  0  0  0  0  0  0
    0.4550   19.4890  -28.1070 H   0  0  0  0  0  0  0  0  0  0  0  0
    0.4480   11.9960  -14.6000 H   0  0  0  0  0  0  0  0  0  0  0  0
    4.9240    9.9800  -16.9840 H   0  0  0  0  0  0  0  0  0  0  0  0
    5.1010    9.9610  -14.1740 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.5220   10.7430  -16.7030 H   0  0  0  0  0  0  0  0  0  0  0  0
    0.6270   14.5410  -17.0100 H   0  0  0  0  0  0  0  0  0  0  0  0
   -3.4060   11.9210  -15.6850 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.1240   15.5650  -15.4470 H   0  0  0  0  0  0  0  0  0  0  0  0
    0.0910   10.5680  -21.2410 H   0  0  0  0  0  0  0  0  0  0  0  0
   -0.6660   14.4640  -19.2550 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.4800   11.3060  -22.8690 H   0  0  0  0  0  0  0  0  0  0  0  0
   -2.2560   15.0350  -20.9580 H   0  0  0  0  0  0  0  0  0  0  0  0
   -4.4160   13.1100  -24.4630 H   0  0  0  0  0  0  0  0  0  0  0  0
   -0.0330   14.2760  -23.7300 H   0  0  0  0  0  0  0  0  0  0  0  0
   -0.8580   17.9540  -23.5820 H   0  0  0  0  0  0  0  0  0  0  0  0
    1.3700   15.3270  -25.2880 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.3310   19.5420  -25.6570 H   0  0  0  0  0  0  0  0  0  0  0  0
    0.5690   16.7720  -27.1580 H   0  0  0  0  0  0  0  0  0  0  0  0
    1.9320   19.6580  -27.0390 H   0  0  0  0  0  0  0  0  0  0  0  0
   -4.8890   13.5280  -22.7350 H   0  0  0  0  0  0  0  0  0  0  0  0
   -0.6830   15.5570  -22.7560 H   0  0  0  0  0  0  0  0  0  0  0  0
   -2.3610   17.4000  -24.5250 H   0  0  0  0  0  0  0  0  0  0  0  0
    1.4240   16.6450  -24.1740 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.3760   18.1400  -26.6890 H   0  0  0  0  0  0  0  0  0  0  0  0
    2.1080   17.2770  -26.5750 H   0  0  0  0  0  0  0  0  0  0  0  0
    0.5320   20.6140  -26.7940 H   0  0  0  0  0  0  0  0  0  0  0  0
   -4.0620   12.0120  -23.1000 H   0  0  0  0  0  0  0  0  0  0  0  0
    1.0290   18.9740  -25.1860 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.0960   15.6190  -25.5940 H   0  0  0  0  0  0  0  0  0  0  0  0
    3.8230   10.2980  -12.0990 H   0  0  0  0  0  0  0  0  0  0  0  0
   -0.7820   11.9840  -10.1810 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.4080   10.9670  -11.4360 H   0  0  0  0  0  0  0  0  0  0  0  0
   -1.8430   12.6690  -11.4870 H   0  0  0  0  0  0  0  0  0  0  0  0
    1.6134   11.5880  -19.4550 H   0  0  0  0  0  0  0  0  0  0  0  0
   -3.4514   14.4687  -14.7528 N   0  0  0  0  0  0  0  0  0  0  0  0
   -4.2690   13.9635  -14.5394 H   0  0  0  0  0  0  0  0  0  0  0  0
   -3.3688   15.4104  -14.4778 H   0  0  0  0  0  0  0  0  0  0  0  0
  1  8  1  0  0  0  0
  1 17  1  0  0  0  0
  1 74  1  0  0  0  0
  2  9  1  0  0  0  0
  2 10  1  0  0  0  0
  2 43  1  0  0  0  0
  3 25  1  0  0  0  0
  3 26  1  0  0  0  0
  3 27  1  0  0  0  0
  4 28  1  0  0  0  0
  4 29  1  0  0  0  0
  4 30  1  0  0  0  0
  4 69  1  6  0  0  0
  5 31  1  0  0  0  0
  5 32  1  0  0  0  0
  5 33  1  0  0  0  0
  5 68  1  1  0  0  0
  6  7  1  0  0  0  0
  6  8  2  0  0  0  0
  6  9  1  0  0  0  0
  7 10  2  0  0  0  0
  7 11  1  0  0  0  0
  8 12  1  0  0  0  0
  9 34  2  0  0  0  0
 10 13  1  0  0  0  0
 11 14  2  0  0  0  0
 11 42  1  0  0  0  0
 12 15  2  0  0  0  0
 12 16  1  0  0  0  0
 13 36  2  0  0  0  0
 13 44  1  0  0  0  0
 14 36  1  0  0  0  0
 14 37  1  0  0  0  0
 15 18  1  0  0  0  0
 15 45  1  0  0  0  0
 16 19  2  0  0  0  0
 16 46  1  0  0  0  0
 17 20  2  0  0  0  0
 17 21  1  0  0  0  0
 18 22  2  0  0  0  0
 18 47  1  0  0  0  0
 19 22  1  0  0  0  0
 19 48  1  0  0  0  0
 20 23  1  0  0  0  0
 20 49  1  0  0  0  0
 21 24  2  0  0  0  0
 21 50  1  0  0  0  0
 22 75  1  0  0  0  0
 23 25  2  0  0  0  0
 23 51  1  0  0  0  0
 24 25  1  0  0  0  0
 24 52  1  0  0  0  0
 26 28  1  0  0  0  0
 26 35  2  0  0  0  0
 27 53  1  0  0  0  0
 27 60  1  0  0  0  0
 27 67  1  0  0  0  0
 28 54  1  0  0  0  0
 28 61  1  0  0  0  0
 29 31  1  0  0  0  0
 29 55  1  0  0  0  0
 29 62  1  0  0  0  0
 30 32  1  0  0  0  0
 30 56  1  0  0  0  0
 30 63  1  0  0  0  0
 31 57  1  0  0  0  0
 31 64  1  0  0  0  0
 32 58  1  0  0  0  0
 32 65  1  0  0  0  0
 33 41  1  0  0  0  0
 33 59  1  0  0  0  0
 33 66  1  0  0  0  0
 36 70  1  0  0  0  0
 37 38  1  0  0  0  0
 37 39  2  0  0  0  0
 38 40  1  0  0  0  0
 40 71  1  0  0  0  0
 40 72  1  0  0  0  0
 40 73  1  0  0  0  0
 75 76  1  0  0  0  0
 75 77  1  0  0  0  0
M  END
$$$$

Output poltype key file ttt.key

parameters /home/bdw2292/tinker-7.1/params/amoebapro13.prm

archive
integrator    RESPA
thermostat    BUSSI
ewald
a-axis 50.0
neighbor-list
vdw-cutoff  12.0
ewald-cutoff 7.0
polar-eps 0.00001
polar-predict
heavy-hydrogen


atom          431    431    N     "18b                 "         7    14.007    3
atom          429    429    N     "18b                 "         7    14.007    3
atom          410    410    N     "18b                 "         7    14.007    3
atom          403    403    N     "18b                 "         7    14.007    4
atom          406    406    N     "18b                 "         7    14.007    4
atom          416    416    C     "18b                 "         6    12.011    3
atom          419    419    C     "18b                 "         6    12.011    3
atom          418    418    C     "18b                 "         6    12.011    3
atom          414    414    C     "18b                 "         6    12.011    3
atom         413   413    C     "18b                 "         6    12.011    3
atom         415   415    C     "18b                 "         6    12.011    3
atom         427   427    C     "18b                 "         6    12.011    3
atom         428   428    C     "18b                 "         6    12.011    3
atom         430   430    C     "18b                 "         6    12.011    3
atom         422   422    C     "18b                 "         6    12.011    3
atom         421   421    C     "18b                 "         6    12.011    3
atom         425   425    C     "18b                 "         6    12.011    3
atom         420   420    C     "18b                 "         6    12.011    3
atom         423   423    C     "18b                 "         6    12.011    3
atom         412   412    C     "18b                 "         6    12.011    3
atom         411   411    C     "18b                 "         6    12.011    3
atom         409   409    C     "18b                 "         6    12.011    3
atom         407   407    C     "18b                 "         6    12.011    4
atom         405   405    C     "18b                 "         6    12.011    4
atom         404   404    C     "18b                 "         6    12.011    4
atom         401   401    C     "18b                 "         6    12.011    4
atom         402   402    C     "18b                 "         6    12.011    4
atom         452   452    O     "18b                 "         8    15.999    1
atom         441   441    O     "18b                 "         8    15.999    1
atom         417   417    C     "18b                 "         6    12.011    3
atom         424   424    C     "18b                 "         6    12.011    3
atom         432   432    O     "18b                 "         8    15.999    2
atom         453   453    O     "18b                 "         8    15.999    1
atom         408   408    C     "18b                 "         6    12.011    4
atom         437   437    H     "18b                 "         1     1.008    1
atom         451   451    H     "18b                 "         1     1.008    1
atom         442   442    H     "18b                 "         1     1.008    1
atom         443   443    H     "18b                 "         1     1.008    1
atom         449   449    H     "18b                 "         1     1.008    1
atom         447   447    H     "18b                 "         1     1.008    1
atom         446   446    H     "18b                 "         1     1.008    1
atom         444   444    H     "18b                 "         1     1.008    1
atom         439   439    H     "18b                 "         1     1.008    1
atom         438   438    H     "18b                 "         1     1.008    1
atom         434   434    H     "18b                 "         1     1.008    1
atom         436   436    H     "18b                 "         1     1.008    1
atom         433   433    H     "18b                 "         1     1.008    1
atom         435   435    H     "18b                 "         1     1.008    1
atom         450   450    H     "18b                 "         1     1.008    1
atom         440   440    H     "18b                 "         1     1.008    1
atom         445   445    H     "18b                 "         1     1.008    1
atom         426   426    N     "18b                 "         7    14.007    3
atom         448   448    H     "18b                 "         1     1.008    1

multipole   401  404  406              -0.08456
                                        0.25728    0.00000    0.14360
                                        0.59877
                                        0.00000   -0.93082
                                       -0.45427    0.00000    0.33205
multipole   402  406  437              -0.06499
                                        0.00000    0.00000    0.31759
                                       -0.51592
                                        0.00000   -0.51592
                                        0.00000    0.00000    1.03184
multipole   403 -404 -404               0.08187
                                        0.00000    0.00000    0.26003
                                        0.25651
                                        0.00000   -0.57647
                                        0.00000    0.00000    0.31996
multipole   404  401  403              -0.08789
                                        0.26622    0.00000    0.09810
                                        0.59375
                                        0.00000   -0.97360
                                       -0.41660    0.00000    0.37985
multipole   405  403  409              -0.16165
                                        0.06288    0.00000    0.69663
                                       -0.30457
                                        0.00000   -0.76670
                                        0.21132    0.00000    1.07127
multipole   406 -401 -401               0.16718
                                        0.00000    0.00000    0.28087
                                        0.11937
                                        0.00000   -0.34096
                                        0.00000    0.00000    0.22159
multipole   407  410  439              -0.06059
                                        0.00000    0.00000    0.39824
                                       -0.44336
                                        0.00000   -0.44336
                                        0.00000    0.00000    0.88672
multipole   408  432  440               0.05380
                                        0.00000    0.00000    0.35630
                                       -0.45112
                                        0.00000   -0.45112
                                        0.00000    0.00000    0.90224
multipole   409  405  410               0.76567
                                       -0.51694    0.00000    0.12087
                                        0.20103
                                        0.00000   -0.28004
                                       -0.11151    0.00000    0.07901
multipole   410  407  409              -0.07612
                                       -0.18737    0.00000    0.18549
                                       -0.20692
                                        0.00000   -0.48596
                                        0.33019    0.00000    0.69288
multipole   411 -412 -412              -0.11643
                                        0.00000    0.00000   -0.07178
                                       -0.55727
                                        0.00000   -0.41103
                                        0.00000    0.00000    0.96830
multipole   412  411  420               0.00197
                                       -0.09434    0.00000    0.14115
                                        0.18078
                                        0.00000   -0.25135
                                        0.16766    0.00000    0.07057
multipole   413  419  428               0.48079
                                        0.31866    0.00000    0.17672
                                        1.70530
                                        0.00000   -1.08914
                                        1.08312    0.00000   -0.61616
multipole   414  416  429               0.91530
                                       -0.17680    0.00000   -0.20128
                                        0.79616
                                        0.00000   -0.23526
                                        0.28161    0.00000   -0.56090
multipole   415  419  430              -0.31601
                                       -0.10327    0.00000   -0.65834
                                        0.28020
                                        0.00000    0.68389
                                        0.05121    0.00000   -0.96409
multipole   416  414  418              -0.11585
                                        0.14406    0.00000    0.06610
                                       -0.57094
                                        0.00000    0.89498
                                       -0.09710    0.00000   -0.32404
multipole   417  428  430              -0.09947
                                       -0.04102    0.00000   -0.00799
                                       -0.43606
                                        0.00000    0.14626
                                       -0.04170    0.00000    0.28980
multipole   418  416  427               0.09471
                                       -0.13108    0.00000   -0.76823
                                        0.76695
                                        0.00000    1.20180
                                        0.33498    0.00000   -1.96875
multipole   419  413  415               0.02852
                                        0.49502    0.00000   -0.19404
                                       -0.98059
                                        0.00000    0.48424
                                       -0.79786    0.00000    0.49635
multipole   420  412  421              -0.01328
                                        0.07452    0.00000    0.11437
                                        0.14066
                                        0.00000   -0.18005
                                        0.15681    0.00000    0.03939
multipole   421 -420 -420               0.09318
                                        0.00000    0.00000   -0.14463
                                       -0.45220
                                        0.00000    0.24802
                                        0.00000    0.00000    0.20418
multipole   422  425  427               0.06857
                                        0.33407    0.00000    0.05679
                                        0.65920
                                        0.00000   -0.42083
                                        0.61193    0.00000   -0.23837
multipole   423 -425 -425               0.23599
                                        0.00000    0.00000   -0.26265
                                       -0.18588
                                        0.00000   -0.08021
                                        0.00000    0.00000    0.26609
multipole   424  430  432               0.97478
                                        0.07324    0.00000   -0.24422
                                        1.13812
                                        0.00000   -0.52554
                                       -0.00223    0.00000   -0.61258
multipole   425  422  423              -0.09492
                                       -0.10829    0.00000   -0.01941
                                        0.04521
                                        0.00000   -0.10453
                                       -0.15110    0.00000    0.05932
multipole   426  423  448              -0.32335
                                        0.00000    0.00000   -0.09349
                                       -0.05018
                                        0.00000   -0.05018
                                        0.00000    0.00000    0.10036
multipole   427 -422 -422              -0.25226
                                        0.00000    0.00000    0.18183
                                        0.63781
                                        0.00000    0.01678
                                        0.00000    0.00000   -0.65459
multipole   428  413  417              -0.12419
                                       -0.08819    0.00000   -0.11912
                                       -0.02659
                                        0.00000    0.05436
                                       -0.00530    0.00000   -0.02777
multipole   429  413  414              -0.18591
                                        0.14058    0.00000    0.06577
                                        0.87338
                                        0.00000   -0.72211
                                        1.06292    0.00000   -0.15127
multipole   430  415  417              -0.04299
                                        0.02961    0.00000   -0.00059
                                        0.38599
                                        0.00000   -0.28868
                                        0.47217    0.00000   -0.09731
multipole   431  418  421              -0.22031
                                        0.06745    0.00000   -0.11412
                                        0.59028
                                        0.00000   -0.63724
                                        0.14411    0.00000    0.04696
multipole   432  408  424              -0.46703
                                        0.09418    0.00000    0.49943
                                       -0.01781
                                        0.00000   -0.33327
                                       -0.07166    0.00000    0.35108
multipole   433  406  401               0.21488
                                        0.00000    0.00000   -0.12287
                                        0.11751
                                        0.00000    0.08661
                                        0.00000    0.00000   -0.20412
multipole   434  404  401               0.11898
                                       -0.00888    0.00000   -0.14467
                                        0.13469
                                        0.00000    0.14241
                                        0.03877    0.00000   -0.27710
multipole   435  403  404               0.28130
                                        0.00000    0.00000    0.11887
                                        0.03596
                                        0.00000    0.05384
                                        0.00000    0.00000   -0.08980
multipole   436  401  404               0.12280
                                        0.01612    0.00000   -0.12888
                                        0.16664
                                        0.00000    0.14639
                                        0.05548    0.00000   -0.31303
multipole   437  402  406               0.11051
                                       -0.03866    0.00000   -0.15494
                                        0.03168
                                        0.00000    0.05704
                                       -0.00338    0.00000   -0.08872
multipole   438  405  403               0.12591
                                       -0.01744    0.00000   -0.10511
                                       -0.01001
                                        0.00000   -0.06400
                                       -0.07424    0.00000    0.07401
multipole   439  407  410               0.09001
                                        0.00586    0.00000   -0.12350
                                        0.05676
                                        0.00000    0.07852
                                        0.01316    0.00000   -0.13528
multipole   440  408  432               0.05737
                                       -0.00663    0.00000   -0.13586
                                        0.04115
                                        0.00000    0.04058
                                        0.02082    0.00000   -0.08173
multipole   441  409  405              -0.73854
                                        0.04891    0.00000   -0.10291
                                       -0.39339
                                        0.00000    0.22622
                                       -0.05900    0.00000    0.16717
multipole   442  429  413               0.11075
                                       -0.00947    0.00000   -0.20819
                                        0.00763
                                        0.00000    0.05264
                                       -0.04896    0.00000   -0.06027
multipole   443  428  413               0.01900
                                       -0.00150    0.00000   -0.18482
                                        0.01934
                                        0.00000    0.03329
                                        0.02312    0.00000   -0.05263
multipole   444  412  411               0.00597
                                       -0.01262    0.00000   -0.21308
                                        0.03028
                                        0.00000    0.02069
                                       -0.01118    0.00000   -0.05097
multipole   445  431  418               0.25453
                                        0.05581    0.00000    0.03476
                                        0.17788
                                        0.00000   -0.15624
                                        0.07971    0.00000   -0.02164
multipole   446  420  412               0.06000
                                        0.02026    0.00000   -0.15787
                                        0.11729
                                        0.00000    0.09728
                                       -0.03145    0.00000   -0.21457
multipole   447  425  422               0.01316
                                        0.03462    0.00000   -0.17810
                                       -0.01846
                                        0.00000   -0.00447
                                       -0.01282    0.00000    0.02293
multipole   448  426  423               0.12187
                                        0.02532    0.00000   -0.18645
                                       -0.04799
                                        0.00000   -0.15083
                                        0.03904    0.00000    0.19882
multipole   449  422  425               0.01401
                                        0.02332    0.00000   -0.17749
                                        0.06987
                                        0.00000    0.05815
                                        0.00158    0.00000   -0.12802
multipole   450  417  428               0.05123
                                        0.03373    0.00000   -0.10918
                                        0.03693
                                        0.00000   -0.01200
                                       -0.06462    0.00000   -0.02493
multipole   451  415  419               0.03625
                                        0.04733    0.00000   -0.16626
                                        0.08955
                                        0.00000    0.00279
                                       -0.01756    0.00000   -0.09234
multipole   452  414  416              -0.80915
                                       -0.02969    0.00000   -0.25937
                                       -0.45559
                                        0.00000    0.44591
                                       -0.15079    0.00000    0.00968
multipole   453  424  430              -0.68732
                                       -0.05378    0.00000   -0.16552
                                       -0.49586
                                        0.00000    0.31858
                                       -0.03514    0.00000    0.17728

polarize      431          1.0730     0.3900 421 445
polarize      429          1.0730     0.3900 414 413 442
polarize      410          1.0730     0.3900 411 409 407
polarize      403          1.0730     0.3900 404 435
polarize      406          1.0730     0.3900 401 402 433
polarize      416          1.3340     0.3900 419 418 414
polarize      419          1.7500     0.3900 416 413 415
polarize      418          1.3340     0.3900 416
polarize      414          1.3340     0.3900 429 416 452
polarize     413          1.7500     0.3900 429 419 428
polarize     415          1.7500     0.3900 419 430 451
polarize     427          1.7500     0.3900 422
polarize     428          1.7500     0.3900 413 417 443
polarize     430          1.7500     0.3900 415 417
polarize     422          1.7500     0.3900 427 425 449
polarize     421          1.7500     0.3900 431 420
polarize     425          1.7500     0.3900 422 423 447
polarize     420          1.7500     0.3900 421 412 446
polarize     423          1.7500     0.3900 425 426
polarize     412          1.7500     0.3900 420 411 444
polarize     411          1.7500     0.3900 410 412
polarize     409          1.3340     0.3900 410 405 441
polarize     407          1.3340     0.3900 410 439
polarize     405          1.3340     0.3900 409 438
polarize     404          1.3340     0.3900 403 401 434
polarize     401          1.3340     0.3900 406 404 436
polarize     402          1.3340     0.3900 406 437
polarize     452          0.8370     0.3900 414
polarize     441          0.8370     0.3900 409
polarize     417          1.7500     0.3900 428 430 450
polarize     424          1.3340     0.3900 432 453
polarize     432          0.8370     0.3900 424 408
polarize     453          0.8370     0.3900 424
polarize     408          1.3340     0.3900 432 440
polarize     437          0.4960     0.3900 402
polarize     451          0.6960     0.3900 415
polarize     442          0.4960     0.3900 429
polarize     443          0.6960     0.3900 428
polarize     449          0.6960     0.3900 422
polarize     447          0.6960     0.3900 425
polarize     446          0.6960     0.3900 420
polarize     444          0.6960     0.3900 412
polarize     439          0.4960     0.3900 407
polarize     438          0.4960     0.3900 405
polarize     434          0.4960     0.3900 404
polarize     436          0.4960     0.3900 401
polarize     433          0.4960     0.3900 406
polarize     435          0.4960     0.3900 403
polarize     450          0.6960     0.3900 417
polarize     440          0.4960     0.3900 408
polarize     445          0.4960     0.3900 431
polarize     426          1.0730     0.3900 423 448
polarize     448          0.4960     0.3900 426


vdw       401  3.8200   0.1010
vdw       402  3.8200   0.1010
vdw       403  3.7100   0.1050
vdw       404  3.8200   0.1010
vdw       405  3.8200   0.1010
vdw       406  3.7100   0.1050
vdw       407  3.8200   0.1010
vdw       408  3.8200   0.1010
vdw       409  3.8200   0.1060
vdw       410  3.7100   0.1100
vdw       411  3.8000   0.0910
vdw       412  3.8000   0.0910
vdw       413  3.8000   0.0910
vdw       414  3.8200   0.1060
vdw       415  3.8000   0.0910
vdw       416  3.4200   0.1010
vdw       417  3.8000   0.0910
vdw       418  3.8000   0.0890
vdw       419  3.8000   0.0910
vdw       420  3.8000   0.0910
vdw       421  3.8000   0.0910
vdw       422  3.8000   0.0910
vdw       423  3.8000   0.0910
vdw       424  3.8200   0.1060
vdw       425  3.8000   0.0910
vdw       426  3.7100   0.1050
vdw       427  3.8000   0.0910
vdw       428  3.8000   0.0910
vdw       429  3.7100   0.1100
vdw       430  3.8000   0.0910
vdw       431  3.7100   0.1100
vdw       432  3.4050   0.1100
vdw       433  2.4800   0.0115 0.900
vdw       434  2.9600   0.0220 0.920
vdw       435  2.4800   0.0115 0.900
vdw       436  2.9600   0.0220 0.920
vdw       437  2.9600   0.0240 0.920
vdw       438  2.9600   0.0220 0.920
vdw       439  2.9300   0.0260 0.910
vdw       440  2.9600   0.0240 0.920
vdw       441  3.3000   0.1120
vdw       442  2.5900   0.0220 0.900
vdw       443  2.9800   0.0260 0.920
vdw       444  2.9800   0.0260 0.920
vdw       445  2.7000   0.0200 0.910
vdw       446  2.9800   0.0260 0.920
vdw       447  2.9800   0.0260 0.920
vdw       448  2.7000   0.0200 0.910
vdw       449  2.9800   0.0260 0.920
vdw       450  2.9800   0.0260 0.920
vdw       451  2.9800   0.0260 0.920
vdw       452  3.3000   0.1120
vdw       453  3.3000   0.1140
bond      401   404   453.0000    1.5218
bond      401   406   381.3000    1.5054
bond      401   436   341.0000    1.0943
bond      402   406   381.3000    1.5044
bond      402   437   341.0000    1.0906
bond      403   404   381.3000    1.4858
bond      403   405   381.3000    1.5001
bond      403   435   515.9000    1.1076
bond      404   434   341.0000    1.0954
bond      405   409   345.3000    1.5509
bond      405   438   341.0000    1.0917
bond      406   433   515.9000    1.0265
bond      407   410   374.8000    1.4678
bond      407   439   341.0000    1.0919
bond      408   432   465.1000    1.4279
bond      408   440   341.0000    1.0927
bond      409   410   482.0000    1.3158
bond      409   441   601.8000    1.2491
bond      410   411   250.0000    1.4428
bond      411   412   610.9000    1.3933
bond      412   420   610.9000    1.3857
bond      412   444   370.5000    1.0871
bond      413   419   610.9000    1.4093
bond      413   428   610.9000    1.3855
bond      413   429   250.0000    1.3952
bond      414   416   345.3000    1.4851
bond      414   429   482.0000    1.3702
bond      414   452   601.8000    1.2335
bond      415   419   610.9000    1.3886
bond      415   430   610.9000    1.3982
bond      415   451   370.5000    1.0819
bond      416   418   453.0000    1.3644
bond      416   419   453.2000    1.4669
bond      417   428   610.9000    1.3901
bond      417   430   610.9000    1.3977
bond      417   450   370.5000    1.0847
bond      418   427   453.2000    1.4761
bond      418   431   250.0000    1.3872
bond      420   421   610.9000    1.4096
bond      420   446   370.5000    1.0813
bond      421   431   250.0000    1.3782
bond      422   425   610.9000    1.3848
bond      422   427   610.9000    1.3983
bond      422   449   370.5000    1.0865
bond      423   425   610.9000    1.4057
bond      423   426   250.0000    1.3784
bond      424   430   453.2000    1.4893
bond      424   432   465.1000    1.3442
bond      424   453   601.8000    1.2091
bond      425   447   370.5000    1.0864
bond      426   448   520.0000    1.0095
bond      428   443   370.5000    1.0850
bond      429   442   542.0000    1.0086
bond      431   445   520.0000    1.0267
angle     404   401   406    56.1100  111.3365
angle     404   401   436    38.0000  110.2768
angle     406   401   436    70.9900  108.2159
angle     436   401   436    40.5700  108.6166
angle     406   402   437    58.9900  108.7374
angle     437   402   437    40.5700  110.2854
angle     404   403   404    51.8000  111.3390
angle     404   403   405    51.8000  113.9698
angle     404   403   435    35.0000  111.0926
angle     405   403   435    35.0000   95.3812
angle     401   404   403    56.1100  110.5180
angle     401   404   434    38.0000  112.1351
angle     403   404   434    70.9900  108.8031
angle     434   404   434    40.5700  108.3566
angle     403   405   409    56.1100  102.3733
angle     403   405   438    70.9900  110.7509
angle     409   405   438    38.0000  111.9770
angle     438   405   438    40.5700  108.2219
angle     401   406   401    51.8000  110.3169
angle     401   406   402    51.8000  111.7492
angle     401   406   433    35.0000  107.9453
angle     402   406   433    35.0000  106.8848
angle     410   407   439    58.9900  108.8945
angle     439   407   439    40.5700  109.1444
angle     432   408   440    60.9900  105.5485
angle     440   408   440    39.5700  110.5906
angle     405   409   410    70.0000  118.0094
angle     405   409   441    80.0000  114.8485
angle     410   409   441    60.0000  127.1421
angle     407   410   409    50.0000  121.2305
angle     407   410   411    65.0000  118.7703
angle     409   410   411    65.0000  119.9975
angle     410   411   412    60.0000  119.9672
angle     412   411   412    64.6700  120.0923
angle     411   412   420    64.6700  120.4797
angle     411   412   444    32.0000  119.9615
angle     420   412   444    32.0000  119.5589
angle     419   413   428    64.6700  122.7313
angle     419   413   429    60.0000  109.0565
angle     428   413   429    60.0000  128.2068
angle     416   414   429    70.0000  106.3449
angle     416   414   452    80.0000  128.5325
angle     429   414   452    60.0000  125.1212
angle     419   415   430    64.6700  119.0963
angle     419   415   451    32.0000  121.6151
angle     430   415   451    32.0000  119.2875
angle     414   416   418    60.0000  121.9875
angle     414   416   419    60.0000  106.2181
angle     418   416   419    60.0000  131.7803
angle     428   417   430    64.6700  120.9034
angle     428   417   450    32.0000  120.6358
angle     430   417   450    32.0000  118.4588
angle     416   418   427    60.0000  123.5785
angle     416   418   431    60.0000  117.7852
angle     427   418   431    28.8000  118.5407
angle     413   419   415    64.6700  118.8434
angle     413   419   416    33.8100  106.6405
angle     415   419   416    33.8100  134.4808
angle     412   420   421    64.6700  120.2741
angle     412   420   446    32.0000  119.2317
angle     421   420   446    32.0000  120.4940
angle     420   421   420    64.6700  118.3210
angle     420   421   431    60.0000  125.0712
angle     425   422   427    64.6700  120.9749
angle     425   422   449    32.0000  119.5460
angle     427   422   449    32.0000  119.4779
angle     425   423   425    64.6700  118.4201
angle     425   423   426    60.0000  120.7662
angle     430   424   432    60.0000  112.4952
angle     430   424   453    60.0000  124.2315
angle     432   424   453    50.0000  123.2733
angle     422   425   423    64.6700  120.5259
angle     422   425   447    32.0000  119.8603
angle     423   425   447    32.0000  119.6116
angle     423   426   448    35.0000  116.9104
angle     448   426   448    35.0000  113.0389
angle     418   427   422    33.8100  120.8067
angle     422   427   422    64.6700  118.5488
angle     413   428   417    64.6700  117.5357
angle     413   428   443    32.0000  121.3573
angle     417   428   443    32.0000  121.1049
angle     413   429   414    65.0000  111.6112
angle     413   429   442    35.0000  125.5559
angle     414   429   442    35.0000  122.3838
angle     415   430   417    64.6700  120.8660
angle     415   430   424    33.8100  121.6252
angle     417   430   424    33.8100  117.5088
angle     418   431   421    65.0000  130.4109
angle     418   431   445    41.7000  111.9479
angle     421   431   445    35.0000  115.4880
angle     408   432   424    88.5000  115.0597
strbnd    404   401   406    18.7000   18.7000
strbnd    404   401   436    11.5000   18.7000
strbnd    406   401   436    11.5000   11.5000
strbnd    406   402   437    11.5000   11.5000
strbnd    404   403   404     7.2000    7.2000
strbnd    404   403   405     7.2000    7.2000
strbnd    404   403   435     4.3000   14.4000
strbnd    405   403   435     4.3000   14.4000
strbnd    401   404   403    18.7000   18.7000
strbnd    401   404   434    11.5000   18.7000
strbnd    403   404   434    11.5000   11.5000
strbnd    403   405   409    18.7000   18.7000
strbnd    403   405   438    11.5000   11.5000
strbnd    409   405   438    11.5000   18.7000
strbnd    401   406   401     7.2000    7.2000
strbnd    401   406   402     7.2000    7.2000
strbnd    401   406   433     4.3000   14.4000
strbnd    402   406   433     4.3000   14.4000
strbnd    410   407   439    11.5000   11.5000
strbnd    432   408   440    -4.5000   38.0000
strbnd    405   409   410    18.7000   18.7000
strbnd    405   409   441    18.7000   18.7000
strbnd    407   410   409     7.2000    7.2000
strbnd    407   410   411     7.2000    7.2000
strbnd    409   410   411     7.2000    7.2000
strbnd    410   411   412    18.7000   18.7000
strbnd    412   411   412    18.7000   18.7000
strbnd    411   412   420    18.7000   18.7000
strbnd    411   412   444    11.5000   18.7000
strbnd    420   412   444    11.5000   18.7000
strbnd    419   413   428    18.7000   18.7000
strbnd    419   413   429    18.7000   18.7000
strbnd    428   413   429    18.7000   18.7000
strbnd    416   414   429    18.7000   18.7000
strbnd    416   414   452    18.7000   18.7000
strbnd    419   415   430    18.7000   18.7000
strbnd    419   415   451    11.5000   18.7000
strbnd    430   415   451    11.5000   18.7000
strbnd    414   416   418    18.7000   18.7000
strbnd    414   416   419    18.7000   18.7000
strbnd    418   416   419    18.7000   18.7000
strbnd    428   417   430    18.7000   18.7000
strbnd    428   417   450    11.5000   18.7000
strbnd    430   417   450    11.5000   18.7000
strbnd    416   418   427    18.7000   18.7000
strbnd    413   419   415    18.7000   18.7000
strbnd    413   419   416    18.7000   18.7000
strbnd    415   419   416    18.7000   18.7000
strbnd    412   420   421    18.7000   18.7000
strbnd    412   420   446    11.5000   18.7000
strbnd    421   420   446    11.5000   18.7000
strbnd    420   421   420    18.7000   18.7000
strbnd    420   421   431    18.7000   18.7000
strbnd    425   422   427    18.7000   18.7000
strbnd    425   422   449    11.5000   18.7000
strbnd    427   422   449    11.5000   18.7000
strbnd    425   423   425    18.7000   18.7000
strbnd    425   423   426    18.7000   18.7000
strbnd    430   424   432    18.7000   18.7000
strbnd    422   425   423    18.7000   18.7000
strbnd    422   425   447    11.5000   18.7000
strbnd    423   425   447    11.5000   18.7000
strbnd    423   426   448     4.3000    7.2000
strbnd    418   427   422    18.7000   18.7000
strbnd    422   427   422    18.7000   18.7000
strbnd    413   428   417    18.7000   18.7000
strbnd    413   428   443    11.5000   18.7000
strbnd    417   428   443    11.5000   18.7000
strbnd    413   429   414     7.2000    7.2000
strbnd    413   429   442     4.3000    7.2000
strbnd    414   429   442     4.3000    7.2000
strbnd    415   430   417    18.7000   18.7000
strbnd    415   430   424    18.7000   18.7000
strbnd    417   430   424    18.7000   18.7000
strbnd    421   431   445     4.3000    7.2000
strbnd    408   432   424    38.0000   38.0000
opbend    405   409     0     0    14.4000
opbend    407   410     0     0    12.9492
opbend    409   410     0     0    71.9400
opbend    410   409     0     0   107.9100
opbend    410   411     0     0    14.4000
opbend    411   410     0     0    14.3880
opbend    411   412     0     0    14.3880
opbend    412   411     0     0    14.3880
opbend    412   420     0     0    14.3880
opbend    413   419     0     0    14.3880
opbend    413   428     0     0    14.3880
opbend    413   429     0     0    14.3880
opbend    414   416     0     0    14.4000
opbend    414   429     0     0    71.9400
opbend    415   419     0     0    14.3880
opbend    415   430     0     0    14.3880
opbend    416   414     0     0    14.4000
opbend    416   418     0     0    14.4000
opbend    416   419     0     0    14.4000
opbend    417   428     0     0    14.3880
opbend    417   430     0     0    14.3880
opbend    418   416     0     0    14.4000
opbend    418   427     0     0    14.4000
opbend    418   431     0     0    14.3880
opbend    419   413     0     0    14.3880
opbend    419   415     0     0    14.3880
opbend    419   416     0     0    14.3880
opbend    420   412     0     0    14.3880
opbend    420   421     0     0    14.3880
opbend    421   420     0     0    14.3880
opbend    421   431     0     0    14.3880
opbend    422   425     0     0    14.3880
opbend    422   427     0     0    14.3880
opbend    423   425     0     0    14.3880
opbend    423   426     0     0    14.3880
opbend    424   430     0     0    14.4000
opbend    425   422     0     0    14.3880
opbend    425   423     0     0    14.3880
opbend    426   423     0     0    14.4000
opbend    427   418     0     0    14.3880
opbend    427   422     0     0    14.3880
opbend    428   413     0     0    14.3880
opbend    428   417     0     0    14.3880
opbend    429   413     0     0    14.4000
opbend    429   414     0     0   107.9100
opbend    430   415     0     0    14.3880
opbend    430   417     0     0    14.3880
opbend    430   424     0     0    14.3880
opbend    431   418     0     0    14.3880
opbend    431   421     0     0    14.4000
opbend    432   424     0     0    14.4000
opbend    441   409     0     0   122.2980
opbend    442   429     0     0     5.7552
opbend    443   428     0     0    15.1074
opbend    444   412     0     0    15.1074
opbend    445   431     0     0     3.5970
opbend    446   420     0     0    15.1074
opbend    447   425     0     0    15.1074
opbend    448   426     0     0     3.5970
opbend    449   422     0     0    15.1074
opbend    450   417     0     0    15.1074
opbend    451   415     0     0    15.1074
opbend    452   414     0     0   122.2980
opbend    453   424     0     0    46.7610
torsion   406   401   404   403     0.0000 0.0 1     0.0000 180.0 2     0.3000 0.0 3
torsion   406   401   404   434     0.0000 0.0 1     0.0000 180.0 2     0.3740 0.0 3
torsion   436   401   404   403     0.0000 0.0 1     0.0000 180.0 2     0.3740 0.0 3
torsion   436   401   404   434     0.0000 0.0 1     0.0000 180.0 2     0.2990 0.0 3
torsion   404   401   406   401     0.9580 0.0 1    -0.1550 180.0 2     0.7660 0.0 3
torsion   404   401   406   402     0.9580 0.0 1    -0.1550 180.0 2     0.7660 0.0 3
torsion   404   401   406   433    -0.1070 0.0 1     0.5120 180.0 2     0.3650 0.0 3
torsion   436   401   406   401     0.1210 0.0 1    -0.6480 180.0 2     0.1990 0.0 3
torsion   436   401   406   402     0.0720 0.0 1    -0.0120 180.0 2     0.5630 0.0 3
torsion   436   401   406   433     0.1210 0.0 1    -0.6480 180.0 2     0.1990 0.0 3
torsion   437   402   406   401     0.0720 0.0 1    -0.0120 180.0 2     0.5630 0.0 3
torsion   437   402   406   433     0.0000 0.0 1     0.6610 180.0 2     0.2880 0.0 3
torsion   404   403   404   401     0.9580 0.0 1    -0.1550 180.0 2     0.7660 0.0 3
torsion   404   403   404   434     0.1210 0.0 1    -0.6480 180.0 2     0.1990 0.0 3
torsion   405   403   404   401     0.9580 0.0 1    -0.1550 180.0 2     0.7660 0.0 3
torsion   405   403   404   434     0.0720 0.0 1    -0.0120 180.0 2     0.5630 0.0 3
torsion   435   403   404   401    -0.1070 0.0 1     0.5120 180.0 2     0.3650 0.0 3
torsion   435   403   404   434     0.1210 0.0 1    -0.6480 180.0 2     0.1990 0.0 3
torsion   404   403   405   409     6.2894 0.0 1    -2.0562 180.0 2     0.0000 0.0 3
torsion   404   403   405   438     0.0720 0.0 1    -0.0120 180.0 2     0.5630 0.0 3
torsion   435   403   405   409    -1.8355 0.0 1     5.7637 180.0 2     0.0000 0.0 3
torsion   435   403   405   438     0.0000 0.0 1     0.6610 180.0 2     0.2880 0.0 3
torsion   403   405   409   410     0.0000 0.0 1     5.1960 180.0 2     0.0000 0.0 3
torsion   403   405   409   441     0.0000 0.0 1     5.1960 180.0 2     0.0000 0.0 3
torsion   438   405   409   410     0.0000 0.0 1     0.0000 180.0 2     0.0000 0.0 3
torsion   438   405   409   441     0.0000 0.0 1     0.0000 180.0 2     0.0000 0.0 3
torsion   439   407   410   409     0.0000 0.0 1     0.0000 180.0 2    -0.1260 0.0 3
torsion   439   407   410   411     0.0000 0.0 1    -0.9200 180.0 2     0.0000 0.0 3
torsion   440   408   432   424     0.0000 0.0 1     0.0000 180.0 2     0.5970 0.0 3
torsion   405   409   410   407    -1.0000 0.0 1     2.0000 180.0 2     2.0500 0.0 3
torsion   405   409   410   411     0.0000 0.0 1    -0.9200 180.0 2     0.0000 0.0 3
torsion   441   409   410   407     1.0000 0.0 1     2.2500 180.0 2    -2.2500 0.0 3
torsion   441   409   410   411     0.0000 0.0 1    -0.9200 180.0 2     0.0000 0.0 3
torsion   407   410   411   412     0.0000 0.0 1     1.2500 180.0 2     0.0000 0.0 3
torsion   409   410   411   412     0.0000 0.0 1     1.2500 180.0 2     0.0000 0.0 3
torsion   410   411   412   420     0.0000 0.0 1    14.0000 180.0 2     0.0000 0.0 3
torsion   410   411   412   444     0.0000 0.0 1    14.0000 180.0 2     0.0000 0.0 3
torsion   412   411   412   420    -0.6700 0.0 1     4.0040 180.0 2     0.0000 0.0 3
torsion   412   411   412   444     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   411   412   420   421    -0.6700 0.0 1     4.0040 180.0 2     0.0000 0.0 3
torsion   411   412   420   446     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   444   412   420   421     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   444   412   420   446     0.0000 0.0 1     4.0720 180.0 2     0.0000 0.0 3
torsion   428   413   419   415    -0.6700 0.0 1     4.0040 180.0 2     0.0000 0.0 3
torsion   428   413   419   416    -0.6100 0.0 1     4.2120 180.0 2     0.0000 0.0 3
torsion   429   413   419   415     0.0000 0.0 1    14.0000 180.0 2     0.0000 0.0 3
torsion   429   413   419   416     0.0000 0.0 1    14.0000 180.0 2     0.0000 0.0 3
torsion   419   413   428   417    -0.6700 0.0 1     4.0040 180.0 2     0.0000 0.0 3
torsion   419   413   428   443     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   429   413   428   417     0.0000 0.0 1    14.0000 180.0 2     0.0000 0.0 3
torsion   429   413   428   443     0.0000 0.0 1    14.0000 180.0 2     0.0000 0.0 3
torsion   419   413   429   414     0.5200 0.0 1    -0.5100 180.0 2     0.5200 0.0 3
torsion   419   413   429   442     0.5200 0.0 1    -0.5100 180.0 2     0.5200 0.0 3
torsion   428   413   429   414     0.5200 0.0 1    -0.5100 180.0 2     0.5200 0.0 3
torsion   428   413   429   442     0.5200 0.0 1    -0.5100 180.0 2     0.5200 0.0 3
torsion   429   414   416   418     0.0000 0.0 1     2.5000 180.0 2     0.0000 0.0 3
torsion   429   414   416   419     0.0000 0.0 1     2.5000 180.0 2     0.0000 0.0 3
torsion   452   414   416   418     0.0000 0.0 1     4.4700 180.0 2     0.0000 0.0 3
torsion   452   414   416   419     0.0000 0.0 1     4.4700 180.0 2     0.0000 0.0 3
torsion   416   414   429   413     0.0000 0.0 1    -0.9200 180.0 2     0.0000 0.0 3
torsion   416   414   429   442     0.0000 0.0 1     1.2000 180.0 2     0.8000 0.0 3
torsion   452   414   429   413     0.0000 0.0 1    -0.9200 180.0 2     0.0000 0.0 3
torsion   452   414   429   442     0.0000 0.0 1    -0.6640 180.0 2    -0.3570 0.0 3
torsion   430   415   419   413    -0.6700 0.0 1     4.0040 180.0 2     0.0000 0.0 3
torsion   430   415   419   416    -0.6100 0.0 1     4.2120 180.0 2     0.0000 0.0 3
torsion   451   415   419   413     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   451   415   419   416     0.0000 0.0 1     6.1040 180.0 2     0.0000 0.0 3
torsion   419   415   430   417    -0.6700 0.0 1     4.0040 180.0 2     0.0000 0.0 3
torsion   419   415   430   424    -0.6100 0.0 1     4.2120 180.0 2     0.0000 0.0 3
torsion   451   415   430   417     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   451   415   430   424     0.0000 0.0 1     6.1040 180.0 2     0.0000 0.0 3
torsion   414   416   418   427    -0.6700 0.0 1     4.0000 180.0 2     0.0000 0.0 3
torsion   414   416   418   431     0.0000 0.0 1     2.5000 180.0 2     0.0000 0.0 3
torsion   419   416   418   427    -0.6700 0.0 1     4.0000 180.0 2     0.0000 0.0 3
torsion   419   416   418   431     0.0000 0.0 1     2.5000 180.0 2     0.0000 0.0 3
torsion   414   416   419   413     0.5200 0.0 1    -0.5100 180.0 2     0.5200 0.0 3
torsion   414   416   419   415     0.5200 0.0 1    -0.5100 180.0 2     0.5200 0.0 3
torsion   418   416   419   413     0.5200 0.0 1    -0.5100 180.0 2     0.5200 0.0 3
torsion   418   416   419   415     0.5200 0.0 1    -0.5100 180.0 2     0.5200 0.0 3
torsion   430   417   428   413    -0.6700 0.0 1     4.0040 180.0 2     0.0000 0.0 3
torsion   430   417   428   443     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   450   417   428   413     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   450   417   428   443     0.0000 0.0 1     4.0720 180.0 2     0.0000 0.0 3
torsion   428   417   430   415    -0.6700 0.0 1     4.0040 180.0 2     0.0000 0.0 3
torsion   428   417   430   424    -0.6100 0.0 1     4.2120 180.0 2     0.0000 0.0 3
torsion   450   417   430   415     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   450   417   430   424     0.0000 0.0 1     6.1040 180.0 2     0.0000 0.0 3
torsion   416   418   427   422     0.5200 0.0 1    -0.5100 180.0 2     0.5200 0.0 3
torsion   431   418   427   422     0.5200 0.0 1    -0.5100 180.0 2     0.5200 0.0 3
torsion   416   418   431   421     4.9500 0.0 1     1.8300 180.0 2     0.4000 0.0 3
torsion   416   418   431   445     0.0000 0.0 1     1.0000 180.0 2     0.0000 0.0 3
torsion   427   418   431   421     0.9500 0.0 1    -0.4500 180.0 2    -0.5800 0.0 3
torsion   427   418   431   445     0.0000 0.0 1     1.0000 180.0 2     0.0000 0.0 3
torsion   412   420   421   420    -0.6700 0.0 1     4.0040 180.0 2     0.0000 0.0 3
torsion   412   420   421   431     0.0000 0.0 1    14.0000 180.0 2     0.0000 0.0 3
torsion   446   420   421   420     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   446   420   421   431     0.0000 0.0 1    14.0000 180.0 2     0.0000 0.0 3
torsion   420   421   431   418     0.0000 0.0 1     1.6200 180.0 2     0.1500 0.0 3
torsion   420   421   431   445     0.0000 0.0 1     0.5000 180.0 2     0.0000 0.0 3
torsion   427   422   425   423    -0.6700 0.0 1     4.0040 180.0 2     0.0000 0.0 3
torsion   427   422   425   447     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   449   422   425   423     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   449   422   425   447     0.0000 0.0 1     4.0720 180.0 2     0.0000 0.0 3
torsion   425   422   427   418    -0.6100 0.0 1     4.2120 180.0 2     0.0000 0.0 3
torsion   425   422   427   422    -0.6700 0.0 1     4.0040 180.0 2     0.0000 0.0 3
torsion   449   422   427   418     0.0000 0.0 1     6.1040 180.0 2     0.0000 0.0 3
torsion   449   422   427   422     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   425   423   425   422    -0.6700 0.0 1     4.0040 180.0 2     0.0000 0.0 3
torsion   425   423   425   447     0.5500 0.0 1     4.5340 180.0 2    -0.5500 0.0 3
torsion   426   423   425   422     0.0000 0.0 1    14.0000 180.0 2     0.0000 0.0 3
torsion   426   423   425   447     0.0000 0.0 1    14.0000 180.0 2     0.0000 0.0 3
torsion   425   423   426   448     0.0000 0.0 1     0.5000 180.0 2     0.0000 0.0 3
torsion   432   424   430   415     0.0000 0.0 1     3.4100 180.0 2     0.0000 0.0 3
torsion   432   424   430   417     0.0000 0.0 1     3.4100 180.0 2     0.0000 0.0 3
torsion   453   424   430   415     0.0000 0.0 1     3.4100 180.0 2     0.0000 0.0 3
torsion   453   424   430   417     0.0000 0.0 1     3.4100 180.0 2     0.0000 0.0 3
torsion   430   424   432   408     2.9850 0.0 1    11.0070 180.0 2     1.5880 0.0 3
torsion   453   424   432   408     0.3160 0.0 1    -0.2140 180.0 2     0.0320 0.0 3
pitors    409   410     6.8500
pitors    411   412     6.8500
pitors    412   420     6.8500
pitors    413   419     6.8500
pitors    413   428     6.8500
pitors    414   429     6.8500
pitors    415   419     6.8500
pitors    415   430     6.8500
pitors    417   428     6.8500
pitors    417   430     6.8500
pitors    418   431     3.0000
pitors    420   421     6.8500
pitors    422   425     6.8500
pitors    422   427     6.8500
pitors    423   425     6.8500

Protein Structure prot.xyz

 5445
     1  N     21.070394   27.582346   -8.211460   231     2     5     6     7
     2  CA    19.689421   27.700682   -8.712587     8     1     3     8     9
     3  C     19.086220   26.310385   -9.171109     9     2     4    25
     4  O     19.611325   25.768735  -10.143211    11     3
     5  H     21.037262   26.823618   -7.601036   232     1
     6  H     21.449257   28.472124   -7.876221   232     1
     7  H     21.695420   27.331925   -8.934502   232     1
     8  H     19.039651   28.056655   -7.861358    12     2
     9  C     19.641033   28.679676   -9.936998   182     2    10    14    15
    10  C     18.176616   29.205832  -10.126914   184     9    11    16    17
    11  C     17.989481   30.553669  -10.850338   186    10    12    18    19
    12  C     18.823632   31.704980  -10.399617   188    11    13    20    21
    13  N     18.982848   32.718282  -11.461907   190    12    22    23    24
    14  H     20.379096   29.473764   -9.794382   183     9
    15  H     19.971075   28.106243  -10.868603   183     9
    16  H     17.622408   28.443930  -10.756630   185    10
    17  H     17.708043   29.157892   -9.083037   185    10
    18  H     18.179476   30.452440  -12.015359   187    11
    19  H     16.918400   30.898772  -10.753536   187    11
    20  H     18.412279   32.160682   -9.461425   189    12
    21  H     19.871491   31.417312  -10.122775   189    12
    22  HN    18.140976   33.264801  -11.486742   191    13
    23  HN    19.088040   32.320479  -12.395252   191    13
    24  HN    19.806877   33.300973  -11.366446   191    13
    25  N     18.061579   25.874933   -8.430301     7     3    26    29
    26  CA    17.346186   24.571641   -8.600972     8    25    27    30    31
    27  C     16.903687   24.215187  -10.000041     9    26    28    37
    28  O     17.344721   23.190342  -10.591223    11    27
    29  HN    17.841594   26.249095   -7.525087    10    25
    30  H     18.111113   23.810678   -8.350357    12    26
    31  C     16.166173   24.415846   -7.678047   137    26    32    35    36
    32  C     16.388531   24.726157   -6.219296   139    31    33    34
    33  O     15.341594   24.858120   -5.521319   140    32
    34  O     17.474769   25.028024   -5.766923   140    32
    35  H     15.254198   24.950077   -8.018976   138    31
    36  H     15.887035   23.305077   -7.674207   138    31
    37  N     16.103061   25.146750  -10.543009     7    27    38    41
    38  CA    15.661191   25.130279  -11.935872     8    37    39    42    43
    39  C     16.722492   25.066689  -12.948291     9    38    40    58
    40  O     16.497122   24.385258  -13.943692    11    39
    41  HN    15.795862   25.967802  -10.044456    10    37
    42  H     15.195955   24.103773  -12.047551    12    38
    43  C     14.692984   26.254862  -12.373220    70    38    44    51    52
    44  C     13.309150   25.752751  -12.833804    72    43    45    46
    45  C     12.927101   25.775210  -14.176852    73    44    47    53
    46  C     12.483409   25.149370  -11.889626    73    44    48    54
    47  C     11.608654   25.245008  -14.459564    75    45    49    55
    48  C     11.300770   24.530584  -12.241000    75    46    49    56
    49  C     10.840896   24.527951  -13.544436    77    47    48    50
    50  OH     9.574752   24.057745  -13.845825    78    49    57
    51  H     14.520351   26.961747  -11.566334    71    43
    52  H     15.164048   26.874399  -13.202139    71    43
    53  H     13.541181   26.220696  -14.942363    74    45
    54  H     12.814534   25.159962  -10.833029    74    46
    55  H     11.284501   25.224600  -15.549679    76    47
    56  H     10.775511   24.088899  -11.385357    76    48
    57  HO     9.411167   24.124151  -14.764983    79    50
    58  N     17.903953   25.655725  -12.727657     7    39    59    62
    59  CA    19.051185   25.560491  -13.712910     8    58    60    63    64
    60  C     19.663982   24.145249  -13.695112     9    59    61    70
    61  O     19.781593   23.550146  -14.769009    11    60
    62  HN    18.115256   26.045679  -11.802835    10    58
    63  H     18.604223   25.681189  -14.791122    12    59
    64  C     20.144916   26.631907  -13.495178   137    59    65    68    69
    65  C     19.716936   28.026782  -13.821928   139    64    66    67
    66  O     18.566204   28.490266  -13.543577   140    65
    67  O     20.542683   28.702627  -14.450834   140    65
    68  H     20.449571   26.491579  -12.465497   138    64
    69  H     21.050125   26.303974  -14.148812   138    64
    70  N     20.042516   23.556021  -12.526563     7    60    71    74
    71  CA    20.347309   22.180528  -12.294953     8    70    72    75    76
    72  C     19.483192   21.192436  -13.084420     9    71    73    85
    73  O     19.911715   20.129358  -13.534281    11    72
    74  HN    19.945003   24.040318  -11.601898    10    70
    75  H     21.381868   22.045408  -12.485138    12    71
    76  C     20.372145   21.890315  -10.689912   153    71    77    81    82
    77  C     20.771137   20.400295  -10.405358   155    76    78    83    84
    78  C     22.149830   19.933714  -10.916744   157    77    79    80
    79  O     22.344009   18.752174  -11.269430   158    78
    80  O     23.093545   20.729534  -11.030747   158    78
    81  H     21.175954   22.491675  -10.186587   154    76
    82  H     19.402454   22.095371  -10.253060   154    76
    83  H     20.791309   20.221648   -9.282042   156    77
    84  H     19.990957   19.776887  -10.800218   156    77
    85  N     18.135299   21.424379  -13.117264     7    72    86    89
    86  CA    17.134893   20.641647  -13.897183     8    85    87    90    91
    87  C     17.398851   20.816723  -15.420405     9    86    88   104
    88  O     17.602604   19.864666  -16.209118    11    87
    89  HN    17.635553   22.159635  -12.561841    10    85
    90  H     17.343368   19.605123  -13.615111    12    86
    91  C     15.653788   21.187041  -13.545916    19    86    92    95    96
    92  C     14.415216   20.508483  -14.135162    21    91    93    94    97
    93  C     14.443112   18.974408  -13.812626    23    92    98    99   100
    94  C     13.114934   21.150646  -13.596505    23    92   101   102   103
    95  H     15.555626   21.094771  -12.440360    20    91
    96  H     15.640786   22.265608  -13.796610    20    91
    97  H     14.480673   20.689145  -15.206382    22    92
    98  H     15.518478   18.669294  -14.007841    24    93
    99  H     13.750357   18.463556  -14.512837    24    93
   100  H     14.360705   18.634878  -12.763906    24    93
   101  H     12.979284   21.011362  -12.452333    24    94
   102  H     13.121553   22.272991  -13.724151    24    94
   103  H     12.177894   20.777669  -14.098579    24    94
   104  N     17.394102   22.110346  -15.879376     7    87   105   108
   105  CA    17.284661   22.460416  -17.270643     8   104   106   109   110
   106  C     18.593877   22.157504  -18.091671     9   105   107   123
   107  O     18.484298   21.821566  -19.257363    11   106
   108  HN    17.516690   22.899492  -15.242673    10   104
   109  H     16.391808   21.947046  -17.676569    12   105
   110  C     16.923040   23.978731  -17.560463    19   105   111   114   115
   111  C     15.455558   24.308015  -18.041301    21   110   112   113   116
   112  C     14.562336   24.020756  -16.715964    23   111   117   118   119
   113  C     15.257094   25.801243  -18.348186    23   111   120   121   122
   114  H     17.210063   24.663618  -16.754504    20   110
   115  H     17.657360   24.259184  -18.429343    20   110
   116  H     15.177501   23.704416  -18.936134    22   111
   117  H     14.928077   24.553373  -15.898943    24   112
   118  H     14.616942   22.930154  -16.318541    24   112
   119  H     13.549822   24.358019  -16.863654    24   112
   120  H     15.474508   26.480618  -17.528424    24   113
   121  H     15.928680   26.112962  -19.215861    24   113
   122  H     14.232528   26.047510  -18.651055    24   113
   123  N     19.785142   22.041844  -17.372706     7   106   124   127
   124  CA    21.099868   21.570809  -17.908351     8   123   125   128   129
   125  C     21.146772   20.106792  -18.465568     9   124   126   145
   126  O     22.059124   19.686356  -19.128181    11   125
   127  HN    19.702814   22.133077  -16.365137    10   123
   128  H     21.260079   22.214361  -18.785754    12   124
   129  C     22.158102   21.715538  -16.773348   182   124   130   134   135
   130  C     22.250477   20.452746  -15.858651   184   129   131   136   137
   131  C     23.098102   20.766216  -14.548953   186   130   132   138   139
   132  C     24.068149   19.600655  -14.102690   188   131   133   140   141
   133  N     24.807177   19.923727  -12.919243   190   132   142   143   144
   134  H     23.135954   21.740957  -17.371931   183   129
   135  H     22.050045   22.654746  -16.279669   183   129
   136  H     21.257188   20.147442  -15.565047   185   130
   137  H     22.721046   19.612471  -16.322026   185   130
   138  H     23.637447   21.686476  -14.648439   187   131
   139  H     22.406934   20.881576  -13.705323   187   131
   140  H     23.400974   18.779224  -13.771698   189   132
   141  H     24.801182   19.261470  -14.886218   189   132
   142  HN    24.176931   19.998389  -12.128844   191   133
   143  HN    25.380640   20.695154  -13.091843   191   133
   144  HN    25.355533   19.135310  -12.623582   191   133
   145  N     19.990326   19.383525  -18.420447     7   125   146   149
   146  CA    19.734904   18.074162  -19.061461     8   145   147   150   151
   147  C     18.339457   18.077759  -19.739937     9   146   148   166
   148  O     18.152393   17.348207  -20.716299    11   147
   149  HN    19.228057   19.736240  -17.847539    10   145
   150  H     20.609016   17.924053  -19.812995    12   146
   151  C     19.814827   16.877442  -18.082813    70   146   152   159   160
   152  C     21.021535   16.908740  -17.206837    72   151   153   154
   153  C     22.277994   16.793021  -17.768715    73   152   155   161
   154  C     20.947936   16.925933  -15.808428    73   152   156   162
   155  C     23.504085   16.851989  -17.049836    75   153   157   163
   156  C     22.107799   16.860554  -15.079227    75   154   157   164
   157  C     23.391171   16.736983  -15.691075    77   155   156   158
   158  OH    24.484871   16.724938  -14.837489    78   157   165
   159  H     18.926949   16.747897  -17.532722    71   151
   160  H     19.836988   15.943426  -18.698591    71   151
   161  H     22.450618   16.783939  -18.834305    74   153
   162  H     19.954131   17.053980  -15.259087    74   154
   163  H     24.497955   16.841143  -17.581567    76   155
   164  H     22.127569   17.031659  -14.025126    76   156
   165  HO    25.007914   15.975642  -15.104232    79   158
   166  N     17.301064   18.873790  -19.258930     7   147   167   170
   167  CA    15.879881   18.758327  -19.703600     8   166   168   171   172
   168  C     15.412959   20.055392  -20.262081     9   167   169   187
   169  O     15.475359   21.110116  -19.585532    11   168
   170  HN    17.380102   19.685368  -18.606627    10   166
   171  H     15.757889   17.976425  -20.500185    12   167
   172  C     14.941229   18.355408  -18.574510    70   167   173   180   181
   173  C     15.423785   17.116960  -17.892160    72   172   174   175
   174  C     15.555274   15.920586  -18.621536    73   173   176   182
   175  C     16.047173   17.209145  -16.667008    73   173   177   183
   176  C     16.249699   14.827637  -18.094869    75   174   178   184
   177  C     16.595885   16.086663  -16.104642    75   175   178   185
   178  C     16.753673   14.894084  -16.830225    77   176   177   179
   179  OH    17.211993   13.725843  -16.296752    78   178   186
   180  H     14.876452   19.250528  -17.761584    71   172
   181  H     13.940502   18.202936  -18.970246    71   172
   182  H     15.082030   15.766589  -19.590421    74   174
   183  H     16.194461   18.172489  -16.188735    74   175
   184  H     16.172427   13.859350  -18.649950    76   176
   185  H     17.058182   16.143013  -15.103200    76   177
   186  HO    17.463014   13.067983  -16.982763    79   179
   187  N     14.848804   20.191993  -21.492334     7   168   188   191
   188  CA    14.195662   21.404040  -22.000628     8   187   189   192   193
   189  C     12.732648   21.240544  -21.675776     9   188   190   202
   190  O     12.050519   20.349804  -22.152159    11   189
   191  HN    14.621442   19.390616  -22.109938    10   187
   192  H     14.676215   22.288735  -21.440992    12   188
   193  C     14.601328   21.453780  -23.523937   153   188   194   198   199
   194  C     14.756794   22.825506  -24.094440   155   193   195   200   201
   195  C     13.501532   23.842659  -24.072332   157   194   196   197
   196  O     12.398907   23.615484  -24.729032   158   195
   197  O     13.712181   24.931241  -23.415407   158   195
   198  H     15.592780   20.898467  -23.754150   154   193
   199  H     13.915896   20.850246  -24.124759   154   193
   200  H     15.705528   23.277778  -23.761031   156   194
   201  H     14.879425   22.668416  -25.155723   156   194
   202  N     12.253221   22.004621  -20.698668     7   189   203   206
   203  CA    10.867316   21.853243  -20.212930     8   202   204   207   208
   204  C      9.978590   22.646269  -21.107988     9   203   205   221
   205  O      9.993111   23.887340  -21.083273    11   204
   206  HN    12.799535   22.851350  -20.364797    10   202
   207  H     10.498485   20.778286  -20.346670    12   203
   208  C     10.614906   22.295764  -18.780377    19   203   209   212   213
   209  C     10.969224   21.273558  -17.751294    21   208   210   211   214
   210  C     12.403247   20.703339  -17.678864    23   209   215   216   217
   211  C     10.566650   21.850813  -16.314390    23   209   218   219   220
   212  H     11.143965   23.252093  -18.568177    20   208
   213  H      9.537369   22.660219  -18.621885    20   208
   214  H     10.254496   20.466107  -17.881038    22   209
   215  H     12.374990   19.756749  -17.031186    24   210
   216  H     13.105799   21.431880  -17.238701    24   210
   217  H     12.948588   20.522335  -18.625255    24   210
   218  H     10.881668   21.129449  -15.557678    24   211
   219  H     11.039839   22.856624  -16.184587    24   211
   220  H      9.455199   21.876557  -16.310902    24   211
   221  N      9.358125   21.991354  -22.093226     7   204   222   225
   222  CA     8.491975   22.466309  -23.152116     8   221   223   226   227
   223  C      7.116938   22.965108  -22.689726     9   222   224   239
   224  O      6.778900   24.068459  -23.182416    11   223
   225  HN     9.483262   20.968562  -22.035557    10   221
   226  H      9.007903   23.331589  -23.638182    12   222
   227  C      8.299780   21.286166  -24.134219   106   222   228   233   234
   228  C      7.600752   21.708330  -25.416109   108   227   229   230
   229  N      7.569638   23.001029  -25.909670   109   228   231   235
   230  C      6.916762   20.960299  -26.350180   111   228   232   236
   231  C      6.826933   23.051658  -27.027779   113   229   232   237
   232  N      6.396052   21.807274  -27.302917   115   230   231   238
   233  H      9.290382   20.836544  -24.491524   107   227
   234  H      7.747443   20.431913  -23.757746   107   227
   235  HN     8.128390   23.843785  -25.554330   110   229
   236  H      6.835401   19.913933  -26.486407   112   230
   237  H      6.792971   23.907123  -27.645964   114   231
   238  HN     5.967786   21.631598  -28.238663   116   232
   239  N      6.348381   22.127236  -21.979447     7   223   240   243
   240  CA     4.977312   22.433115  -21.629448     8   239   241   244   245
   241  C      4.551184   21.734045  -20.312733     9   240   242   254
   242  O      4.969615   20.620598  -20.029224    11   241
   243  HN     6.838372   21.267718  -21.632380    10   239
   244  H      4.758766   23.523561  -21.453402    12   240
   245  C      4.045149   22.082977  -22.768015   153   240   246   250   251
   246  C      4.236574   20.693108  -23.425959   155   245   247   252   253
   247  C      3.048271   20.233376  -24.235023   157   246   248   249
   248  O      2.763292   19.001724  -24.502575   158   247
   249  O      2.220623   21.069426  -24.691263   158   247
   250  H      2.995210   22.030704  -22.307295   154   245
   251  H      4.060534   22.855343  -23.538636   154   245
   252  H      5.069836   20.527176  -24.083838   156   246
   253  H      4.378994   20.025957  -22.582991   156   246
   254  N      3.501782   22.271962  -19.671095     7   241   255   258
   255  CA     2.703231   21.449599  -18.719233     8   254   256   259   260
   256  C      1.816108   20.489006  -19.584028     9   255   257   268
   257  O      1.125425   20.884940  -20.509317    11   256
   258  HN     3.270729   23.250292  -19.643365    10   254
   259  H      3.377103   20.840431  -18.078533    12   255
   260  C      1.840453   22.313725  -17.688487    37   255   261   262   263
   261  OH     2.865220   22.943537  -16.926270    39   260   264
   262  C      0.975437   21.502212  -16.718036    41   260   265   266   267
   263  H      1.219771   23.079803  -18.237530    38   260
   264  HO     2.502276   23.832877  -16.791501    40   261
   265  H      0.504242   22.016779  -15.827876    42   262
   266  H      1.702967   20.770342  -16.375192    42   262
   267  H      0.117400   21.033436  -17.221972    42   262
   268  N      1.772768   19.165812  -19.212329     7   256   269   272
   269  CA     0.899300   18.073242  -19.690016     8   268   270   273   274
   270  C     -0.218585   17.825584  -18.646406     9   269   271   287
   271  O     -0.432080   16.705764  -18.218476    11   270
   272  HN     2.174777   18.897147  -18.341462    10   268
   273  H      0.357595   18.428965  -20.581011    12   269
   274  C      1.632171   16.737849  -20.101579    25   269   275   276   278
   275  C      2.601532   16.232701  -19.072257    27   274   277   279   280
   276  C      2.272191   16.924004  -21.518605    29   274   281   282   283
   277  C      3.184233   14.897914  -19.313457    31   275   284   285   286
   278  H      0.745819   16.020090  -20.199795    26   274
   279  H      3.466110   16.947510  -18.868909    28   275
   280  H      2.026257   16.176578  -18.130571    28   275
   281  H      2.705038   15.984453  -21.845256    30   276
   282  H      2.878205   17.855280  -21.6 5445
     1  N     21.070394   27.582346   -8.211460   231     2     5     6     7
     2  CA    19.689421   27.700682   -8.712587     8     1     3     8     9
     3  C     19.086220   26.310385   -9.171109     9     2     4    25
     4  O     19.611325   25.768735  -10.143211    11     3
     5  H     21.037262   26.823618   -7.601036   232     1
     6  H     21.449257   28.472124   -7.876221   232     1
     7  H     21.695420   27.331925   -8.934502   232     1
     8  H     19.039651   28.056655   -7.861358    12     2
     9  C     19.641033   28.679676   -9.936998   182     2    10    14    15
    10  C     18.176616   29.205832  -10.126914   184     9    11    16    17
    11  C     17.989481   30.553669  -10.850338   186    10    12    18    19
    12  C     18.823632   31.704980  -10.399617   188    11    13    20    21
    13  N     18.982848   32.718282  -11.461907   190    12    22    23    24
    14  H     20.379096   29.473764   -9.794382   183     9
    15  H     19.971075   28.106243  -10.868603   183     9
    16  H     17.622408   28.443930  -10.756630   185    10
    17  H     17.708043   29.157892   -9.083037   185    10
    18  H     18.179476   30.452440  -12.015359   187    11
    19  H     16.918400   30.898772  -10.753536   187    11
    20  H     18.412279   32.160682   -9.461425   189    12
    21  H     19.871491   31.417312  -10.122775   189    12
    22  HN    18.140976   33.264801  -11.486742   191    13
    23  HN    19.088040   32.320479  -12.395252   191    13
    24  HN    19.806877   33.300973  -11.366446   191    13
    25  N     18.061579   25.874933   -8.430301     7     3    26    29
    26  CA    17.346186   24.571641   -8.600972     8    25    27    30    31
    27  C     16.903687   24.215187  -10.000041     9    26    28    37
    28  O     17.344721   23.190342  -10.591223    11    27
    29  HN    17.841594   26.249095   -7.525087    10    25
    30  H     18.111113   23.810678   -8.350357    12    26
    31  C     16.166173   24.415846   -7.678047   137    26    32    35    36
    32  C     16.388531   24.726157   -6.219296   139    31    33    34
    33  O     15.341594   24.858120   -5.521319   140    32
    34  O     17.474769   25.028024   -5.766923   140    32
    35  H     15.254198   24.950077   -8.018976   138    31
    36  H     15.887035   23.305077   -7.674207   138    31
    37  N     16.103061   25.146750  -10.543009     7    27    38    41
    38  CA    15.661191   25.130279  -11.935872     8    37    39    42    43
    39  C     16.722492   25.066689  -12.948291     9    38    40    58
    40  O     16.497122   24.385258  -13.943692    11    39
    41  HN    15.795862   25.967802  -10.044456    10    37
    42  H     15.195955   24.103773  -12.047551    12    38
    43  C     14.692984   26.254862  -12.373220    70    38    44    51    52
    44  C     13.309150   25.752751  -12.833804    72    43    45    46
    45  C     12.927101   25.775210  -14.176852    73    44    47    53
    46  C     12.483409   25.149370  -11.889626    73    44    48    54
    47  C     11.608654   25.245008  -14.459564    75    45    49    55
    48  C     11.300770   24.530584  -12.241000    75    46    49    56
    49  C     10.840896   24.527951  -13.544436    77    47    48    50
    50  OH     9.574752   24.057745  -13.845825    78    49    57
    51  H     14.520351   26.961747  -11.566334    71    43
    52  H     15.164048   26.874399  -13.202139    71    43
    53  H     13.541181   26.220696  -14.942363    74    45
    54  H     12.814534   25.159962  -10.833029    74    46
    55  H     11.284501   25.224600  -15.549679    76    47
    56  H     10.775511   24.088899  -11.385357    76    48
    57  HO     9.411167   24.124151  -14.764983    79    50
    58  N     17.903953   25.655725  -12.727657     7    39    59    62
    59  CA    19.051185   25.560491  -13.712910     8    58    60    63    64
    60  C     19.663982   24.145249  -13.695112     9    59    61    70
    61  O     19.781593   23.550146  -14.769009    11    60
    62  HN    18.115256   26.045679  -11.802835    10    58
    63  H     18.604223   25.681189  -14.791122    12    59
    64  C     20.144916   26.631907  -13.495178   137    59    65    68    69
    65  C     19.716936   28.026782  -13.821928   139    64    66    67
    66  O     18.566204   28.490266  -13.543577   140    65
    67  O     20.542683   28.702627  -14.450834   140    65
    68  H     20.449571   26.491579  -12.465497   138    64
    69  H     21.050125   26.303974  -14.148812   138    64
    70  N     20.042516   23.556021  -12.526563     7    60    71    74
    71  CA    20.347309   22.180528  -12.294953     8    70    72    75    76
    72  C     19.483192   21.192436  -13.084420     9    71    73    85
    73  O     19.911715   20.129358  -13.534281    11    72
    74  HN    19.945003   24.040318  -11.601898    10    70
    75  H     21.381868   22.045408  -12.485138    12    71
    76  C     20.372145   21.890315  -10.689912   153    71    77    81    82
    77  C     20.771137   20.400295  -10.405358   155    76    78    83    84
    78  C     22.149830   19.933714  -10.916744   157    77    79    80
    79  O     22.344009   18.752174  -11.269430   158    78
    80  O     23.093545   20.729534  -11.030747   158    78
    81  H     21.175954   22.491675  -10.186587   154    76
    82  H     19.402454   22.095371  -10.253060   154    76
    83  H     20.791309   20.221648   -9.282042   156    77
    84  H     19.990957   19.776887  -10.800218   156    77
    85  N     18.135299   21.424379  -13.117264     7    72    86    89
    86  CA    17.134893   20.641647  -13.897183     8    85    87    90    91
    87  C     17.398851   20.816723  -15.420405     9    86    88   104
    88  O     17.602604   19.864666  -16.209118    11    87
    89  HN    17.635553   22.159635  -12.561841    10    85
    90  H     17.343368   19.605123  -13.615111    12    86
    91  C     15.653788   21.187041  -13.545916    19    86    92    95    96
    92  C     14.415216   20.508483  -14.135162    21    91    93    94    97
    93  C     14.443112   18.974408  -13.812626    23    92    98    99   100
    94  C     13.114934   21.150646  -13.596505    23    92   101   102   103
    95  H     15.555626   21.094771  -12.440360    20    91
    96  H     15.640786   22.265608  -13.796610    20    91
    97  H     14.480673   20.689145  -15.206382    22    92
    98  H     15.518478   18.669294  -14.007841    24    93
    99  H     13.750357   18.463556  -14.512837    24    93
   100  H     14.360705   18.634878  -12.763906    24    93
   101  H     12.979284   21.011362  -12.452333    24    94
   102  H     13.121553   22.272991  -13.724151    24    94
   103  H     12.177894   20.777669  -14.098579    24    94
   104  N     17.394102   22.110346  -15.879376     7    87   105   108
   105  CA    17.284661   22.460416  -17.270643     8   104   106   109   110
   106  C     18.593877   22.157504  -18.091671     9   105   107   123
   107  O     18.484298   21.821566  -19.257363    11   106
   108  HN    17.516690   22.899492  -15.242673    10   104
   109  H     16.391808   21.947046  -17.676569    12   105
   110  C     16.923040   23.978731  -17.560463    19   105   111   114   115
   111  C     15.455558   24.308015  -18.041301    21   110   112   113   116
   112  C     14.562336   24.020756  -16.715964    23   111   117   118   119
   113  C     15.257094   25.801243  -18.348186    23   111   120   121   122
   114  H     17.210063   24.663618  -16.754504    20   110
   115  H     17.657360   24.259184  -18.429343    20   110
   116  H     15.177501   23.704416  -18.936134    22   111
   117  H     14.928077   24.553373  -15.898943    24   112
   118  H     14.616942   22.930154  -16.318541    24   112
   119  H     13.549822   24.358019  -16.863654    24   112
   120  H     15.474508   26.480618  -17.528424    24   113
   121  H     15.928680   26.112962  -19.215861    24   113
   122  H     14.232528   26.047510  -18.651055    24   113
   123  N     19.785142   22.041844  -17.372706     7   106   124   127
   124  CA    21.099868   21.570809  -17.908351     8   123   125   128   129
   125  C     21.146772   20.106792  -18.465568     9   124   126   145
   126  O     22.059124   19.686356  -19.128181    11   125
   127  HN    19.702814   22.133077  -16.365137    10   123
   128  H     21.260079   22.214361  -18.785754    12   124
   129  C     22.158102   21.715538  -16.773348   182   124   130   134   135
   130  C     22.250477   20.452746  -15.858651   184   129   131   136   137
   131  C     23.098102   20.766216  -14.548953   186   130   132   138   139
   132  C     24.068149   19.600655  -14.102690   188   131   133   140   141
   133  N     24.807177   19.923727  -12.919243   190   132   142   143   144
   134  H     23.135954   21.740957  -17.371931   183   129
   135  H     22.050045   22.654746  -16.279669   183   129
   136  H     21.257188   20.147442  -15.565047   185   130
   137  H     22.721046   19.612471  -16.322026   185   13027173    30   276
   283  H      1.464975   17.068858  -22.292743    30   276
   284  H      4.038788   14.852748  -20.035815    32   277
   285  H      2.403386   14.149274  -19.673704    32   277
   286  H      3.738459   14.460557  -18.415829    32   277
   287  N     -0.886083   18.918832  -18.246299     1   270   288   291
   288  CA    -1.969439   18.995365  -17.245843     2   287   289   292   293
   289  C     -1.608361   18.979299  -15.758759     3   288   290   294
   290  O     -0.484939   18.664806  -15.372333     5   289
   291  HN    -0.749047   19.800311  -18.691350     4   287
   292  H     -2.676479   19.872602  -17.442689     6   288
   293  H     -2.553099   18.027916  -17.342264     6   288
   294  N     -2.546717   19.302812  -14.849009     7   289   295   298
   295  CA    -2.357933   19.062109  -13.463419     8   294   296   299   300
   296  C     -2.652260   17.654772  -13.003121     9   295   297   308
   297  O     -3.819014   17.147077  -13.203803    11   296
   298  HN    -3.482725   19.560648  -15.167732    10   294
   299  H     -1.327646   19.301308  -13.111722    12   295
   300  C     -3.289799   20.133385  -12.747956    37   295   301   302   303
   301  OH    -2.887035   21.466753  -13.192791    39   300   304
   302  C     -2.966873   20.055319  -11.224785    41   300   305   306   307
   303  H     -4.405331   19.999967  -12.910229    38   300
   304  HO    -3.320068   21.560579  -14.078175    40   301
   305  H     -1.977442   20.511774  -11.087737    42   302
   306  H     -2.981702   19.009936  -10.820755    42   302
   307  H     -3.742969   20.679081  -10.792377    42   302
   308  N     -1.691763   16.863881  -12.475193     1   296   309   312
   309  CA    -1.869760   15.433624  -12.129993     2   308   310   313   314
   310  C     -2.422348   15.199132  -10.715606     3   309   311   315
   311  O     -1.705986   14.657599   -9.922596     5   310
   312  HN    -0.833527   17.248367  -12.110447     4   308
   313  H     -2.549878   14.840692  -12.799428     6   309
   314  H     -0.894505   14.922077  -12.270064     6   309
   315  N     -3.602080   15.765530  -10.386666     1   310   316   319
   316  CA    -4.198746   15.731111   -9.094376     2   315   317   320   321
   317  C     -3.311638   16.474358   -8.061865     3   316   318   322
   318  O     -3.534925   17.660766   -7.787814     5   317
   319  HN    -4.214313   16.115497  -11.152192     4   315
   320  H     -5.220052   16.068969   -9.061002     6   316
   321  H     -4.345279   14.643020   -8.745653     6   316
   322  N     -2.275378   15.774774   -7.545388     7   317   323   326
   323  CA    -1.295001   16.310025   -6.674612     8   322   324   327   328
   324  C     -0.375813   17.380783   -7.164896     9   323   325   342
   325  O     -0.234513   18.450633   -6.568068    11   324
   326  HN    -2.223444   14.743720   -7.757920    10   322
   327  H     -1.952908   16.846747   -5.885476    12   323
   328  C     -0.505554   15.179948   -5.940278    61   323   329   335   336
   329  C      0.649079   15.527946   -5.022125    63   328   330   331
   330  C      1.995927   15.104903   -5.264067    64   329   332   337
   331  C      0.337080   16.309167   -3.812355    64   329   333   338
   332  C      3.025993   15.438295   -4.351368    66   330   334   339
   333  C      1.412192   16.571053   -2.926174    66   331   334   340
   334  C      2.678065   16.088805   -3.164140    68   332   333   341
   335  H     -1.167611   14.643069   -5.232904    62   328
   336  H     -0.231190   14.396161   -6.696795    62   328
   337  H      2.254390   14.434856   -6.095749    65   330
   338  H     -0.638745   16.670376   -3.501992    65   331
   339  H      4.017017   14.929725   -4.400139    67   332
   340  H      1.241646   17.004978   -1.920588    67   333
   341  H      3.614278   16.249906   -2.495547    69   334
   342  N      0.348714   17.006322   -8.318050     7   324   343   346
   343  CA     1.439191   17.820902   -8.889959     8   342   344   347   348
   344  C      1.262429   18.016059  -10.415174     9   343   345   352
   345  O      1.008522   17.084096  -11.126336    11   344
   346  HN     0.279725   16.016254   -8.587139    10   342
   347  H      1.349910   18.826261   -8.416766    12   343
   348  C      2.817056   17.178755   -8.621996    13   343   349   350   351
   349  H      2.980400   17.191834   -7.492704    14   348
   350  H      3.560891   17.883627   -9.054530    14   348
   351  H      2.977163   16.145996   -9.005338    14   348
   352  N      1.341880   19.279850  -10.897502     7   344   353   356
   353  CA     1.506720   19.650589  -12.313869     8   352   354   357   358
   354  C      2.708280   18.847683  -12.850898     9   353   355   374
   355  O      3.732275   18.777863  -12.202204    11   354
   356  HN     1.126628   20.042375  -10.267295    10   352
   357  H      0.643689   19.266970  -12.955398    12   353
   358  C      1.730380   21.181667  -12.561047   182   353   359   363   364
   359  C      0.358572   21.912538  -12.871478   184   358   360   365   366
   360  C      0.409900   23.466833  -12.972406   186   359   361   367   368
   361  C      0.931452   24.278917  -11.788348   188   360   362   369   370
   362  N      0.673072   25.703672  -11.981423   190   361   371   372   373
   363  H      2.263461   21.626980  -11.717609   183   358
   364  H      2.452946   21.290764  -13.473812   183   358
   365  H     -0.068393   21.358744  -13.784949   185   359
   366  H     -0.284804   21.772519  -11.926001   185   359
   367  H      0.899301   23.716373  -13.961100   187   360
   368  H     -0.698613   23.838131  -13.118260   187   360
   369  H      0.373897   23.985439  -10.884454   189   361
   370  H      1.986220   24.033308  -11.572616   189   361
   371  HN    -0.280401   25.942595  -12.143915   191   362
   372  HN     1.134046   26.115010  -12.815641   191   362
   373  HN     0.895723   26.193818  -11.143111   191   362
   374  N      2.539931   18.156094  -14.011335     7   354   375   378
   375  CA     3.645558   17.339637  -14.514613     8   374   376   379   380
   376  C      3.993593   18.049911  -15.792251     9   375   377   390
   377  O      3.114435   18.400773  -16.590243    11   376
   378  HN     1.749461   18.203933  -14.616650    10   374
   379  H      4.514268   17.412583  -13.867823    12   375
   380  C      3.246111   15.822876  -14.855099    15   375   381   382   383
   381  C      4.558475   15.078358  -15.126736    17   380   384   385   386
   382  C      2.355473   15.098742  -13.764051    17   380   387   388   389
   383  H      2.641553   15.786510  -15.856798    16   380
   384  H      5.209024   15.132653  -14.278717    18   381
   385  H      4.405566   13.926943  -15.270345    18   381
   386  H      5.169437   15.547713  -15.908227    18   381
   387  H      2.037122   14.111043  -14.062031    18   382
   388  H      1.414004   15.716295  -13.543367    18   382
   389  H      2.961382   14.946897  -12.848408    18   382
   390  N      5.308149   18.336069  -16.055601     7   376   391   394
   391  CA     5.826700   18.918715  -17.274032     8   390   392   395   396
   392  C      6.313351   17.777839  -18.188661     9   391   393   412
   393  O      6.722982   16.707219  -17.803158    11   392
   394  HN     5.949884   18.040167  -15.256849    10   390
   395  H      5.043016   19.452709  -17.788750    12   391
   396  C      7.054989   19.860131  -16.988515   182   391   397   401   402
   397  C      6.726753   21.379061  -16.989432   184   396   398   403   404
   398  C      5.729750   21.733741  -15.822565   186   397   399   405   406
   399  C      5.883488   23.189911  -15.419685   188   398   400   407   408
   400  N      5.759761   24.234701  -16.458823   190   399   409   410   411
   401  H      7.527545   19.568812  -16.036668   183   396
   402  H      7.778941   19.656303  -17.803102   183   396
   403  H      7.653807   21.914952  -17.028296   185   397
   404  H      6.218625   21.615492  -17.992410   185   397
   405  H      4.716582   21.536034  -16.213044   187   398
   406  H      5.799228   21.138749  -14.919351   187   398
   407  H      5.114630   23.468832  -14.705012   189   399
   408  H      6.887147   23.349676  -14.964888   189   399
   409  HN     4.795968   24.348069  -16.702751   191   400
   410  HN     6.332789   24.101734  -17.315497   191   400
   411  HN     6.083804   25.165021  -15.998662   191   400
   412  N      6.196801   18.044736  -19.549945     7   392   413   416
   413  CA     6.976455   17.318370  -20.594920     8   412   414   417   418
   414  C      8.291429   18.024145  -20.964473     9   413   415   431
   415  O      8.255431   19.288338  -20.895666    11   414
   416  HN     5.847474   18.990731  -19.832879    10   412
   417  H      7.120346   16.282503  -20.130035    12   413
   418  C      6.081641   17.218783  -21.831709    19   413   419   422   423
   419  C      6.375397   16.012542  -22.740277    21   418   420   421   424
   420  C      5.933211   14.675412  -21.976235    23   419   425   426   427
   421  C      5.571994   15.983372  -24.082498    23   419   428   429   430
   422  H      5.020638   17.103478  -21.554158    20   418
   423  H      6.032662   18.222026  -22.392033    20   418
   424  H      7.475341   15.898383  -22.952657    22   419
   425  H      6.431198   14.514724  -21.008200    24   420
   426  H      6.166755   13.831769  -22.619139    24   420
   427  H      4.801850   14.609680  -21.904892    24   420
   428  H      5.844821   16.911368  -24.727393    24   421
   429  H      5.719561   15.034289  -24.670416    24   421
   430  H      4.533328   16.220843  -23.841420    24   421
   431  N      9.346943   17.227712  -21.100066     7   414   432   435
   432  CA    10.654495   17.725144  -21.335947     8   431   433   436   437
   433  C     11.374438   16.961632  -22.382043     9   432   434   441
   434  O     11.345454   15.737314  -22.311724    11   433
   435  HN     9.240021   16.201602  -21.004850    10   431
   436  H     10.513039   18.790847  -21.678613    12   432
   437  C     11.517764   17.811023  -19.980846    13   432   438   439   440
   438  H     11.724162   16.820417  -19.723732    14   437
   439  H     11.113209   18.436721  -19.194389    14   437
   440  H     12.558825   18.250110  -20.260498    14   437
   441  N     12.065207   17.659948  -23.296373     7   433   442   445
   442  CA    12.956060   16.932854  -24.209603     8   441   443   446   447
   443  C     14.356328   16.787931  -23.425558     9   442   444   452
   444  O     15.052680   17.814004  -23.077062    11   443
   445  HN    12.014864   18.721161  -23.255299    10   441
   446  H     12.604124   15.925323  -24.446219    12   442
   447  C     13.095171   17.726164  -25.545828    43   442   448   449   450
   448  SH    14.162172   16.742348  -26.630976    45   447   451
   449  H     12.121534   17.910236  -26.131036    44   447
   450  H     13.505864   18.782448  -25.399271    44   447
   451  HS    14.309365   17.566860  -27.691372    46   448
   452  N     14.780448   15.506909  -23.301347     7   443   453   456
   453  CA    16.087571   15.174060  -22.731935     8   452   454   457   458
   454  C     17.104839   15.278266  -23.885471     9   453   455   470
   455  O     17.605291   14.284903  -24.474617    11   454
   456  HN    14.152747   14.768199  -23.633929    10   452
   457  H     16.436769   15.954874  -21.974331    12   453
   458  C     16.015443   13.811558  -22.011220   106   453   459   464   465
   459  C     17.266809   13.284811  -21.468924   108   458   460   461
   460  N     17.653037   11.989677  -21.660278   109   459   462   466
   461  C     18.390419   13.944273  -20.977540   111   459   463   467
   462  C     18.970935   11.810647  -21.330208   113   460   463   468
   463  N     19.421682   13.017489  -20.882038   115   461   462   469
   464  H     15.325041   13.885674  -21.146843   107   458
   465  H     15.609103   13.003208  -22.748160   107   458
   466  HN    16.966980   11.254512  -22.151555   110   460
   467  H     18.497098   15.002191  -20.790333   112   461
   468  H     19.568495   10.916600  -21.510680   114   462
   469  HN    20.442903   13.332751  -20.761865   116   463
   470  N     17.463005   16.576553  -24.217352     7   454   471   474
   471  CA    18.338874   17.033980  -25.284447     8   470   472   475   476
   472  C     19.367041   16.016784  -25.798178     9   471   473   489
   473  O     19.269721   15.682135  -26.919744    11   472
   474  HN    17.197950   17.418544  -23.586266    10   470
   475  H     17.644804   17.204221  -26.146531    12   471
   476  C     18.995807   18.465624  -25.059459    25   471   477   478   480
   477  C     17.851489   19.515953  -24.980801    27   476   479   481   482
   478  C     20.203784   18.900234  -26.032576    29   476   483   484   485
   479  C     16.882652   19.561374  -26.171747    31   477   486   487   488
   480  H     19.384290   18.429757  -24.029344    26   476
   481  H     17.281353   19.498106  -23.996942    28   477
   482  H     18.259217   20.553941  -25.008109    28   477
   483  H     21.052967   18.232394  -25.798645    30   478
   484  H     20.630661   19.944523  -25.935899    30   478
   485  H     19.959884   18.725375  -27.075643    30   478
   486  H     16.284317   18.576011  -26.146618    32   479
   487  H     17.390109   19.677884  -27.196286    32   479
   488  H     16.174354   20.346303  -25.994317    32   479
   489  N     20.314398   15.578549  -24.925355     7   472   490   493
   490  CA    21.369354   14.667096  -25.252281     8   489   491   494   495
   491  C     20.928875   13.558740  -26.144324     9   490   492   508
   492  O     21.613218   13.203332  -27.104863    11   491
   493  HN    20.240442   15.903756  -23.918867    10   489
   494  H     22.182446   15.264935  -25.846120    12   490
   495  C     21.984519   14.139784  -23.913971    19   490   496   499   500
   496  C     23.345757   13.379508  -24.031555    21   495   497   498   501
   497  C     24.348983   14.432139  -24.321612    23   496   502   503   504
   498  C     23.623825   12.773249  -22.676391    23   496   505   506   507
   499  H     22.190868   15.045259  -23.220966    20   495
   500  H     21.194856   13.554966  -23.432259    20   495
   501  H     23.299911   12.566569  -24.784427    22   496
   502  H     25.265019   13.847318  -24.226138    24   497
   503  H     24.540731   15.346016  -23.785007    24   497
   504  H     24.287411   14.754966  -25.419327    24   497
   505  H     22.804321   12.078563  -22.378154    24   498
   506  H     24.513663   12.185206  -22.712792    24   498
   507  H     23.799141   13.425004  -21.729584    24   498
   508  N     19.875490   12.807587  -25.737129     7   491   509   512
   509  CA    19.438465   11.587144  -26.365042     8   508   510   513   514
   510  C     18.183272   11.805043  -27.150952     9   509   511   522
   511  O     17.878615   10.907634  -27.960063    11   510
   512  HN    19.475948   12.957395  -24.823501    10   508
   513  H     20.197148   11.268711  -27.100207    12   509
   514  C     19.273342   10.359752  -25.346609    37   509   515   516   517
   515  OH    18.689339   10.906698  -24.182826    39   514   518
   516  C     20.763076    9.862053  -24.958477    41   514   519   520   521
   517  H     18.574240    9.601678  -25.757924    38   514
   518  HO    17.781919   10.812480  -24.273476    40   515
   519  H     21.313486    9.533166  -25.832912    42   516
   520  H     20.652144    9.057410  -24.250160    42   516
   521  H     21.294927   10.640824  -24.363162    42   516
   522  N     17.545768   13.033699  -27.124732     1   510   523   526
   523  CA    16.466118   13.426868  -28.027963     2   522   524   527   528
   524  C     15.094183   12.800427  -27.609116     3   523   525   529
   525  O     14.098235   12.994441  -28.356924     5   524
   526  HN    17.744396   13.677107  -26.366975     4   522
   527  H     16.343157   14.531047  -28.060488     6   523
   528  H     16.692037   13.062593  -29.019593     6   523
   529  N     14.899887   12.122685  -26.465250     7   524   530   533
   530  CA    13.614271   11.536301  -26.074332     8   529   531   534   535
   531  C     12.944587   12.479856  -25.121558     9   530   532   544
   532  O     13.658800   13.353725  -24.531584    11   531
   533  HN    15.598920   11.982602  -25.771085    10   529
   534  H     13.074162   11.665175  -27.014290    12   530
   535  C     13.546790   10.108209  -25.600225   153   530   536   540   541
   536  C     13.629148    9.864173  -24.102556   155   535   537   542   543
   537  C     14.922753   10.287413  -23.406025   157   536   538   539
   538  O     15.912520   10.625745  -24.136032   158   537
   539  O     15.070609   10.489915  -22.176880   158   537
   540  H     12.556281    9.689566  -25.867044   154   535
   541  H     14.414739    9.554333  -26.088308   154   535
   542  H     12.752960   10.345278  -23.592196   156   536
   543  H     13.464197    8.806048  -23.892418   156   536
   544  N     11.598990   12.442532  -24.999327     7   531   545   548
   545  CA    10.872124   13.347642  -24.182165     8   544   546   549   550
   546  C     10.562519   12.476788  -22.887833     9   545   547   561
   547  O     10.373943   11.232554  -22.880552    11   546
   548  HN    11.006180   11.784732  -25.555271    10   544
   549  H     11.575982   14.155040  -23.982921    12   545
   550  C      9.548510   13.824421  -24.789911   175   545   551   554   555
   551  C      9.677905   14.620942  -26.127032   177   550   552   556   557
   552  S      7.983141   15.145423  -26.545195   179   551   553
   553  C      8.332913   15.371259  -28.345718   180   552   558   559   560
   554  H      8.754603   13.003604  -24.980326   176   550
   555  H      9.048376   14.554461  -24.159017   176   550
   556  H     10.389913   15.480161  -26.155110   178   551
   557  H      9.960578   13.909481  -26.898570   178   551
   558  H      7.419814   15.870161  -28.708278   181   553
   559  H      9.200412   16.091641  -28.401787   181   553
   560  H      8.534725   14.440297  -28.878816   181   553
   561  N     10.468421   13.158173  -21.744572     7   546   562   565
   562  CA    10.391946   12.624420  -20.399339     8   561   563   566   567
   563  C      9.280541   13.352525  -19.621916     9   562   564   577
   564  O      8.930673   14.448837  -19.985350    11   563
   565  HN    10.370669   14.217348  -21.782747    10   561
   566  H     10.067198   11.539233  -20.518712    12   562
   567  C     11.652580   12.578408  -19.398108    15   562   568   569   570
   568  C     12.763715   11.661934  -20.077959    17   567   571   572   573
   569  C     12.207428   14.045342  -19.287640    17   567   574   575   576
   570  H     11.413768   12.157984  -18.330393    16   567
   571  H     13.739694   11.590476  -19.455585    18   568
   572  H     12.300085   10.594325  -20.182965    18   568
   573  H     12.960753   12.066750  -21.135077    18   568
   574  H     11.396509   14.739318  -18.811189    18   569
   575  H     12.458890   14.433867  -20.389615    18   569
   576  H     13.224773   14.158492  -18.733996    18   569
   577  N      8.800585   12.806151  -18.462918     7   563   578   581
   578  CA     7.867392   13.407767  -17.534396     8   577   579   582   583
   579  C      8.628460   14.026762  -16.365356     9   578   580   587
   580  O      9.343549   13.243093  -15.780755    11   579
   581  HN     9.134969   11.919995  -18.123692    10   577
   582  H      7.217041   14.179421  -18.030677    12   578
   583  C      6.807289   12.333835  -17.029461    13   578   584   585   586
   584  H      7.268766   11.536398  -16.456401    14   583
   585  H      6.155364   11.852779  -17.785778    14   583
   586  H      6.210386   12.973275  -16.290390    14   583
   587  N      8.412417   15.322132  -15.894140     7   579   588   591
   588  CA     9.121856   15.924127  -14.765005     8   587   589   592   593
   589  C      8.034346   16.333271  -13.819784     9   588   590   606
   590  O      7.069986   17.101821  -14.147777    11   589
   591  HN     7.673853   15.915345  -16.287332    10   587
   592  H      9.794000   15.202234  -14.269489    12   588
   593  C      9.914956   17.118788  -15.264529    25   588   594   595   597
   594  C     10.892348   16.908808  -16.428741    27   593   596   598   599
   595  C     10.832671   17.523941  -13.955901    29   593   600   601   602
   596  C     11.953361   15.882233  -16.095124    31   594   603   604   605
   597  H      9.266625   17.964141  -15.532876    26   593
   598  H     10.412767   16.903541  -17.411867    28   594
   599  H     11.449960   17.916786  -16.516321    28   594
   600  H     11.635343   18.221067  -14.216269    30   595
   601  H     11.339516   16.645237  -13.547196    30   595
   602  H     10.192008   17.986738  -13.165945    30   595
   603  H     11.561670   14.858801  -15.822018    32   596
   604  H     12.653504   16.271667  -15.371110    32   596
   605  H     12.635906   15.852806  -16.991889    32   596
   606  N      8.082834   15.861122  -12.579629     7   589   607   610
   607  CA     7.174451   16.196288  -11.443903     8   606   608   611   612
   608  C      7.917828   17.265801  -10.589858     9   607   609   628
   609  O      8.975691   16.892914  -10.064915    11   608
   610  HN     8.883283   15.283474  -12.361824    10   606
   611  H      6.209532   16.615355  -11.889268    12   607
   612  C      6.922634   14.914283  -10.521318   182   607   613   617   618
   613  C      6.102718   13.878061  -11.431407   184   612   614   619   620
   614  C      5.387545   12.925671  -10.448828   186   613   615   621   622
   615  C      6.182217   12.025311   -9.483040   188   614   616   623   624
   616  N      5.401891   11.184537   -8.610303   190   615   625   626   627
   617  H      7.835710   14.530390  -10.178765   183   612
   618  H      6.392268   15.195716   -9.621319   183   612
   619  H      5.483226   14.411578  -12.166058   185   613
   620  H      6.852254   13.336147  -12.106558   185   613
   621  H      4.646178   13.532517   -9.930292   187   614
   622  H      4.777140   12.193020  -11.154008   187   614
   623  H      6.900331   11.379098  -10.113814   189   615
   624  H      6.828183   12.692737   -8.820731   189   615
   625  HN     4.690839   11.642426   -8.075220   191   616
   626  HN     6.003473   10.650128   -7.982662   191   616
   627  HN     4.901831   10.553781   -9.185985   191   616
   628  N      7.404986   18.498859  -10.389783     7   608   629   632
   629  CA     8.041208   19.474461   -9.489842     8   628   630   633   634
   630  C      7.268260   19.569689   -8.183082     9   629   631   647
   631  O      6.054404   19.703606   -8.244131    11   630
   632  HN     6.422611   18.723360  -10.690835    10   628
   633  H      9.035994   19.149748   -9.200651    12   629
   634  C      8.241616   20.891735  -10.188930    25   629   635   636   638
   635  C      9.246040   20.751659  -11.391657    27   634   637   639   640
   636  C      8.741090   22.014288   -9.204638    29   634   641   642   643
   637  C      8.623595   20.220534  -12.705801    31   635   644   645   646
   638  H      7.259193   21.202597  -10.499460    26   634
   639  H      9.592192   21.736239  -11.681811    28   635
   640  H     10.108824   20.169897  -11.097389    28   635
   641  H      8.874926   22.934452   -9.800381    30   636
   642  H      9.638140   21.740752   -8.644348    30   636
   643  H      7.943868   22.316963   -8.486260    30   636
   644  H      9.519833   20.249709  -13.439326    32   637
   645  H      7.743706   20.793969  -13.037835    32   637
   646  H      8.210039   19.177442  -12.642011    32   637
   647  N      7.986711   19.533017   -7.051048     7   630   648   651
   648  CA     7.483898   19.714705   -5.696396     8   647   649   652   653
   649  C      8.332792   20.757765   -5.020143     9   648   650   664
   650  O      9.578044   20.801000   -5.164852    11   649
   651  HN     9.031252   19.428359   -7.185765    10   647
   652  H      6.402916   20.099303   -5.683251    12   648
   653  C      7.740698   18.338805   -4.961792   175   648   654   657   658
   654  C      6.620350   17.255035   -5.217982   177   653   655   659   660
   655  S      6.729541   16.629425   -6.936011   179   654   656
   656  C      8.051583   15.429629   -6.762664   180   655   661   662   663
   657  H      8.751470   17.879354   -5.026857   176   653
   658  H      7.640847   18.632373   -3.817801   176   653
   659  H      6.687670   16.388609   -4.559175   178   654
   660  H      5.625014   17.764632   -5.099639   178   654
   661  H      9.073700   15.835079   -6.605610   181   656
   662  H      7.730400   14.652963   -6.024343   181   656
   663  H      8.161831   15.000551   -7.766734   181   656
   664  N      7.816175   21.468137   -3.984458     7   649   665   668
   665  CA     8.463095   22.496219   -3.201929     8   664   666   669   670
   666  C      8.723370   21.982101   -1.763721     9   665   667   676
   667  O      7.864567   21.468149   -1.065594    11   666
   668  HN     6.867474   21.322848   -3.665594    10   664
   669  H      9.545022   22.664551   -3.620302    12   665
   670  C      7.756867   23.820425   -3.328870   137   665   671   674   675
   671  C      7.433085   24.424307   -4.672458   139   670   672   673
   672  O      6.871078   25.558890   -4.811833   140   671

water.xyz

 3  
Water
      O      8.039430    5.868035    0.492777         
      H      7.581494    5.022666    0.403759     
      H      8.287056    6.062440   -0.397074     

 

CL.xyz

1
Cl-
      Cl-      0.000    0.0000    0.0000    

 

K.xyz

1
K+
      K+      0.000    0.0000    0.0000     

 

Mg.xyz

1
   MG2
     Mg2+      0.000    0.0000    0.0000    

 

Python Script getboxsizeandmolnums.py

import sys
# python getboxsizeandmolnums.py proteinfile.xyz [KCL] [MgCl2]
# concentrations in mM
temp=open('CoordsAndMolNums.txt','w')
proteinfile=open(sys.argv[1],'r')
conc_KCL=float(sys.argv[2])
conc_MgCl2=float(sys.argv[3])
temp.write('[KCL]= '+sys.argv[2]+' '+'[MgCl2]= '+sys.argv[3]+'\n')
results=proteinfile.readlines()
proteinfile.close()
mincoords=[0,0,0]
maxcoords=[0,0,0]
for line in results:
    if len(line.split())>2:
        coords=[float(line.split()[2]),float(line.split()[3]),float(line.split()[4])]
        for i in range(len(coords)):
            if coords[i]<mincoords[i]:
                mincoords[i]=round(coords[i],2)
            if coords[i]>maxcoords[i]:
                maxcoords[i]=round(coords[i],2)

for i in range(len(mincoords)):
    maxcoords[i]+=15 # add 20 angstroms on each dimension to be safe, minumum would be Length of protein in dimension+vdw cutoff +.0001, but box can expand. Vdw cutoff=12 angstroms, add more angstroms for volume effects

V_pro_lig=1
for i in range(len(maxcoords)):
    V_pro_lig=V_pro_lig*(maxcoords[i]-mincoords[i])

 


temp.write('Protein-Ligand Complex Negative and Positive Box Coordinates '+','.join([str(i) for i in mincoords])+' , '+','.join([str(i) for i in maxcoords])+'\n')
temp.write('Protein-Ligand Complex a-axis, b-axis, c-axis '+str(maxcoords[0]-mincoords[0])+' , '+str(maxcoords[1]-mincoords[1])+' , '+str(maxcoords[2]-mincoords[2])+'\n')
temp.write('Ligand Water Complex and Box Coordinates, make sure to move center of mass coordinates in packmol '+','.join([str(i) for i in [-25,-25,-25]])+' '+','.join([str(i) for i in [25,25,25]])+'\n')
V_lig=50*50*50
temp.write('Volume of Protein-Ligand complex box in ion-water solution is '+str(V_pro_lig)+' cubic Angstroms'+'\n')
temp.write('Volume of Ligand in bulk ion-water solution is '+str(V_lig)+' cubic Angstroms'+'\n')
temp.write('Ligand in bulk ion-water solution a-axis '+str(50)+'\n')


n_KCL_pro_lig=round(6.02*(10**-7)*conc_KCL*V_pro_lig)
n_K_pro_lig=round(.5*n_KCL_pro_lig)
n_Cl_pro_lig1=n_K_pro_lig
n_MgCl2_pro_lig=round(6.02*(10**-7)*conc_MgCl2*V_pro_lig)
n_Mg_pro_lig=round(.5*n_MgCl2_pro_lig)
n_Cl_pro_lig2=round(.25*n_MgCl2_pro_lig)
n_Cl_pro_lig=n_Cl_pro_lig1+n_Cl_pro_lig2
n_H2O_pro_lig=round(.0334*V_pro_lig)
# need to make sure number of potassium + 2*number of magnesium - number of clorine=0 for Ewald to converge, Magnesium needs 2, because it has a charge of +2,
totalposcharge=2*n_Mg_pro_lig+n_K_pro_lig
totalnegcharge=n_Cl_pro_lig
diff=totalposcharge-totalnegcharge

temp.write('Protein-Ligand Complex Total Positive Charge '+str(totalposcharge)+'\n')
temp.write('Protein-Ligand Complex Total Negative Charge '+str(totalnegcharge)+'\n')
if diff>0:
    temp.write('Protein-Ligand Complex Adding more K+ ions '+str(abs(diff))+'\n')
    n_K_pro_lig+=diff
else:
    temp.write('Protein-Ligand Complex Adding more Cl- ions '+str(abs(diff))+'\n')
    n_Cl_pro_lig+=abs(diff)

n_KCL_lig=round(6.02*(10**-7)*conc_KCL*V_lig)
n_K_lig=round(.5*n_KCL_lig)
n_Cl_lig1=n_K_lig
n_MgCl2_lig=round(6.02*(10**-7)*conc_MgCl2*V_lig)
n_Mg_lig=round(.5*n_MgCl2_lig)
n_Cl_lig2=round(.25*n_MgCl2_lig)
n_Cl_lig=n_Cl_lig1+n_Cl_lig2
n_H2O_lig=round(.0334*V_lig)

totalposcharge=2*n_Mg_lig+n_K_lig
totalnegcharge=n_Cl_lig
diff=totalposcharge-totalnegcharge

temp.write('Protein-Ligand Complex Number of K atoms '+str(n_K_pro_lig)+'\n')
temp.write('Protein-Ligand Complex Number of Cl atoms '+str(n_Cl_pro_lig)+'\n')
temp.write('Protein-Ligand Complex Number of Mg atoms '+str(n_Mg_pro_lig)+'\n')
temp.write('Protein-Ligand Complex Number of H20 molecules '+str(n_H2O_pro_lig)+'\n')

temp.write('Ligand Bulk Solution Total Positive Charge '+str(totalposcharge)+'\n')
temp.write('Ligand Bulk Solution Total Negative Charge '+str(totalnegcharge)+'\n')
if diff>0:
    temp.write('Ligand Bulk Solution Adding more K+ ions '+str(abs(diff))+'\n')
    n_K_lig+=diff
else:
    temp.write('Ligand Bulk Solution Adding more Cl- ions '+str(abs(diff))+'\n')
    n_Cl_lig+=abs(diff)

temp.write('Ligand Bulk Solution Number of K atoms '+str(n_K_lig)+'\n')
temp.write('Ligand Bulk Solution Number of Cl atoms '+str(n_Cl_lig)+'\n')
temp.write('Ligand Bulk Solution Number of Mg atoms '+str(n_Mg_lig)+'\n')
temp.write('Ligand Bulk Solution Number of H20 molecules '+str(n_H2O_lig)+'\n')
temp.close()

 

Python Script convertWaterboxToTinker.py

  1. Brandon Walker

import sys
import os


packmolfile= open(sys.argv[1],'r')
tinkerfileout= open(sys.argv[2],'w')
counter=1
curO=0
writelist=[]
for line in packmolfile:
    if len(line.split())==4:
        if line.split()[0]=='O':
            outline = str(counter) + " " + line.strip() + " 247 " + str(counter+1) + " " + str(counter+2) + ""
        curO=counter
            writelist.append(outline+'\n')
        elif line.split()[0]=='H':
        outline = str(counter) + " " + line.strip() + " 248 " + str(curO)+ ""
            writelist.append(outline+'\n')
        elif line.split()[0]=="Cl-":
        outline= str(counter) + " " + line.strip() + " 258"
            writelist.append(outline+'\n')
        elif line.split()[0]=="K+":
        outline= str(counter) + " " + line.strip() + " 251"
            writelist.append(outline+'\n')
        elif line.split()[0]=="Mg2":
            outline= str(counter) + " " + line.strip() + " 255"
            writelist.append(outline+'\n')
        counter+=1

tinkerfileout.write(str(counter-1)+'\n')
for line in writelist:
    tinkerfileout.write(line)

Python Script AddTinkerColsBack.py

  1. Brandon Walker

import sys
import os
tinkerfile=open(sys.argv[1],'r')
tinkerDict={}
for line in tinkerfile:
        if len(line.split())>1:
        tinkerDict[int(line.split()[0])]=line
        elif len(line.split())==1:
            numatoms=line.split()[0]

packmolfile= open(sys.argv[2],'r')
tinkerfileout= open(sys.argv[3],'w')
counter=1
curO=0
protlen= len(tinkerDict)
tinkerfileout.write(numatoms+'\n')
for line in packmolfile:
        if len(line.split())>1:
        if counter <= protlen:
            tinkerline= tinkerDict[counter]
            outline = tinkerline.split()[0]+" "
            for item in line.split()[1:5]:
                outline += item + "  "
            for item in tinkerline.split()[5:]:
                outline += item + "  "
                    tinkerfileout.write(outline+'\n')
        else:
            if line.split()[0]=='O':
                outline = str(counter) + " " + line.strip() + " 247 " + str(counter+1) + " " + str(counter+2) + ""
                curO=counter
                            tinkerfileout.write(outline+'\n')
            elif line.split()[0]=='H':
                outline = str(counter) + " " + line.strip() + " 248 " + str(curO)+ ""
                            tinkerfileout.write(outline+'\n')
            elif line.split()[0]=="Cl-":
                outline= str(counter) + " " + line.strip() + " 258"
                            tinkerfileout.write(outline+'\n')
            elif line.split()[0]=="K+":
                outline= str(counter) + " " + line.strip() + " 251"
                            tinkerfileout.write(outline+'\n')
            elif line.split()[0]=="Mg2":
                               outline= str(counter) + " " + line.strip() + " 255"
                            tinkerfileout.write(outline+'\n')
        counter+=1

heatproteinligandbox.sh

/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k proligrestraint.key 100000 3.0 100.0 4 25 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k proligrestraint.key 100000 3.0 100.0 4 50 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k proligrestraint.key 100000 3.0 100.0 4 75 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k proligrestraint.key 100000 3.0 100.0 4 100 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k proligrestraint.key 100000 3.0 100.0 4 125 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k proligrestraint.key 100000 3.0 100.0 4 150 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k proligrestraint.key 100000 3.0 100.0 4 175 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k proligrestraint.key 100000 3.0 100.0 4 200 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k proligrestraint.key 100000 3.0 100.0 4 225 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k proligrestraint.key 100000 3.0 100.0 4 250 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k proligrestraint.key 100000 3.0 100.0 4 275 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k proligrestraint.key 100000 3.0 100.0 4 298 1.0 N                                                                              
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k tttprolig.key 1000000 3.0 100.0 4 298 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandproteinmin.xyz -k tttprolig.key 2333333 3.0 100.0 2 298 1.0 N

heatligandbox.sh

/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 100000 3.0 100.0 4 25 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 100000 3.0 100.0 4 50 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 100000 3.0 100.0 4 75 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 100000 3.0 100.0 4 100 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 100000 3.0 100.0 4 125 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 100000 3.0 100.0 4 150 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 100000 3.0 100.0 4 175 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 100000 3.0 100.0 4 200 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 100000 3.0 100.0 4 225 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 100000 3.0 100.0 4 250 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 100000 3.0 100.0 4 275 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 100000 3.0 100.0 4 298 1.0 N                                                                              
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 1000000 3.0 100.0 4 298 1.0 N
/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x solvatedligandmin.xyz -k ttt.key 2333333 3.0 100.0 2 298 1.0 N

Python preparetheMDsim.py

  1. Brandon Walker

import os
import subprocess
import sys
from shutil import copyfile

  1. python preparetheMDsim.py tttproliglamb.key solvatedligandproteinminequil.xyz tttlamb.key solvatedligandminequil.xyz

inputkeyfileprolig=sys.argv[1]
outputboxfileprolig=sys.argv[2]
inputkeyfilelig=sys.argv[3]
outputboxfilelig=sys.argv[4]
solvvdw= [1,1,1,1,1,1,1,1,1,1,1,.9,.8,.75,.70,.65,.62,.60,.55,.5,.4,0]
solvestat=[1,.9,.8,.7,.6,.5,.4,.3,.2,.1,0,0,0,0,0,0,0,0,0,0,0,0]
torsions=[0,0,0,0,0,0,0,0,0,0,0,0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09,0.1,0.1]
prepareprolig=False
preparelig=True
keypath=os.getcwd()

if prepareprolig:
    if not os.path.isdir("ProteinLigandSim"):
        os.mkdir("ProteinLigandSim")
    os.chdir("ProteinLigandSim")
    for i in range(len(solvvdw)):
        vdwlamb=solvvdw[i]
        elelamb=solvestat[i]
        torlamb=torsions[i]
        foldname="ProteinLigandSim%s_%s_%s"%(elelamb,vdwlamb,torlamb)
        if not os.path.isdir(foldname):
            os.mkdir(foldname)
        os.chdir(foldname)
        newfoldpath=os.getcwd()
        newtempkeyfile=outputboxfileprolig.replace('.xyz',)+'temp.key'
        newkeyfile=outputboxfileprolig.replace('.xyz',
)+'.key'
        copyfile(keypath+'/'+inputkeyfileprolig,newfoldpath+'/'+newtempkeyfile)
        copyfile(keypath+'/'+outputboxfileprolig,newfoldpath+'/'+outputboxfileprolig)
        temp=open(newtempkeyfile,'r')
        newkeyfile=open(newkeyfile,'w')
        for line in temp.readlines():
            if "ele-lambda" in line:
                newline=line.replace('\n',)+" "+str(elelamb)+'\n'
                newkeyfile.write(newline)
            elif "vdw-lambda" in line:
                newline=line.replace('\n',
)+" "+str(vdwlamb)+'\n'
                newkeyfile.write(newline)
            elif "torsion-restrain" in line:
                newline=line.replace('\n',)+" "+str(torlamb)+'\n'
                newkeyfile.write(newline)
            else:
                newkeyfile.write(line)
        temp.close()
        newkeyfile.close()
        os.remove(newtempkeyfile)
        os.chdir('..')

if preparelig:
    os.chdir(keypath)
    if not os.path.isdir("LigandSim"):
        os.mkdir("LigandSim")
    os.chdir("LigandSim")
    for i in range(len(solvvdw)):
        vdwlamb=solvvdw[i]
        elelamb=solvestat[i]
        torlamb=torsions[i]
        foldname="LigandSim%s_%s_%s"%(elelamb,vdwlamb,torlamb)
        if not os.path.isdir(foldname):
            os.mkdir(foldname)
        os.chdir(foldname)
        newfoldpath=os.getcwd()
        newtempkeyfile=outputboxfilelig.replace('.xyz',)+'temp.key'
        newkeyfile=outputboxfilelig.replace('.xyz',
)+'.key'
        copyfile(keypath+'/'+inputkeyfilelig,newfoldpath+'/'+newtempkeyfile)
        copyfile(keypath+'/'+outputboxfilelig,newfoldpath+'/'+outputboxfilelig)
        temp=open(newtempkeyfile,'r')
        newkeyfile=open(newkeyfile,'w')
        for line in temp.readlines():
            if "ele-lambda" in line:
                newline=line.replace('\n',)+" "+str(elelamb)+'\n'
                newkeyfile.write(newline)
            elif "vdw-lambda" in line:
                newline=line.replace('\n',
)+" "+str(vdwlamb)+'\n'
                newkeyfile.write(newline)
            elif "torsion-restrain" in line:
                newline=line.replace('\n',)+" "+str(torlamb)+'\n'
                newkeyfile.write(newline)
            else:
                newkeyfile.write(line)
        temp.close()
        newkeyfile.close()
        os.remove(newtempkeyfile)
        os.chdir('..')

Undergraduate Projects

python script executesims.py

  1. Brandon Walker

import subprocess
import os
import time

global gpulistnodepath
global nodedic
global bashrcpath
global ligandsimpath
global proteinligandsimpath
global commandqueue
global dynamicommpath
global temp
global switch
global freeenergysimpath
global nodetocmdsdic
global executeligsims
global executeproligsims

gpulistnodepath='/users/bdw2292/gpunodes.txt'
nodedic={} # key is node, value is 1 if can put job on , 0 if job is running and cannot put a job on
bashrcpath='/users/bdw2292/.bashrc.mh'
ligandsimpath='/users/bdw2292/FreeEnergySims/LigandSim/'
proteinligandsimpath='/users/bdw2292/FreeEnergySims/ProteinLigandSim/'
commandqueue=[]
dynamicommpath='/users/mh43854/openMMstable10/tinker/pascalbin/dynamic_omm.x'
temp=open('execute.txt','w')
freeenergysimpath='/users/bdw2292/FreeEnergySims/'
nodetocmdsdic={}
executeproligsims=False
executeligsims=True


def CreateNodeDic():
    temp=open(gpulistnodepath,'r')
    for line in temp.readlines():
        if not '#' in line:# use pound sign to tell which nodes other people are currently using at the time of initial execution
            nodedic[line.replace('\n',)]=1
    temp.close()

def InitializeCommandQueue():
    global jobs
    jobs=0
    if executeproligsims:
        os.chdir(proteinligandsimpath)
        subfolders=os.listdir(os.getcwd())
        for fold in subfolders:
            os.chdir(os.getcwd()+'/'+fold+'/')
            subfiles=os.listdir(os.getcwd())
            for f in subfiles:
                if '.key' in f:
                    cmdstr='cd '+os.getcwd()+';'+'nohup '+dynamicommpath+' solvatedligandproteinminequil.xyz -k ' + f + ' 666667 3.0 2 4 298 1.0 N'
                    commandqueue.append(cmdstr)
                    jobs+=1
            os.chdir('..')
    if executeligsims:      
        os.chdir(ligandsimpath)
        subfolders=os.listdir(os.getcwd())
        for fold in subfolders:
            os.chdir(os.getcwd()+'/'+fold+'/')
            subfiles=os.listdir(os.getcwd())
            for f in subfiles:
                if '.key' in f:
                    cmdstr='cd '+os.getcwd()+';'+'nohup '+dynamicommpath+' solvatedligandminequil.xyz -k ' + f + ' 666667 3.0 2 4 298 1.0 N'
                    commandqueue.append(cmdstr)
                    jobs+=1
            os.chdir('..')
    os.chdir(freeenergysimpath)

def ExecuteCommandsInQueue(): # just write to executebar.sh for now since python subprocess not exeucting correctly
    for node in nodedic:
        if nodedic[node]==1 and len(commandqueue)!=0: # grab first command in queue
            cmdstr=commandqueue[0] # excecute command
            nodetocmdsdic[node]=cmdstr
            del commandqueue[0] # now remove from queue because you have executed command
    while len(commandqueue)!=0:
        for node in nodedic:
            if len(commandqueue)!=0:
                cmdstr=commandqueue[0] # excecute command
                currentvalue=nodetocmdsdic[node]
                nodetocmdsdic[node]=currentvalue+' ;'+cmdstr
                del commandqueue[0]
    
    for node in nodetocmdsdic.keys():
        currentvalue=nodetocmdsdic[node]
        cmd = 'ssh %s "source %s;%s"' %(node,bashrcpath,currentvalue)
        temp.write(cmd+'\n')
        temp.flush()
        os.fsync(temp.fileno())
    temp.close()

def MakeShellFiles():
    temp=open("execute.txt",'r')
    results=temp.readlines()
    cmdstr=
    for lineidx in range(len(results)):
        line=results[lineidx]
        if 'ssh' in line:
            if lineidx!=0:
                newtemp.close()
            node=line.split()[1]
            newtemp=open('execute'+'_'+node+'.sh','w')
            cmdstr+='nohup ./'+'execute'+'_'+node+'.sh'+' '+'> '+'execute'+'_'+node+'.out '+'& '
            newtemp.write(line)
            newtemp.flush()
            os.fsync(newtemp.fileno())
        else:
            newtemp.write(line)
            newtemp.flush()
            os.fsync(newtemp.fileno())
    print(cmdstr)
            
CreateNodeDic() # make sure you have created keys for each of these nodes before execution
InitializeCommandQueue()
ExecuteCommandsInQueue()
os.system('rm execute*.sh')
os.system('rm execute*.out')
MakeShellFiles()
os.system('chmod +x *.sh')

python makeGPUbarfiles.py

  1. Brandon Walker

import subprocess
import os
import time


global gpulistnodepath
global nodedic
global bashrcpath
global ligandsimpath
global proteinligandsimpath
global commandqueue
global barommpath
global freeenergysimpath
global solvdw
global solvestat
global torsions
global nodetocmdsdic
global temp
global proligbar
global ligbar


gpulistnodepath='/users/bdw2292/gpunodes.txt'
nodedic={} # key is node, value is 1 if can put job on , 0 if job is running and cannot put a job on
bashrcpath='/users/mh43854/.bashrc.OMMFRESH'
ligandsimpath='/users/bdw2292/FreeEnergySims/LigandSim/'
proteinligandsimpath='/users/bdw2292/FreeEnergySims/ProteinLigandSim/'
commandqueue=[]
barommpath='/users/mh43854/TinkerApril15/tinker/source/bar_omm.x'
freeenergysimpath='/users/bdw2292/FreeEnergySims/'
solvvdw= [1,1,1,1,1,1,1,1,1,1,1,.9,.8,.75,.70,.65,.62,.60,.55,.5,.4,0]
solvestat=[1,.9,.8,.7,.6,.5,.4,.3,.2,.1,0,0,0,0,0,0,0,0,0,0,0,0]
torsions=[0,0,0,0,0,0,0,0,0,0,0,0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09,0.1,0.1]
nodetocmdsdic={}
temp=open("executebar.txt",'w')
proligbar=False
ligbar=True


def CreateNodeDic():
    temp=open(gpulistnodepath,'r')
    for line in temp.readlines():
        if not '#' in line:# use pound sign to tell which nodes other people are currently using at the time of initial execution
            nodedic[line.replace('\n',)]=1
    temp.close()

def InitializeCommandQueue():
    global jobs
    jobs=0
    if proligbar:
        os.chdir(proteinligandsimpath)
        for i in range(len(solvestat)-1): # stop before last one because using i+1 for grabbing next index
            firstelelamb=solvestat[i]
            firstvdwlamb=solvvdw[i]
            firsttorlamb=torsions[i]
            secondelelamb=solvestat[i+1]
            secondvdwlamb=solvvdw[i+1]
            secondtorlamb=torsions[i+1]
            firstfoldname="ProteinLigandSim%s_%s_%s"%(firstelelamb,firstvdwlamb,firsttorlamb)
            secondfoldname="ProteinLigandSim%s_%s_%s"%(secondelelamb,secondvdwlamb,secondtorlamb)
            firstarcpath=proteinligandsimpath+firstfoldname+'/'+'solvatedligandproteinminequil.arc'
            secondarcpath=proteinligandsimpath+secondfoldname+'/'+'solvatedligandproteinminequil.arc'
            cmdstr='nohup '+barommpath+' '+'1'+' '+secondarcpath+' '+'298'+' '+firstarcpath+' '+'298'
            commandqueue.append(cmdstr)
            jobs+=1
        os.chdir('..')
    if ligbar:
        os.chdir(ligandsimpath)
        for i in range(len(solvestat)-1): # stop before last one because using i+1 for grabbing next index
            firstelelamb=solvestat[i]
            firstvdwlamb=solvvdw[i]
            firsttorlamb=torsions[i]
            secondelelamb=solvestat[i+1]
            secondvdwlamb=solvvdw[i+1]
            secondtorlamb=torsions[i+1]
            firstfoldname="LigandSim%s_%s_%s"%(firstelelamb,firstvdwlamb,firsttorlamb)
            secondfoldname="LigandSim%s_%s_%s"%(secondelelamb,secondvdwlamb,secondtorlamb)
            firstarcpath=ligandsimpath+firstfoldname+'/'+'solvatedligandminequil.arc'
            secondarcpath=ligandsimpath+secondfoldname+'/'+'solvatedligandminequil.arc'
            cmdstr='nohup '+barommpath+' '+'1'+' '+secondarcpath+' '+'298'+' '+firstarcpath+' '+'298'
            commandqueue.append(cmdstr)
            jobs+=1   
        os.chdir('..')         
     

def ExecuteCommandsInQueue(): # just write to executebar.sh for now since python subprocess not exeucting correctly
    for node in nodedic:
        if nodedic[node]==1 and len(commandqueue)!=0: # grab first command in queue
            cmdstr=commandqueue[0] # excecute command
            nodetocmdsdic[node]=cmdstr
            del commandqueue[0] # now remove from queue because you have executed command
    while len(commandqueue)!=0:
        for node in nodedic:
            if len(commandqueue)!=0:
                cmdstr=commandqueue[0] # excecute command
                currentvalue=nodetocmdsdic[node]
                nodetocmdsdic[node]=currentvalue+' ;'+cmdstr
                del commandqueue[0]
    
    for node in nodetocmdsdic.keys():
        currentvalue=nodetocmdsdic[node]
        cmd = 'ssh %s "source %s;%s"' %(node,bashrcpath,currentvalue)
        temp.write(cmd+'\n')
        temp.flush()
        os.fsync(temp.fileno())
    temp.close()

def MakeShellFiles():
    temp=open("executebar.txt",'r')
    results=temp.readlines()
    cmdstr=
    for lineidx in range(len(results)):
        line=results[lineidx]
        if 'ssh' in line:
            if lineidx!=0:
                newtemp.close()
            node=line.split()[1]
            newtemp=open('executebar'+'_'+node+'.sh','w')
            cmdstr+='nohup ./'+'executebar'+'_'+node+'.sh'+' '+'> '+'executebar'+'_'+node+'.out '+'& '
            newtemp.write(line)
            newtemp.flush()
            os.fsync(newtemp.fileno())
        else:
            newtemp.write(line)
            newtemp.flush()
            os.fsync(newtemp.fileno())
    print(cmdstr)
            
CreateNodeDic()
InitializeCommandQueue()
ExecuteCommandsInQueue()
os.system('rm executebar*.sh')
os.system('rm executebar*.out')
MakeShellFiles()
os.system('chmod +x *.sh')

python computefreeenergyfrombarfile.py

  1. Brandon Walker

import subprocess
import os
import time

global gpulistnodepath
global nodedic
global bashrcpath
global ligandsimpath
global proteinligandsimpath
global commandqueue
global barommpath
global temp
global solvdw
global solvestat
global torsions
global nodetocmdsdic
global freeenergysimpath
global prolig
global lig

gpulistnodepath='/users/bdw2292/gpunodes.txt'
nodedic={} # key is node, value is 1 if can put job on , 0 if job is running and cannot put a job on
bashrcpath='/users/mh43854/.bashrc.OMMFRESH'
ligandsimpath='/users/bdw2292/FreeEnergySims/LigandSim/'
proteinligandsimpath='/users/bdw2292/FreeEnergySims/ProteinLigandSim/'
commandqueue=[]
barommpath='/users/mh43854/TinkerApril15/tinker/source/bar_omm.x'
temp=open('executefreeenergybar.txt','w')
freeenergysimpath='/users/bdw2292/FreeEnergySims/'
nodetocmdsdic={}
solvvdw= [1,1,1,1,1,1,1,1,1,1,1,.9,.8,.75,.70,.65,.62,.60,.55,.5,.4,0]
solvestat=[1,.9,.8,.7,.6,.5,.4,.3,.2,.1,0,0,0,0,0,0,0,0,0,0,0,0]
torsions=[0,0,0,0,0,0,0,0,0,0,0,0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09,0.1,0.1]
prolig=False
lig=True

def CreateNodeDic():
    temp=open(gpulistnodepath,'r')
    for line in temp.readlines():
        if not '#' in line:# use pound sign to tell which nodes other people are currently using at the time of initial execution
            nodedic[line.replace('\n',)]=1
    temp.close()

def InitializeCommandQueue():
    global jobs
    jobs=0
    if prolig:
        os.chdir(proteinligandsimpath)
        for i in range(len(solvestat)-1): # stop before last one because using i+1 for grabbing next index
            secondelelamb=solvestat[i+1]
            secondvdwlamb=solvvdw[i+1]
            secondtorlamb=torsions[i+1]
            secondfoldname="ProteinLigandSim%s_%s_%s"%(secondelelamb,secondvdwlamb,secondtorlamb)
            barfilename='solvatedligandproteinminequil.bar'
            barfilepath=proteinligandsimpath+secondfoldname+'/'+barfilename
            outputname=barfilepath.replace('.bar',)+'.out'
            cmdstr='nohup '+barommpath+' '+'2'+' '+barfilepath+' '+'250'+' '+'1000'+' '+'1'+' '+'250'+' '+'1000'+' '+'1'+' > '+outputname
            commandqueue.append(cmdstr)
            jobs+=1
        os.chdir('..')
    if lig:
        os.chdir(ligandsimpath)
        for i in range(len(solvestat)-1): # stop before last one because using i+1 for grabbing next index
            secondelelamb=solvestat[i+1]
            secondvdwlamb=solvvdw[i+1]
            secondtorlamb=torsions[i+1]
            secondfoldname="LigandSim%s_%s_%s"%(secondelelamb,secondvdwlamb,secondtorlamb)
            barfilename='solvatedligandminequil.bar'
            barfilepath=ligandsimpath+secondfoldname+'/'+barfilename
            outputname=barfilepath.replace('.bar',
)+'.out'
            cmdstr='nohup '+barommpath+' '+'2'+' '+barfilepath+' '+'250'+' '+'1000'+' '+'1'+' '+'250'+' '+'1000'+' '+'1'+' > '+outputname
            commandqueue.append(cmdstr)
            jobs+=1
        os.chdir('..')         


def CheckIfJobsFinished():
    for node in nodetopobj.keys():
        p=nodetopobj[node]
        poll = p.poll()
        if poll == None: # process is still running
            continue
        else: # process is no longer running
            nodedic[node]=1


def ExecuteCommandsInQueue(): # just write to executebar.sh for now since python subprocess not exeucting correctly
    for node in nodedic:
        if nodedic[node]==1 and len(commandqueue)!=0: # grab first command in queue
            cmdstr=commandqueue[0] # excecute command
            nodetocmdsdic[node]=cmdstr
            del commandqueue[0] # now remove from queue because you have executed command
    while len(commandqueue)!=0:
        for node in nodedic:
            if len(commandqueue)!=0:
                cmdstr=commandqueue[0] # excecute command
                currentvalue=nodetocmdsdic[node]
                nodetocmdsdic[node]=currentvalue+' ;'+cmdstr
                del commandqueue[0]
    
    for node in nodetocmdsdic.keys():
        currentvalue=nodetocmdsdic[node]
        cmd = 'ssh %s "source %s;%s"' %(node,bashrcpath,currentvalue)
        temp.write(cmd+'\n')
        temp.flush()
        os.fsync(temp.fileno())
    temp.close()

def MakeShellFiles():
    temp=open('executefreeenergybar.txt','r')
    results=temp.readlines()
    cmdstr=
    for lineidx in range(len(results)):
        line=results[lineidx]
        if 'ssh' in line:
            if lineidx!=0:
                newtemp.close()
            node=line.split()[1]
            newtemp=open('executefreeenergybar'+'_'+node+'.sh','w')
            cmdstr+='nohup ./'+'executefreeenergybar'+'_'+node+'.sh'+' '+'& '
            newtemp.write(line)
            newtemp.flush()
            os.fsync(newtemp.fileno())
        else:
            newtemp.write(line)
            newtemp.flush()
            os.fsync(newtemp.fileno())
    print(cmdstr)
            
CreateNodeDic()
InitializeCommandQueue()
ExecuteCommandsInQueue()
os.system('rm executefreeenergybar*.sh')
MakeShellFiles()
os.system("chmod +x *.sh")

python addupfreeenergysteps.py

  1. Brandon Walker

import os

global ligandsimpath
global proteinligandsimpath
global solvdw
global solvestat
global torsions
global freeenergysimpath


ligandsimpath='/users/bdw2292/FreeEnergySims/LigandSim/'
proteinligandsimpath='/users/bdw2292/FreeEnergySims/ProteinLigandSim/'
freeenergysimpath='/users/bdw2292/FreeEnergySims/'
solvvdw= [1,1,1,1,1,1,1,1,1,1,1,.9,.8,.75,.70,.65,.62,.60,.55,.5,.4,0]
solvestat=[1,.9,.8,.7,.6,.5,.4,.3,.2,.1,0,0,0,0,0,0,0,0,0,0,0,0]
torsions=[0,0,0,0,0,0,0,0,0,0,0,0.01,0.02,0.03,0.04,0.05,0.06,0.07,0.08,0.09,0.1,0.1]


def SumTheFreeEnergySteps():
    proteinligandsum=0
    os.chdir(proteinligandsimpath)
    for i in range(len(solvestat)-1): # stop before last one because using i+1 for grabbing next index
        secondelelamb=solvestat[i+1]
        secondvdwlamb=solvvdw[i+1]
        secondtorlamb=torsions[i+1]
        secondfoldname="ProteinLigandSim%s_%s_%s"%(secondelelamb,secondvdwlamb,secondtorlamb)
        barfilename='solvatedligandproteinminequil.bar'
        barfilepath=proteinligandsimpath+secondfoldname+'/'+barfilename
        outfilepath=barfilepath.replace('.bar',)+'.out'
        temp=open(outfilepath,'r')
        for line in temp.readlines():
            if 'Free Energy via BAR Iteration' in line:
                linesplit=line.split()
                freeenergy=float(linesplit[5])
                proteinligandsum+=freeenergy
        temp.close()

    os.chdir('..')
    os.chdir(ligandsimpath)
    ligandsum=0
    for i in range(len(solvestat)-1): # stop before last one because using i+1 for grabbing next index
        secondelelamb=solvestat[i+1]
        secondvdwlamb=solvvdw[i+1]
        secondtorlamb=torsions[i+1]
        secondfoldname="LigandSim%s_%s_%s"%(secondelelamb,secondvdwlamb,secondtorlamb)
        barfilename='solvatedligandminequil.bar'
        barfilepath=ligandsimpath+secondfoldname+'/'+barfilename
        outfilepath=barfilepath.replace('.bar',)+'.out'
        temp=open(outfilepath,'r')
        for line in temp.readlines():
            if 'Free Energy via BAR Iteration' in line:
                linesplit=line.split()
                freeenergy=float(linesplit[5])
                ligandsum+=freeenergy
        temp.close()
         
    print('Total free energy change without restraint correction from BAR method for protein-ligand sim is ',proteinligandsum,' kcal/mol')
    print('Total free energy change from BAR method for ligand sim is ',ligandsum,' kcal/mol')

SumTheFreeEnergySteps()

Create a python wrapper to execute free energy simulations. Matthew has a few python scripts that automate  a lot of this.