先写简略版,以后再详细写。

1. 对输入结构进行预处理(refine)

$> relax.default.linuxgccrelease -in:file:s input_files/from_rcsb/1qys.pdb @flag_input_relax  

flag_input_relax:

-nstruct 

-relax:constrain_relax_to_start_coords
-relax:ramp_constraints false -ex1
-ex2 -use_input_sc
-flip_HNQ
-no_optH false

2. local dock

执行局部对接之前应手动把受体和配体放到一个pdb文件中,用不同的链标注(例如A,B),相距~10A,并且要有口袋的先验知识,把受体配体按照先验知识对好朝向。

使用以下两个option控制局部对接:

-partners A_B
-dock_pert

当受体链和配体链同时有多条时,例如AB,LH,则相应的改变option:

-partners LH_AB

运行docking_protocol命令:

$> $ROSETTA3/main/source/bin/docking_protocol.linuxgccrelease @flag_local_docking

flag_local_docking (最好-nstruct设置在500及以上):

-in:file:s input_files/col_complex.pdb
-in:file:native input_files/1v74.pdb
-unboundrot input_files/col_complex.pdb -nstruct -partners A_B
-dock_pert -ex1
-ex2aro -out:path:all output_files/local_dock
-out:suffix _local_dock

3. 对得到的对接结果进行local refine

得到结果后,对结果进行relax前,先用docking_protocol的local refine对蛋白界面氨基酸进行优化

相对于local dock 的flag文件,local refine只有下面这两个选项不同:

-docking_local_refine
-use_input_sc

运行local refine命令:

$> $ROSETTA3/main/source/bin/docking_protocol.linuxgccrelease @flag_local_refine

flag_local_refine:

-in:file:s input_files/1v74.pdb

-nstruct 

-docking_local_refine
-use_input_sc -ex1
-ex2aro -out:file:fullatom
-out:path:all output_files
-out:suffix _local_refine

运行完local refine后,就可以使用relax对对接结果进行优化处理了,命令如第一步使用relax预处理。

4. global dock

global dock适用于没有蛋白相互作用的先验知识,不知道结合位点,基本原理是对受体和配体均随即取样,相对于local dock来说,盲目性较大,运行时间也较长。

如下三个参数定义受体与配体的随机取样:

-spin
-randomize1
-randomize2

-randomize1 表示对受体(蛋白1)进行随机取样, -randomize2 表示对配体(蛋白2)进行随机取样.

global dock的运行命令如下:

$> $ROSETTA3/main/source/bin/docking_protocol.linuxgccrelease @flag_global_docking

其中,flag_global_docking:

-in:file:s input_files/col_complex.pdb
-in:file:native input_files/1v74.pdb
-unboundrot input_files/col_complex.pdb -nstruct -partners A_B
-dock_pert
-spin
-randomize1
-randomize2 -ex1
-ex2aro -out:path:all output_files
-out:suffix _global_dock

相对于local dock,主要是上面提到的三个参数的变化,因global dock的随机性较强,为达到收敛的效果,建议设置-nstruct 10000-100000。

5. Docking flexible proteins

之前提到的蛋白对接,蛋白的骨架都是固定的,对于柔性蛋白对接,rosetta采用的是使用centroid模式对受体和配体进行构象采样,以受体或配体的构象集(ensemble)作为对接的输入,至于蛋白的构象集,可以使用非限制性的relax来实现,因为relax本身就是一个对蛋白结构进行采样(sample)程序。

首先,在做柔性对接前,我们要按以下格式分别准备受体及配体的构象列表,名词为xxx_ensemblelist,这个列表类似于蛋白列表输入:

xxx_ensemblelist:

input_files/COL_D_ensemble/COL_D_0001.pdb
input_files/COL_D_ensemble/COL_D_0002.pdb
input_files/COL_D_ensemble/COL_D_0003.pdb

分别准备好两个列表后,使用 -ensemble1 和 -ensemble2 两个参数,将pdb列表导入到程序中:

-ensemble1 COL_D_ensemblelist
-ensemble2 IMM_D_ensemblelist

在运行dock之前,我们首先需要对两蛋白集进行prepacking,此步用于对两蛋白进行处理,方便下一步dock的进行:

$> $ROSETTA3/main/source/bin/docking_prepack_protocol.linuxgccrelease @flag_ensemble_prepack

flag_ensemble_prepack:

-in:file:s input_files/col_complex.pdb
-in:file:native input_files/1v74.pdb
-unboundrot input_files/col_complex.pdb -nstruct -partners A_B -ensemble1 COL_D_ensemblelist
-ensemble2 IMM_D_ensemblelist -ex1
-ex2aro -out:path:all output_files
-out:suffix _ensemble_prepack

prepack运行完毕,xxx_ensemblelist会被重新编辑,更改后的格式如下:

input_files/COL_D_ensemble/COL_D_0001.pdb.ppk
input_files/COL_D_ensemble/COL_D_0002.pdb.ppk
input_files/COL_D_ensemble/COL_D_0003.pdb.ppk
0.77058 1.00377
-93.3588
-94.2715
-93.9065

prepack运行后,就可以执行柔性对接了,对接命令为:

$> $ROSETTA3/main/source/bin/docking_protocol.linuxgccrelease @flag_ensemble_docking

flag_ensemble_docking:

-in:file:s input_files/col_complex.pdb
-in:file:native input_files/1v74.pdb
-unboundrot input_files/col_complex.pdb -nstruct -partners A_B
-dock_pert -ensemble1 COL_D_ensemblelist
-ensemble2 IMM_D_ensemblelist -ex1
-ex2aro -out:path:all output_files
-out:suffix _ensemble_dock

柔性对接的结果好坏取决于构象取样的多少,同时,伴随着构象数增多,程序运行时间也会变长,为保证效果,推荐-nstruct设置大于5000.

6. Symmetric docking

7. 对接结构分析

典型的对接结果的score.sc如下所示:

SEQUENCE:
SCORE: total_score rms Fnat I_sc Irms cen_dock_ens_conf cen_rms conf_num1 conf_num2 conf_score dock_ens_conf1 dock_ens_conf2 dslf_ca_dih dslf_cs_ang dslf_ss_dih dslf_ss_dst fa_atr fa_dun fa_elec fa_pair fa_rep fa_sol hbond_bb_sc hbond_lr_bb hbond_sc hbond_sr_bb interchain_contact interchain_env interchain_pair interchain_vdw st_rmsd description
SCORE: -202.141 13.143 0.061 -3.086 5.015 -1.004 14.583 1.000 1.000 -25.732 -93.359 -83.050 0.000 0.000 0.000 0.000 -326.487 12.899 -3.158 -8.467 8.982 139.078 -3.968 -4.390 -2.692 -13.937 -20.000 -23.791 -2.002 0.357 7.729 col_complex_ensemble_dock_0001

其中,我们在关注total_score的同时,应该更多的关注I_sc,这一项描述的是蛋白界面相互作用得分(interface score,-2~-10),而且I_sc仅限于体系内比较,对于不同体系的蛋白,I_sc没有比较意义。

ROSETTA使用技巧随笔--蛋白蛋白对接的更多相关文章

  1. ROSETTA使用技巧随笔--RosettaLigand Docking

    时间不充分,简单记录下自己实践过程中的做法: 1. 首先,非标准残基都需要转换成.params文件,使用 <path-to-Rosetta>/main/source/scripts/pyt ...

  2. ROSETTA使用技巧随笔--relax使用

    Purpose: 主要说目的,relax的作用就是对一个给定的蛋白进行构象搜索,寻找与WT相似并能量低于WT的结构,既包含packer又包含minimizer.主要的应用在对一个结构构象进行取样,获得 ...

  3. ROSETTA使用技巧随笔--PyMOL实时观测ROSETTA模拟过程中的结构变化

    没有梦想的人,就是一只咸鱼,像我,就有一个梦想,就是让蛋白模拟过程变成动画,动起来! 虽然MD中有很多方法可以方模拟过程像动画一样播放出来,但是我一直想在ROSETTA中也找一个这样的功能,这不,我发 ...

  4. ROSETTA使用技巧随笔--控制Log输出等级

    一般运行ROSETTA,屏幕上的Log很多,而且很复杂,让我们看着眼晕,现在我们可以通过控制Log等级来控制屏幕上输出的东西.  Integer Level 0 Fatal 100 Error 200 ...

  5. ROSETTA使用技巧随笔--Full Atom Representation和Centroid Representation

    Full Atom Representation vs Centroid Representation Full Atom Representation即全原子标识,氨基酸残基的所有相关原子,均原封不 ...

  6. ROSETTA使用技巧随笔--score.sc处理

    对score.sc的便利操作: $ sort -n -k2 example_score_file.sc 此命令会以score文件的第二列进行排序(sort -n -k2,-n表示对数值型数据排序,可用 ...

  7. RF常用技巧随笔

    合并xml输出文件: pybot --outputdir d:\test --log log1.html --report report1.html --output output1.xml -T d ...

  8. angular小技巧随笔

    1. 重新刷新页面 同页面切换状态: $state.go('tab.index', {inviteId:inviteId}); self.location.reload();

  9. JavaScript小技巧随笔

    1. 在用||做条件判断时,如果情况较多,我们可以考虑是否能够用Array.includes()方法代替 var conditionArray = [ test1, test2, test3 ]; i ...

随机推荐

  1. 如何查看目前正在使用的Windows10是哪个版本?

    其实相当的简单: win+R 输入winver,就会出现如下图的信息: 就能看到版本信息了

  2. 关于mysql远程连接

    windows环境下简单,这里讲linux环境下的 首先,linux系统有一道防火墙 我用的是ubutun16.04LTS 要用ufw工具(命令)开启3306端口(ufw allow ) (如果安装的 ...

  3. tar命令参数详解

    命令总览:tar [-]A --catenate --concatenate | c --create | d --diff --compare | r --append | t --list | u ...

  4. [daily][cgroup] 使用cgroup限制进程的CPU占用

    参考: https://segmentfault.com/a/1190000008323952 1. 找到cgroup设置的地方. [root@D128 ~]# mount -l |grep cpu ...

  5. [X][xrandr][archlinux] 手动调整显示器分辨率

    有一些时候,电脑并不能正确的识别出显示器的最大分辨率,这有可能是软件的原因,硬件的原因,显示器的原因,VGA线的原因等其他原因. 我遇到的情况,是开机时候连着VGA的话,就可以正确识别.如果使用中间进 ...

  6. 提取json响应结果值_后置处理器JSON Extractor

    Json响应格式 json串中{}表示对象,[]表示数组 JSON Extractor使用json path表达式匹配,可以一次取多个变量值. $表示响应的根对象. 取子对象或对象的属性用. 取数组里 ...

  7. shiro默认过滤器

  8. BouncyCastle 密钥转换 - Java

    转自: https://blog.csdn.net/a351945755/article/details/63707040 1. PKCS#8 转 PKCS#1 You will need Bounc ...

  9. eclipse几种常见问题的解决

    build项目时出现卡死现象的解决方案 场景:在使用使用Eclipse编辑文件保存时或者build项目时,经常出现卡死现象,此时即便杀死eclipse进程重启还是依然出现这种现象. 原因:eclips ...

  10. winform接收全局的快捷键

    public class NativeWIN32 { public NativeWIN32() { } /* ------- using WIN32 Windows API in a C# appli ...