文章目录
1 环境需求
- 系统环境: Ubuntu 18.04.4 LTS
- gromacs版本: 2020.3
2 开始模拟
2.1 准备模拟目录
mkdir -p /data/sim/
cd /data/sim/
2.2 生成拓扑文件
echo '#include "oplsaa.ff/forcefield.itp"
#include "oplsaa.ff/spc.itp"
[ System ]
SPC
[ Molecules ]' > /data/sim/topol.top
其中[System]
项表示这个要模拟的系统的名字,可任取
2.3 生成结构文件
cd /data/sim/
gmx solvate -cs spc216 -o conf.gro -box 2.3 2.3 2.3 -p topol.top
-cs
指定使用的溶剂, 这里选择了水分子spc模型.-box
指定了盒子大小,这里为2.3 nm-o
指定了输出文件-p
指定拓扑文件
2.4 下载参数文件
cd /data/sim/
wget https://www.svedruziclab.com/_downloads/89cada9d714f7d1d7e86e78f3dc26146/mdp.tar.gz
tar xf mdp.tar.gz
# 修改相关参数, 减少运行时间
sed -i "s#tau_p = 2.0#tau_p = 6.0#g" eql2.mdp
sed -i "s#nsteps = 500000#nsteps = 50000#g" eql2.mdp
sed -i "s#tau_p = 2.0#tau_p = 6.0#g" prd.mdp
sed -i "s#nsteps = 500000#nsteps = 50000#g" prd.mdp
2.5 模拟
2.5.1 最小化能量
cd /data/sim/
gmx grompp -f mdp/min.mdp -o min -pp min -po min
gmx mdrun -deffnm min
-f
表示读取的最小化能量的参数文件-o
生成的xdr文件-pp
处理过的拓扑文件(这里指的是checkpoint)-po
处理过的mdp文件(这里指的是checkpoint)
gromacs默认情况下每15min或是最后一次迭代步时会保存checkpoint
下面是利用checkpoint进一步做系统能量最小化:
cd /data/sim/
gmx grompp -f mdp/min2.mdp -o min2 -pp min2 -po min2 -c min -t min
gmx mdrun -deffnm min2
-c
指定结构文件-t
指定checkpoint
2.5.2 控温(NVT)
cd /data/sim/
gmx grompp -f mdp/eql.mdp -o eql -pp eql -po eql -c min2 -t min2
gmx mdrun -deffnm eql
2.5.3 控压(NPT)
cd /data/sim/
gmx grompp -f mdp/eql2.mdp -o eql2 -pp eql2 -po eql2 -c eql -t eql
gmx mdrun -deffnm eql2
2.5.4 模拟
cd /data/sim/
gmx grompp -f mdp/prd.mdp -o prd -pp prd -po prd -c eql2 -t eql2
gmx mdrun -deffnm prd
参考
- https://www.svedruziclab.com/tutorials/gromacs/1-tip4pew-water/
- http://www.mdtutorials.com/gmx/
- https://jerkwin.github.io/9999/10/31/GROMACS%E4%B8%AD%E6%96%87%E6%95%99%E7%A8%8B/