注意,脚本的第13-16,43,56,107,127行可能不适配于所有体系,仅供参考
实验室偶遇多流程任务,步骤繁琐强如怪物,拼劲全力也无法战胜
此脚本能够在 Linux
系统上自动化运行三次不同温度下的 GROMACS 分子动力学模拟,按照指定步骤完成从坐标文件生成到 MD 模拟的全过程,并执行后续的 RMSD、RMSF等分析;
--主要流程已用函数描述,可以随意自行修改有关参数 --倘若打算再超算上运行,
Force_DIR
参数可能不会起到作用,一个最简单的解决办法是为每一个核心文件夹添加力场文件
CORE_FILES_DIR
: 核心文件文件目录(如example.pdb
,topol.top
(后续自主生成) 等文件)。MDP_FILES_DIR
: 动力学参数文件目录。GROMACS_CMD
: 自定义 GROMACS 命令,默认使用gmx
。Force_DIR
: 力场文件目录,需要至于 sh 脚本所在目录.
- 更多请阅读相关脚本
- 保存脚本:将脚本保存为
Gromacs-Simple-Script.sh
,调整有关参数。 - 赋予执行权限:
chmod +x Gromacs-Simple-Script.sh
- 执行脚本:
bash ./Gromacs-Simple-Script.sh
假设核心文件目录为 你的目录
,MDP 文件目录为 MDP
,脚本的执行会生成以下目录结构:
可自行去脚本的14至16行修改核型文件目录等
你的目录/
├── 你的结构.pdb
├── InitSys.gro
├── topol.top
├── posre.itp
├── analysis/
│ ├── a2-Vol_303K.xvg
│ ├── a2-Vol_373K.xvg
│ ├── rmsd_303K.xvg
│ ├── rmsd_373K.xvg
│ ├── rmsf_303K.xvg
│ ├── rmsf_373K.xvg
│ ├── dssp_303K.xvg
│ └── dssp_373K.xvg
├── Tmp-你的目录
│ ├── tmp-303K-a2
│ └── ...
- 生成坐标文件和拓扑文件。
- 指定体系的盒子大小。
- 对盒子进行溶剂化处理。
- 中和体系电荷。
- 使用最速下降法进行能量最小化。
- 使用共轭梯度法进行能量最小化。
- 进行简单的 NPT 弛豫模拟。
- 不同温度下的MD模拟
- 提取模拟后的文件用于分析。
- RMSD 分析
- RMSF 分析
- DSSP 分析
所有分析结果都会存储在 analysis
目录中,便于后续的处理和分析。
- 生成坐标文件和拓扑文件:
$GROMACS_CMD pdb2gmx -f "$PDB_FILE" -o "$GRO_FILE" -p "$TOP_FILE" -ff "$Force_DIR" -water tip3p -ignh
- 指定体系的盒子大小:
$GROMACS_CMD editconf -f "$GRO_FILE" -o "$BOX_GRO_FILE" -box 9. 11. 9. -d 1.0 -c
- 对盒子进行溶剂化处理:
$GROMACS_CMD solvate -cp "$BOX_GRO_FILE" -cs spc216.gro -p "$TOP_FILE" -o "$SOL_GRO_FILE"
- 中和体系电荷:
$GROMACS_CMD grompp -f "$MDP_FILES_DIR/ions/ions.mdp" -c "$SOL_GRO_FILE" -p "$TOP_FILE" -o "$TMP_DIR/ions.tpr" echo "13" | $GROMACS_CMD genion -s "$TMP_DIR/ions.tpr" -o "$NEU_GRO_FILE" -p "$TOP_FILE" -pname NA -nname CL -neutral
- 能量最小化:
$GROMACS_CMD grompp -f "$MDP_FILES_DIR/em/em.mdp" -c "$NEU_GRO_FILE" -r "$NEU_GRO_FILE" -p "$TOP_FILE" -o "$TMP_DIR/em.tpr" $GROMACS_CMD mdrun -v -deffnm "$TMP_DIR/em" -c "$EM_GRO_FILE" $GROMACS_CMD grompp -f "$MDP_FILES_DIR/em/em_cg.mdp" -c "$EM_GRO_FILE" -r "$EM_GRO_FILE" -p "$TOP_FILE" -o "$TMP_DIR/em_cg.tpr" $GROMACS_CMD mdrun -v -deffnm "$TMP_DIR/em_cg" -c "$EM_CG_GRO_FILE"
- NPT 弛豫模拟:
$GROMACS_CMD grompp -f "$MDP_FILES_DIR/npt/npt_$Temp.mdp" -c "$EM_CG_GRO_FILE" -r "$EM_CG_GRO_FILE" -p "$TOP_FILE" -o "$TMP_DIR/npt.tpr" $GROMACS_CMD mdrun -v -deffnm "$TMP_DIR/npt" -c "$NPT_GRO_FILE"
- 保存当前体系下的拓扑文件:
mv "$TOP_FILE" "${TMP_DIR}/${Temp}K-${CORE_FILES_DIR}"
- RMSD 分析:
$GROMACS_CMD rms -s "$TMP_DIR/npt.tpr" -f "$TMP_DIR/npt.xtc" -o "${ANALYSIS_DIR}/rmsd_${Temp}K.xvg"
- RMSF 分析:
$GROMACS_CMD rmsf -s "$TMP_DIR/npt.tpr" -f "$TMP_DIR/npt.xtc" -o "${ANALYSIS_DIR}/rmsf_${Temp}K.xvg" -res
- DSSP 分析:
$GROMACS_CMD dssp -s "$TMP_DIR/npt.tpr" -f "$TMP_DIR/npt.xtc" -o "${TMP_DIR}/${Temp}K.dat" -num "${ANALYSIS_DIR}/dssp_${Temp}K.xvg"
请确保已安装 GROMACS,并能从命令行调用。
确保提供的文件路径和目录存在。
该脚本默认假定参数文件和核心文件已准备好,如有需要请根据实际情况进行调整。