INSTALLATION AND IMPLEMENTATION OF STRUM (Copyright 2015 by Zhang Lab, University of Michigan, All rights reserved) 1. How to install the STRUM? 1) Install STRUM suite a) download the STRUM 'STRUM.tar.bz2' from http://zhanglab.dcmb.med.umich.edu/STRUM/download and unpack STRUM.tar.bz2 by > tar -xvf STRUM.tar.bz2 the root path of this package is called $strum, e.g. /home/liquan/STRUM. You should have all the programs under this directory. You can install the package at any location on your computer. b) to modify $strum/runSTRUM.pl file and set some paths, eg: $usrname = "liquan" #your user name which is useful when making tmp dir. $strum = "/home/liquan/STRUM" $bindir = "$strum/bin" 2) Install I-TASSER Suite a) Download I-TASSER Suite 'I-TASSER4.4.tar.bz2' from http://zhanglab.dcmb.med.umich.edu/I-TASSER/download and unpack 'I-TASSER4.4.tar.bz2 in $strum by > cd $strum > tar -xvf I-TASSER4.4.tar.bz2 The root path of this package is called $i_tasser, e.g. /home/liquan/STRUM/I-TASSER4.4. b) Download I-TASSER library files from a perl script 'download_lib.pl' provided in the I-TASSER package for automated library download and update of the libraries. We recommend putting the library files under the path /home/yourname/STLIB by > cd $strum > $i_tasser/download_lib.pl -libdir $strum/STLIB -P true -B true -N true the root of these libraries is called $libdir, e.g. /home/liquan/STRUM/STLIB c) to modify $strum/runSTRUM.pl file and set some paths, eg: $i_tasser = "$strum/I-TASSER4.4" $libdir = "$strum/STLIB" $java_home = "/usr" #java bin will be located at $java_home/bin/java 3) Install RW. a) The default version of RW is included in the package $strum/RW. You also can download RW from http://zhanglab.dcmb.med.umich.edu/RW/. The Paths are called $rw and $rwplus b) to modify $strum/runSTRUM.pl file and set some paths, eg: $rw="$strum/RW/calRW"; $rwplus="$strum/RW/calRWplus"; 4) Third-party software installation: While the majority of programs in the package 'STRUM.tar.bz2' are developed in the Zhang Lab here in the permission of use is released, there are some programs and databases which were developed by third-party groups. You may experience installation problems, please check the third-party websites. a) Installing HHsuite for sensitive sequence searching i) Download the sources from http://wwwuser.gwdg.de/~compbiol/data/hhsuite/releases > cd $strum > wget http://wwwuser.gwdg.de/~compbiol/data/hhsuite/releases/hhsuite-latest-linux-x86_64.tar.gz > tar -xzvf hhsuite-latest-linux-x86_64.tar.gz > rm hhsuite-latest-linux-x86_64.tar.gz ii) Download the uniprot library for HHblits from http://wwwuser.gwdg.de/~compbiol/data/hhsuite/databases/ > cd $libdir > wget http://wwwuser.gwdg.de/~compbiol/data/hhsuite/databases/hhsuite_dbs/uniprot20_2015_06.tgz > tar zxvf uniprot20_2015_06.tgz > rm uniprot20_2015_06.tgz iii) to modify $strum/runSTRUM.pl file and set some paths, eg: $hhblits = "$STRUM/hhsuite-2.0.16-linux-x86_64/bin/hhblits"; $hhdb="$libdir/uniprot20_2015_06/uniprot20_2015_06"; b) Installing SIFT i) Download the code & exe from http://sift.jcvi.org/www/sift4.0.3b.tar.gz > cd $strum > wget http://sift.jcvi.org/www/sift4.0.3b.tar.gz > tar zxvf sift4.0.3b.tar.gz >rm sift4.0.3b.tar.gz ii) to modify $strum/runSTRUM.pl file and set some paths, eg: $sift="/$strum/sift4.0.3b"; $csh="/bin"; #csh bin will be located at $csh/csh c) Installing SCWRL4.0 i) Just fill out the form and click "I agree" from http://dunbrack.fccc.edu/scwrl4/license/index.html, you will be sent in e-mail a download link only after your liense application is reviewed by SCWRL4 team. If you get the download Page, click the link "Linux Command-line Installer [23 MB]: supports 32bit and 64 bit", put it in the $strum path. > cd $strum > chmod a+x install_Scwrl4_Linux > ./install_Scwrl4_Linux Welcome to Scwrl4 installation wizard! Please specify the full path location where Scwrl4 files should be written to. Before you continue the installation, please make sure you have writing privileges for the destination path. Warning: If the specified path contains the previous Scwrl4 intallation, the previously installed files will be overwritten. Press press 'Enter' to interrupt the installation or provide the installation path. The full path is prefered (e.g., /usr/local/bin/scwrl4 or /home/user/scwrl4): $strum/scwrl4 Scwrl4 files will be written to /home/liquan/STRUM/scwrl4 Is this correct? [ Y/N ]Y Please specify the license holder of this Scwrl4 copy: (ENTER) ...... > rm install_Scwrl4_Linux ii) to modify $strum/runSTRUM.pl file and set some paths, eg: $scwrl="$strum/scwrl4/Scwrl4"; d) Installing dDFIRE i) Download dDFIRE from http://sparks-lab.org/yueyang/download/index.php > cd $strum > wget http://sparks-lab.org/yueyang/download/dDFIRE1.1-bin.tbz > tar -xjf dDFIRE1.1-bin.tbz > rm dDFIRE1.1-bin.tbz ii) to modify $strum/runSTRUM.pl file and set some paths, eg: $dfire="$strum/dDFIRE1.1-bin" e) Installing Amber i) fill out the form from http://ambermd.org/AmberTools14-get.html and click Download. Move the downloaded AmberTools14.tar.bz2 into $strum > cd $strum > tar -jxvf AmberTools14.tar.bz2 > rm AmberTools14.tar.bz2 > cd amber14 > vim ~/.bashrc copy this sentence "export AMBERHOME=$strum/amber14" to ~/.bashrc > source ~/.bashrc > sudo apt-get install csh flex gfortran g++ xorg-dev zlib1g-dev libbz2-dev patch python-tk python-matplotlib > ./configure gnu > source amber.sh > make install > make test which will run tests and will report successes or failures ii) to modify $strum/runSTRUM.pl file and set some paths, eg: $amber= "$strum/amber14"; f) Installing FoldX i) Register and login FoldX from http://foldxsuite.crg.eu/. In the download webpage, your request will be submitted, and you'll soon receive a download link at the eamil address provided. STRUM use Executable - Linux 64bits (foldx_Linux.tar_.gz). Move the downloaded foldx_Linux.tar_.gz into $strum. ii) > cd $strum > mkdir foldx > cd $strum/foldx > tar zxvf $strum/foldx_Linux.tar_.gz > rm $strum/foldx_Linux.tar_.gz ii) to modify $strum/runSTRUM.pl file and set some paths, eg: $foldx= "$strum/foldx"; g) Installing scikit-learn i) Scikit-learn requires: Python (>= 2.6 or >= 3.3), NumPy (>= 1.6.1), SciPy (>= 0.9) (http://scikit-learn.org/stable/install.html); In the download webpage https://pypi.python.org/pypi/scikit-learn/0.17, you can downlod scikit-learn-0.17.tar.gz by the link: scikit-learn-0.17.tar.gz (md5) or > wget https://pypi.python.org/packages/60/b8/c420dce3f72d95e06f7c1e50a6e705f4e8b6078d7d6db38425ac77ae3fab/ scikit-learn-0.17.tar.gz#md5=4b5cebc8c92cfe33749ae8ab3b2149b7 check the file integrity > md5sum scikit-learn-0.17.tar.gz 4b5cebc8c92cfe33749ae8ab3b2149b7 scikit-learn-0.17.tar.gz Move the downloaded foldx_Linux.tar_.gz into $strum. ii) > cd $strum > tar zxvf scikit-learn-0.17.tar.gz > cd scikit-learn-0.17 To install in your directory use: > mkdir $STRUM/python > python setup.py install --prefix $STRUM/python > cd $strum > rm scikit-learn-0.17.tar.gz > rm -rf scikit-learn-0.17 iii) to modify $strum/runSTRUM.pl file and set some paths, eg: $scikit="$strum/python/lib/python2.7/site-packages"; 1. How to run the STRUM? 1) make a file, where either the protein PDB (.pdb) or protein fasta (.fasta) shuld be stored. eg: $strum/example 2) Main script for runing STRUM is $strum/runSTRUM.pl. Run it dirctly without arguments will output the help information. 3) The following arguments must be set. One example is: "./runSTRUM.pl -datadir ~/STRUM/example -pdb 1arrA.pdb -mutation S35G" 4) The sesult will be shown as below ####################################################################### # STRUM Result # # # # protein position wild-type mutant-type ddG # # 1arrA 35 S G -0.67 # # # # the result is saved in ddG.txt. # # # ####################################################################### STRUM USAGE: ===================== Mandatory arguments: ===================== ./runSTRUM.pl -datadir datadir -pdb seqname.pdb -mutation mutation ./runSTRUM.pl -datadir datadir -seq seqname.fasta -mutation mutation -datadir: this is the directory where your input sequence \"proteinname.fasta\" or pdb \"proteinname.pdb\" is located, and the final results should be saved -mutation: the single-point muation information including: the wild-type residue, the position number of the residue that undergoes mutation and the mutant residue, eg, A44T either-or -pdb: the name of PDB protein code (PDB protein code must be saved in datadir) -seq: the name of protein sequence in raw format and one letter code (the protein sequence code must be saved in datadir) ================== Optional arguments: ================== -runstyle default value is \"serial\" which means running I-TASSER simulation sequentially, \"parallel\" means running I-TASSER simulations in parallel, distributed on cluster nodes Tips for path setting: -libdir: where the libraries should be saved (all libraries STRUM needed must be saved in a same directory). go to the nr and enter the command \"pwd\", you may get similar message like this /home/liquan/STRUM/ITLIB/nr, then the path is /home/liquan/STRUM/ITLIB -STRUM: go to the runSTRUM.pl folder and enter the command \"pwd\", you may get similar message like this /home/liquan/STRUM, then the path is /home/liquan/STRUM -java_home: enter the command \"which java\", you may get a path like /usr/java/latest/bin/java, then the path is /usr/java/latest -i_tasser: the path of the I-TASSER package. go to the I-TASSERmod folder and enter the command \"pwd\", you may get similar message like this /home/liquan/STRUM/I-TASSER4.4/I-TASSERmod, then the path is /home/liquan/STRUM//I-TASSER4.4 -hhblits: the path of HHblits. go to the hhblits folder and enter the command \"pwd\", you may get similar message like this /home/liquan/STRUM/hhsuite/bin, then the path is /home/liquan/STRUM/hhsuite/bin/hhblits. -hhdb: the path of the dataset used by hhblits. the simillar path is $libdir/uniprot20_2015_06/uniprot20_2015_06 -sift: the path of SIFT. go to the SIFT_for_submitting_fasta_seq.csh folder and enter the command \"pwd\", you may get similar message like this /home/liquan/STRUM/sift/bin, then the path is /home/liquan/STRUM/sift. -csh: enter the command \"which csh\", you may get a path like /bin/csh, then the path is /bin -scwrl: the path of SCWRL4. go to the Scwrl4.ini folder and enter the command \"pwd\", you may get similar message like this /home/liquan/STRUM/scwrl4, then the path is /home/liquan/STRUM/scwrl4/Scwrl4 -dfire: the path of dDFIRE. go to the dfire.1 folder and enter the command \"pwd\", you may get similar message like this /home/liquan/STRUM/dDFIRE1.1-bin, then the path is /home/liquan/STRUM/dDFIRE1.1-bin -amber: the path of AmberTools14. go to the amber.sh folder and enter the command \"pwd\", you may get similar message like this /home/liquan/STRUM/amber14, then the path is /home/liquan/STRUM/amber14 -foldx: the path of FoldX. go to the foldx3b6 folder and enter the command \"pwd\", you may get similar message like this /home/liquan/STRUM/foldx, then the path is /home/liquan/STRUM/foldx We suggest testing your installation first with a short sequence (e.g., about 30 residues) before running production jobs for your proteins. An example command for running I-TASSER using a pdb \"1arrA.pdb\" under the folder /home/XXX/STRUM/example ./runSTRUM.pl -datadir /home/XXX/example -pdb 1arrA.pdb -mutation S35G