这是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. intellij idea如何解决javax.servlet.http不存在

    正确的解决方法是:对项目名右键,选中Open Mudule Settings--选择左侧的Modules,选择右边的Dependencies--然后点击右侧边栏的绿色"+"号,点击 ...

  2. 多测师讲解jmeter _安装和配置环境(00)_高级讲师肖sir

    1.下载jmeter包,我们已经下载了有现成的: 2.安装jjdk默认安装或自定义安装 默认安装的路径: 如下图 3.第三步:安装完成后配置JDK的环境变量  位置:计算机→属性→高级系统设置→高级→ ...

  3. 多测师讲解python _unttest框架001(基本格式)_高级讲师肖sir

    1.unittest基本介绍 import unittest #导入unittest模块 #class Test(unittest.TestCase): def setUp(self): #创建dri ...

  4. day57 Pyhton 前端Jquery09

    内容回顾: - 筛选选择器 $('li:eq(1)')  查找匹配的元素 $('li:first') $('li:last') - 属性选择器 - 筛选的方法 - find()  查找后代的元素 - ...

  5. 一入Java深似海

    Java的基础语法 一个java程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来写协同工作.下面简要介绍下类.对象.方法和实例变量的概念. 对象: 对象是一个类的实例,有状态和行为.例如 ...

  6. golang的http库使用代理

    1.先上代码 package main import ( "crypto/tls" "flag" "fmt" "io/ioutil ...

  7. Vue.js 学习笔记之五:编译 vue 组件

    正如上一篇笔记中所说,直接使用 ES6 标准提供的模块规范来编写 Vue 组件在很多情况下可能并不是最佳实践.主要原因有两个,首先是市面上还有许多并没有对 ES6 标准提供完全支持的 Web 浏览器, ...

  8. spring cloud:通过client访问consul集群(spring cloud hoxton sr8 / spring boot 2.3.4)

    一,为什么要搭建consul的client? 1,网上的很多资料,访问consul时用的单机模式,这样是不可以直接在生产环境中使用的 还有一些资料,搭建了consul的集群后,直接访问集群中的某一个i ...

  9. 详解GaussDB(DWS) explain分布式执行计划

    摘要:本文主要介绍如何详细解读GaussDB(DWS)产生的分布式执行计划,从计划中发现性能调优点. 前言 执行计划(又称解释计划)是数据库执行SQL语句的具体步骤,例如通过索引还是全表扫描访问表中的 ...

  10. Anderson《空气动力学基础》5th读书笔记 第0记——白金汉PI定理

    目录 量纲分析:白金汉PI定理 相似参数 量纲分析:白金汉PI定理 在空气动力学中,飞机的空气动力主要由自由来流的密度ρ∞,自由来流数V∞,翼弦长度c,自由来流的粘性系数μ∞以及音速a∞,所以假设我们 ...