首页/文章/ 详情

GROMACS中MDP模板以及关键字讲解

2月前浏览2428

一般来说,gromacs所用到的参数控制文件(mdp)基本上是大同小异的。仅需进行一些小小的更改即可。或者按照自己的体系进行微调。下面给大家提供了每个步骤模拟的mdp文件,以及每个关键字的解释。 

 

能量最小化minim.mdp:

















title=TEST; 标题,可任意定义(最长64个字,简单点好)cpp=/usr/bin/cpp ; 预处理器,与C/C++的预处理器一样,默认为(/lib/cpp)define= -DFLEXIBLE ; 预定义。-DFLEXIBLE 会告诉grompp ,采用柔性的水代替刚性水到拓扑结构; -DPOSRES 会告诉grompp包括posre.itp到拓扑结构,用于位置限制动力学模拟。integrator=steep ;使用最速下降法进行能量优化,能量优化最大位置移动用emstep[nm]设定,能量最大容忍度由emtol[kJ mol-1nm-1]决定。nsteps=50000 ;最大模拟步数。默认为0nstlist=1; 邻区列表更新频率, 0: 用于真空模拟; -1: 自动ns_type=grid; 邻区搜索算法, grid较快; simple仅与group联用rlist=1 ; 邻区列表截断距离,单位为[nm]coulombtype =PME   ; 静电计算方法rcoulomb =1; 静电截断半径,单位为[nm]vdwtype=cut-off  ; 范德华计算方法rvdw=1; 范德华截断半径,单位为[nm]emtol=500.0;力最大值小于此值认为优化收敛。默认为 10.0 ,单位为[kJ mol-1 nm-1]。emstep=0.01;起始步长。默认为0.01,单位为[nm]。pbc=xyz; 周期性边界条件, xyz; xy; no: 忽略盒子, 截断与nstlist置零cutoff-scheme = Verlet  ; 截断方式, Verlet: 粒子截断; Group: 电荷组verlet-buffer-tolerance = 0.005  ; Verlet缓冲的能量误差(kJ/mol-ps-atom), -1表示使用rlist


温度控制文件nvt.mdp:



















































include = ; 待引用文件的路径, 可多项; 例: -I/home/joe/joy -I/home/tom/tim -IC:/GMX/topdefine  =    ; 预定义, 默认无, 可多项, 区分大小写; -DPOSRES:   使用位置限制文件进行位置限制动力学模拟; -DFLEXIBLE: 启用柔性水, steep效果更好, cg或l-bfgs必须开启integrator       = md     ; 积分方法, md: 蛙跳; sd: 随机dt               = 1E-3   ; 积分步长(ps), EM不用nsteps           = 1000   ; 最大积分步数, 默认0表示无限制comm-mode        = Linear ; 移除质心运动的方式, None: 无; Linear: 平动; Angular: 平动转动nstcomm          = 10     ; 移除质心运行的频率(步)comm-grps        =    system    ; 移除质心运动的组, 可多个, 默认整个体系tinit            = 0      ; 起始时间(ps), EM不用init-step        = 0      ; 起始步数, 对非平衡模拟, 精确重启或重做某部分模拟时, 设定为重启步编号simulation-part  = 1      ; 检查点时自动更新的部分编号(保持文件分开)nstxout                 = 10   ; trr坐标的输出频率(步)nstvout                 = 10   ; 速度的输出频率(步)nstfout                 = 10   ; 力的输出频率(步)nstxout-compressed      = 10    ; xtc压缩坐标的输出频率(步)nstlog                  = 10   ; 日志文件输出频率(步)nstenergy               = 10   ; 能量文件输出频率(步)nstcalcenergy           = 10    ; 计算能量的频率(步), 最好为 nstlist 倍数energygrps              =      ; 输出到能量文件的组, 可使用多个, 默认所有compressed-x-grps       =      ; 输出xtc压缩坐标的组, 可使用多个, 默认所有compressed-x-precision  = 1000   ; xtc坐标的精度(1000表示1/1000, 三位小数)cutoff-scheme           = Verlet  ; 截断方式, Verlet: 粒子截断; Group: 电荷组ns-type                 = Grid   ; 邻区搜索算法, grid较快; simple仅与group联用nstlist                 = 10      ; 邻区列表更新频率, 0: 用于真空模拟; -1: 自动rlist                   = 1.0     ; 邻区列表截断距离(nm)nstcalclr               = -1     ; 长程邻区列表的计算频率rlistlong               = -1     ; 切换势能函数的长程邻区列表截断距离(nm)verlet-buffer-tolerance = 0.005      ; Verlet缓冲的能量误差(kJ/mol-ps-atom), -1表示使用rlistpbc                     = xyz    ; 周期性边界条件, xyz; xy; no: 忽略盒子, 截断与nstlist置零periodic-molecules      = no     ; 周期性分子: no, yesrvdw                    = 1.0     ; 范德华截断半径rcoulomb                = 1.0     ; 静电截断半径vdwtype                 = Cut-off ; 范德华计算方法coulombtype             = PME     ; 静电计算方法DispCorr                = No      ; 长程色散校正, no: 无; Ener: 能量; EnerPres: 能量和压力rvdw-switch             = 0        ; 范德华切换距离rcoulomb-switch         = 0         ;库伦切换距离vdw-modifier            = Potential-shift-Verlet ; 修正方法coulomb-modifier        = Potential-shift-Verletepsilon-r               = 1    ; 介质的相对介电常数, 0: 无穷大epsilon-rf              = 0    ; 反应场的相对介电常数, 0: 无穷大gen-vel          = Yes    ; no: 使用gro文件的值; yes: 随机产生gen-temp         = 298.15 ; 随机速度对应的温度gen-seed         = -1     ; 随机数种子; -1: 自动确定tcoupl           = v-rescale   ; 耦合方法, no: 无; v-rescale: 快速; nose-hoover: 精确tc-grps          = system      ; 温度耦合组, 可多个tau-t            = 2           ; 时间常数(ps)ref-t            = 298.15      ; 参考温度(K)


大家可以看出,minim.mdp和nvt.mdp主要变化在于积分算法(integrator)改成了md。Integrator* dt就是模拟的总时间。对于蛋白模拟这个总模拟时间一般要达到上百ns,对于小分子溶液体系,几十个ns就足够了。而且由于体系处于初始状态,nvt这一步才使体系运动起来,所以nvt这一步会给体系一个初始速度(gen-vel= Yes),后面的就没有这个关键字,或者是gen-vel= no。这一步最重要的就是设定温度(ref-t =  298.15),温度的算法(tcoupl)一般来说是用nose-hoover比较精确,但是有时候体系会崩溃掉,所以最保险是最初始用v-rescale平衡一段时间,之后数据产出时候用nose-hoover


压力控制文件npt.mdp:


























































include =    ; 待引用文件的路径, 可多项; 例: -I/home/joe/joy -I/home/tom/tim -IC:/GMX/topdefine  =    ; 预定义, 默认无, 可多项, 区分大小写; -DPOSRES:   使用位置限制文件进行位置限制动力学模拟; -DFLEXIBLE: 启用柔性水, steep效果更好, cg或l-bfgs必须开启integrator       = md     ; 积分方法, md: 蛙跳; sd: 随机dt               = 1E-3   ; 积分步长(ps), EM不用nsteps           = 1000   ; 最大积分步数, 默认0表示无限制comm-mode        = Linear ; 移除质心运动的方式, None: 无; Linear: 平动; Angular: 平动转动nstcomm          = 10     ; 移除质心运行的频率(步)comm-grps        =    system    ; 移除质心运动的组, 可多个, 默认整个体系tinit            = 0      ; 起始时间(ps), EM不用init-step        = 0      ; 起始步数, 对非平衡模拟, 精确重启或重做某部分模拟时, 设定为重启步编号simulation-part  = 1      ; 检查点时自动更新的部分编号(保持文件分开)nstxout                 = 10   ; trr坐标的输出频率(步)nstvout                 = 10   ; 速度的输出频率(步)nstfout                 = 10   ; 力的输出频率(步)nstxout-compressed      = 10    ; xtc压缩坐标的输出频率(步)nstlog                  = 10   ; 日志文件输出频率(步)nstenergy               = 10   ; 能量文件输出频率(步)nstcalcenergy           = 10    ; 计算能量的频率(步), 最好为 nstlist 倍数energygrps              =      ; 输出到能量文件的组, 可使用多个, 默认所有compressed-x-grps       =      ; 输出xtc压缩坐标的组, 可使用多个, 默认所有compressed-x-precision  = 1000   ; xtc坐标的精度(1000表示1/1000, 三位小数)cutoff-scheme           = Verlet  ; 截断方式, Verlet: 粒子截断; Group: 电荷组ns-type                 = Grid   ; 邻区搜索算法, grid较快; simple仅与group联用nstlist                 = 10      ; 邻区列表更新频率, 0: 用于真空模拟; -1: 自动rlist                   = 1.0     ; 邻区列表截断距离(nm)nstcalclr               = -1     ; 长程邻区列表的计算频率rlistlong               = -1     ; 切换势能函数的长程邻区列表截断距离(nm)verlet-buffer-tolerance = 0.005      ; Verlet缓冲的能量误差(kJ/mol-ps-atom), -1表示使用rlistpbc                     = xyz    ; 周期性边界条件, xyz; xy; no: 忽略盒子, 截断与nstlist置零periodic-molecules      = no     ; 周期性分子: no, yesrvdw                    = 1.0     ; 范德华截断半径rcoulomb                = 1.0     ; 静电截断半径vdwtype                 = Cut-off ; 范德华计算方法coulombtype             = PME     ; 静电计算方法DispCorr                = No      ; 长程色散校正, no: 无; Ener: 能量; EnerPres: 能量和压力rvdw-switch             = 0        ; 范德华切换距离rcoulomb-switch         = 0         ;库伦切换距离vdw-modifier            = Potential-shift-Verlet ; 修正方法coulomb-modifier        = Potential-shift-Verletepsilon-r               = 1    ; 介质的相对介电常数, 0: 无穷大epsilon-rf              = 0    ; 反应场的相对介电常数, 0: 无穷大tcoupl           = v-rescale   ; 耦合方法, no: 无; v-rescale: 快速; nose-hoover: 精确tc-grps          = system      ; 温度耦合组, 可多个tau-t            = 2           ; 时间常数(ps)ref-t            = 298.15      ; 参考温度(K)pcoupl           = berendsen   ; 耦合方法, no: 无, 盒子大小不变; berendsen: 快速; Parrinello-Rahman: 精确pcoupltype       = Isotropic    ; 耦合类型, isotropic: 各向同性;; semiisotropic: x/y方向各向同性, 与z方向不同, 膜模拟; anisotropic: 各向异性, 盒子可能剧烈变形; surface-tension: 表面张力tau-p            = 1          ; 时间常数(ps)compressibility  = 4.5E-5        ; 压缩率(1/bar)ref-p            = 1          ; 参考压力(bar)nstpcouple       = -1          ; 耦合频率, -1: 同nstlistrefcoord-scaling = No           ; 缩放参考坐标: no: 无; all: 所有粒子; com: 质心
压力控制文件,只比温度控制文件多了控制压力的一部分,同时删除了产生初始速度的关键字。

 

数据产出的md.mdp:


























































include =    ; 待引用文件的路径, 可多项; 例: -I/home/joe/joy -I/home/tom/tim -IC:/GMX/topdefine  =    ; 预定义, 默认无, 可多项, 区分大小写; -DPOSRES:   使用位置限制文件进行位置限制动力学模拟; -DFLEXIBLE: 启用柔性水, steep效果更好, cg或l-bfgs必须开启integrator       = md     ; 积分方法, md: 蛙跳; sd: 随机dt               = 1E-3   ; 积分步长(ps), EM不用nsteps           = 1000000   ; 最大积分步数, 默认0表示无限制comm-mode        = Linear ; 移除质心运动的方式, None: 无; Linear: 平动; Angular: 平动转动nstcomm          = 10     ; 移除质心运行的频率(步)comm-grps        =    system    ; 移除质心运动的组, 可多个, 默认整个体系tinit            = 0      ; 起始时间(ps), EM不用init-step        = 0      ; 起始步数, 对非平衡模拟, 精确重启或重做某部分模拟时, 设定为重启步编号simulation-part  = 1      ; 检查点时自动更新的部分编号(保持文件分开)nstxout                 = 10   ; trr坐标的输出频率(步)nstvout                 = 10   ; 速度的输出频率(步)nstfout                 = 10   ; 力的输出频率(步)nstxout-compressed      = 10    ; xtc压缩坐标的输出频率(步)nstlog                  = 10   ; 日志文件输出频率(步)nstenergy               = 10   ; 能量文件输出频率(步)nstcalcenergy           = 10    ; 计算能量的频率(步), 最好为 nstlist 倍数energygrps              =      ; 输出到能量文件的组, 可使用多个, 默认所有compressed-x-grps       =      ; 输出xtc压缩坐标的组, 可使用多个, 默认所有compressed-x-precision  = 1000   ; xtc坐标的精度(1000表示1/1000, 三位小数)cutoff-scheme           = Verlet  ; 截断方式, Verlet: 粒子截断; Group: 电荷组ns-type                 = Grid   ; 邻区搜索算法, grid较快; simple仅与group联用nstlist                 = 10      ; 邻区列表更新频率, 0: 用于真空模拟; -1: 自动rlist                   = 1.0     ; 邻区列表截断距离(nm)nstcalclr               = -1     ; 长程邻区列表的计算频率rlistlong               = -1     ; 切换势能函数的长程邻区列表截断距离(nm)verlet-buffer-tolerance = 0.005      ; Verlet缓冲的能量误差(kJ/mol-ps-atom), -1表示使用rlistpbc                     = xyz    ; 周期性边界条件, xyz; xy; no: 忽略盒子, 截断与nstlist置零periodic-molecules      = no     ; 周期性分子: no, yesrvdw                    = 1.0     ; 范德华截断半径rcoulomb                = 1.0     ; 静电截断半径vdwtype                 = Cut-off ; 范德华计算方法coulombtype             = PME     ; 静电计算方法DispCorr                = No      ; 长程色散校正, no: 无; Ener: 能量; EnerPres: 能量和压力rvdw-switch             = 0        ; 范德华切换距离rcoulomb-switch         = 0         ;库伦切换距离vdw-modifier            = Potential-shift-Verlet ; 修正方法coulomb-modifier        = Potential-shift-Verletepsilon-r               = 1    ; 介质的相对介电常数, 0: 无穷大epsilon-rf              = 0    ; 反应场的相对介电常数, 0: 无穷大tcoupl           = v-rescale   ; 耦合方法, no: 无; v-rescale: 快速; nose-hoover: 精确tc-grps          = system      ; 温度耦合组, 可多个tau-t            = 2           ; 时间常数(ps)ref-t            = 298.15      ; 参考温度(K)pcoupl           = berendsen   ; 耦合方法, no: 无, 盒子大小不变; berendsen: 快速; Parrinello-Rahman: 精确pcoupltype       = Isotropic    ; 耦合类型, isotropic: 各向同性;; semiisotropic: x/y方向各向同性, 与z方向不同, 膜模拟; anisotropic: 各向异性, 盒子可能剧烈变形; surface-tension: 表面张力tau-p            = 1          ; 时间常数(ps)compressibility  = 4.5E-5        ; 压缩率(1/bar)ref-p            = 1          ; 参考压力(bar)nstpcouple       = -1          ; 耦合频率, -1: 同nstlistrefcoord-scaling = No           ; 缩放参考坐标: no: 无; all: 所有粒子; com: 质心

此文件和npt.mdp文件几乎一样,若没有特别的模拟要求,只需更改关键字nsteps,使得总的模拟时间是我们需要的模拟时间。且温度和压力采用的算法最好的组合为:tcoupl = nose-hooverpcoupl = Parrinello-Rahman



上面所说的特别情况,一般是可以外加电场,或者升温退火的模拟等等。如何在mdp文件里面添加外加电场、升温退火、使盒子只在某个方向加压强等等设置,以后再以专题文章分析讲解。



来源:模拟之家
SystemSTEPS电场控制数控GROMACS
著作权归作者所有,欢迎分享,未经许可,不得转载
首次发布时间:2024-09-07
最近编辑:2月前
刘十三613
博士 分子动力学、GROMACS
获赞 133粉丝 97文章 83课程 29
点赞
收藏
作者推荐
未登录
还没有评论
课程
培训
服务
行家
VIP会员 学习 福利任务 兑换礼品
下载APP
联系我们
帮助与反馈