没有项目描述
hotspots的Python项目详细描述
热点API
热点api是片段热点映射项目的python包, 一种基于知识的确定小分子结合“热点”的方法。
有关此方法的详细信息:
入门
尽管热点api是公开可用的,但它依赖于csd PythonAPI——一个商业软件包。
如果你是一个学术用户,你的机构很可能会有许可证。 如果您不确定您是否有驾照或想查询 购买一台,请联系support@ccdc.cam.ac.uk。
请注意,这是一个学术项目,因此我们欢迎 反馈、贡献和合作。如果你有任何疑问 请与我们联系(pcurran@ccdc.cam.ac.uk)!
安装
1安装CSDS 2019
csds可从here获得。
你需要一个有效的网站号码和确认码,这将是 在您购买CSDS2019许可证时通过电子邮件发送给您。
2安装ghecom
ghecom可从here获得。
“Ghecom的源代码是用C编写的,在 Linux环境(实际上在Fedora内核上)。对于安装, 你需要gcc编译器。如果您不想使用它,请更改 “src”目录中的“makefile”。
下载文件ghecom-src-[date].tar.gz
文件。
tar zxvf ghecom-src-[date].tar.gz
cd src
make
注意:可执行文件将位于父目录。
3创建Conda环境(推荐)
conda create -n hotspots python=2.7
4创建安装rdkit和csd python api
安装RDKit:
conda install -n hotspots -c rdkit rdkit
最新的独立csd python api安装程序可从here获得。
安装python csd api:
unzip csd-python-api-2.1.0-linux-64-py2.7-conda
conda install -n hotspots -c <path to ccdc_conda_channel> csd-python-api
5安装热点
安装热点v1.x.x:
a)最新的稳定版本(推荐给大多数用户):
conda activate hotspots
pip install hotspots
or
pip install https://github.com/prcurran/hotspots/archive/v1.x.x.zip
b)最新代码
mkdir ./hotspots_code
git clone git@github.com:prcurran/hotspots.git
conda activate hotspots
cd hotspots_code
pip install hotspots_code
注意:依赖项应该自动安装。如果没有,请参阅setup.py以了解包的要求!
热点API用法
开始激活你的水蟒环境并设置一些变量。
conda activate hotspots
export GHECOM_EXE=<path_to_GHECOM_executable>
export CSDHOME=<path_to_CSDS_installation>/CSD_2019
运行计算
蛋白质制备
第一步是确保你的蛋白质为 计算。这些结构应该用小分子质子化,并且 水被移走了。任何留在结构中的水或小分子 包括在计算中。
一种方法是使用csd python api:
from ccdc.protein import Protein
prot = Protein.from_file('protein.pdb')
prot.remove_all_waters()
prot.add_hydrogens()
for l in prot.ligands:
prot.remove_ligand(l.identifier)
为了获得最佳结果,在提交蛋白质进行计算之前,请手动检查蛋白质。
计算片段热点映射
一旦蛋白质被制备,那么hotspots.calculation.Runner
对象可以是
用于执行计算:
from hotspots.calculation import Runner
runner = Runner()
# Only SuperStar jobs are parallelised (one job per processor). By default there are 3 jobs, when calculating charged interactions there are 5.
results = runner.from_protein(prot, nprocesses=3)
或者,为了快速计算,您可以提供一个pdb代码,我们将 按上述方法制备蛋白质:
runner = Runner()
results = runner.from_pdb("1hcl", nprocesses=3)
读写热点
写作
hotspots.hs_io
模块处理两个hotspots.calculation.results
的读写。
以及hotspots.best_volume.Extractor
对象。输出.grd
文件可能会变得很大,
但具有高度可压缩性,因此默认情况下,结果会写入.zip
存档,
与pymol运行脚本一起可视化输出。
from hotspots.hs_io import HotspotWriter
out_dir = "results/pdb1"
# Creates "results/pdb1/out.zip"
with HotspotWriter(out_dir) as writer:
writer.write(results)
读数
如果要重新查看以前计算的结果,可以加载
out.zip
直接存档到hotspots.calculation.results
实例:
from hotspots.hs_io import HotspotReader
results = HotspotReader('results/pdb1/out.zip').read()
使用输出
虽然片段热点地图提供了有用的视觉指南,但基于网格的数据 可用于其他sbdd分析。
评分
一个例子是给蛋白质或小分子的原子打分。
具体操作如下:
from ccdc.protein import Protein
from ccdc.io import MoleculeReader, MoleculeWriter
from hotspots.calculation import Runner
r = Runner()
prot = Protein.from_file("1hcl.pdb") # prepared protein
hs = r.from_protein(prot)
# score molecule
mol = MoleculeReader("mol.mol2")
scored_mol = hs.score(mol)
with MoleculeWriter("score_mol.mol2") as w:
w.write(scored_mol)
# score protein
scored_prot = hs.score(hs.prot)
with MoleculeWriter("scored_prot.mol2") as w:
w.write(scored_prot)
要了解使用热点api的其他方法,请参见示例 目录并读取我们的api文档时代