Software:labsoft

From biowiki
Jump to navigation Jump to search

Also see Tutorial

https://biomolmd.org/mw/index.php/Tutroial:alltut

3D molecule builder

Free software for building and modifying chemical structure in 3D

Avogadro

* can build polypeptide, nucleic acids using Insert function
* cheap structural optimization & energy minimization using GAFF, MMFF, UFF etc 

iqmol

* Can build using common chemical groups and fragments
* Geometry optimizaiton using Qchem server (or our own server on water.bme.utexas.edu)

Arguslab

  • Has built-in semi-empirical and simple force field optimization.
  • Nive building function (polypeptides are easy)
  • No longer supported. Sometimes crashes.

ACD labs

Academic version: http://www.acdlabs.com/resources/freeware/chemsketch/

ForceBalance

Installation files: ~pren/forcebalance-installation/

to Update: svn update

run on node100 and beyond to install:

source ~pren/.cshrc.force 
python setup.py install --prefix=/home/pren/forcebalance

replace the last PATH to your desired path (or just use mine) Won't work on bme-nova or water (too old).

Check python: python -c 'import sys; print sys.path'


How did I compile python 2.7 (not able to do yum on old nodes): python 2.7

Tutorial and example how to fit liquid and gas-phase dimer energy is in /Users/pren/Dropbox/RESEARCH/AMOEBA/AMOEBA-halogen/leeping/CondensedPhase_Update_03-07

pymol

Linux

Try this first: /opt/software/CHEM/pymol2016/pymol Official installation guide

http://www.pymolwiki.org/index.php/TOPTOC

64 bit on Centos 6.6

/opt/software/CHEM/pymol64/pymol/pymol

Can be run on biomol, bme-venus, bme-pluto, bme-neptune and bme-saturn.

http://www.pymolwiki.org/index.php/User:Tlinnet/Linux_Install

replace the fist wget:

wget http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm

http://www.tecmint.com/how-to-enable-epel-repository-for-rhel-centos-6-5/

After install all the rpms, don't need to installpymol.sh, just run

/opt/software/CHEM/pymol64/pymol/pymol 

Run this before pymol if need MPEG support

/opt/software/CHEM/pymol64/pymol/pymolMPEG.sh

pymol prebuild

Download from here: http://biomol.bme.utexas.edu/~pren/courses/bme346-soft/

http://biomol.bme.utexas.edu/~pren/courses/bme346-soft/archive/ (linux)

These educational version has no Ray tracing ability

pymol on windows (with Ray Tracing)

http://tubiana.me/how-to-install-and-compile-pymol-windows-linux-mac/

From this site: http://www.pymolwiki.org/index.php/Windows_Install

Download the 4 files (*.whl) below from http://www.lfd.uci.edu/~gohlke/pythonlibs/#pymol

Open a CMD windows as admin, cd Downloads\ and run the following (if you install 64 bit pythin, you may need download 64 bits for below as well)

C:\Users\macbook12\Downloads>C:\Python27\python.exe pip-8.1.2-py2.py3-none-any.whl/pip install pip-8.1.2-py2.py3-none-any.whl
C:\Users\macbook12\Downloads>C:\Python27\python.exe pip-8.1.2-py2.py3-none-any.whl/pip install "numpy-1.11.1+mkl-cp27-cp27m-win32.whl"
C:\Users\macbook12\Downloads>C:\Python27\python.exe pip-8.1.2-py2.py3-none-any.whl/pip install Pmw-2.0.1-py2-none-any.whl
C:\Users\macbook12\Downloads>C:\Python27\python.exe pip-8.1.2-py2.py3-none-any.whl/pip install pymol-1.7.6.0-cp27-none-win32.whl

Create a folder from command line (this allows you to write output etc in your own folder)

mkdir %HOMEPATH%\pymol

Make a shortcut to C:\pthyon29\scripts\pymol (right click) and move it to above folder.

Right click the shortcut and select “properties”, change the “starts in” filed to %HOMEPATH%\pymol
You can rename the shortcut to mypymol.cmd or anything you like.

Math

Matlab

Matlab is available on water (linux) and bme-black (windows)

Chemistry

pubchem

Here you can download the 3D structure quickly of known compounds. Or smile string, 2d structure etc. http://pubchem.ncbi.nlm.nih.gov

logP

You can enter the smile string and it predicts the logP. It'll be useful to screen for bioavailability. It is a quick empirical prediction. You can get the smile string from pubchem or babel.

http://www.molinspiration.com/services/logp.html http://www.molinspiration.com/cgi-bin/properties --

add H to proteins based on predicted pKa

To add H to proteins based on predicted pKa

1. Use PROPKA and PDB2PQR to add hydrogens to your x-ray structure:

PDB2PQR: http://pdb2pqr.sourceforge.net/
http://www.poissonboltzmann.org/ 
PROPKA: http://propka.ki.ku.dk/ 


2. H++ http://biophysics.cs.vt.edu/index.php

Openeye

We have academic license for a suite of software from openeye forsimilarity search, docking, molecular conformation generation (2d to 3d conversion) etc.

2016-2018

REHL 6 version, including fastroc on GPU

/opt/software/CHEM/openeye2016/openeye/

Source /opt/software/CHEM/openeye2016/openeye/bashrc

See /opt/software/CHEM/openeye2016/openeye/readme for fastroc on GPU example.

2013 edition

You can only run the new openeye software on RHEL5 or centos5, which means water.bme.utexas.edu or bme-nova. The license file is in /opt/openeye/license/ which expires in Aug 2013.

Set up bashrc:

export OE_LICENSE=/opt/openeye/license/oe_license.txt
export OE_DIR=/opt/openeye/RHEL5/openeye/
export PATH=/opt/openeye/RHEL5/openeye/bin:$PATH

That should be it...Try type "rocs"

tutorial

ROCS and eon

 similarity search

old version

How do I install the license file (/opt/openeye/license)? Place the license file named oe_license.txt in the OpenEye directory and define the environme nt variable OE_LICENSE to point to the location of the license file.

 

On windows the envir var can be set up for $OE_DIR (see below). The oe_license.txt should be located under the $OE_DIR. On WinXP/Vista/Windows7, use Start->Settings->Control Panel->System->Advanced->Environment Va riables

 

  1. How do I install my license file oe_license.txt on linux?

License files should be defined by environment variable $OE_LICENSE. It is recommended that t hese files be located at OE_DIR=/usr/local/openeye/etc/oe_license.txt. License files can also

be used if named oe_license.txt and either (1) present in the current working directory or (

2) present in the directory defined by environment variable $OE_DIR. However, these methods a re not as reliable and not generally recommended.


/usr/local/openeye/ $OE_DIR /usr/local/openeye/etc/oe_license.txt $OE_LICENSE

NIH online tool

openbabel

Latest openbabel 3.1 is installed cluster wide:

/opt/software/openbabel311/bin/obabel

Add to your path in bashrc or cshrc and you can use this "obabel" in any node or WS.


A great chemoinformatics tool, for converting files from one format to another and now generate 3D structure for molecule. Available on linux, window and Mac osx.

Now support 2d to 3d conversion

-rwxr-xr-x. 1 root root  43920 Dec 20 15:50 obabel
-rwxr-xr-x. 1 root root  30224 Dec 20 15:50 obconformer
-rwxr-xr-x. 1 root root  34752 Dec 20 15:50 obenergy
-rwxr-xr-x. 1 root root  39600 Dec 20 15:50 obfit
-rwxr-xr-x. 1 root root  39408 Dec 20 15:50 obfitall
-rwxr-xr-x. 1 root root  35432 Dec 20 15:50 obgen
-rwxr-xr-x. 1 root root  34416 Dec 20 15:50 obgrep
-rwxr-xr-x. 1 root root  35736 Dec 20 15:50 obminimize
-rwxr-xr-x. 1 root root  43896 Dec 20 15:50 obmm
-rwxr-xr-x. 1 root root  40776 Dec 20 15:50 obprobe
-rwxr-xr-x. 1 root root  39832 Dec 20 15:50 obprop
-rwxr-xr-x. 1 root root  39576 Dec 20 15:50 obrotamer
-rwxr-xr-x. 1 root root  34024 Dec 20 15:50 obrotate
-rwxr-xr-x. 1 root root  81104 Dec 20 15:50 obspectrophore
-rwxr-xr-x. 1 root root  29264 Dec 20 15:50 obsym
-rwxr-xr-x. 1 root root  30072 Dec 20 15:50 obtautomer
-rwxr-xr-x. 1 root root  29480 Dec 20 15:50 obthermo
-rwxr-xr-x. 1 root root  29184 Dec 20 15:50 roundtrip
-rwxr-xr-x. 1 root root  29704 Dec 20 15:50 test_inchiwrite
-rwxr-xr-x. 1 root root 975472 Dec 20 15:50 test_runner

See here for detailed description: http://openbabel.org/wiki/Guides

obabel -L formats list all formats supported (including read Gaussian fchk and output so you can convert other format such as pdb for visualization).

The installation source files are in /opt/openbabel-2.2.0/ or /opt/software/CHEM/openbabel/

Computational Chemistry

Tips about setting memory disk etc

QM jobs are usually highly demanding of CPU, memory and disk. It is important to set the limit properly in the input file.

In Gaussian for example, you can do so by

%NProc=8   or    %CPU=8 (in Gaussain 16)
%Mem=15000MB
%Chk=ccb.chk

#MP2/aug-cc-pvtz Density=MP2 MaxDisk=150GB

Gaussian 16 manual (some keywords changed) https://gaussian.com/running/?tabid=6 & https://gaussian.com/link0/

These limits should be less than what is available/free on the specific node. You can find out these information on Linux by using these commands:

nproc  #number of threads (2x no of cores)
free -g # memory usage
df -h   # disk space usage (look for /scratch) 

You should not use more than 8-12 threads for each QM job due to the poor parallel salability.

"df -h" to check available scratch disk space. Your MaxDisk should be much less than (e.g. 50%; even less if there other jobs running on the same node) available since others may need the scratch disk too. DO NOT STRESS the node or it will slow down everyone. If your QM job crashes, you will need manually clean the /scratch disk (you could use a script to run jobs/clean afterwards).

"free -g" output changed from centos 6 to 7.

[pren@node41 ~]$ free -g
             total       used       free     shared    buffers     cached
Mem:            31         14         16          0          0         11
-/+ buffers/cache:          2         28
Swap:           15 1717986918         15

Above is Centos 6 (3 rows)ouput. the "-/+buff" number under free (28 GB) is what's available

[pren@node64 ~]$ free -g
              total        used        free      shared  buff/cache   available
Mem:             31          10           4           0          16          20
Swap:            15           0          15

Above is centos 7 (two rows). The "20" GB under "available" is the number (or less) you should use for %mem

Gaussian

Gaussian 16

Latest as of 2019

To use the latest Gaussian: “g16 myjob.com” (basically replace g09 with g16).

But first you need to create and source this file (if csh):

setenv g16root "/opt/software/Gaussian16/bin/avx"
setenv GAUSS_SCRDIR "/scratch"
source $g16root/g16/bsd/g16.login

If bash:

g16root="/opt/software/Gaussian16/bin/avx"
GAUSS_SCRDIR="/scratch"
export g16root GAUSS_SCRDIR
. $g16root/g16/bsd/g16.profile

 

Gaussian 16 tutorial

Input syntax: case-insensitive, free-format (sensitive to blank lines). Space, comma and tab can be used as a delimiter. All keywords and options may be shortened to their shortest unique abbreviation. Keyword and options:

keyword = option
keyword(option)
keyword=(option1, option2, …)
keyword(option1, option2, …)
%rwf=/scratch/Gau-water/,60GB
%chk=water.chk ! Link 0 section. Output and resource specification
%mem=8GB
%nproc=8
# MP2/6-31G(d)	! Route section. End with a blank line
 
water energy	! Title section. End with a blank line
 
0   1	! Molecule specification. End with a blank line
O  -0.464   0.177   0.0	 
H  -0.464   1.137   0.0	 
H   0.441  -0.143   0.0


Output files: *.out or *.log (energy, coordinates, frequencies, ...). *.chk (electron density and other information; can be read by other programs)

The energy can be found in the output file in the format

SCF Done:  E(RB3LYP) =  ###     A.U. after   ## cycles

A successfully finished job ends with the line

Normal termination of Gaussian XXX

 

Types of computation: sp (default, single point calculation), opt (geometry optimization), freq (frequency), polar (polarizability)

Computational methods (in general order of increasing accuracy and cost): HF, DFT methods (B3LYP, wB97XD), MP2, CCSD(T). For transition metal ions, restricted open-shell wavefunctions may be needed. Preface the keywork by RO, e.g. ROHF. Implicit solvation (SCRF).

Basis sets:

6-31G, 6-31+G(d), 6-311++G(2d,2p) ...

def2TZVPP, def2QZVPP, ...

cc-pVTZ, aug-cc-pVQZ, aug-cc-pV5Z, ...

Gen (user-specified basis set. Useful for hybrid basis sets and for some transition metals)

Basis set extrapolation. The energy typically decreases with increasing size of the basis set. Assuming a simple relationship between the energy and the size of basis set, such as E(n) = E(CBS) + K/n or E(n) = E(CBS) + exp(-A*n), one can do extrapolation to obtain E(CBS). n is the number of zetas in cc-pV*Z basis set. Of course, the larger basis sets are used as input, the better the interpolation results are. (https://doi.org/10.1021/acs.jctc.5b00267)

 

Single point calculation

The interaction energy between fragments. Counterpoise correction (basis-set superposition error).

# B3LYP/6-31G(d) Counterpoise=2 

Counterpoise on water dimer

0,1 0,1 0,1
O(Fragment=1)  0.00  0.00  0.00
H(Fragment=1)  0.49  0.76 -0.29
H(Fragment=1)  0.49 -0.76 -0.29
O(Fragment=2)  0.00  0.00  2.98
H(Fragment=2) -0.91  0.00  3.24
H(Fragment=2) -0.01  0.00  2.03


  Geometry optimization Optimization with restraint on cartesian coordinate (X), bond (B), angle (A) or dihedral (D).

%chk=Asp-090-000.chk
%nproc=12
%mem=50GB
# opt=ModRedundant freq b3lyp/6-31g(d) scrf=pcm nosymm ! Geometry optimization with redundant internal coordinate, followed by frequency calculation

Ace-Asp-NMe

-1 1
   C      -0.051237       0.026635      -0.000187
   C      -0.047739      -0.050718       1.518390
   O       1.019569      -0.121175       2.135311
   H      -1.074728       0.094187      -0.430415
   H       0.437648      -0.877255      -0.425686
   H       0.518496       0.921014      -0.335147
   N      -1.258811      -0.011713       2.130962
   C      -1.492666      -0.118061       3.568820
   C      -1.021236      -1.406075       4.262506
   H      -2.112694      -0.008704       1.555853
   O      -0.872499      -1.416891       5.492335
   H      -0.814136       0.646375       4.025748
   C      -2.942279       0.313077       3.948700
   C      -4.058922      -0.713527       3.975701
   O      -3.832849      -1.916173       3.694369
   O      -5.221538      -0.313729       4.245555
   H      -2.888069       0.717014       4.990238
   H      -3.258114       1.180766       3.321244
   N      -0.758839      -2.493440       3.494647
   C      -0.287386      -3.768629       3.978826
   H      -0.964272      -2.486848       2.487606
   H       0.203785      -4.348693       3.168012
   H      -1.127920      -4.384617       4.365829
   H       0.452648      -3.653697       4.800493

D   7  8 13 14  F ! This Dihedral angle is fixed during optimization
D   8 13 14 15  F
D   2  7  8  9  F
D   7  8  9 19  F


If the restraint is specified correctly, you will see the output

! D9    D(3,2,7,8)             -6.5623         estimate D2E/DX2                !
! D10   D(3,2,7,10)          -171.5371         estimate D2E/DX2                !
! D11   D(2,7,8,9)            -60.0011         Frozen                          !
! D12   D(2,7,8,12)            51.2325         estimate D2E/DX2                !
! D13   D(2,7,8,13)           165.3165         estimate D2E/DX2                !

The coordinates in each iteration start with the line "Standard orientation" or "Input orientation" depending on the setting.

                        Standard orientation:
---------------------------------------------------------------------
Center     Atomic      Atomic             Coordinates (Angstroms)
Number     Number       Type             X           Y           Z
---------------------------------------------------------------------
     1          6           0       -3.158798   -1.400996   -1.145889
     2          6           0       -2.360207   -0.768947   -0.008899
     3          8           0       -2.910645   -0.063771    0.836128

Convergence criteria. Sometimes it's ok that the Force convergence is met but the displacement convergence is not.

        Item               Value     Threshold  Converged?
Maximum Force            0.000028     0.000450     YES
RMS     Force            0.000005     0.000300     YES
Maximum Displacement     0.001759     0.001800     YES
RMS     Displacement     0.000433     0.001200     YES

Check frequencies to make sure minimum energy point is reached. If there is (large) negative frequency, it means the maximum point on a concave curve.

Harmonic frequencies (cm**-1), IR intensities (KM/Mole), Raman scattering
activities (A**4/AMU), depolarization ratios for plane and unpolarized
incident light, reduced masses (AMU), force constants (mDyne/A),
and normal coordinates:
                    1                      2                      3
                    A                      A                      A
Frequencies --   -29.6237                28.3840                40.0446
Red. masses --     9.3990                 5.7633                 3.4850
Frc consts  --     0.0049                 0.0027                 0.0033
IR Inten    --     5.0560                10.5798                 1.2347
 Atom  AN      X      Y      Z        X      Y      Z        X      Y      Z
    1   6    -0.10   0.00   0.09    -0.15   0.14   0.03    -0.11  -0.06   0.09
    2   6    -0.04   0.03   0.03    -0.07   0.05   0.02    -0.06  -0.04   0.04
    3   8     0.02   0.12  -0.01     0.00   0.06   0.06    -0.04  -0.11   0.11
    4   1    -0.18  -0.12   0.18    -0.24   0.08   0.03    -0.02   0.16  -0.14

Gaussian 09

The csh source file is ~pren/.g09gh

This version can use multiple CPU cores. See ~pren/QuantumMechanics/gaussian-test/ for examples.

If you source it and see permission error, this is because the files in /opt/g09gh/... are only readable/executable by users in "users" group. Change the group and passwd files accordingly (by admin). Log out and log back in!

Change the source file to bash if you are using bash.

Below is obsolete.....(as of Aug 2015)

If you see an error about out of space but you are sure you are, try this (as root): echo 0 > /proc/sys/kernel/randomize_va_space

Before we have g03 compiled using pgi 32 bit. As a results we can not use more than 2G memory, but we can use multiprocessors on the same node. To use this version, you need these lines in your .cshrc or in a separate file and source before you run.

setenv PGI /usr/pgi
setenv g03root /opt
source $g03root/g03/bsd/g03.login.pgi
setenv GAUSS_SCRDIR /scratch

We now have the 64-bit intel compiled version. We can use as much as memory you like with it, BUT NO MULTIPROCESSOR. Still this single cpu version will be faster than the previous version using multiprocessors.

source /opt/intel/cce/10.1.011/bin/iccvars.csh
source /opt/intel/fce/10.1.011/bin/ifortvars.csh
setenv g03root /opt/gaussian
source $g03root/g03/bsd/g03.login
setenv GAUSS_SCRDIR /scratch

The intel version is not necessarily faster since you can’t use multiple processor as the old PGI version.

You can only use the intel version of Gaussian on bme-sun and cluster nodes, which have fedora 7 OS. It does not work on nodes 16-18 , however, since they have AMD processors. Source ~pren/.g03.intel and you can start using g03.

If you upgraded your OS on your workstation, you can’t use the old PGI version of g03 on your workstation. But you should be able to continue to use it on our cluster. Your previous .cshrc should continue to work. You may also try source ~pren/.g03.pgi

You can take a look at the two files .g03* to see the difference.

Each software is compiled for specific OS environment so you should expect many things will be broken when you mess with your workstation.

Also you probably can’t switch from one to another without logging out your shell, which resets your environmental variables.

   You need to set maxdisk=1000MW (example) in the gaussian input (if you have an error of memory allocation, try not specify %chk in your input, and delete all the temp files before you restart)
   You need a directory /scratch. This may not be created on new workstation yet
   You need /usr/pgi to use the pgi 32 bit version
   Remember to clean /scratch aftewards but watch out that you don't delete files belong to others

On fedroa 10, we need glibc 386 library to run PGI (/lib/ld-linux.so.2). cd /opt/fedora-iso/fc10-rpms rpm -Uvh glibc-2.9-3.* glibc-*-2.9-3.x86_64.rpm ALso need /usr/pgi and /scratch






Psi4 

(Last update: Sept. 18, 2019 by Chengwen)

Psi4 is a Python/C++, Open source, quantum software package that can be run as 

  1. An executable on command line
  2. Python module in python script

To run on command line, log in to one of the nodes with big memory/disk

node35, node36, node37, node38, node51, node52, node54, node56, node59, node70, node83

Then source this file and you are ready to run psi4 jobs

source /home/liuchw/.bashrc.psi4conda

A tutorial on the input files and how to run psi4 can be found here: https://leucinw.github.io/home/tutorial/2019/08/02/tut-psi4.html

 

jmol

can view Gaussian and many other format; make small molecules.

/opt/software/CHEM/jmol-13.2.3/jmol.sh

Avogadro

Installed on bme-earth (2/2014). "ssh -X bme-earth" and the "avogadro".

Avogadro is a free, open source, cross-platform molecular editor designed for flexible use in computational chemistry, molecular modeling, bioinformatics, materials science, and related areas.  
Packages are available for Mac OSX, Windows and Linux, as well as source code provided under the GNU GPL.

Can built peptides etc.

To download:
http://avogadro.openmolecules.net/wiki/Get_Avogadro

Gabedit

Read and visualize Gaussian, Gamess, Mopac, molpro... file (first structure and last structure in optimization). Runs on Linux!

/opt/software/CHEM/Gabedit/gabedit 

To visualize (gaussian optimized) structure, click on menu "Geometry" and then "draw" right click on black window and select read ....

MS Windows

FreeCommander: Free file manager. Alternative to total commander. Dual panels. Capable of synchronization and compare directories. Download: http://www.freecommander.com/

Visualization:

Facio

2/2007 Jenny

There is a new visulization software Facio available, which is publicly available at no charge. You can download it for your windows machine from the website. Although Facio is a native application of Windows environment, it can work on Linux with the help of WINE, which we have already. To download the software for your WINDOWS machine and know more about the software, please visit this website:

http://www1.bbiq.jp/zzzfelis/Facio.html

To use facio on your workstation without vmware or remote access, please place the following alias in your .cshrc file

alias facio "/opt/cxoffice/bin/wine /opt/software/Facio1081/Facio.exe"

It is an OpenGL-based graphics program for molecular modeling and visualization of quantum chemical calculations(GAUSSIAN and GAMESS), so it is easy to write the GAUSSIAN input file, view the output for optimized Geometry or load checkpoint file etc. It can also load TINKER xyz,PDB...format files. I am also attaching the manual on this email for your reference.

Jchem and Marvin

http://www.chemaxon.com/products.html visualization, pka, logP, logD, 2D to 3D, fragmentation and many other usages.

  • Windows: Version 5.3 installed on bme-mercury OBSOLETE
  • Linux: Version 5.2 (11/2009)

To access, put “/opt/software/CHEM/ChemAxon5.2/JChem/bin” in your path, and add the following environmental variable in your .cshrc file

 setenv CHEMAXON_LICENSE_URL /opt/software/CHEM/chemaxon/license.cxl

You can then use ChemAxon software For example type "mview /opt/database/known_drug/cmc20021_he.mol2"


I have installed a very useful Jchem package (http://www.chemaxon.com/products.html)

To access, put “/opt/software/CHEM/ChemAxon/JChem/bin” in your path, and add the following environmental variable in your .cshrc file

setenv CHEMAXON_LICENSE_URL /opt/software/CHEM/chemaxon/license.cxl

Now you can use the executables in bin on your worksrtation: mview can let you view a database of small molecules, for example:

“mview /opt/database/kinase-biogen/ligands_4pengyu.sdf”
You can clean up and convert 2d structure to 3d structure using Edit/clean/3d …

Msapce let you viz PDB structure of proteins. Msketch let you draw a new molecule

Mview read gaussian output file.

To install on your windows/linux computer, you can use the installation file in /opt/software/CHEM/chemaxon/ (note chemaxon and ChemAxon are two different directories). Copy the license.cxl into /User/yourusername/chemaxon (to make the new folder chemaxon yourself) for vista. For XP, create the same directory in user directory and copy the license file.

vmd

Since vmd186 is not functioning correctly on Linux workstation, you may want to use vmd 1.8.5 (type plain vmd) for now. To use the rmsd plot function, create a file .vmdrc in your home directory with the following content:

lappend auto_path {/usr/local/lib/vmd/plugins/noarch/tcl/rmsdtt} vmd_install_extension rmsdtt rmsdtt_tk_cb "WMC PhysBio/RMSDTT" menu main on

For admin: To install vmd, cd into /opt/vmdxxx/, run “configure LINUXAMD64 OPENGL”, and the cd ./src and “make install”.

Simulation: GROMACS

Installation (updated 8/20/2014)

Installed under /opt/, can run on all nodes.

  • /opt/gromacs-4.5.3-mpi/bin
  • /opt/gromacs-4.5.3-intel/bin (need source ~pren/.cshrc.f13)
  • /opt/gromacs-4.5.4/bin 

Add /opt/gromacs-4.5.3-mpi/bin to your path (cshrc or bashrc) to use the executables. 

In gromacs-4.5.3-mpi/bin mdrun_mpi is that one does mpi parallel simualtions, mdrun is serial.

 
  • General Instruction: http://ccmst.gatech.edu/wiki/index.php?title=GROMACS *
  • On nova fftw (3.2.4) was built by mike in /opt/fftw, copied to in /usr/local on NOVA
  • On nodes fftw (3.2.4) was installed through yum, in /usr/lib64 (single, double, long double)
  • How mike compiled /opt/gromacs-4.5.4: /home/schnied/Software/gromacs-4.5.4/config.log
  • Here is how I compiled gromacs-4.5.3-mpi on NOVA (fftw is in /opt/fftw)
    • Use intel compiler 10: source /opt/intel/fce/10.0.023/bin/ifortvars.csh; source /opt/intel/cce/10.0.023/bin/iccvars.csh
    • ​cd /home/pren/gromacs/gromacs-4.5.3
    • make clean
    • ./configure --enable-mpi --program-suffix=_mpi --enable-float --with-fft=fftw3 CPPFLAGS=-I/opt/fftw3/include LDFLAGS=-L/opt/fftw3/lib --prefix=/home/pren/gromacs/gromacs-4.5.3
    • Note the enable-float (single precision) was used for fftw so it should be used for gromacs to be consistent
    • make -j 6; make install
    • I then copied everything to /opt/gromacs-4.5.3-mpi
  • ​How to compile gromacs-4.5.3-intel using intel compiler (v13) and mkl (2013) fftw on NOVA
    • ​reference: http://www.hpcadvisorycouncil.com/pdf/GROMACS_Best_Practices.pdf
    • make clean
    • source ~/.cshrc.f13
    • ./configure --enable-mpi --with-fft=mkl CC=icc F77=ifort CXX=icpc --program-suffix=_mpi --prefix=/home/pren/gromacs/gromacs-4.5.3
    • make -j 4
    • make install
    • copy to /opt/gromacs-4.5.3-intel
    • To run mdrun_mpi etc on nodes, source ~pren/.cshrc,f13
  • If you run mdrun_mpi and see error related fftw3f library not found, that is because fftw library is not installed in /usr/lib64 (yum install fftw* should solve this)

 

 

Check Gromacs WIKI following the link below

http://wiki.gromacs.org/index.php/Main_Page

Quick Guide

~/gromacs/parallel/bin/pdb2gmx -f prozn.pdb -o prozn -ff oplsaa -p prozn.top -ter ~/gromacs/parallel/bin/editconf -f prozn.gro -o proznw.gro -d 0.8 -bt octahedron cp prozn.top proznwat.top ~/gromacs/parallel/bin/genbox -cp proznw.gro -cs spc216 -o proznwat.gro -p proznwat.top

// any constraints, rstarin put right behind the itp in top file.

~/gromacs/parallel/bin/grompp -v -f em -c proznwat.gro -o em -p proznwat.top ~/gromacs/parallel/bin/mdrun -v -s em.tpr -o em.trj -c after_em -g emlog

mpdboot -n 4 -f ./mpd.hosts --ncpus=2

~/gromacs/parallel/bin/grompp -v -f md -o md -c after_em -p proznwat.top -shuffle -np 8

  1. in case refined with short no-constraint md

~/gromacs/parallel/bin/grompp -v -f md -o md -c after_md0 -p proznwat.top -shuffle -np 8

restart from the last frame (or given time, see grompp): ~/gromacs/parallel/bin/grompp -v -f md -o md -c after_md.gro -t md.trj -p proznwat.top -shuffle -np 2

mpirun -n 2 mdrun_mpi -v -e md -s md.tpr -o md.trj -c after_md.gro -g md.log > & md.job &

  1. mpirun -n 2 ~pren/gromacs/parallel/bin/mdrun_mpi -v -e md -s md.tpr -o md.trj -c after_md.gro -g md.log > & md.job &

trjconv -f md.trj -o movie.pdb -n now.ndx -s md -b 1 -e 100 -skip 1

make_ndx -f after_md.gro -o now.ndx
    1 | 12 | 13 | 14

make index to creat new index

       a 1-10  //a group of atoms from 1-10
    name 17 pep  // rename group 17
    1 & ! pep   // a group with all protein atoms except 1-10 (pep)

Running mpi

If you see an error related to "libmpich.so.1.2:" not found, add the mpich2 lib path

setenv LD_LIBRARY_PATH "/opt/mpich2-fc13-p26/lib/:/opt/software/CHEM/openbabel-2.3.0/lib:"{$ATLAS}

REMD HOWTO

Benchmarks

Here are some observations for Kinase system (38772 atoms) using our own cluster from node18 to node30.

Using 8 , the speed is 2.54 ns/day. 
Using 12 , the speed is 3.14 ns/day. 
Using 15 , the speed is 3.38 ns/day.  
The scaling become worse beyond 20, the speed is lower than 1ns/day.

 

GPU nodes

hostnames

 gpu nodes

run "bash"

Source /usr/local/bash/bashrc.amber or /usr/local/bash/bashrc.openmm before use. If has error (esp amber), please try different /opt/software/bash/bashrc.amber.*

installation

We already has Canopy version pythin2.7 but If need to install python: http://toomuchdata.com/2014/02/16/how-to-install-python-on-centos/

  • Centos 6.5
node2xxx
mount -t nfs 10.0.0.200:/opt /opt
mkdir ~/.ssh
cp -r /opt/system-setup/rootssh2013/* ~/.ssh
restorceon -R ~/.ssh
node-setup.sh
  • yum update
reboot
  • install nvidia graphics driver: /opt/nvidia/NVIDIA-Linux-x86_64-343.22.run
reboot
  • Install both nvidia cuda toolkit:
 updated:7.5  is latest for OpenMM
/opt/nvidia/cuda_6.5.14_linux_64.run (say No to nvidia driver)
/opt/nvidia/cuda_6.0.37_linux_64.run (say yes to obsolte/uncompatible and No to nvidia driver)
  • Install gdk_ in /opt/nvidia (2016 August: this is now necessary for new stuff Jay put in for detecting GPU automatically)
  • mkdir /usr/local/bash
ln -s /opt/software/bash/.bashrc.amber bashrc.amber (newer CPU)
ln -s /opt/software/bash/.bashrc.amber.earth bashrc.amber (older CPU)
ln -s /opt/software/bash/.bashrc.amber.970 bashrc.amber (new CPU/GTX 970: node210 211)
 

Run bash;  source /opt/software/bash/.bashrc.amber.earth; cd /opt/software/amber14-gpu-earth/test/cuda/dhfr/; ./Run.dhfr.ntb2_ntt1.my

(If you are using different source, go to the corresponsing amber dir)
If this bombs, have to make a copy of the amber-14-gpu, and recompile for that CPU (see amber-GPU below)


Install openMM - Don't have to, just need to link openmm to usr/local/openmm, SEE BELOW

 source /opt/software/bash/.bashrc.openmm
/opt/software/OpenMM6.1-Linux64/install.sh (this install precompiled opemm into /usr/local and /opt/software/python27

OpenMM-GPU setup

  • Yum update your cents 6.5 and reboot
  • Install nvidia driver in /opt/nvidia/NVIDIA-Linux-x86_64-343.22.run
  • Install nvidia toolkit (opt/nvidia/cuda_6.5xxx cuda_6.0 for openMM6.1 on node201-207) to /usr/loca/ and skip the driver installation (already done above)
Cuda 6.5 required for gtx970 on node210. 
  • install python 2.7 from Canopy into /opt/software/python27/ (python27-780 for GTX780, openmm6.1 on node201-207)
~pren/canopy-1.4.1-rh5-64.sh
this step is already done, no need to repeat for new computers


  • Do one of the following (1-3, 2 or 3 is the latest)
 1. For node 201-207, go to the openmm prebuilt binary folder OpenMM6.1-Linux64 (copy a fresh one from ~pren/OpenMM6.1-linux64, you can delete this after done)
source /opt/software/bash/bashrc.openmm
 ".\install.sh"
Here you have to use python2.7. See /opt/software/bash/bashrc.openmm
------------------------------
  2. For nodes 201-211, GTX 780 or 970/980, download openmm6.2 source (/opt/software/OpenMM6.2-Linux64) from github and compile by following instruction (on latest GPU 980)
source /opt/software/bash/bashrc.openmm.970
 http://biomol.bme.utexas.edu/wiki/index.php/Software:Tutorials#Installation
 
Once the aboove step is done, I copied the /usr/local/openmm to /opt/software/openmmxxx, and the new node only need a link to
 
    "ln -s /opt/software/openmm6.2-installed /usr/local/openmm", where "openmm6.2-installed" was compiled on node201 and copied to opt.
 
Future nodes, no need to recompile the openmm. Just use the link above. Openmm install things into the shared python directory and /usr/local/openmm!!!
-----------------------------------------------------
3. For any new openmm distro:
install nvidia and cuda drive as above. 
Copy "/opt/software/python27" to a new python27-openmm6.x"
Make a new bashrc.openmm.6.x with python changed accordingly
Download and compile openmm as in 2.
------------------------------------------------------
  • test
bash
source /opt/software/bash/bashrc.openmm or
source  /opt/software/bash/bashrc.openmm.970 (on any GPU nodes to use openmm6.2 - need /usr/local/openmm linked to /opt/software/openmm6.2-installed)
/home/pren/OpenMM/shfr-test/simulateMTS.py
  • Notes: OpenMM python: /opt/software/python27/appdata/canopy-1.4.1.1975.rh5-x86_64/lib/python2.7/site-packages/simtk/openmm/app 
/home/pren/forcebalancev2/lib/python2.7/site-packages/forcebalance/openmmio.py



AMBER-GPU  

Run AMBER-GPU 

September 2017  

node70 to 100

 source /home/pren/amber-git/amber17/bashrc.amber16

 

Install AMBER-GPU 

September 2017  --Chengwen

Compile Amber18-gpu for new gpu nodes (node70 to 100)

1. Install cuda7.0 from /opt/nvidia/ (Caution: do NOT install graphic driver)(root)

2. Copy amber file from /home/pren/amber-git:

  cp -r /home/pren/amber-git/amber /home/liuchw/

3. Set environmental variables:

  source /opt/intel/composer_xe_2013.2.146/bin/compilervars.sh intel64
  export AMBERHOME=/home/liuchw/amber
  export PATH=$PATH:/usr/local/cuda-7.0/bin
  export LD_LIBRARY_PATH=/usr/local/cuda-7.0/lib64:${LD_LIBRARY_PATH}
  export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$AMBERHOME/lib
  export PATH=$PATH:/opt/mpich2-1.4.1p1/bin/mpicc/
  export CUDA_HOME=/usr/local/cuda-7.0 
  export DO_PARALLEL='mpirun -np 1'

4. Configure and install

  cd $AMBERHOME
 ./configure -cuda -mpi -noX11 intel 
  make install

5. Copy the compiled whole directory to /opt/software/ (root)

  cp -r amber /opt/software/amber18-gpu

6. Change $AMBERHOME to /opt/software/amber18-gpu

 

Install CPU version

See /home/pren/amber-git/readme for installation notes

Serial version: /home/pren/amber-git/amber17/ambercpu Parallel version: /home/pren/amber-git/amber17/ambercpu-mpi

Before running jobs (e.g. mmpbsa.py) source bashrc.ambercpu or bashrc.ambercpumpi

 

September 2014

compiled Amber14-gpu from /home/pren/amber12-2013/

First, install CUDA software AND drivers from NVIDIA website. You should be able to confirm CUDA is installed by running the test /usr/local/bin/deviceQuery or nvidia-smi. You need to define the following environment variables. AMBERHOME and CUDA_HOME need to be defined. Also, the library_path needs to be defined for amber and mpich2. Make sure that a compatible version of python is defined as well. Example:

source /opt/intel/composer_xe_2013.2.146/bin/compilervars.sh intel64
export PATH=$PATH:/usr/local/cuda-6.5/bin
export LD_LIBRARY_PATH=/usr/local/cuda-6.5/lib64:$LD_LIBRARY_PATH
export AMBERHOME=/opt/software/amber14-gpu
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$AMBERHOME/lib
export LD_LIBRARY_PATH=/opt/mpich2-1.4.1p1/lib/:$LD_LIBRARY_PATH
alias python=/usr/bin/env\ python2.6
export PYTHONPATH=/usr/bin/python2.6
export PATH=/opt/mpich2-1.4.1p1/bin/mpicc/:/opt/mpich2-1.4.1p1/bin:$PATH
export CUDA_HOME=/usr/local/cuda-6.5


Second, compile AMBER by the following:

./configure -mpi -cuda intel
make install
export DO_PARALLEL='mpirun -np 2'
make test #(or try the executable test/test_amber_cuda_parallel.sh ; actual cases in  test/cuda/)
Run dhfr test: /opt/software/amber16-gpu/test/cuda/dhfr/Run*.my

If you get x11 lib error, yum install *x11* and yum install libXt-devel*. This install pmemd,cuda.mpi in /opt/software/amber14-gpu/bin/

Due to the linking of libraries (intel,nvidia,amber), there will probably be errors. It is easier to compile amber without the flags -mpi and -cuda and then to add those after solving any problems.

 

2015/6/11 Install on node210, GTX970

cd ~pren/amber-git

Update git: amber.readme.git

git checkout master 

git pull 

cp amber amber15-gpu (later moved to /op/software/amber16-gpu)

source /opt/software/bash/bashrc.amber.970

./configure -mpi -cuda intel
make install

test...

Run AMBER on GPU

1) Log into node201, 202... (2 GTX 780 cards installed). or node 210 3 GTX970 installed

2) nvidia-smi to check which cards are available/busy (by checking the temperature and fan load)

If no card is being used, you can ignore this step. Otherwise you should specify to use the next available card.
To select specific GPU card to run, "export CUDA_VISIBLE_DEVICES="0"" ( http://ambermd.org/gpus/#Running for explanation)
"0" means the first card, 1 second, 2 the third. ****Also works for OPENMM

3) bash; source /usr/local/bash/bashrc.amber or bashrc.amber.970 (> node210)

4) Run (using 1 card, specify 1 after np option below; use 2 card, specify 2...)

export  DO_PARALLEL="/opt/mpich2-1.4.1p1/bin/mpirun -np 1"  
export sander="/opt/software/amber14-gpu/bin/pmemd.cuda_SPFP.MPI
or on > node210 
export sander="/opt/software/amber16-gpu/bin/pmemd.cuda.MPI"
$DO_PARALLEL $sander -O -o $output -c inpcrd.equil -r restrt -x mdcrd < dummy

Run AMBER GPU (Sep 2017)

GPU version of AMBER was compiled for use on new GPU nodes (node 70 to 90+).  Executables are in /opt/software/amber18-gpu. In order to run them, the following environmental variables need to be specified:

#AMBER GPU
source /opt/intel/composer_xe_2013.2.146/bin/compilervars.sh intel64
export AMBERHOME=/opt/software/amber18-gpu
export PATH=$PATH:/usr/local/cuda-7.0/bin
export LD_LIBRARY_PATH=/usr/local/cuda-7.0/lib64:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$AMBERHOME/lib
export PATH=$PATH:/opt/mpich2-1.4.1p1/bin/mpicc/
export CUDA_HOME=/usr/local/cuda-7.0
export DO_PARALLEL='mpirun -np 1'

Tips to run amber GPU as fast as you can

use single precision floating point SPFP, NOT DPFP
write out infrequently (ntpr=1000,ntwx=1000, ntwr=1000)
Pressure is expensive to calculate (~15% slower than NVT). Use NPT to estimate density and then use NVT for production run. 
in NPT, baraostat=2 (Monte Carlo is a little cheaper.
Use 4fs (dt=0.004) time step (H mass repartition) if you only care about thermodynamics (kinetics is wrong).
More tips can be found here: http://ambermd.org/gpus/#Max_Perf 

Using a single card, I was able to get 102ns/day on JAC system (23K atoms) using dt=0.002 (2fs), and 220ns/day using dt=0.004

6) NVT Example: /opt/software/amber14-gpu/test/cuda/jac/Run.jac.my SPFP

see  Run.jac.my for options in NVT.

7) NPT example: /opt/software/amber14-gpu/test/cuda/dhfr

see Run.dhfr.ntb2_ntt1.my for NPT options.

Amber 14 manual: http://ambermd.org/doc12/Amber14.pdf

Occasioanlly when you two cards, you may see errors like this. Just rerun

 "gpu_allreduce cudaDeviceSynchronize failed an illegal memory access was encountered

4fs timestep

For a 4fs timestep, you need to repartition the H mass. This is done using parmed. Note that this needs to be done on bme- Sugar, and that AMBERHOME needs to point to a amber14 installation in your .bashrc.  The installation of parmed in /opt/software/amber14-gpu is broken. instead, you need to use /opt/software/ParmeEd-master/parmed.py. Prep a parmtop as normal. startparmed by invoking the file parmed.py with the prmtop as a -p command ex. parmed.py -p Myparm.prmtop. Then, invoke HMassRepartition. This adjusts H masses to 3.024 daltons, lowering mass of heavy atoms. Then, to save the resulting .prmtop, invoke "parmout MyNewParm.prmtop". then invoke go. The resulting prmtop can then be used as input for AMBER simulations using the .inpcrd generated by leap.
 


Curves+

Curves+ for analysis of nucleic acid structure

Read both user guide and reference

https://bisi.ibcp.fr/tools/curves_plus/curves-user-guide.html

https://dx.doi.org/10.1093/nar/gkr316

 

rm r+bdna*.*

/Users/RL/Code/Cur+ <<!
&inp file=1bna, lis=r+bdna,
lib=/Users/RL/Code/standard,
&end
2 1 -1 0 0
1:12
24:13
!
# numbers following namelist variables:
# [# strands, up to 4] [#nt in strand 1, negative means 3’ to 5’; if 1, then auto-detected] [#nt in strand 2] …
# [nt indices in strand 1, 0 means gap, negative means excluding from axis calculation (for flipped base, the other base must be present, otherwise the base pair should be omitted)]
# [nt indices in strand 2]
# …

To analyze single strand:

/Users/RL/Code/Cur+ <<!
&inp file=1bna, lis=r+bdna,
lib=/Users/RL/Code/standard,
&end
1 -1 0 0 0
24:13
!

or

/Users/RL/Code/Cur+ <<!
&inp file=1bna, lis=r+bdna,
lib=/Users/RL/Code/standard,
&end
2 1 -1 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0
24:13
!


Trajectory analysis using CANAL

https://bisi.ibcp.fr/tools/curves_plus/canal-user-guide.html

Works with AMBER coordinate format

Requires strict format for Curves+ output. Only supports duplex as of Version 1.3 February 2015. For modified NA, make sure the number of torsions is the same, and five sugar atoms are defined.

To analyze a single strand, add a dummy strand as in the Curves+ example above.

Quick steps to run amber or OpenMM GPU

First, make sure your bashrc has nothing related to mpich, cuda, intel compiler in it. If you need them for specific apps, create a .bashrc.thatapp and source it before running the specific app.

Log into NOVA and then node201, 202, 205, 206, 210, 211, or bme-pluto, saturn or earth

source /usr/local/bash/bashrc.amber or /usr/local/bash/bashrc.openmm 

Source the one with xxxx.970 if you are running on 210, 211, earth.

Nvidia-smi to check which device (card) is available.  The unused card has a low temperature < 40 C and less memory usage < 30MB.

export CUDA_VISIBLE_DEVICES=“0” to chose card 1
export CUDA_VISIBLE_DEVICES=“0,1” to choose both card 1 and 2 (only amber can use 2 cards in parallel for one simulation; don’t ever use 3)

Then run your amber or open simulation. You can check the examples for amber (only root can actually run this): /opt/software/amber14-gpu/test/cuda/dhfr/Run.dhfr.ntb2_ntt1.my, and you will see the actual pmemd command is

"/opt/software/amber14-gpu-970/bin/pmemd.cuda.MPI” 

Everything else is the same as regular amber.

Examples for openmm is in /home/pren/OpenMM/zzz/simulateMTS.py.

More tips to run these fast, such as using 4fs time-step, write files/log as infrequent as possible, avoid pressure control etc can be found here: http://biomol.bme.utexas.edu/wiki/index.php/Software:links#Tips_to_run_amber_GPU_as_fast_as_you_can

Simulaiton analysis with LOOS

LOOS by Alan Gorssfield.

To use the native_contact.cpp

Here's what you need to do to build it:

1) Download the newest LOOS from loos.sourceforge.net

2) Unpack and build it. If you don't already have them installed, you'll need boost (and boost-devel, if it exists on your distribution), atlas, and scons installed. They should be readily available as packages for most majors linuxes. If I recall correctly, Ubuntu breaks boost into many small packages -- if so, install all of them.

3) Copy native_contacts.cpp into the Tools subdirectory of LOOS.

4) Edit Tools/SConscript, which is actually just a python script. You'll see a series of lines that create a variable called apps. Edit the last one, and append " native_contacts" to it.

5) cd to the main LOOS directory, and say "scons" (or scons -j4 if you've got a 4 core machine). This will build LOOS, and will build native_contacts in the Tools directory.

6) If you want, say "scons install" -- this will create an installed copy, by default in /opt/loos (you can edit this by modifying the custom.py file in the main loos directory.

1) I didn't do a huge amount of checking on it -- I wrote it, ran a couple of quick tests, and sent it along. Don't hesitate to contact me if you're having trouble making sense of it.

2) The way it's written, native_contacts takes a selection (for instance, you could specify the protein, but only include core residues), breaks it into pieces by residue, and computes the contacts between the centers of mass of the residues. So, if you want the whole thing, you'd just select the protein. If you wanted alpha carbons, you'd do something like

segid == "PROT" && name == "CA"


Beta carbons would look very similar. If you wanted to exclude backbone, something like this would work (I haven't tested it)

segid == "PROT" && !(name =~ "^(C|O|CA|N)$"


The above assumes you're using a package that has segid's -- Amber doesn't, so you'd have to specify a range of residue numbers instead, eg

resid >= 3 && resid <=45  && !(name =~ "^(C|O|CA|N)$"


See the LOOS docs, in particular the page about the selection language, for more hints.

  • can LOOS directly work on AMBER mdcrd

As for the latter question, yes, it'll work directly on the amber trajectory. If you just run it (say "native_contacts") it'll list the command line arguments it wants. The "system" description should be a pdb file, or an amber parmtop, or a charmm/namd psf. PDB is fine, as long as it has the same atoms (in the same order). That's where LOOS will get the meta-data (atom name, residue name and number, etc). Depending on what format you use, there may or may not be coordinates -- psfs don't have them, for example, and parmtops don't either (although the code will automatically look for an accompanying inpcrd file, which does).

For the next option (trajectory), it takes the name of the trajectory file, which it identifies based on the filename. Amusingly, you can mix and match packages (eg charmm psf with amber mdcrd).

Quantum Mechanics

Psi4

** please see Chengwen's tutorial for using psi4 

The latest version of Psi4 has been installed at /users/mh43854/bin/psi4updated. Installation required the latest gcc. To use, you need the following environemental variables( for bash). executable is /users/mh43854/bin/psi4updated/bin/psi4

export PYTHONPATH=/users/mh43854/bin/psi4updated/lib:$PYTHONPATH
export LD_LIBRARY_PATH=/users/mh43854/gcc/lib64:$LD_LIBRARY_PATH

Installation of GCC:

I installed 4.9.4( download info is available at http://www.gnu.org/prep/ftp.html) at ~mh43854/gcc. To add prerequisites to the build, run ./contrib/download_prerequisites. mkdirobjdir. cd into objdir and run /gcc-4.9.4/configure --prefix= /path/to/install/dir/. make and then make install. This will take a long time.

Q-chem 6

Run

Can be used on any nodes. For csh, source the follow (or add to .cshrc)

 source /opt/qchem/6.1/qcenv.csh

For bash (add to .bashrc)

 source /opt/qchem/6.1/qcenv.sh

Make sure no early version of qchem env sourcing in .cshrc or .bashrc:

Example of input in

/home/pren/QuantumMechanics/qchem/water
/home/pren/QuantumMechanics/qchem/

To run jobs (using 8 threads/processors).

qchem -nt 8 water.in water.out &

Important features

Default mem is 12GB. please set your own in input
ALMO-EDA second generation for energy decomposition
New DFT methods such as wB97M2... https://manual.q-chem.com/6.1/sect_DFTsugg.html
User manual and examples: https://manual.q-chem.com/latest/

Install Flexnet

Flexnet came with qchem install already

Need to run this to get host id before emailing qchem for license:

/opt/qchem/6.1/bin/flexnet/lmutil  lmhostid

Flexnet on the latest Rocky Linux requires lsb package:

sudo dnf install -y yum-utils
sudo dnf config-manager --set-enabled devel
sudo dnf update -y (optional)
sudo dnf install redhat-lsb-core

Install

The qcaux/license has two license files

qchem.lic  qchem_UKVU_demo.lic

Create the qchem.lic following qchem email:

SERVER bme-uranus.bme.utexas.edu 043201278653
USE_SERVER

Edit the 2nd lic file (sent by q-chem)

SERVER bme-nova.bme.utexas.edu b083fee3ba06  58888
VENDOR qchemlm  port=58889 OPTIONS=/opt/qchem/etc/qchemlm.opt

Note the 58888 58889 ports are added above and enabled below:

firewall-cmd --zone=internal --add-port=58888-58889/tcp --permanent
firewall-cmd --reload

mkdir /opt/qchem/etc/, add qchemlm.opt (may need copy the qchemlm from bin/flexnet here, may not):

GROUP qchemusers pren zj2244 eew947 cda923 liuchw
INCLUDE QCHEM GROUP qchemusers

In rc.local, add:

/opt/qchem/6/bin/flexnet/lmgrd -l +/var/log/qchemlm.log  -c /opt/qchem/6/qcaux/license/

Q-Chem 5

2023: node34 still can run qchem example job: /home/pren/QuantumMechanics/qchem/water/run "run watera5z"

Need these lines in your source if you use csh (change if you bash)

setenv QCSCRATCH /opt/scratch/qchemscratch
setenv QCLOCALSCR /scratch/qchemscratch
setenv QCMPI mpich
source /opt/qchem/501/qcenv.csh
#setenv LD_LIBRARY_PATH /usr/lib64/openmpi-1.10/lib/:$LD_LIBRARY_PATH

2017/7 Qchem 5 is now available on:

node40
node41
node42
node142
node38

Need these lines in your source if you use csh (change if you bash)

setenv QCSCRATCH /opt/scratch/qchemscratch
setenv QCLOCALSCR /scratch/qchemscratch
setenv QCMPI mpich
source /opt/qchem/5/qcenv.csh
setenv LD_LIBRARY_PATH /usr/lib64/openmpi-1.10/lib/:$LD_LIBRARY_PATH

Qchem Q-chem 4.1

8/1/2016 See Qchem under tutorial. Qchem (4.2) can be run on the following nodes (all cores):

node50-57, 8 cores each, 7GB mem
node35
node36
node37
node38
genome

8/17/2013

License email: license from qchem

Installed the serial and multiple-core version (not MPI yet, available if needed) in /opt/qchem/4.1

To run qchem, see tutorials. Below is the printout after installation. Note that there are few env (crutches) needed to be defined.

 To run Q-Chem calculations simply source the setup script below.
                                                             
[tcsh/csh]                                                      
source /opt/qchem/4.1/qcenv.csh                          
                                                             
[bash]                                                          
. /opt/qchem/4.1/qcenv.sh                                
                                                             
You can put the above lines in your shell startup script        
~/.cshrc for tcsh/csh or ~/.bashrc for bash.                    
                                                             
To get the latest Q-Chem updates please run                     
                                                             
/opt/qchem/4.1/qcupdate.sh                               
                                                             
To regenerate license data please run                           
                                                             
/opt/qchem/4.1/qcinstall.sh --update-lic        

Installation files are in /opt/qchem/4.1

To generate licesen for nodes (/opt/qchem/4.1/install-file/lincese_nodes), run

 export QC=/opt/qchem/4.1
$QC/bin/license_info <file_for_output> license@q-chem.com

Give the nodes file. Mail the output file to

Q-Chem

Version 4.0 is located in /work/opt/qchem4.0/.

Version 3.2 is located in /opt/qchem-para.

From: Zhen Xia <zhenxia@mail.utexas.edu> Date: Monday, February 27, 2012 1:53 PM To: Daniel Dykstra <dnl.dykstra@gmail.com>, Mike Schneiders <michael.schnieders@gmail.com>, Yue Shi <shiyue8638@gmail.com>, mu xiaojia <muxiaojia2010@gmail.com>, Qiantao Wang <qiantao.wang@gmail.com>, Gaurav Chattree <Gaurav.Chattree@mail.utexas.edu> Cc: Pengyu Ren <pren@mail.utexas.edu> Subject: Q-Chem update to 4.0 version

HI, everyone,

I’m glad to tell you that the Q-Chem software has been updated to 4.0 version. The new features of 4.0 version can be seen at: http://www.q-chem.com/. To use Q-Chem 4.0, please add the following paths to your shell profiles. An example of bash shell is looks like:

 #QCHEM    #qchem

QC=/work/opt/qchem4.0
export QC      
export OMP_NUM_THREADS=1
QCAUX=$QC/aux; 
export QCAUX   
QCPLATFORM=LINUX_Ix86_64;
export QCPLATFORM
QCSCRATCH=/opt/scratch/qchemscratch;   
export QCSCRATCH       
export QCLOCALSCR=/scratch
export QCMPI=mpich
export QCRSH=/usr/bin/ssh
export PBS_NODEFILE=/home/pren/qchemnode
noclobber=""                   
export PATH=/work/opt/qchem4.0/bin/:$PATH
if [ -e $QC/bin/qchem.setup.sh ]        ;       then   
$QC/bin/qchem.setup.sh                 
fi  

Please let me know if you have any questions.

Cheers, Zhen

Spartan

Update: Spartan 08 is installed on water.bme.utexas.edu


Bme-nova now has the QM package Spartan 06 (will update to 08 soon). A useful feature is RI-MP2 method, which is much more efficient than canonical MP2 for large molecules. We have 8 license for backend jobs but only one license for GUI. You can start the GUI by typing “spartan” (locally at bme-nova or ssh –X bme-nova from your own workstation).

A manual is available at /opt/software/spartan06.129_26_int9e/Spartan06Manual.pdf.

You can set up and submit jobs using the GUI and then exit (to free the license for others).

ORCA

Free QM package. Run parallel. Compute CD? orca HOWTO

cadpac

http://www-theor.ch.cam.ac.uk/software/cadpac.html

OpenMOPAC

Implement AM1 (stands for Austin Model 1), PM3 and other semiempirical methods (by James Stewart of UT Austin)
These methods are also available in G03, GAMESS, etc.
How good is SEM multipoles?
What is the alternative to Gaussian in derive DMA?
http://www.openmopac.net/background.html

AlphaFold3

AlphaFold3 (AF3) requires a GPU card with compute capacity over 8.0 and at least 40 GB display memory to run. Therefore calculations can be conducted on node165 (with 4 RTX A6000). Before deploying AF3, please read the terms and conditions carefully. https://github.com/google-deepmind/alphafold3/blob/main/WEIGHTS_TERMS_OF_USE.md

There are two ways to deploy AF3.

  1. Follow the official tutorial of af3 https://github.com/google-deepmind/alphafold3/blob/main/docs/installation.md, which requires the root privilege to install and configure Docker.
  2. Install the model locally as a pacakge. We are introduing this method here.

AF3 is now only supported on linux system, the system we used in this tutorial is Rocky Linux 8.10, with cmake 3.31.1 and gcc 12.4.0. GPU Driver Version: 550.135, cuda 12.6. (AF3 requires cmake >= 3.28 and gcc >= 9.4)

# clone the af3 code
git clone https://github.com/google-deepmind/alphafold3.git ~/opt/alphafold3
cd ~/opt/alphafold3
# af3 is tested based on python 3.11
conda create -n af3 python=3.11 
conda activate af3
# Hmmer must be 3.4.0.0 version, do not use conda, which although says 3.4 
# on website but will install 3.3 
pip install hmmer
pip install -r dev-requirements.txt 
# Could add --verbose to check the log if installation fails . 
# To my experience, it is most likely to fail because of the 
# incorrect version of gcc or cmake. Also check the LD_LIBRARY_PATH
# if any CXX test fails, it probably calls the libraries from another 
# software's path for testing.
pip install . --no-deps 
build_data
python run_alphafold_test.py # test run

# use jax package to check gpu settings
python
import jax
jax.devices()
>> [CudaDevice(id=0), CudaDevice(id=1), CudaDevice(id=2), CudaDevice(id=3)]
from jax.lib import xla_bridge
xla_bridge.get_backend().platform
>> 'gpu'

# This is used to dowload the database of af3, which is over ~650 GB,
# so it is unnecessary for each member to download it. 
# The datebase is already located in /home/zh6674/opt/alphafold3/database
# python fetch_databases.py --download_destination=/

If you don't want to create the env from scratch, you can also clone my env by:

conda create --name myaf3 --clone /home/zh6674/opt/miniconda3/envs/af3

Then you can run AF3 by such input:

export CUDA_VISIBLE_DEVICES=0 

python ~/opt/af3/run_alphafold.py \
    --json_path=/your_input_path/af_input.json \
    --model_dir=/model \
    --db_dir=/home/zh6674/opt/alphafold3/database \
    --output_dir=/your_output_path/output

Details of input.json could be found here. And it should be noticed that AF3 requires every users to submit a form to access their model prameters (--db_dir). So please contact them to get the model parameters for your own use.

Job Scheduling

Docking alternatives:

Rxdock:

https://rxdock.gitlab.io/

https://rdock.gitlab.io/

https://www.playmolecule.com/AceDock/

Autodock family

Autodock Vina (multiple ligands): https://github.com/ccsb-scripps/AutoDock-Vina

ADFR: https://ccsb.scripps.edu/adfr/

Smina (expt with scoring function): https://sourceforge.net/projects/smina/

Gold Docking

2023

Vince email has a new activation key Download using 771 and this new key: https://www.ccdc.cam.ac.uk/support-and-resources/csdsdownloads/ Installed on uranus /work2/Software, Can use any nodes.

Before use, need to activate using this new key (search GOLD in Slack):

 /opt/software/CCDC/CCDC2023/ccdc-utilities/software-activation/bin/ccdc_activator -a -k xxxx

replace /work2/Software by /opt/software/CCDC below Old:

/work2/Software/CCDC2023/ccdc-utilities/software-activation/bin/ccdc_activator -a -k xxxx

Run gui to prepare conf file:

 /opt/software/CCDC/CCDC2023/ccdc-software/hermes/bin/gold  

Run command line without GUI (may need clean your old GOLD_DIR and LD_LIBRARY_PATH if you set for/used previous GOLD)

  /opt/software/CCDC/CCDC2023/ccdc-software/gold/GOLD/bin/gold_auto 

Other software, conformer generator, conquest, mercury,....can be found in:

 /opt/software/CCDC/CCDC2023/ccdc-software/xxx/bin

Documents for each software

/opt/software/CCDC/CCDC2023/ccdc-software/xxx/docs

In addition to /opt/software/CCDC/CCDC2023/, a copy is backed up to /opt/CCDC/CCDC2023/

2022

2022 GOLD CCDC license and download - installed on bme-uranus. /work2/Software/CCDC2022/


/work2/Software/CCDC2022/Discovery_2022/bin/gold (GUI license expired as of May 2023)

/work2/Software/CCDC2022/Discovery_2022/bin/gold_auto with .conf file?

https://utexas.app.box.com/folder/153544625646 (edited) 

Updated license info can be found : Note updated as of 2022 http://legacy.lib.utexas.edu/chem/scifinder/ccdc.html

2020

 

GOLD Tutorial

Before running GOLD from the command line, it is recommended to follow a tutorial using the graphical interface to gain familarity with how GOLD works.

 

A tutorial for docking two ligands into a protein while taking flexibility into consideration is located here:

https://www.ccdc.cam.ac.uk/support-and-resources/ccdcresources/GOLD-tutorial-Flexibility-Constraints.pdf 

A tutorial for ligand binding pose prediction is located here:

https://www.ccdc.cam.ac.uk/support-and-resources/ccdcresources/GOLD-tutorial-PosePrediction.pdf

 

Remove old env in your bashrc or cshrc if you have one (so far I don't think we need it for 2020 version)


Activate GOLD the first time you use it:

/opt/CCDC/CCDC2020/CSD_2020/bin/ccdc_activator -k 570769-C9BD90-4986BB-904E59-D56C9B-025394

If you want to use gradphical interface for activating or setting up GOLD job initially (running job requires no GUI), you need a X grapics on your local computer.

Mac has Xquartz.  On windows, use mobaxterm that comes with X (or you can install VcXsrv & use it with ubuntu). Make sure you use ssh -Y when logging into a node.

You can check that X is working by typing xeyes and hitting enter. You should get a pair of googly eyes (which may be in another window).

/opt/CCDC/CCDC2020/CSD_2020/bin/ccdc_activator_gui & enter key from above (570769-C9BD90-4986BB-904E59-D56C9B-025394)


Running graphical interface (e.g. to generate gold.conf)

ssh -Y nova

then

/opt/CCDC/CCDC2020/Discovery_2020/bin/gold

Once you set up the job/create the conf file on nova, you can run the job on other nodes (below)

GOLD user guide: https://www.ccdc.cam.ac.uk/support-and-resources/ccdcresources/GOLD_User_Guide.pdf 


Running GOLD from the command line (you can use gold.conf above or mannually creat/edit conf)

/opt/CCDC/CCDC2020/Discovery_2020/bingold_auto gold.conf & 

2018 update

(installation and activation same as 2016)

setenv GOLD_DIR "/opt/CCDC2018/GoldSuite_2018/GOLD"
setenv PVM_ROOT "/opt/CCDC2018/GoldSuite_2018/GOLD/pvm3"
setenv PVM_RSH "/usr/bin/ssh"
setenv CCDC_CSD_LICENCE_FILE "/opt/CCDC2018/CSD_2018/csd/csd_license.dat"
setenv LD_LIBRARY_PATH /opt/CCDC2018/GoldSuite_2018/c_linux-64/lib/:$LD_LIBRARY_PATH

To activate on a node or WS: /opt/CCDC2018/GoldSuite_2018/bin/gold,  Enter site 771,  Confirmation Code: 1f9986 and email.

After installation, you may run the GUI (hermes) on workstation such as water.bme.utexas.edu

2016

Installation: /opt/CCDC/installation/csds-linux-x64.run  Mannual in /op/CCDC

Activate on a node (e.g. node101) by running /"'opt/CCDC/GoldSuite_2016/bin/gold" (using X windows if you do so remotely). Windows will pop up, asking you to enter the site number (771) and purchase number/confirmation code to register online. This confirmation number changes every spring each year (1f9986 for 2018). The code is now available from x-ray lab web site: https://sites.utexas.edu/chem-x-ray/ (right panel)

Once activated, specify the license file: csd_licence.dat /opt/CCDC//CSD_2016/csd/csd_licence.dat 

To run:

setenv GOLD_DIR "/opt/CCDC/GoldSuite_2016/GOLD"
setenv PVM_ROOT "/opt/CCDC/GoldSuite_2016/GOLD/pvm3"
setenv PVM_RSH "/usr/bin/ssh"
setenv CCDC_CSD_LICENCE_FILE "/opt/CCDC/CSD_2016/csd/csd_licence.dat"
setenv LD_LIBRARY_PATH /opt/CCDC/GoldSuite_2016/c_linux-64/lib/:$LD_LIBRARY_PATH
 
Then start pvm with a host file (first killall pvmd3 on all nodes you will be using and cleam /tmp/pvm*)
/opt/CCDC/GoldSuite_2016/GOLD/pvm3/lib/LINUX64/pvmd3 hostfile
 
Hostfile looks like this:
node101.bme.utexas.edu
Node36.bme.utexas.edu
 
Then (assuming gold.conf exists)
/opt/CCDC/GoldSuite_2016/GOLD/bin/parallel_gold_auto  16
 
You need another gold.hosts file:
node101.bme.utexas.edu 8
no_of_processes 8
node36.bme.utexas.edu 8
no_of_processes 8

 Notes from Dave Broadwell

 
CSDS licensing, which GOLD now also uses, is node-based - this means that each individual node that GOLD (or any of the CSD software) is to run on must be registered.
 
You installation and registration on one of your cluster nodes has enabled use on that particular node - in order to run on other nodes they similarly will need to be registered. That can be achieved by running one of the programs (other than GOLD itself - you will need to run one of the programs with a GUI such as ConQuest, Mogul or Hermes), or if you need to register multiple nodes and/or need to do so at the command line we can provide a tool to help with that.
 
Once registered then hopefully your PVM use should work. I should note, however, that use of PVM to parallelise GOLD is no no longer our recommended method of doing so and PVM will become deprecated for use with GOLD at some point in a future release. There are some entries in our support database for PVM use - see:
 
http://www.ccdc.cam.ac.uk/support-and-resources/support/search?q=PVM
 
In general, we now recommend use of a system such as univa grid and a script to split GOLD jobs and use the grid's scheduling system to run them - for an example script see:
 
http://www.ccdc.cam.ac.uk/support-and-resources/support/search?q=Grid%20Engine
 
and in particular:
 
http://www.ccdc.cam.ac.uk/support-and-resources/support/case/?caseid=b40a45cb-d4a3-4da3-ae72-b7653398895c

 
 

You can split the jobs and combine the results by uinsg the script discussed in the link above (Once all the jobs have been launched, a script is generated that may be used to collate all the results once the dockings have completed. )

References

Endnote

Bibtex