简介

Relax在Rosetta中主要用于进行松弛(Relax)结构的工具。其通过交替使用packer(Rosetta进行侧链优化工具)和minimizer(Rosetta能量最小化工具)来获得结构的最低能量打分的变体。其通常用于对两个不同的结构之间简单比较。因此建议若目的是比较感兴趣的结构,可以运行松弛这些结构。

演示

位于<path_to_Rosetta_directory>/demos/tutorials/Relax_Tutorial

我们首先在Relax_Tutorial中拷贝所有内容到实验文件夹下(个人不建议直接在demo下直接运行,比较乱,不易于代码整理)

1
2
3
#score_jd2.mpi.linuxgccrelease 更具编译方式不同会有不同,我这里是编译的多线程
#若为普通的则为default
$ROSETTA3/bin/score_jd2.mpi.linuxgccrelease -s 1ubq.pdb -out:suffix _crystal @crystal_score_flags

若需要保留日志记录可以简单的在末尾加>1.log。将会获得score_crystal.sc文件。记录了该晶体结构的打分。
现在我们来运行Relax

1
$ROSETTA3/bin/relax.mpi.linuxgccrelease -s 1ubq.pdb -out:suffix _relaxed @general_relax_flags

我们来看设置文件内有什么

1
2
3
4
-nstruct 2
-relax:default_repeats 5
-out:path:pdb ./tutorial_output
-out:path:score ./expected_output

-nstruct 2表示运行两个独立的relax。-relax:range:cycles 5表示运行侧链重构和最小化 5个循环。-out:path:pdb表示输出结果路径,打分函数输出路径-out:path:pdb

通过比较我们可以发现得分相差显著,但是结构上变化并不大,一般300-500的得分降低表明relaxation很好的收敛。

结构对比如下图:

图1
图1

为了进一步探索可以改变“N” 1-10,然后看一下不同

1
$ROSETTA3/bin/relax.mpi.linuxclangrelease -s 1ubq.pdb -out:suffix _N_relax_cycles -relax:default_repeats N -nstruct 10 -out:path:pdb ./tutorial_output -out:path:score ./expected_output

一般实际应用中5-15个循环即可,5个循环为默认值。

Relax范围限制

Restricting the conformations that Relax can sample

这个标题不知道用英文怎么说好,大致的含义就是让其部分不松弛,部分松弛。其可以通过[MoveMap]达到目的。

1
-in:file:movemap

也可以使用选项代替指定的MoveMap

1
2
3
-relax:chi_move false
-relax:bb_move false
-relax:jump_move false

顾名思义,分别关闭侧链,骨架和结构域间的运动。其非常有用,例如阻止设计蛋白和相互结合蛋白之间的运动。