AMBER for Dummies
(Acknowledgment: Thanks to Ms Lee Hui Jun for giving
me a crash course on AMBER)
Setup
Remember to append these lines to your .bashrc:
export PATH=$PATH:/usr/local/amber/exe
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/intel/mkl/lib/32
export AMBERHOME=/usr/local/amber
Note: You have to change the path according to where AMBER
is installed
In the following step
through example, I use p53.pdb as an example
Step Through
- Open
Cygwin window, type ‘startx’
- Type ‘xhost
+<ipaddress>’, where <ipaddress> is the address of
the server you are going to run AMBER. Example: xhost +viper.bii-sg.org
- At
your computer, check your own ipaddress (Start->Run->type ‘cmd’; At
command prompt, type ‘ipconfig’; note down the IP Address)
- Log
into the server where you run AMBER
- After
you log in, type ‘export DISPLAY=<IP Address>:0’, where
<IP Address> is the address that you noted down in step 3)
- Type ‘xleap’
and you should see xleap window
- At
xleap window:
- source leaprc.ff94
- p=loadpdb p53.pdb [Initialize
object p to p53]
- solvatebox p TIP3PBOX 8 [add
water to p where the box size is 8; you may change to 10 or 12]
- edit p [You will see your protein
in a solvatebox. Check if your protein is entirely in the box.]
- check p [Check net charge of p.
In this case, p53 is –ve charge]
- addions p Na+ 0 [If –ve charge,
add Na+, if +ve charge, add Cl-; the last digit 0 indicates we want net
charge of 0]
- saveamberparm p p53.top p53.crd
[save protein in solvatebox into .top and .crd]
- quit
- You
are supposed to check the residue ID of the last residue of the protein
and the total number of residues in p. Download amber_script.sh.
- Amber_script.sh
will do the following:
- Generate
p53_box.pdb and check for last residue of protein and total number of
residues in p
- It
then generates .in and .s files for minimization, heating, equilibration
and production run and also a runmd file for submitting the jobs through
LSF.
- Consider
your .top and .crd files are in p53 directory
- Usage:
amber_script.sh
<directory> <filename>
- Example:
amber_script.sh p53 p53
- Files
generated:
- p53_min1.in,
p53_min1.s, Initial energy
minimization with solute frozen
- p53_min2.in,
p53_min2.s, Initial energy
minimization with solvent frozen
- p53_min3.in,
p53_min3.s, Initial energy
minimization on whole system
- p53_heat1.in,p53_heat1.s,
Heat from 0 to 100 (10ps)
- p53_heat2.in,
p53_heat2.s, Heat from 100 to
200 (10ps)
- p53_heat3.in,
p53_heat3.s, Heat from 200 to
300 (10ps)
- p53_md2.in,
p53_md2.s, Equilibration
(100ps)
- p53_md<X>3.in,
p53_md<X>.s, Production
run (2ns each) [p53_md3 – p53_md7 are generated for the purpose of
running 5 x 2ns]
- p53_runmd, just type
‘p53_runmd’ and it will run right from p53_min1.s till p53_md7.s in
sequence
- Alternatively,
if LSF is not working, you can do prun (Go to your .s file and copy and
paste from there; Copy from sander command till end of double quotes)
- Example:
prun –n 16 /usr/local/amber/exe/sander -O -i 1H24BE6_min1.in -o 1H24BE6_min1.out
-p 1H24BE6.top -c 1H24BE6.crd -r 1H24BE6_min1.rst -ref 1H24BE6.crd &
- Note:
In this case, you will have to check if each job has finished running
before starting the next one.
- You
may want to check the progress by checking the .out files. For example,
‘tail -40 1H24BE6_min1.out’
RMSF
(rms.in)
Edit rms.in by changing
<file>_mdx.crd to whichever crd files that you want to analyze.
(Content of rms.in)
trajin
<file>_md3.crd
trajin
<file>_md4.crd
rms first out
cyca_mol.rms @N,C,CA time 1.0
|
|
To check rmsf against simulation
time, type ‘ptraj <file>.top < rms.in’
Output: <file>.rms
Extract
frames from trajectories (getframe.in)
Edit getframe.in by changing
<file>_mdx.crd to whichever crd files that you want to extract frames.
The trajin line includes ‘trajin
<crd file> <start frame> <end frame> <frame interval>.
In this case, 15 frames will be
extracted from md3 and md4 files each. (Total of 30 frames.)
The frames extracted are output as
pdb file without water molecules.
(Content of getframe.in)
trajin
<file>_md3.crd 1 15000 1000
trajin
<file>_md4.crd 1 15000 1000
trajout
<file>_mdx.pdb pdb nowat
strip :WAT
go
|
|
To get the frames, type ‘ptraj
<file>.top < getframe.in’.
Output: <file>.pdb.xxx
where xxx is the frame number.
MM_PBSA for Dummies
To calculate binding free energy, you have to calculate
enthalpy and entropy. But before that, you have to extract the frames from the
MD simulations:
Step Through
- Download
mm_pbsa.zip
- Edit
the file pbsa.sh, change the following definitions:
- WKGDIR,
which is the working directory
- PBSA_DIR,
which is the directory which stores the files that you downloaded
- PDB_FILE,
which is the pdb filename (without file extension)
- PREFIX,
which is the prefix of the frames that you extracted (prefix for naming
of output files)
- COMPT,
RECPT, LIGPT (The top and crd files of complex, receptor and ligand in
vacuum.)
- TRAJ
(The md production run trajectories crd files)
- NSTART,
NSTOP, NFREQ (1st frame
and last frame no. of each trajectory file and interval of frames which
has to be used.)
- Type
‘pbsa.sh’. This will create GF, ENTHALPY, ENTROPY_GF and ENTROPY and
decomp directories. All the scripts needed are in the corresponding
directories. A run_pbsa.sh file will be created.
- Type
‘run_pbsa.sh’. This will do calculation on enthalpy and entropy.
Energy decomposition
- To do
energy decomposition, you must have the .top and .crd files for the
complex, receptor and ligand and name them as <file>_vac.
For example, 1H24B.pdb is the
receptor, 1H24E is the ligand and 1H24BE is the complex, then you should use
xleap or tleap to generate 1H24B_vac.top and 1H24B_vac.crd, 1H24E_vac.top and
1H24E_vac.crd, 1H24BE_vac.top and 1H24BE_vac.crd.
To do this, you can do the
following:
·
tleap
·
source leaprc.ff94
·
p=loadpdb 1H24B.pdb
·
saveamberparm p 1H24B_vac.top 1H24B_vac.crd
·
q=loadpdb 1H24B.pdb
·
saveamberparm q 1H24B_vac.top 1H24B_vac.crd
·
r=loadpdb 1H24BE.pdb
·
saveamberparm r 1H24BE_vac.top 1H24BE_vac.crd
·
quit
Then go to decomp directory and
type ‘bsub –n 1 –q long /usr/local/amber/exe/mm_pbsa.pl decomp.in’.