Conda安装Mgltools
MGLTools 是Autodock对接程序配套使用的工具. 内含大量对接前处理, 对接结果分析, 对接可视化工具等. 其主要内容包括AutoDockTools(ADT, 对接前端可视化), PMV(分子viewer), Vision (类似于PP的交互建设计算方法)工具.
该程序已经停止更新很久很久了. 即使是MGLTools 1.5.7RC1, 也已经是2013年版本, 而更多使用的是2012年发布的1.5.6版本的稳定版. 详细的信息可参考官方Documentation
Conda的bioconda 分支含有mgltools 1.5.6 版本. 不限制Py2/3. 但实际上安装需谨慎!! 因为, 这个包依赖的py2.5.6版, 自动安装后会生成2.5.6版 python覆盖掉你conda原有的python!!!!
因此, 如果实在要安装, 建议使用新环境进行.
conda create -n mgltools python=2.7
conda activate mgltools
# 安装mgltools包
conda install -c bioconda mgltools
python
# import MolKit
注意我这里使用的是Py2.7, 其安装后会在envs/mgltools
中建立MGLToolsPckgs
文件夹, 内含实际MGLTools的依赖. 这个包的内容2.7版是无法加载的. 只有用2.5.6版才能加载. 因此使用时建议保证该python环境是2.5.6 ( 但现在还有多少包支持这么老的Py2呢...Py2.7都要退役了....)
更好的方法是, 安装一个简化包autodocktools-prepare, 该包只含有部分受体和配体处理所必须依赖的库. 因此体积更小, 另外也支持py2.7 (只支持linux和macos. 不支持py3).
conda create -n adtprep python=2.7
conda activate adtprep
# 安装包
conda install -c insilichem autodocktools-prepare
python
# import MolKit
两种方法安装后都会在执行路径中建立prepare_receptor4.py
和prepare_ligand4.py
的可执行脚本. 这也是这个包最重要的功能了, 不需要你细致去了解ADT包内部.
后面只讨论autodocktools-prepare.
成功安装后, 会在anaconda3/envs/preparelig/lib/python2.7/site-packages
内建立一些相关包, 包括:
-
AutoDockTools
, ADT最重要的包, 内含大量工具. 日后可以继续深入研究. -
MolKit
, cMolKit
-
PyBabel
: PyBabel mglutil
-
bhtree
: 一个基于c库的SWIG生成的包.
这个最重要的处理蛋白和配体成pdbqt
格式的脚本其实坐落在AutoDockTools/Utilities24
当中, 里面还有prepare_flexreceptor4.py
脚本, pdbqt_to_pdb.py
脚本, superpose_molecules.py
脚本, process_VSResults.py
和process_VinaResult.py
脚本等等.
如果想直接使用这些工具, 可以将该目录加入搜索路径. 但是别忘了, 这个库是依赖Py2.7的. 如果环境Py是3.X, 那么就不能使用. 一个解决办法是使用conda的环境. 另外一个更方便的办法是, 使其执行程序改为相应conda环境中的python. 只需要改变脚本的第一行:
#! /Users/hom/anaconda3/envs/preparelig/bin/python
将想用的脚本复制到可执行的搜索目录, 改变第一行为类似上述以后, 就可以直接运行prepare_ligand4.py
啦.
后记:adtprep这个包安装后使用过程中发现有各种问题,有些原子用mgltools处理后具有电荷,而adtprep处理后则电荷0。。。而且不容易被发现,因此还是建议使用mgltools包,虽然也有bug但少点。等我有空了发起全面的转py3计划并帮其debug吧
Enjoy~