这是mdp文件系列的第二篇,介绍nvt平衡中要使用的mdp文件。

先上代码,nvt.mdp

 1 title       = OPLS Lysozyme NVT equilibration
2 define = -DPOSRES
3 ; Run parameters
4 integrator = md
5 nsteps = 50000
6 dt = 0.002
7 ; Output control
8 nstxout = 500
9 nstvout = 500
10 nstenergy = 500
11 nstlog = 500
12 ; Bond parameters
13 continuation = no
14 constraint_algorithm = lincs
15 constraints = all-bonds
16 lincs_iter = 1
17 lincs_order = 4
18 ; Neighborsearching
19 cutoff-scheme = Verlet
20 ns_type = grid
21 nstlist = 10
22 rcoulomb = 1.0
23 rvdw = 1.0
24 ; Electrostatics
25 coulombtype = PME
26 pme_order = 4
27 fourierspacing = 0.16
28 ; Temperature coupling is on
29 tcoupl = V-rescale
30 tc-grps = Protein Non-Protein
31 tau_t = 0.1 0.1
32 ref_t = 300 300
33 ; Pressure coupling is off
34 pcoupl = no
35 ; Periodic boundary conditions
36 pbc = xyz
37 ; Dispersion correction
38 DispCorr = EnerPres
39 ; Velocity generation
40 gen_vel = yes
41 gen_temp = 300
42 gen_seed = -1

按行解释:

1.title 说明这个mdp文件的作用

2.NVT NPT模拟中都需要对蛋白质做位置限定,这样做是为了避免在平衡过程中把蛋白质打散,最终的md模拟中要放开位置限制。

3.运行参数部分

4.与minim.mdp中类似,不同的是这次我们不再做能量最小化,而是做MD模拟,这里md代指蛙跳算法

5-6.运行步长为0.002ps=2fs 总运行时间为2*50000=100ps,一般10-20ps体系就可以完成弛豫,所以取100ps一般是没有问题的

7.输出控制

8-9.每500步输出一次坐标和速度

10.每500步向能量文件中输出一次,模拟结束的能量一定输出

11.每500步向日志文件中输出一次能量

12.键合部分

13.continuation这个指令以前叫做unconstrained-start 直译就是“未限定即开始”,取no时意味着对初始结构做位置限定并重构壳层;取yes相反

14.限定算法选择lincs

15.键合限制  对所有键做限制

16-17:与lincs算法的精度有关,一般取1,4

18.临近搜索部分

19.截断方式 Verlet

20.临近格子搜索方式选择grid

21.临近列表更新频率 10步更新一次

22.短程库伦力截断距离(nm)

23.短程范德华力截断距离(nm)

24.库伦力部分

25.库伦长程力计算方式 PME

26-27:与精度有关

28.温度耦合部分

29.温度耦合,选择了Beredesen方式

30.温度耦合组 分为蛋白质和非蛋白质组

31.耦合时间常数 对两个组各自定义  单位为ps

32.耦合温度  对两个组各自定义  单位为K

33.压力耦合部分

34.压力耦合不进行

35.周期性边界条件部分

36.对三个方向均进行周期性边界条件限制

37.色散力修正

38.选择修正方案

39.速度产生部分

40.是否产生速度:是 按照Maxwell分布随机分布

41.Maxwell分布中的温度 300K

42.随机数生成种子 -1

接下来要对其中的几个重要部分做一解释,与minim.mdp重合的就不重复解释了。

约束算法:12-17行

约束是必要的,否则的话键合将会被打断,在Gromacs中可以使用默认的lincs算法或传统的shake算法来进行约束。参考文档3.6节。SHAKE算法将一组不受约束的坐标转变为一组坐标,使其满足一系列距离约束条件。而lincs算法则是始终将键重置为它们的正确长度,这个方法不进行迭代。lincs的精度取决于算法中展开方程的矩阵阶数,对于MD来说四阶就够了。精度为一阶。第16行的lincs_iter指精度,指定为1;lincs_order为四阶。

温度耦合:28-32行

直接使用的分子动力学模拟体系对应于NVE系综,这在现实中是显然不存在的。NVT系综可以让系统处于恒温,这稍微现实一点。当然最后还是要进行NPT模拟,这才对对应于真实情况。Gromacs中实现恒温过程有以下几种方案:

Berendsen温度耦合:模仿与给定温度的热浴T0相连。优点很显然:对于以平衡为目的的模拟可以采用极小的的时间常数,对于比较可靠的体系则可以使用较大的时间常数。Berendsen耦合不会产生正确的正则系综,且会降低动能的涨落。

速度重缩放温度耦合:本质上还是一个Berendsen耦合,但是附加了一个随机项,以保证能给出正确的动能分布,能够给出正确的正则系综。上面文件中第29行的v-rescale即代表选择该耦合方式。

Anderson控温器:使用NVE积分方法,并周期性的从M-B分布(Maxwell-Boltzmann distribution)中重新选择粒子速度。通过每τ/Δt步同时对所有粒子的速度进行随机化,或通过一小概率(Δt/τ)随机化每个粒子的速度.Δt为时间步长,tau为特征耦合时间长度。这样一来,这个方法不能用来考察动力学和输运性质。

Nose-Hoover耦合:Berendsen 弱耦合算法可以非常高效地将体系弛豫到到目标温度, 但是, 一旦系统达到平衡, 维持正确的正则系综更重要. 很可惜,弱耦合方案并不能满足这一点.

Nose和Hoover提出一种方法,在运动方程中引入一个热容器和一个摩擦项,来实现一种新的耦合。具体请参考文档。

组内温度耦合:将蛋白质和非蛋白质分开耦合。即文件中第30行。

色散纠正:37-38行

色散需要纠正,因为对Lennard-Jones或Buckingham相互作用截断而引起的。我们假定截断足够大以至于可以安全地忽略斥力项, 因此只须考虑色散项的校正.可参考文档4.9节。具体在mdp文件中只有三个选项:no(不进行修正),EnerPres(对能量和压力进行修正),Ener(只对能量进行修正)。一般情况下色散纠正对能量影响较小,而对压力影响很大,因此一般要采用EnerPres选项。

速度产生:39-42行

有三个选项,gen-vel:

no:Do not generate velocities. The velocities are set to zero when there are no velocities in the input structure file.

yes:在gen-temp温度下,按照M-B分布产生速度

gen-temp:定义温度

gen-seed:随机数种子。

至此,nvt.mdp告一段落。

mdp文件-Chapter2-NVT.mdp的更多相关文章

  1. mdp文件-Chapter4-MD.mdp

    终于到了mdp系列的第四篇,最终MD模拟的mdp文件 先上代码,md.mdp 1 title = OPLS Lysozyme MD simulation 2 ; Run parameters 3 in ...

  2. mdp文件-Chapter3-NPT.mdp

    mdp系列的第三篇,对NPT模拟中的mdp文件做一简单介绍. 先上代码 1 title = OPLS Lysozyme NPT equilibration 2 define = -DPOSRES ; ...

  3. mdp文件-Chapter1-MINIM.mdp

    mdp文件是能量最小化,NVT模拟,NPT模拟与MD模拟的必须文件. mdp文件的详细解释可以参考官方文档http://manual.gromacs.org/online/mdp_opt.html 接 ...

  4. martini-md参数(mdp文件)

    输入参数:一个典型的mdp文件 1 ; 2 ; STANDARD MD INPUT OPTIONS FOR MARTINI 2.x 3 ; Updated 02 feb 2013 by DdJ 4 ; ...

  5. martini-能量最小化参数(mdp文件)

    1 ; 2 ; STANDARD MD INPUT OPTIONS FOR MARTINI 2.x 3 ; Updated 02 feb 2013 by DdJ 4 ; 5 ; for use wit ...

  6. Gromacs分子动力学模拟流程概述

    Gromacs分子动力学模拟主要可以分为以下几个步骤,不同的体系步骤可能略有不同. 在开始之前,先简单了解一下预平衡: 分子动力学模拟的最终目的是对体系进行抽样,然后计算体系的能量,各种化学键,成分分 ...

  7. Visual C++文件后缀名释义

    [1] .APS:存放二进制资源的资源辅助中间文件(可加快资源装载速度). [2] .BMP:位图资源文件. [3] .BSC:浏览信息文件.由浏览信息维护工具(BSCMAKE)从原始浏览信息文件(. ...

  8. Visual C++文件扩展名解读

    VisualC++文件扩展名解读 [1] .APS:存储二进制资源的资源辅助中间文件(能否加快资源加载速度). [2] .BMP:位图资源文件. [3] .BSC:浏览信息文件.由浏览信息维护工具(B ...

  9. Gromacs命令-Chapter1

    Gromacs的命令非常多,下面我将我最近用到的先总结一下.标题上也写了这只是Chapter1,以后有新的会继续写Chapter2...等等. 下面这个网址http://manual.gromacs. ...

随机推荐

  1. Python+Appium自动化测试(7)-截图方法

    一,selenium模块的两种截图方法 get_screenshot_as_file(filename) 参数filename为截图文件保存的绝对路径,如: driver.get_screenshot ...

  2. 多测师讲解自动化测试 _RF封装_(三层模式)高级讲师肖sir

    rf自动化:分层作用: 1.项目----有重复的流程(借款-登录,出借-登录) 2.借款--登录(8个流程)机器人:案例层(用例)写在机器人中,1个机器人=1条用例 分三个层次: 1.案例层(存放用例 ...

  3. python实现elasticsearch操作-CRUD API

    python操作elasticsearch常用API 目录 目录 python操作elasticsearch常用API1.基础2.常见增删改操作创建更新删除3.查询操作查询拓展类实现es的CRUD操作 ...

  4. C语言编程丨循环链表实现约瑟夫环!真可谓无所不能的C!

    循环链表   把链表的两头连接,使其成为了一个环状链表,通常称为循环链表. 和它名字的表意一样,只需要将表中最后一个结点的指针指向头结点,链表就能成环儿,下图所示.   需要注意的是,虽然循环链表成环 ...

  5. spring boot:thymeleaf模板中insert/include/replace三种引用fragment方式的区别(spring boot 2.3.3)

    一,thymeleaf模板中insert/include/replace三种引用fragment方式的区别 insert: 把整个fragment(包括fragment的节点tag)插入到当前节点内部 ...

  6. zabbix安装中文语言包及中文乱码的解决(zabbix5.0)

    一,zabbix不能配置中文界面的问题: 1, zabbix5.0 系统安装后,web界面不能选择使用中文 系统提示: You are not able to choose some of the l ...

  7. C# XML解析

    摘自:http://www.cnblogs.com/RiseSoft/archive/2012/03/17/2404007.html 之前在项目中处理的都是一些小数据量的XML文件,都是直接用.Net ...

  8. 如何将Nginx注册为系统服务,开机自启动。

    亲测有效! 一般程序员在实际工作中,除了敲代码,很少有机会实际接触操作其它东西,例如服务器环境搭建,项目部署等等,不是领导信任或项目组核心成员,应该是没有机会实际接触的,只能通过网上资料稍微了解一下. ...

  9. frida框架hook参数获取方法入参模板

    python脚本 # -*- coding: utf-8 -*- import logging import frida import sys logging.basicConfig(level=lo ...

  10. java 常用快捷键及命令积累

    ctl + shift + o--->导入所需包,删掉没有被引用的包 ctl + / --->添加多行注释 ctl + \--->删除多行注释