生信猿生物信息学从零开始学

Rosetta入门必读FAQ

2019-05-09  本文已影响3人  ROSETTA研习社

本文将以FAQ的形式来迅速浏览常见的Rosetta入门最主要最关心的问题。

补充阅读材料-官方FAQ: https://www.rosettacommons.org/docs/latest/getting_started/FAQ

Q1 我应该选择哪个Linux系统来运行Rosetta比较好?

目前已有的Linux发行版有很多,但是Rosetta发布前只会在UbuntuCentOS7下进行编译测试(from Sergey Lyskov)。因此在选择系统时,应该优先选择这两个发行版。相对于Ubuntu,CentOS7的开发环境更加稳定,因此我建议尽量安装CentOS7,可以减少不必要的麻烦。

具体的CentOS7科学环境配置请参考本人的博文:https://awakenwu.github.io/2019/05/09/CentOS7配置科学计算环境/

Q2 我该如何安装和配置Rosetta?

Rosetta的安装方式主要有两种,一种是通过源代码编译安装,一种是直接下载Rosetta开发者预编译好的二进制版本(内含源代码)。对于新手入门,我建议直接下载预编译的版本,缺点就是下载包比较大,约~7GB。对于Linux比较熟悉的朋友可以选择自行编译安装Rosetta。

具体的Rosetta编译配置方法请参考本人的博文:https://awakenwu.github.io/2019/01/28/Rosetta安装教程/

Q3 我可以用Rosetta解决什么问题?

Rosetta是计算生物学皇冠上的一颗璀璨明珠(State of Art),也是人类通往全新蛋白设计的巴别塔。整个套件内设有各种分析、打分和建模的方法。

主要涉猎的领域:

Rosetta可以解决什么样的问题: https://www.rosettacommons.org/docs/latest/getting_started/Solving-a-Biological-Problem

参考Rosetta手册,app列表: https://www.rosettacommons.org/docs/latest/application_documentation/Application-Documentation

具体每个用法和模块可以参考2019年最新文献:https://www.preprints.org/manuscript/201904.0263/v1

Q4 我可以在哪里找到Rosetta应用?

在Rosetta整个框架内,每个经过测试的Protocol都会被整合成app,这些app跟我们手机上的应用是一样的,需要哪个就用哪个,每个app都具有独立的功能。大部分的app位于$ROSETTA/main/source/bin/这个文件夹里面。值得注意的是,app的命名与编译环境和方式有关系,app的通用命名规则是app.[mpi].system+complier+version的形式。

比如我在Mac系统下使用clang来编译,使用的并行版本。那么app的命名就是relax.mpi.macosclangrelease. relax是app的名字,mpi代表并行版本,macos是系统名,clang是编译器,release代表稳定发行版本的意思。如此类推,如果我在CentOS7下使用gcc编译,使用的串行版本,那么,app的命名就是relax.linuxgccrelease。

如果你是根据我的安装教程来配置Rosetta的话,可以通过以下命令来查询

ls $ROSETTA/main/source/bin/

运行结果:

查找app.png

Q5 我该如何去执行Rosetta app程序?

Rosetta不是exe应用,并不能像在windows系统下,双击后打开界面,然后用鼠标操作,我们所有操作必须通过命令行来执行。而一条执行命令主要包括应用和输入文件。

举个例子: 我现在需要根据Relax app的官方教程对某个晶体结构进行结构优化和能量最小化。我就需要打开终端或则命令行工具,并进入工作文件夹:

# 首先进入工作目录,以demo为例:
cd $ROSETTA/demos/tutorials/Relax_Tutorial/

然后就可以开始运行relax app(如果不是demo,那么你就需要额外准备必要的输入文件)此处的含义-s代表我们输入的蛋白质结构文件(pdb格式),@符号代表告诉Rosetta我的执行参数文件,我的参数文件名为'general_relax_flags'

# 运行relax app
relax.mpi.macosclangrelease -s 1ubq.pdb @general_relax_flags

此时就可以发现Rosetta relax app正在运行:

running relax.png

如果我们需要进一步控制realx app的行为,我们就需要修改'general_relax_flags'中的参数:

# 以Demo为general_relax_flags文件例,其中包括以下内容:
-nstruct 2
-relax:default_repeats 5
-out:path:pdb ./tutorial_output
-out:path:score ./expected_output

如果需要进一步控制每个app的行为,我们一定要去阅读开发者给出的输入选项解释,我们可以在app文档中找到对应的解释。只有需要必要的选项,我们才应该写在参数文件当中。如果参数使用不当,会对结果产生影响。

参数解释.png

Rosetta APP文档:https://www.rosettacommons.org/docs/latest/application_documentation/

Q6 我该如何分析和利用Rosetta输出的结果?

Rosetta的结果分析是一个非常复杂的话题,这关乎到你所采用的计算方法、打分函数以及结构生物学的直觉。

原则上我们应该先首先参考原文献作者对结果的分析方法,因为没有人比开发者更懂这个程序。

其次,Rosetta大多采用的是随机算法,我们应该提供足够的计算资源来保证采样充分,切不可以对小规模的采样结果就轻易对生物问题下结论,甚至我们需要对结果进一步的进行聚类分析、多次重复计算,并从中提取有价值的信息。

再次,我们应该谨慎地对待Rosetta的打分输出结果,Rosetta的打分并不等于实际的能量值,并且很有可能存在"假阳性"值,我们需要仔细对模型、计算参数进行检查,多选几个模型总是好的。

最后,在实验上尽可能多的验证我们所作出的预测结果。(金标准)

参考1: https://www.rosettacommons.org/docs/latest/getting_started/Analyzing-Results

参考2: https://www.rosettacommons.org/demos/latest/tutorials/scoring/scoring

Q7 如果我遇到了问题,我该如果求助?

更多Q,待补充,欢迎讨论

上一篇 下一篇

猜你喜欢

热点阅读