开源分子对接程序rDock的安装及使用流程

欢迎浏览我的CSND博客! Blockbuater_drug …点击进入

前言

本文介绍开源分子对接程序rDock在Linux Ubuntu 22.04系统上的conda安装、编译安装过程及程序使用流程。


一、rDock是什么?

在这里插入图片描述rDock来源
rDock是一个快速、多功能的开源对接程序,可用于将小分子与蛋白质和核酸对接。它专为高通量虚拟筛选(HTVS)活动和结合模式预测研究而设计。

rDock开发历史:
rDock程序由RiboTargets(后来的Vernalis(R&D)Ltd)的软件团队于1998年至2006年开发,命名为RiboDock
2006年,该软件被授权给约克大学进行维护和分发,改名称为rDock
2012年,Vernalis和约克大学同意将该程序作为开源软件发布(rDock)。此版本在GNU-LGPL 3.0版下授权,并得到巴塞罗那大学的支持。
2014年开发一度停滞。2019年,RxTx公司开发了一个rDock分支,命名为RxDock

rDock的主要组件现在包括针对蛋白质和RNA靶标验证的快速分子间评分功能(范德华、极性、去溶剂化)、基于遗传算法的随机搜索引擎、各种外部基于结构的药物发现(SBDD)衍生的约束条件(tethered模板、药效团、noe距离约束)以及基于遗传编程的新型对接后过滤。提供了各种脚本来执行自动验证实验和启动虚拟筛选活动。

rDock主要用C++编写,辅助脚本和程序用C++、perl或python语言编写。完整的rDock软件包需要不到50 MB的硬盘空间,并且它可以在所有Linux计算机上编译(目前仅限Linux系统)。

由于它的设计和实现,它可以安装在计算集群上,并部署在无限数量的CPU上,使HTVS活动可以在几天内进行。
除了主对接程序外,rDock软件包还提供了一套工具和脚本,以方便输入文件的准备以及结果的后处理和分析,极大地拓展了用户需求:

(1)对接准备:
使用已知的活性区域或用户提供的3D坐标定义结合位点。允许受体中-OH和-NH2侧链旋转。添加明确的溶剂分子和结构水分子。提供药效团约束作为指导对接的范围。

(2)输入文件的预处理
定义用于执行tethered docking的常见配体结构(需要OpenBabel python绑定)。排序、过滤或拆分配体文件以利于并行化。查找HTVS协议以优化计算时间。预先计算网格以减少后续计算时间。

(3)结果的后处理和分析
以表格形式总结结果。排序、筛选、合并或拆分结果文件。使用参考结构计算RMSD,考虑内部对称性(需要OpenBabel python绑定)。

(4)结合模式预测
预测配体如何与给定分子结合。蛋白质的ASTEX非冗余测试集和RNA的DOCK和rDock测试集已用于验证rDock并将其与其他程序进行比较。

(5)HTVS
通过利用计算机的能力,在短时间内运行数百万种化合物。易于在相对无限的CPU中并行化,以优化HTVS运行时间。DUD集已用于验证rDock并将其性能与其他参考对接程序进行比较。

二、rDock两种安装方法

自从2022年以来,可以通过conda由bioconda源安装rDock到conda环境(方式一),如果安装不成功,可以尝试编译安装(方式二)。
为了更好的适配系统运行,建议采用后者方法安装。

安装方式一:通过conda安装

在这里插入图片描述
建立conda环境,笔者使用的python版本为3.12.2。

conda create -n rdock_env

进入环境,通过conda安装gcc:

conda activate rdock_env
conda install gcc=13 -c conda-forge
#以上不成功,可以尝试:
conda install conda-forge::libgcc-ng

通过conda安装rdock:

conda install acellera::rdock
#以上不成功,可以尝试
conda install -c bioconda rdock

安装方式二:rDock编译安装

1. 安装前准备

rDock是作为源代码提供的,所以必须在使用它之前编译二进制文件。rDock主要是在Linux操作系统上开发的,最近使用的是在openSuSE 11.3下的GNU g++编译器。几乎不需要修改,这些代码可以在其他Linux发行版下编译和运行。
截至2013年11月,它已经在32位和64位系统架构的最新Ubuntu和openSuSE版本中进行了测试,并且可以在不修改任何代码的情况下编译。

安装需要的包
在安装之前,请确保您的计算机上安装了以下软件包。

sudo apt update
sudo apt install gcc g++ make git libcppunit-dev csh build-essential

2. 下载安装包及安装

下载最新版的rDock,安装步骤如下(/path/to/install/rDock):

git clone https://github.com/CBDD/rDock.git
cd rDock
make
make test
make PREFIX=/path/to/install/rDock install

3. 设置环境变量并生效

打开 ~/.bashrc, 添加以下内容:

export RBT_ROOT=/path/to/install/rDock
export PATH=$RBT_ROOT/bin:$PATH
export LD_LIBRARY_PATH=$RBT_ROOT/lib:$LD_LIBRARY_PATH

运行source ~/.bashrc,使环境变量生效。

三、 rDock使用流程

rDock 的基本对接步骤包括3步:定义对接体系、产生对接位点和分子对接。

Step 1. 通过prm文件定义对接体系

以下是ASTEX数据集的.prm文件示例:

RBT_PARAMETER_FILE_V1.00
TITLE 1sj0_ASTEXRECEPTOR_FILE 1sj0_rdock.mol2
RECEPTOR_FLEX 3.0##################################################################
### CAVITY DEFINITION: REFERENCE LIGAND METHOD
##################################################################
SECTION MAPPERSITE_MAPPER RbtLigandSiteMapperREF_MOL 1sj0_ligand.sdRADIUS 6.0SMALL_SPHERE 1.0MIN_VOLUME 100MAX_CAVITIES 1VOL_INCR 0.0GRIDSTEP 0.5
END_SECTION################################################################
# CAVITY DEFINITION: TWO SPHERES METHOD
################################################################
#SECTION MAPPER
#    SITE_MAPPER RbtSphereSiteMapper
##HETATM 2815  O   HOH   756      37.266 -20.992  -4.910  0.90 24.86      1CSE2940
#    CENTER (7.185,8.250,22.649)
#    RADIUS 15.0
#    SMALL_SPHERE 1.5
#    LARGE_SPHERE 6.0
#    MAX_CAVITIES 1
#END_SECTION#################################
#CAVITY RESTRAINT PENALTY
#################################
SECTION CAVITYSCORING_FUNCTION RbtCavityGridSFWEIGHT 1.0
END_SECTION#################################
## PHARMACOPHORIC RESTRAINTS
#################################
#SECTION PHARMA
#    SCORING_FUNCTION RbtPharmaSF
#    WEIGHT 1.0
#    CONSTRAINTS_FILE pharma_cdk2.const
#   OPTIONAL_FILE optional.const
#   NOPT 3
#   WRITE_ERRORS TRUE
#END_SECTION

将以上内容保存为.prm文件,受体结构mol 2文件为1sj0_rdock.mol2,结合位点配体文件为1sj0_ligand.sd。
注意事项:
必须对受体“.mol2”文件进行质子化、加电荷。选择什么样的软件来处理取决于用户。作为建议,通常使用MOE或者Maestro。

Step 2. 产生对接位点

以上文件准备就绪,rbcavity命令将可用于生成对接空腔:

rbcavity -W -d -r <PRMFILE>

使用-d参数将生成网格“.grd”文件。该文件可以在pymol中查看:

pymol<RECEPTOR>. mol 2<LIGAND>.sd<GRID>.grd

在命令行输入以下:

isomesh cavity, <GRID>.grd, 0.99

Step 3. 分子对接

定义并生成空腔后,可以使用以下命令直接运行,对每个配体运行50次的rDock:
注意事项:
“.prm”文件、受体、参比配体和“.as”腔体文件必须位于工作目录中或由环境变量“RBT_HOME”指向的文件夹。

rbdock -i <INPUT>.sd -o <OUTPUT> -r <PRMFILE> -p dock.prm -n 50

总结

本文介绍了rDock的两种安装方式及使用流程,为开始使用rDock的朋友提供参考以及快速入门指导。
后续系列文章将结合案例详细介绍rDock使用。
欢迎感兴趣的朋友留言讨论,批评指正。

参考资料

  1. https://rdock.github.io/
  2. https://rdock.github.io/documentation/

欢迎浏览我的CSND博客! Blockbuater_drug …点击进入

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/262566.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

springmvc+mybatis+springboot航空飞机订票售票系统_f48cp

互联网发展的越来越快了&#xff0c;在当下社会节点&#xff0c;人们也开始越来越依赖互联网。通过互联网信息和数据&#xff0c;极大地满足用户要求[5]。飞机订票系统使用了B/S模式&#xff0c;并且不需要安装第三方插件&#xff0c;他们甚至能直接在电脑上随机随地实现飞机订…

【分享】关于MAX232一点心得

MAX232 DIP16封装现主要有这些型号&#xff1a;MAX232CPE、MAX232EPE。 下面对MAX232的型号标识进行解析&#xff1a; ①、MAX232后缀第一个字母&#xff0c;表示应用级别。带“C”&#xff1a;商业级&#xff1b;带“E”&#xff1a;工业级。 例&#xff1a;MAX232CPE&…

函数栈帧的创建及销毁(超详解)

目录 1.预备知识 1.1内存区的划分 1.2认识相关寄存器和汇编指令 1.2.1寄存器 1.2.2相关汇编指令 2.测试前 2.1测试代码及环境 2.2 main函数也是被其他函数调用的 3.函数栈帧的创建 4.进入函数内部 5.形参与实参 6.call/jump add函数 7.函数栈帧的销毁 7.1保存…

书生·浦语大模型实战营第二节课作业

使用 InternLM-Chat-7B 模型生成 300 字的小故事&#xff08;基础作业1&#xff09;。 熟悉 hugging face 下载功能&#xff0c;使用 huggingface_hub python 包&#xff0c;下载 InternLM-20B 的 config.json 文件到本地&#xff08;基础作业2&#xff09;。 下载过程 进阶…

linux下执行文件包含^M,将window文件格式内容转为linux格式

查看文件内容 cat -v jvm_options 报错信息 ./bin/install-plugin.sh: /bigdata/opt/s/seatunnelsgg/apache-seatunnel-2.3.4/mvnw: /bin/sh^M: bad interpreter: No such file or directory install connector : connector-selectdb-cloud安装工具 yum install -y dos2uni…

西门子S7-1500作为智能设备共享功能

本章节介绍了共享设备的功能&#xff0c;优势&#xff0c;使用要求&#xff0c;使用规则&#xff0c;如何将智能设备作为共享设备&#xff0c;实现一个智能设备同时与2个IO控制器进行通信的示例&#xff0c;以及常见问题。 一、共享设备功能概述 信号模块可以被不同的IO控制器…

「Kafka」监控、集成篇

Kafka-Eagle 监控 Kafka-Eagle 框架可以监控 Kafka 集群的整体运行情况&#xff0c;在生产环境中经常使用。 MySQL环境准备 Kafka-Eagle 的安装依赖于 MySQL&#xff0c;MySQL 主要用来存储可视化展示的数据。 安装步骤参考&#xff1a;P61 尚硅谷 kafka监控_MySQL环境准备 …

如何在同一个module里面集成多个数据库的多张表数据

确保本公司数据安全&#xff0c;通常对数据的管理采取很多措施进行隔离访问。 但是&#xff0c;Mendix应怎样访问散布于异地的多个数据库呢&#xff1f; 前几期我们介绍过出海跨境的大企业对于Mendix的技术、人才的诉求后&#xff0c;陆陆续续有其他客户希望更聚焦具体的实际场…

数据结构链表力扣例题AC(4)——代码以及思路记录

21. 合并两个有序链表 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 AC struct ListNode* mergeTwoLists(struct ListNode* list1, struct ListNode* list2) {if(list1 NULL){return list2;}if(list2 NULL){return l…

alibabacloud学习笔记06(小滴课堂)

讲Sentinel流量控制详细操作 基于并发线程进行限流配置实操 在浏览器打开快速刷新会报错 基于并发线程进行限流配置实操 讲解 微服务高可用利器Sentinel熔断降级规则 讲解服务调用常见的熔断状态和恢复 讲解服务调用熔断例子 我们写一个带异常的接口&#xff1a;

正交匹配追踪(Orthogonal Matching Pursuit, OMP)的MATLAB实现

压缩感知&#xff08;Compressed Sensing, CS&#xff09;是一种利用稀疏信号的先验知识&#xff0c;用远少于奈奎斯特采样定理要求的样本数目恢复整个信号的技术。正交匹配追踪&#xff08;Orthogonal Matching Pursuit, OMP&#xff09;是一种常见的贪婪算法&#xff08;Gree…

OCPP 1.6 接入实现文档

一、简介 OCPP&#xff08;Open Charge Point Protocol&#xff09;是一个开放的通信协议&#xff0c;用于充电站&#xff08;Charge Point&#xff09;与中央系统&#xff08;Central System&#xff0c;如充电站管理系统或服务提供商平台&#xff09;之间的通讯。本篇文档将…

谷歌搜索引擎关键词优化,竞价排名怎么做?大舍传媒

公司 大舍传媒成立于2005年&#xff0c;并从那时开始专注于谷歌搜索引擎优化&#xff08;SEO&#xff09;。如今&#xff0c;我们已经拥有了十八年的海外数字营销经验。我们为全球数千个国际知名品牌客户提供服务&#xff0c;是一家专注于技术的公司。 谷歌排名成果 在谷歌&…

Windows系统中定时执行python脚本

背景&#xff1a;本地Windows系统指定目录下会有文件的修改新增&#xff0c;这些变化的文件需要定时的被上传到git仓库中&#xff0c;这样不需要每次变更手动上传了。 首先编写一个检测文件夹下文件变化并且上传git仓库的python脚本(确保你已经在E:\edc_workspace\data_edc_et…

10.vue学习笔记(组件数据传递-props回调函数子传父+透传Attributes+插槽slot)

文章目录 1.组件数据传递2.透传Attributes&#xff08;了解&#xff09;禁用Attributes继承 3.插槽slot 1.组件数据传递 我们之前讲解过了组件之间的数据传递&#xff0c;props 和 自定义事件 两种方式 props&#xff1a;父传子 自定义事件&#xff1a;子传父 props通过额外方…

dell戴尔电脑灵越系列Inspiron 15 3520原厂Win11系统中文版/英文版

Dell戴尔笔记本灵越3520原装出厂Windows11系统包&#xff0c;恢复出厂开箱预装OEM系统 链接&#xff1a;https://pan.baidu.com/s/1mMOAnvXz5NCDO_KImHR5gQ?pwd3nvw 提取码&#xff1a;3nvw 原厂系统自带所有驱动、出厂主题壁纸、系统属性联机支持标志、Office办公软件、MyD…

2024.2.22 C++QT 作业

思维导图 练习题 1>完善对话框&#xff0c;点击登录对话框&#xff0c;如果账号和密码匹配&#xff0c;则弹出信息对话框&#xff0c;给出提示”登录成功“&#xff0c;提供一个Ok按钮&#xff0c;用户点击Ok后&#xff0c;关闭登录界面&#xff0c;跳转到其他界面。如果账…

Redis 工具类 与 Redis 布隆过滤器

Redis 工具类 1. 核心依赖 <!--redis--> <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency><groupId>com.google.guava…

leetcode(算法) 83.删除排序链表中的重复元素(python版)

需求 给定一个已排序的链表的头 head &#xff0c; 删除所有重复的元素&#xff0c;使每个元素只出现一次 。返回 已排序的链表 。 示例 1&#xff1a; 输入&#xff1a;head [1,1,2] 输出&#xff1a;[1,2] 示例 2&#xff1a; 输入&#xff1a;head [1,1,2,3,3] 输出&…

【Unity3D】ASE制作天空盒

找到官方shader并分析 下载对应资源包找到\DefaultResourcesExtra\Skybox-Cubed.shader找到\CGIncludes\UnityCG.cginc观察变量, 观察tag, 观察代码 需要注意的内容 ASE要处理的内容 核心修改 添加一个Custom Expression节点 code内容为: return DecodeHDR(In0, In1);outp…