Sunday, May 25, 2014

Bash script for calculationg binding energy with APBS

Spending over two days just to figure out how to extract the energy binding build from many PQR files and take a sum of them. Arggg, Bash is so harsh to work out. After I finish my dissertation, I won't use it for heavy scripting again.

I have a protein files (3B7V) and need to find the binding energy between it's two chains. I build PQR files for each then calculate their energy. Minus them to the total energy we get the binding energy.

Here my script in Bash.
#!/bin/bash
rm Energy.txt
cd APBS
for i in A B 3B7V
do
  cd $i
  E=$(sed -n '/Global/p' log$i | awk '{print $6}')
  Erray=$(python -c "print float('$E')")
  echo $i = $Erray kJ/mol$'\n' >> ../../Energy.txt
  A[j]=$Erray;
  let j=j+1
  cd .. #at APBS folder
done
cd ..
Esum=`echo "${A[2]} - ${A[1]} - ${A[0]}" | bc`
echo Energy binding$'\n'$Esum >> Energy.txt
cat Energy.txt
Turn back in 5 minutes. I don't think posting this blog is sooooooooooooooooo smart. I just, oops, delete my script. LOL

Wednesday, April 30, 2014

PDB2PQR

PQR: là file PDB mà cột nhiệt độ và thể tích được thay bằng điện tích (Q) và bán kính (R). Nó vẫn vẽ ra được như file PDB.

Tuesday, April 22, 2014

Các lệnh và file sử dụng trong GROMACS

Nguồn: http://manual.gromacs.org/current/online/files.html
Phân loại file (rõ ràng): http://manual.gromacs.org/online/files.html

pdb2gmx: chọn trường lực.
pdb (protein để đọc) -> gro (protein để chạy)  + top (các thông số liên quan của protein) + posre.itp (ngăn nguyên tử nặng di chuyển)

editconf: tạo hộp.
gro -> gro (protein trong hộp)

genbox: đổ nước vào hộp.
gro (protein trong hộp) + gro (nước) -> gro (protein, nước, hộp)

grompp: tạo mọi thông số để chạy hệ.
mdp (thông số chạy hệ) + gro (protein, nước, hộp) + top -> tpr (protein, nước, hộp, thông số)

genion: thêm ion.
tpr -> gro (protein, nước, hộp, thông số, ion thêm vào) + top

grompp: tạo thông số để giảm năng lượng
mdp (thông số giảm năng lượng) + gro (protein, nước, hộp, thông số, ion) + top -> tpr (protein, nước, hộp, thông số chạy hệ, ion, thông số giảm năng lượng)

mdrun: giảm tối đa năng lượng.
tpr -> gro (protein, nước, hộp, thông số hệ, ion, năng lượng tối thiểu) + mấy thứ linh tinh (log, trr, edr)

grompp: tạo thông số các giá trị vĩ mô (số hạt, nhiệt độ, thể tích, áp suất, v.v.) (còn gọi là cân bằng)
mdp (thông số vĩ mô) + gro (protein, nước, hộp, thông số hệ, ion, năng lượng tối thiểu) + top -> tpr (protein, nước, hộp, thông số hệ, ion, năng lượng tối thiểu, thông số vĩ mô)

mdrun: đưa nhiệt độ, áp suất, v.v. vào
tpr -> gro (protein, nước, hộp, thông số hệ, ion, năng lượng tối thiểu, giá trị vĩ mô)

grompp: chuẩn bị chạy MD
mdp (thông số chạy MD) + gro (protein, nước, hộp, thông số hệ, ion, năng lượng tối thiểu, giá trị vĩ mô) + cpt (file quỹ đạo) + top -> tpr (protein, nước, hộp, thông số hệ, ion, năng lượng tối thiểu, giá trị vĩ mô, thông số chạy MD)

mdrun: chạy MD
-------------------
edr: file năng lượng portable, chứa năng lượng dùng cho xdr
The edr file extension stands for portable energy file. The energies are stored using the xdr protocol. 

top: mô tả đầy đủ các tương tác trong peptide hoặc protein, viết tắt của topology. Lệnh pdb2gmx sẽ biến file pdb chứa cấu trúc của bất kỳ protein và liên kết peptide thành file top. Lệnh grompp sẽ đọc nó và tạo ra file tpb (file này là file nhị phân).
The top file extension stands for topology. It is an ascii file which is read by grompp which processes it and creates a binary topology (tpb-file).

gro: file chứa cấu trúc phân tử theo định dạng Gromos87. Khi pdb2gmx tạo file top từ pdb, nó cũng tạo ra file gro. File này chỉ khác pdb ở chỗ nó không có vận tốc (đơn giản hơn, chỉ thể hiện quỹ đạo của các hạt).
Files with the gro file extension contain a molecular structure in Gromos87 format. gro files can be used as trajectory by simply concatenating files. An attempt will be made to read a time value from the title string in each frame, which should be preceded by 't=', as in the sample below.


MD of 2 waters, t= 0.0
    6
    1WATER  OW1    1   0.126   1.624   1.679  0.1227 -0.0580  0.0434
    1WATER  HW2    2   0.190   1.661   1.747  0.8085  0.3191 -0.7791
    1WATER  HW3    3   0.177   1.568   1.613 -0.9045 -2.6469  1.3180
    2WATER  OW1    4   1.275   0.053   0.622  0.2519  0.3140 -0.1734
    2WATER  HW2    5   1.337   0.002   0.680 -1.0641 -1.1349  0.0257
    2WATER  HW3    6   1.326   0.120   0.568  1.9427 -0.8216 -0.0244
   1.82060   1.82060   1.82060 
 

xtc: file đơn giản của trr.
The xtc format is a portable format for trajectories. It uses the xdr routines for writing and reading data which was created for the Unix NFS system. The trajectories are written using a reduced precision algorithm which works in the following way: the coordinates (in nm) are multiplied by a scale factor, typically 1000, so that you have coordinates in pm. These are rounded to integer values. Then several other tricks are performed, for instance making use of the fact that atoms close in sequence are usually close in space too (e.g. a water molecule). To this end, the xdr library is extended with a special routine to write 3-D float coordinates. This routine was written by Frans van Hoesel as part of an Europort project, and can be obtained through this link.

ndx: các file index (thường là index.ndx) chứa các thiết lập của người dùng về hệ như phản ứng đặc biệt của một nhóm nguyên tử. File này được đọc bởi đa số các chương trình phân tích, vẽ đồ thị (ngmx) hoặc preprocessor (grompp). Đa số các chương trình này tự tạo ra các file index nếu không có sẵn.
The GROMACS index file (usually called index.ndx) contains some user definable sets of atoms. The file can be read by most analysis programs, by the graphics program (ngmx) and by the preprocessor (grompp). Most of these programs create default index groups when no index file is supplied, so you only need to make an index file when you need special groups. 


log: cái này thì khỏi nói.

tpr: chứa các cấu trúc ban đầu của mô phỏng của mình, thông tin về phân tử (topology) và tất cả các tham số mô phỏng khác.
The tpr file extension stands for portable binary run input file. This file contains the starting structure of your simulation, the molecular topology and all the simulation parameters. Because this file is in binary format it cannot be read with a normal editor. To read a portable binary run input file type:
% gmxdump -s topol.tpr 
or if you're not such a fast reader:
% gmxdump -s topol.tpr | more
You can also compare two tpr files using:
gmxcheck -s1 top1 -s2 top2 | more

mdp: chứa tất cả thông tin về mô phỏng MD như bước nhảy thời gian, số bước nhảy, nhiệt độ, áp suất, v.v. grompp sẽ chuyển mdp sang tpr
The Molecular Dynamics Parameter (.mdp) file contains all information about the Molecular Dynamics simulation itself e.g. time-step, number of steps, temperature, pressure etc. The easiest way of handling such a file is by adapting a sample .mdp file. A sample mdp file can be found online. 


cpt: file quỹ đạo, chứa giá trị của mdrun trong suốt quá trình chạy. Nếu có vấn đề gì thì có thể chạy tiếp nhờ file này chứ không cần chạy lại từ đầu.
A .cpt file is produced by mdrun at specified intervals (mdrun -cpt n, where n is the interval in minutes), and contains information on all the state variables in a simulated system.  In the case of a crash (hardware failure, power outage, etc), a checkpoint file can be used to resume the simulation exactly as it was before the failure.  Simulations can also be extended using a checkpoint file.