首页 >> 仿真软件说明 >>gromacs >>使用命令说明 >> gmx density计算体系的密度
详细内容

gmx density计算体系的密度

gmx density [-f [<.xtc/.trr/...>]] [-n [<.ndx>]] [-s [<.tpr/.tpb/...>]]

[-ei [<.dat>]] [-o [<.xvg>]] [-nice ] [-b ]

[-e ] [-dt ] [-[no]w] [-xvg ] [-d ]

[-sl ] [-dens ] [-ng ] [-[no]center] [-[no]symm]

[-[no]relative]

gmx density用于计算盒子中的局部密度, 需要使用索引文件.

对于NPT模拟的总密度, 可以直接使用gmx energy来得到.

选项-center相对任意组中心以绝对盒子坐标进行直方图分格. 如果你想计算沿盒子Z轴的密度剖面, 盒子Z方向的大小为bZ, 如果基于整个体系进行居中, 输出的坐标范围从-bZ/2到bZ/2. 注意, 在GROMACS 5.0中, 这种行为有所改变. 早期的版本中只是在(0, bZ)范围内进行简单的静态分格, 并将输出进行移动. 新版本会计算每一帧的中心并在(-bZ/2,bZ/2)范围内进行分格.

选项-symn使输出结果关于中心对称. 这一选项也会自动打开-center选项. 选项-relative基于盒子的相对坐标而不是绝对坐标进行分格, 然后对输出结果按输出轴方向盒子的平均尺寸进行标定. 这一选项可以与-center结合使用.

密度的单位为kg/m^3^, 同时也可以计算数密度或电子密度. 计算电子密度时, 需要使用选项-ei提供一个文件, 其中包含了每一原子类型的电子数. 文件内容如下所示:

2

atomname = nrelectrons

atomname = nrelectrons

第一行指明了该文件的行数. 体系中每个唯一的原子名称对应于一行. 每个原子的电子数会根据其原子部分电荷进行修改.

对双层体系需要注意的几点

最常见的使用情境之一是计算跨脂质双层的各种原子组的密度, 通常是以Z轴作为法线方向. 对小体系的短时间模拟, 当固定盒子尺寸时, 比较好处理, 但对更一般的情况, 脂质双层可能比较复杂. 第一个问题就是蛋白质和脂质的体积压缩率都很小, 而脂质有非常高的面积压缩率. 这意味即便对完全弛豫好的体系, 在模拟过程中盒子形状(厚度或是面积/脂质)的涨落仍然很大.

因为GROMACS将盒子置于原点和正轴之上, 这也就意味着居于盒子中间的脂质双层由于涨落将会上下移动, 并进而模糊密度剖面. 解决这个问题的最简单方法(如果你要使用压力耦合)就是使用-center选项以计算相对于盒子中心的密度剖面. 注意, 你仍然可以用双层部分居中, 即使你有一个复杂的非对称的脂质双层和膜蛋白体系. 这样输出的数据点在(中心)原点参考位置的某一侧会较多.

因为脂质本身会被压缩和膨胀, 居中计算会导致输出的密度剖面模糊. 即使如此, 在多数情况下你希望得到这样的结果(因为它对应于宏观实验). 但如果你要关注分子细节, 可以使用-relative选项来尝试消除体积涨落带来的影响.

最后, 对不受表面张力影响的大的双层, 在体系中形成”波浪”的地方会表现出起伏涨落. 这是生物体系的基本性质, 如果要和实验做对比, 你可能要包括这种波动模糊效应.

输入/输出文件选项

选项

默认值

类型

说明

-f [<.xtc/.trr/...>]

traj.xtc

输入

轨迹: xtc trr cpt trj gro g96 pdb tng

-n [<.ndx>]

index.ndx

输入, 可选

索引文件

-s [<.tpr/.tpb/...>]

topol.tpr

输入

运行输入文件: tpr tpb tpa

-ei [<.dat>]

electrons.dat

输入, 可选

通用数据文件

-o [<.xvg>]

density.xvg

输出

xvgr/xmgr文件

控制选项

选项

默认值

说明

-nice <int>

19

设置优先级

-b <time>

0

从轨迹文件中读取的第一帧(ps)

-e <time>

0

从轨迹文件中读取的最后一帧(ps)

-dt <time>

0

只使用t除以dt的余数等于第一帧时间(ps)的帧, 即两帧之间的时间间隔

-[no]w

no

查看输出的.xvg, .xpm, .eps以及.pdb文件

-xvg <enum>

xmgrace

xvg绘图格式: xmgrace, xmgr, none

-d <string>

Z

指定膜的法线方向: X, Y或Z

-sl <int>

50

将盒子划分为指定数目的片

-dens <enum>

mass

密度类型: mass, number, charge, electron

控制选项

选项

默认值

说明

-ng <int>

1

要计算密度的组的数目一次性可以计算多个组的密度, 可在输出文件中查看

-[no]center

no

相对于(变化的)盒子中心进行分格, 适用于双层体系.

-[no]symm

no

使密度分布沿轴向对称. 适用于双层体系

-[no]relative

no

对变化的盒子使用相对坐标, 并根据平均尺寸对使出进行标定

已知问题

当计算电子密度时, 使用了原子名称而不是原子类型. 这种做法很不好.

补充说明

gmx density是获取体系或各个组分在盒子内分布密度的一个程序. 一般来说可使用如命令:

gmx density -f *.trr -n *.ndx -s *.tpr -d z -o density.xvg

其中

-f *.trr指定要分析的轨迹文件

-n *.ndx指定索引文件, 使用它可以在分析时指定不同的组来分析

-s *.tpr指定拓扑文件

-d z指定沿着z轴方向进行分析

如果要指定分析索引组1的密度, 可以使用命令管道:

echo 1 | gmx density -f npt.trr -n system.ndx -s npt.tpr -d z -o density_DRG.xvg

此程序不支持根据残基名称来获取密度, 可通过gmx make_ndx来获取索引组代号再通过命令管道传给gmx density实现.


最新评论
请先登录才能进行回复登录
技术支持: CLOUD | 管理登录
seo seo