DOCK 3.7 2015/04/15 abl1 Tutorial
This tutoral use the 3.7.2 beta version of dock release on XXX.
This is for a Linux environment and the scripts assume that you are running on SGE queueing system.
set up directories and get databases
Create directory called "RotationProject"
create a python file called "autodude_db_download.py"
# this gets the database from the autodude webpage import sys, os import urllib system = 'abl1' url = 'http://autodude.docking.org/dude_e_db2/' print "url = " + url #page=requests.get(url) webfile = urllib.urlopen(url) page = webfile.read() webfile.close() splitpage=page.split('\n') for line in splitpage: if system in line: file = line.replace('"',' ').split()[2] print url+file urllib.urlretrieve(url+file,file) # exit()
This python script will download the dockable db2 databases from the autodude webpage.
python /mnt/nfs/home/rstein/RotationProject/autodude_db_download.py
make a subdirectory called databases:
mkdir databases
go inside.
cd databases
make directories for ligands and decoys and move the corresponding files into those directories
mkdir decoys mv decoys*db2.gz decoys
mkdir ligands mv ligands*db2.gz ligands
download the ligand and decoy isomeric smiles file:
wget http://autodude.docking.org/abl1/decoys_final.ism mv decoys_final.ism decoys.ism
note that the scripts expect the name to be decoys.ism, so we changed the name.
wget http://autodude.docking.org/abl1/actives_final.ism mv actives_final.ism ligands.ism
run be_blasti.py
creat the following cshell script 0001.be_balsti_py.csh.
#!/bin/csh # this script calls be_blasti.py which creates a receptor and ligand file from a (list of) pdbcode(s). # msms is a molecular surface generation program needed for be_blasti.py to run # which is put in your path set path = ( /nfs/home/tbalius/zzz.programs/msms $path ) # you will need to have msms on you system. set list = "2HYY" # or use `cat filename` to list your pdb codes here from a text file like pdblist_rat, to loop over each variable (pdb code) later #set list = `cat $1` #set list = `cat /nfs/work/users/tbalius/VDR/Enrichment/pdblist_rat ` # CHANGE THIS, according to where the magic is going to happen #set mountdir = "/mnt/nfs/work/users/tbalius/VDR/" set mountdir = `pwd` # loop over pdbnames e.g. 1DB1 or list foreach pdbname ( $list ) echo " ${pdbname} " # for each pdb makes a directory with its name set workdir = ${mountdir}/${pdbname} ## so you don't blow away stuff; continue means STOP here and continue with next pdb from list if ( -s $workdir ) then echo "$workdir exits" continue endif mkdir -p ${workdir} cd ${workdir} # the atom type definition is needed for msms which is sym-linked into the cwd ln -s /nfs/home/tbalius/zzz.programs/msms/atmtypenumbers . # carbs are disregarded as ligands! if it is: carbohydrate instead of nocarbohydrate # renumber renumbers the residue number python $DOCKBASE/proteins/pdb_breaker/be_blasti.py --pdbcode $pdbname nocarbohydrate original_numbers | tee -a pdbinfo_using_biopython.log # error checking looks for receptor and ligand file which should be produced by be_blasti.py if !(-s rec.pdb) then echo "rec.pdb is not found" endif mv rec.pdb temp.pdb grep -v TER temp.pdb | grep -v END > rec.pdb rm temp.pdb # be_blasti.py produces peptide which may be used as a ligand if no other ligand is produced if (-s lig.pdb) then sed -e "s/HETATM/ATOM /g" lig.pdb > xtal-lig.pdb else if (-s pep.pdb) then ## if no ligand and peptide sed -e "s/HETATM/ATOM /g" pep.pdb > xtal-lig.pdb else echo "Warning: No ligand or peptid." endif end # system
running 0001.be_balsti_py.csh will run a script that come with dock call be_blasti.
And it will do the following
- download the pdb file from the web,
- break the file into rec and ligand componates
Note that you will need to have msms on you system. get msms
check to make sure that the right ligand was selected and the the residue is not missing anything of importants. If this automatic procigure has not perpared these files correctly then modify them.
Visulize them with chimera or an alternive visulazation program like pymol.
cd 2HYY
chimera rec.pdb lig.pdb