【3.4.4】Gromacs系统结构编辑--editconf
(GMX.4 editconf)
editconf 是 GMX 最重要的程序之一。 它的主要功能是对系统结构进行编辑,同时它也把系统结构文件保存或者转换到不同的文件格式中,如 gro、g96、pdb 文件等。
在 分子动力学模拟中,通常给模拟系统添加一个模拟盒子(周期性的盒子,原子从这边出去了,就从那边进来,通俗吧)。 editconf 使用 “ -box ”、“ -d ” 和 “ -angle ” 等参数对模拟系统的盒子进行设定。在为系统设定盒子的时候,“ -box ” 和 “ -d ” 都把系统放置在盒子的中间,除非 editconf 明确使用另外一个参数 “ -noc ”。 (也就是 not center 的意思啦。)
使 用 “ -bt ” 参数,editconf 可以设定使用盒子的类型。editconf 支持以下几种盒子类型:triclinic (斜方体)、cubic(正方体)、dodecahedron (等边十二面体), octahedron (等边八面体,两头被剪切的那种,即两个四面体放在一起,切去方向相反的尖尖的两头,同时保证所有的边长相等)。等边十二面体和等边八面体的体积分别是同“ 周期映像距离”的正方体体积的 0.71 和 0.77 倍,越接近球形,体积越小,计算代价越小。
当使用立方体、等边十二面体或者等边八面体时,“ -box ” 的参数可以只为一个实数值,该数值即为边长。“ -box ”参数也可以是三个实数,结果为以这三个实数为边长的长方体(如不指定 “ -angle ”,默认盒子矢量间夹角为90度)。
参数 “ -angle ” 只同参数 “ -box ” 和参数 “ -box ” 一起使用,以指定盒子矢量间的夹角;不能和参数 “ -d ”(用于指定系统原子到盒子边界的最小距离)一起使用。
如果使用 “ -n ” 或者 “ -ndef ” 参数为程序指定一个索引文件,则 editconf 可以选择系统中某一个组计算盒子大小或者几何中心,否则整个系统都会被考虑在内。
参数 “ -rotate” 用来旋转系统,按照给定数值在该坐标系上进行旋转。如 “ -rotate 0 30 0 ”,则表示将系统绕 Y 轴顺时间方向旋转 30 度。
参数 “ -princ ” 用来将系统(或者系统某一部分)固有坐标对齐到坐标轴上。这样做可以缩小盒子的体积,特别是当分子为一长条形状的时候。但是分子在模拟过程中会平移或者转动,所以使用的时候要特别小心。
扫 描参数 “ -scale ” 在其他参数被读入前可以扫描系统中各个原子的坐标,与其他参数配合使用可以对系统中原子坐标进行修改以得到不同的系统性质。如果 “ -density ” 一起使用,可以得到不同的系统密度(这样做会改变系统盒子大小,要特别小心!)。使用该参数时,如果输入为 .gro 文件,可能结果会不精确。 当 “ -scale ” 参数为单一 “ -1 ” 时,输出的系统结果为该方向上的镜面映像,当三个方向上的输入全部为 “ -1 ”(即 “-scale -1 -1 -1”)时,系统的结果机构为原来结构的坐标原点对称映像。
在程序输出时,可以只输出系统的某一个组,或者某一个部分。可以建立划分更为细致的索引文件,这样可以进行细致的选择。 系统结构的周期性可以在程序中进行粗略去除,但是必须保证结构文件中周期性盒子的信息绝对正确,因为 editconf 去除周期性的算法十分简单,只是将原子坐标直接减去盒子边长。
当 程序输出文件为 .pdb 文件时,可以使用 “ -bf ” 参数为输出文件添加 B-factor。B-factor 要在一定的格式的文件中读取,这个格式要求文件第一行为文件中所含 B-factor 数值个数,文件第二行开始没行要有一个索引号,然后就是该索引后面的 B-factor 值。 B-factor 默认是一个残基一个数值,如果每一个原子有一直 B-factor 值,则要使用 “ -atom ” 参数。 如果使用 “ -legend ” 参数,那么程序在结构文件中会生成一列 CA 原子,这些原子带有 B-factor数字,并从最小 B-factor 值排列到最高,便于可视化软件显示。
如果使用 “ -mead ” 参数,那么程序将输出一个被静电统计软件 MEAD(玻松-波尔兹曼方程求解软件)使用的 pdb 文件(或者 pqr 文件)。使用这个参数有一个前提条件,就是输入文件必须是模拟打包文件(如 tpr 文件),因为这样的文件包含了力场参数。这个输出 pdb (pqr) 文件中,B-factor 数值列为该行原子的范德华半径,而 occupancy 列则为该原子的电量。“ -grasp ” 参数的作用很类似,但是 B-factor 列和 occupancy 列的数值互换。
另外一个十分的有用的参数就是 “ -label ” 参数,它可以为 pdb 文件加上一个链标记。如果一个文件里面不同残基属于不同肽链,那么这个参数可以帮这些残基指定肽链归属,这样不但可以帮助可视化,在建立模拟系统时也十分方便。
editconf 还可以修改结构文件的盒子类型,比如以下就是立方体盒子修改成一个等边八面体:
editconf -f <in.gro> -rotate 0 45 35.264 -bt octahedron -box <veclen> -o <out.gro>
其中,
程序输入文件:
-f:
输入结构文件,文件格式可以是 gro、g96、pdb、tpr、tpb 或者 tpa。
-n:
索引文件。
-o:
输出文件,文件格式为 gro、g96 或者 pdb 。
-mead:
输出文件,MEAD程序的坐标文件,包含力场参数。
-bf:
B-factor数值文件,文件格式见上文。
其他参数:
-w:
程序结束自动打开输出文件。
-ndef:
在索引文件的默认组中选择输出范围。
-bt:
指定盒子类型,支持的盒子类型有 triclinic(斜方体)、cubic(正方体)、dodecahedron(等边十二面体)或者 octahedron(等边八面体)。
-box:
指定盒子三个矢径,(a,b,c)。
-angle:
盒子矢径间夹角,默认都是 90 度(bc,ac,ab)。
-d:
溶质分子(蛋白,核酸等)到盒子边界的距离。
-c:
把溶质分子放在盒子中间,“-box” 和 “-d” 参数的默认参数。
-center:
为输出结构指定几何坐标中心,默认为 (0,0,0)。
-translate:
平移分子机构,比如 “-translate 0 0 2.5” 表示将分子结构向 Z 轴正方向平移 2.5 纳米。
-rotate:
旋转分子结构,见上文。
-princ:
对齐分子结构,见上文。
-scale:
扫描分子结构,“-scale 1 1 1” 表示在三个坐标方向上进行扫描。
-density:
指定输出结构文件的分子密度。
-pbc:
处理结构文件的周期性。
-grasp:
将原子的力场参数存储在输出文件中,见上文。
-rvdw:
给定默认原子的默认范德华半径。该参数可用于处理缺少力场参数的原子。
-sig56:
使用范德华能量最低点到原子中心距离的一半距离,而不使用简单使用范德华半径的一半。(特殊使用,多特殊?)
-vdwread:
从默认 vdwradii.dat 文件中读取原子的范德华半径,而不使用力场提供的范德华半径。
-atom:
为各个原子添加 B-factor 数值。
-legend:
在结构文件中添加 B-factor 参考值,见上文。
-label:
为各个残基指定肽链归属。
注意:对于复杂的分子,最好使用 trjconv 去除结构周期性。
个人公众号,比较懒,很少更新,可以在上面提问题,如果回复不及时,可发邮件给我: tiehan@sina.cn