python中cock什么意思_[转载]原创脚本逐步实现Autodcock-Vina的虚拟筛选及筛选后分析...
[轉載]原創(chuàng)腳本逐步實現(xiàn)Autodcock-Vina的虛擬篩選及篩選后分析
(2013-07-03 11:31:56)
標簽:
轉載
Vina是在Autodock4基礎上改進的算法,相比autodock4而言,具體優(yōu)勢:準確,并行計算(官網(wǎng)數(shù)據(jù)):AutoDock
Vina is a new open-source program for drug discovery, molecular docking and
virtual screening, offering multi-core capability, high performance
and enhanced accuracy and ease of use.
相應參考文獻:O. Trott, A. J. Olson,
AutoDock Vina: improving the speed and accuracy of docking with a
new scoring function, efficient optimization and multithreading,
Journal of Computational Chemistry 31 (2010)
455-461
最近用了Vina做了一次對接,我只對接了幾百個化合物,發(fā)現(xiàn)這軟件,現(xiàn)在還不太智能,比如說前期處理,對接結果處理,我始終認為與典型的mol2或者sdf格式文件相比,PDBQT+dlg格式文件不是很好處理,最近和一個師弟寫了幾個腳本程序,用來處理Vina對接問題:主要的程序如下:
對接軟件:Autdock-Vina (http://vina.scripps.edu/)
PDBQT生成腳本程序:LigPrep.sh or LigPrep.py (shell 和
python,見附件):可以實現(xiàn)mol2、sdf、PDB、PDBQT等格式文件的虛擬庫,轉化成Autodock或者Vina需要的單個分子的PDBQT文件,還寫了一個插件,自動去除重復分子。
結果處理程序:ARC-1.2.py (Autodock and Vina Result Conversion,
python版本,見附件):實現(xiàn)Dlg文件、單個分子的PDBQT對接結果轉化成集成的PDBQT、sdf等格式文件。還可以根據(jù)命令提示,提取打分最好的構想及打分,或者排名前十的分子,這對處理大規(guī)模虛擬篩選十分關鍵。
接口程序:Vina-1.4.sh (shell
版本):主要實現(xiàn)自動對接,只要用這個接口就可以實現(xiàn),就像商業(yè)的軟件的按鈕操作一樣,簡單方便~
obabel 軟件:我們的腳本需要調用此軟件里面的插件來實現(xiàn)功能,關于這個插件,現(xiàn)在自己準備后面的時間來寫這段代碼。
我下面結合具體例子來說:
1、蛋白受體的處理:
這個不需要多說了,ADT或者PyRx,都可以生成受體的PDBQT文件(建議),或者就自己手動生成一個(不建議),然后確定盒子中心。按照Vina的輸入文件要去制作.cgf文件,例如:
config.cgf
#######################################################
receptor = rec.pdbqt //受體的名稱
center_x = -2
center_y = 0 //盒子的質心
center_z = -4
size_x = 30
size_y = 32 //盒子的大小
size_z = 46
exhaustiveness = 20 //計算的復雜度
cpu = 16 //并行計算
energy_range = 4 //作用能間距等級,這個我到現(xiàn)在也沒搞懂
num_modes = 20 //保留構想數(shù)目,這個是cluster之后的結果,實際構想可能很多
#######################################################
2、虛擬庫小分子文件的準備
首先把虛擬庫轉化成mol2格式文件(里面包含很多分子),其實這個處理還需注意一些事項,如加氫、電荷、去除自身小分子、離子、無機鹽等等,對接前的構想最好是3D構想
然后啟動腳本LigPrep.sh,根據(jù)提示操作:
###################################################################
# sh LigPrep.sh [option] argument #
# Usage: LigPrep.sh prepares autodock input files (PDBQT).
# Requirement:
# 1.Ensure that molecules in the input file are of 3D prior to
preparation. //需要小分子的3D構象
# 2.Each molecule should have a unique internal name. //需要小分子唯一的內部名字
# 3.obabel is in use and its environment varible set. //需要安裝obabel軟件
# Option:
# -i input_file (*.sdf, *.mol2, *.pdb, *.pdbqt)
# -o output_directory (default is '__pdbqt_files__')
# -n Number of molecules to divide into each group
# (default is 1500)
# -h display this message
# -help alias of '-h'
###################################################################
例如:
sh LigPrep.sh -i ***.sdf
(這樣就可以生成一個默認的文件夾,里面包含虛擬庫的單個小分子的PDBQT格式文件,即可以用于Autodock或者vina進行虛擬篩選)
3、虛擬篩選
啟動腳本:vina-1.4.sh
#################################################################
# Usage: #
# sh vina-1.4.sh working_direcotry [option] #
# Option: #
# --help display this message #
# -h alias of "--help" #
# Note: #
# working_directory contains input and output folders. Receptor
file (e.g. receptor.pdbqt ), ligand file(s)
(e.g ligand_01.pdbqt or ligands.mol2 ) and configuration file (e.g
config.cfg) must be put in the "input" folder;
all output files (*_out.pdbqt, *.log and *.txt) will be generated
in the "output" folder.
# The hierarchy relationship of the above folders and files can be
depicted as follow: #
# ROOT
# |__ Group1 Group2 Group3 ... vina vina-1.2.sh
# |__ input
# | ___ *.pdbqt config.cfg
# |__ output
# ___ *_out.pdbqt *.log *.txt
#################################################################
這里面要搞清楚程序放的位置關系:
例如:
sh vina-1.4.sh UCSD/ &
這表明 vina-1.4.sh 和vina這2個程序
放在UCSD這個文件外面,UCSD文件里面有個input文件,里面放的是第一步產生的.cfg文件、蛋白的PDBQT文件,以及第二步產生的小分子的PDBQT文件
運行命令,即可篩選~
這樣就在input文件夾同級產生output文件夾,里面就是對接結果,有幾個文件解釋一下:
all.log : 所有對接進度記錄;
all_xtr.txt :所有對接打分記錄
best_xtr.txt :所有小分子對接打分最好的記錄
4、結果分析:
Vina產生的pdbqt文件和Autodock產生的dlg文件,都可以經(jīng)過我們寫的腳本進行處理,實現(xiàn)數(shù)據(jù)整合,可以用商業(yè)軟件處理分析、可視化等等
#################################################################
arc-1.2.py [option] argument
Usage:
arc-1.2.py is an Autodock Result Converter that converts autodock
(AD4 or vina)
output file(s) to SDF file(s) via arcing DLG to PDBQT, modifying
PDBQT and
externally-generated SDF. Either an input file or a folder that
contains input
files is required. The output file or folder is optional, and
default name is
used if not specified.
Option:
-i [input_file] (*.dlg of AD4, *.pdbqt of vina or *.sdf) or
[input_directory]
-o [output_file] (default is *_out.pdbqt, *_mod.pdbqt or *_mod.sdf)
or
[output_directory]
-m [Num]; extract the [Num]th mode/model of each molecule
--mode alias of "-m"
--model alias of "-m"
-h display this message
--help alias of "-h"
#################################################################
例子:
python arc-1.2.py -i ***.dlg -o ***.sdf
(對Autodock產生的dlg文件的處理),sdf文件很多軟件都可以打開
python arc-1.2.py -i input_directory -o ***.sdf(對Vina結果進行處理)
除此之外,還可以提取打分最好的分子,排序,等等功能
以上是我對Vina虛擬篩選的總結以及如何使用腳本程序來輔助智能化前處理和結果的后分析,花了一天的時間來準備這個,所有本帖提供的程序
都經(jīng)過一天的測試,希望對大家有所幫助!
我要謝謝跟著我的一個本科生(SheldonCelan),提供技術支持!
有什么問題可以P me~
QQ:42131899
Phone:15626172279
E-mail:Babybluechina@gmail.com
分享:
喜歡
0
贈金筆
加載中,請稍候......
評論加載中,請稍候...
發(fā)評論
登錄名: 密碼: 找回密碼 注冊記住登錄狀態(tài)
昵???稱:
發(fā)評論
以上網(wǎng)友發(fā)言只代表其個人觀點,不代表新浪網(wǎng)的觀點或立場。
總結
以上是生活随笔為你收集整理的python中cock什么意思_[转载]原创脚本逐步实现Autodcock-Vina的虚拟筛选及筛选后分析...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++ struct和class的区别
- 下一篇: python后台截屏_Python实现屏