GROMACS(Groningen Machine for Chemical Simulations)是一款用于分子动力学模拟的开源计算化学软件包。它最初由荷兰格罗宁根大学的研究团队开发,并在GNU通用公共许可证(GPL)下发布,因此是免费的并且具有开放源代码。 以下是在运行GROMACS中遇到的续跑和画图问题的步骤。
MD中断前的作业运行:
gmx mdrun -V -deffnm md
MD作业中断后可以继续用mdrun
接着续跑,只需要加上-cpi md.cpt
和-s md.tpr
的参数。
gmx mdrun -s md.tpr -cpi md.cpt -deffnm md
mdrun
默认会将新产生的轨迹添加到原始文件末尾,最终文件会包括中断前与续跑后的所有内容。
MD作业已经完整跑完,延续之前的模拟参数,再跑额外的10ns
模拟,可以使用convert-tpr
重新生成新的md2.tpr
,并用-extend 10000
选项将模拟时间延长10ns后重新mdrun
提交新作业md2
,并且在mdrun
参数选项中加上原始的cpt文件-cpi md1.cpt
,最后的-noappend
选项则表示生成单独的后续文件而不续写。
gmx convert-tpr -s md1.tpr -extend 10000 -o md2.tpr
gmx mdrun -V -deffnm md2 -cpi md.cpt -noappend
最终会得到md2.part0002.xtc/log/edr/gro/cpt,这是将后续10ns的结果单独生成新的文件。
MD作业已经完整跑完,延续之前的模拟参数,再跑额外的10ns
模拟,可以使用convert-tpr
命令直接修改原始的md.tpr
,并用-extend 10000
选项将模拟时间延长10ns
后重新mdrun
提交新作业md
,并且在参数选项中加上原始的cpt文件-cpi md.cpt
即可。
gmx convert-tpr -s md1.tpr -extend 10000 -o md.tpr
gmx mdrun -V -deffnm md -cpi md1.cpt
#source /home/murphy/gromacs/Gromacs_mpi/bin/GMXRC
gmx_mpi rms -f md.xtc -s complex_ions.gro
选择相应的组分,生成rmsd.xvg
文件。
#source /home/murphy/gromacs/Gromacs_mpi/bin/GMXRC
gmx_mpi trjconv -f md.xtc -o MmPbsa.xtc -b 8000 -e 10000
gmx中以ps为单位,-b 8000 -e 10000
为begin和end时间窗口。
3.1 将rms
命令生成的rmsd.xvg
文件用gnuplot
作图。
首先去掉rmsd.xvg中的注释信息。
#!/bin/bash
cat rmsd.xvg |grep -v -E "#|@" >rmsd_1.xvg
gnuplot <<EOF
set term pngcairo lw 2 font "Times_New_Roman,14"
set output "rmsd.png"
set xlabel 'Time (ps)'
set ylabel 'RMSD (nm)'
set title 'RMSD'
unset key
plot 'rmsd_1.xvg' with line linetype 1 linewidth 1
set output
EOF
#!/bin/bash
gnuplot <<EOF
set term pngcairo lw 2 font "Times_New_Roman,14"
set output "a.png"
set xlabel 'Residue Number'
set ylabel 'Contribution Energy (kJ/mol)'
set title 'Contribution of residues to the binding energy'
#unset key
set xrange [1:306]
#set xtics 1,1,306
#unset border
#set zeroaxis lt -1 lw 2
plot 'cq-3.dat' with line linetype 1 linewidth 1 title "CQ-1",'cq-2.dat' with line linetype 2 linewidth 1 title "CQ-2", 'hcq.dat' with line linetype 3 linewidth 1 title "HCQ-1",'hcq-3.dat' with line linetype 4 linewidth 1 title "HCQ-2"
#plot 'cq-3.dat' with line linetype 1 linewidth 1 title "CQ-3" >'hcq.dat' with line linetype 3 linewidth 1 title "HCQ-1" >'hcq-3.dat' with line linetype 4 linewidth 1 title "HCQ-3"
set output
EOF