||
前一篇文章介绍了Rosetta的安装过程,现在来介绍一下基本的文件格式和常用命令。一般来说,运行任何Rosetta的程序的方法都是:
command options [@flags]
其中command就是要执行的命令比如score、relax等;后边给出options,指定输入输出的文件名,运行时的参数等;flags是一个文本文件,里边的内容其实也是options,但为了编辑和重用方便可以写到一个文件里去,一起传给命令,前边要加一个@符号。
0. pdb 文件和 silent file
Rosetta是一个功能非常强大的蛋白质建模软件包,具体有很多不同的功能,但基本工作原理都是读入一个蛋白质结构,做一些操作,吐出一个结果(如果是ab-initio则只读入序列)。蛋白质结构文件最常用的就是pdb文件,但为了批量操作的方便,Rosetta除了支持pdb文件外还有一种自己的文件存储格式silent file,一般使用扩展名.out。
当我们希望输入一个或多个pdb文件时,使用如下option:
-in:file:s xxx1.pdb xxx2.pdb xxx3.pdb
或者也可以简写成(在rosetta中option拥有各自的名字空间,如果没有和其他名字空间中重名的,就可以省略前缀):
-s xxx1.pdb xxx2.pdb xxx3.pdb
也可以给定一个pdb文件列表:
-in:file:l pdblist (或-l)
注意,读入pdb时默认是全原子模型(fullatom),如果希望读入粗粒化模型,需要:
-in:file:centroid_input
另外有时输入的pdb文件里面没有处理干净有些HOH或其他小分子,会报错,可以:
-in:ignore_unrecognized_res
来忽略掉不认识的东西。
指定输出pdb文件(否则默认为silent file):
-out:pdb
一般来说对每一个输入的pdb会有一个或多个输出,比如-s A.pdb后输出会是A_0001.pdb, A_0002.pdb等。Rosetta支持断点,假如你一个程序跑了一半断了,可以直接重跑,它会检测输出文件是否已经生成,如果没有才继续算。有时候你希望都重新算,只需要加入:
-out:overwrite (或-overwrite)
指定输入silent file
Rosetta动辄需要处理成千上万个结构,这时使用silent file就会比较高效,读入文件的option:
-in:file:silent xxx.out
和pdb文件的默认fullatom不同,silent file默认是读入粗粒化(不知道新版还是不是了),如果是全原子的silent file需要加入option:
-in:silent:fullatom
另外需要注意的是silent file有两种格式protein和binary前者保存ideal结构,即键长键角都为理想值,文件中只保存二面角信息,比较省空间,一般在ab-initio时用;后者就和pdb一样存储所有原子的位置信息,但用一种比较紧凑的格式写出来不是给人看的。指定文件格式:
-in::file::silent_struct_type {protein, binary}
默认的格式是protein。输出文件也一样可以控制,只需把in换成out。
上述options基本在所有命令中都是通用的。
1. score_jd2
最基本的一个命令就是score,用来给指定的蛋白质结构打分,可以用来做文件格式转换。Rosetta中有无数的打分函数(score terms),实际应用中总结出不同的组合应对不同的问题(weights),所有这些都存在database/scoring/weights里,常用的如score12,以及最新的talaris2013。指定不同的weights使用(默认是talaris2013):
-score:weights talaris2013
举几个完整的打分命令例子,如
给xxx打分,并指定输出文件:
score_jd2 -s xxx.pdb -out:file:scorefile xxx.sc
打分并且输出一个pdb文件,有时输入的pdb文件有缺失的原子,输出pdb会给它补全:
score_jd2 -s xxx.pdb -output
2. extract_pdbs
把silentfile里的结构分别转成pdb文件:
extract_pdbs -in:file:silent xxx.out
3. relax
很多pdb文件中的结构有原子重叠之类的问题,直接打分结果会很差,这时需要先做一下relax,让不好的初始结构松弛一下,但也要小心有时clash非常大会使结构有很大的变化,所以还需要酌情考虑加上一些约束,例如:
relax -s pdb -relax::fast -use_input_sc -relax::constrain_relax_to_start_coords -nstruct 5
其中-use_input_sc表示记下侧链的初始位置(但不一定保留,取决于relax的打分);-relax::constrain_relax_to_start_coords为给主链重原子加一个初始位置的约束,让它不会跑太远;-nstruct 5表示重复五次,也就是会得到5个输出结构。
4. cluster
当得到了很多结构之后,其实其中很多都非常接近,通过cluster可以选出有代表性的低能量结构,节约计算量。例如(更多选项参考这里):
cluster -in:file:silent silent.out -in::file::binary_silentfile -in::file::fullatom -native 1a19.pdb
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-11-24 03:30
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社