菜鸟科技网

GROMACS命令有哪些常用选项?

GROMACS 命令概览

GROMACS 的命令通常遵循 gmx 前缀,后面跟着具体的子命令,所有子命令都可以通过 gmx help 来查看。

GROMACS命令有哪些常用选项?-图1
(图片来源网络,侵删)

基本结构: gmx [子命令] [选项]

gmx mdrun -v -deffnm md


系统准备阶段

这个阶段的目标是将你的生物分子(如蛋白质)转换成 GROMACS 可以识别的格式,并为其构建一个合适的模拟环境。

pdb2gmx

功能: 将 PDB (Protein Data Bank) 文件转换为 GROMACS 的拓扑结构格式(.gro.top)。 作用:

GROMACS命令有哪些常用选项?-图2
(图片来源网络,侵删)
  • 根据力场(如 CHARMM36, AMBER, OPLS-AA)为分子添加原子类型和键角参数。
  • 处理缺失的原子(如蛋白质末端的氢原子)。
  • 识别残基,并生成拓扑文件 topol.top
  • 生成初始坐标文件 processed.gro

常用选项:

  • -f <filename.pdb>: 指定输入的 PDB 文件。
  • -o <filename.gro>: 指定输出的坐标文件。
  • -water <model>: 指定水模型,spc, spce, tip3p, tip4pew
  • -ignh: 忽略 PDB 文件中的氢原子(常用于实验结构)。
  • -ff <forcefield>: 指定力场,charmm36, amber99sb-ildn, oplsaa

示例:

# 使用 CHARMM36 力场和 TIP3P 水模型处理一个蛋白质 PDB 文件
gmx pdb2gmx -f protein.pdb -o processed.gro -water tip3p -ff charmm36

editconf

功能: 编辑坐标文件(.gro.pdb),主要用来定义模拟盒子。 作用:

  • 设置模拟盒子的形状(立方体、正交、三斜等)。
  • 设置盒子的大小(边长)。
  • 将分子置于盒子中心。
  • 转换文件格式。

常用选项:

GROMACS命令有哪些常用选项?-图3
(图片来源网络,侵删)
  • -f <filename.gro>: 输入坐标文件。
  • -o <filename.gro>: 输出坐标文件。
  • -c: 将分子置于盒子中心。
  • -box <dx, dy, dz>: 设置立方体或正交盒子的尺寸(单位:纳米)。
  • -d <distance>: 设置分子与盒子边界的最小距离(单位:纳米)。
  • -bt <type>: 设置盒子类型,cubic (立方体), dodecahedron (十二面体), triclinic (三斜)。

示例:

# 将 processed.gro 中的分子放入一个距离边界至少 1.0 nm 的立方体盒子中
gmx editconf -f processed.gro -o boxed.gro -c -d 1.0 -bt cubic

genion

功能: 在已溶水的体系中添加或替换离子,以中和体系电荷或达到特定的离子浓度。 作用:

  • 替换水分子为离子(如 Na+, Cl-)。
  • 在体系中添加额外的离子。

常用选项:

  • -s <filename.tpr>: 输入一个 .tpr 文件(通常由 gmx grompp 生成)。
  • -o <filename.gro>`: 输出坐标文件。
  • -p <filename.top>`: 输出拓扑文件(会更新)。
  • -pname `: 阳离子的名称(如 NA)。
  • -nname `: 阴离子的名称(如 CL)。
  • -neutral`: 自动添加离子以中和体系总电荷。
  • -conc <mol/L>`: 添加离子以达到指定的浓度。

示例:

# 首先生成输入文件 tpr
gmx grompp -f ions.mdp -c boxed.gro -p topol.top -o ions.tpr
# 然后使用 genion 中和体系电荷
# 注意:运行后会弹出让你选择替换哪种原子的菜单,通常选择 SOL (水)
gmx genion -s ions.tpr -o ionized.gro -p topol.top -neutral

模拟运行阶段

这个阶段使用准备好的拓扑和坐标文件,通过 GROMACS 预处理程序生成二进制输入文件,然后运行动力学模拟。

gmx grompp

功能: GROMACS Preprocessor,GROMACS 模拟的编译器,它读取 .mdp (参数文件)、.top (拓扑文件) 和 .gro (坐标文件),生成一个可执行的二进制输入文件 .tpr (Portable xdr Run-input file)。 作用:

  • 检查所有输入文件的兼容性。
  • 将所有参数整合成一个 .tpr 文件,供 mdrun 使用。

常用选项:

  • -f <filename.mdp>: 指定 MD 参数文件。
  • -c <filename.gro>: 指定初始坐标文件。
  • -p <filename.top>: 指定拓扑文件。
  • -o <filename.tpr>: 指定输出的 .tpr 文件。
  • -po <filename.mdp>: 输出合并了所有参数的 .mdp 文件(用于检查)。

示例:

# 使用 em.mdp (能量最小化参数) 文件编译能量最小化任务
gmx grompp -f em.mdp -c ionized.gro -p topol.top -o em.tpr
# 使用 md.mdp (分子动力学参数) 文编译生产模拟任务
gmx grompp -f md.mdp -c ionized.gro -p topol.top -o md.tpr

gmx mdrun

功能: GROMACS 的核心执行引擎,负责运行分子动力学模拟。 作用:

  • 读取 .tpr 文件,执行模拟。
  • 输出轨迹文件(.xtc, .trr)、能量文件(.edr)和其他日志文件。

常用选项:

  • -s <filename.tpr>: 指定输入的 .tpr 文件。
  • -deffnm <prefix>: 默认文件名前缀。-deffnm md 会生成 md.xtc, md.log, md.edr 等,这是最常用的选项。
  • -v: 详细输出,在终端显示模拟进度。
  • -nt `: 使用指定的 CPU 核心数进行并行计算。
  • -gpu_id `: 指定使用的 GPU ID(如果编译时支持 GPU)。
  • -cpi 从检查点文件(.cpt`)继续中断的模拟。
  • -stepout `: 每隔 N 步在屏幕和日志文件中输出一次能量信息。

示例:

# 运行一个以 md.tpr 为输入,并以 md 为前缀输出文件的模拟
gmx mdrun -s md.tpr -deffnm md -v -nt 8

模拟分析阶段

模拟结束后,需要对庞大的轨迹文件进行分析,以获得有意义的物理化学信息。

gmx energy

功能:.edr 能量文件中提取特定的能量项数据,并输出为可用于绘图(如 xmgrace, gnuplot, Python/Matlab)的文本文件。 作用:

  • 提取温度、压力、动能、势能、键长、角度等随时间变化的数据。

常用选项:

  • -f <filename.edr>: 输入能量文件。
  • -o <filename.xvg>: 输出的 ASCII 图形文件。
  • -b <time>: 开始分析的时间(单位:ps)。
  • -e <time>: 结束分析的时间(单位:ps)。

示例:

# 从 md.edr 中提取温度和压力数据
# 运行后会弹出让你选择需要提取的项的菜单(输入编号即可)
gmx energy -f md.edr -o temp_pressure.xvg

gmx rmsd

功能: 计算坐标均方根偏差,常用来衡量结构相对于初始构象的稳定性。 作用:

  • 计算蛋白质骨架(Backbone)或所有重原子(Heavy Atoms)的 RMSD。

常用选项:

  • -s <filename.tpr>: 参考结构的 .tpr 文件。
  • -f <filename.xtc>`: 轨迹文件。
  • -o <filename.xvg>`: 输出的 RMSD 图形文件。
  • -tu <ps|ns|fs>`: X 轴的时间单位。

示例:

# 计算蛋白质骨架相对于初始结构的 RMSD
gmx rmsd -s md.tpr -f md.xtc -o rmsd.xvg -tu ns

gmx rmsf

功能: 计算坐标均方根涨落,常用来分析蛋白质的柔性区域。 作用:

  • 输出每个残基或原子的 RMSF 值,残基值高则表示该区域运动剧烈。

常用选项:

  • -s <filename.tpr>: 参考结构的 .tpr 文件。
  • -f <filename.xtc>`: 轨迹文件。
  • -o <filename.xvg>`: 输出的 RMSF 图形文件。
  • -res`: 按残基输出 RMSF 值。

示例:

# 计算每个残基的 RMSF
gmx rmsf -s md.tpr -f md.xtc -o rmsf.xvg -res

gmx distance

功能: 计算两个组(如两个原子、两个残基)之间的距离随时间的变化。 作用:

  • 用于测量关键相互作用距离、构象变化等。

常用选项:

  • -s <filename.tpr>: 输入文件。
  • -f <filename.xtc>`: 轨迹文件。
  • -o <filename.xvg>`: 输出的距离图形文件。
  • -select 使用索引组选择原子(需要先用gmx make_ndx` 创建组)。

示例:

# 假设我们已经用 make_ndx 创建了名为 "res1" 和 "res2" 的组
gmx distance -s md.tpr -f md.xtc -o-dist distances.xvg -select "res1 and res2"

gmx hbond

功能: 分析氢键的形成情况。 作用:

  • 计算氢键的数量、存在时间、供体-受体距离和角度等。

常用选项:

  • -s <filename.tpr>: 输入文件。
  • -f <filename.xtc>`: 轨迹文件。
  • -num <filename.xvg>`: 输出氢键数量的图形文件。
  • -hb <filename.hbm>`: 输出氢键详细信息。

示例:

# 分析蛋白质内部和蛋白质-水之间的氢键
gmx hbond -s md.tpr -f md.xtc -num hbond_num.xvg

gmx sasa

功能: 计算溶剂可及表面积。 作用:

  • 评估分子的疏水性或暴露程度。

常用选项:

  • -s <filename.tpr>: 输入文件。
  • -f <filename.xtc>`: 轨迹文件。
  • -o <filename.xvg>`: 输出的 SASA 图形文件。

示例:

# 计算蛋白质整体的溶剂可及表面积
gmx sasa -s md.tpr -f md.xtc -o sasa.xvg

gmx cluster

功能: 对轨迹进行聚类分析,找到代表性构象。 作用:

  • 将模拟过程中的构象按照相似性分组,找到几个代表性的结构,用于后续分析或可视化。

常用选项:

  • -s <filename.tpr>: 输入文件。
  • -f <filename.xtc>`: 轨迹文件。
  • -o <filename.xvg>`: 输出聚类大小随时间变化的图形文件。
  • -cl <filename.gro>`: 输出每个簇的中心结构。

示例:

# 使用 RMSD 作为衡量标准进行聚类,找到 10 个代表性构象
gmx cluster -s md.tpr -f md.xtc -o clusters.xvg -cl cluster_structures.gro -method gromos -nstructs 10

辅助工具

gmx make_ndx

功能: 交互式地创建原子组索引。 作用:

  • 这是很多分析命令(如 distance, rmsd)的前提,用于选择特定的原子集合。

使用方法:

  1. 运行命令:gmx make_ndx -f md.tpr
  2. 根据提示输入命令:
    • a: 选择所有原子。
    • r 1: 选择第一个残基。
    • name 1 Backbone: 将当前选择的组命名为 "Backbone"。
    • q: 退出。

示例:

# 创建一个蛋白质骨架的组
gmx make_ndx -f md.tpr
# (在交互界面中输入)
> a C CA N O
> name 1 Backbone
> q

gmx trjconv

功能: 转换和处理轨迹文件。 作用:

  • 改变轨迹文件的格式(.xtc -> .trr)。
  • 选取轨迹的一部分(时间范围)。
  • 选取体系的某一部分(如蛋白质、配体)。
  • 重新设置盒子(-pbc)。

常用选项:

  • -s <filename.tpr>: 输入文件(用于获取拓扑信息)。
  • -f <filename.xtc>`: 输入轨迹文件。
  • -o <filename.xtc>`: 输出轨迹文件。
  • -b
  • -e
  • -center`: 将选择的组置于盒子中心。
  • -pbc <mol|res|atom> 处理周期性边界条件,mol(分子),res(残基),atom` (原子)。

示例:

# 选取从 10ns 到 20ns 的轨迹,并将蛋白质置于中心
gmx trjconv -s md.tpr -f md.xtc -o centered.xtc -b 10000 -e 20000 -center -pbc mol
阶段 主要命令 功能描述
准备 pdb2gmx PDB -> GROMACS 拓扑和坐标
editconf 定义模拟盒子
genion 添加/替换离子
运行 gmx grompp 编译参数文件,生成 .tpr
gmx mdrun 执行 MD 模拟
分析 gmx energy 提取能量数据
gmx rmsd 计算结构偏差
gmx rmsf 计算结构涨落
gmx distance 计算原子间距离
gmx hbond 分析氢键
gmx sasa 计算溶剂可及表面积
gmx cluster 轨迹聚类分析
辅助 gmx make_ndx 创建原子组索引
gmx trjconv 转换和处理轨迹

掌握这些核心命令,你就可以完成绝大多数 GROMACS 模拟任务了,建议结合 GROMACS 官方手册和教程进行深入学习。

分享:
扫描分享到社交APP
上一篇
下一篇