计算化学公社

标题: 求助模拟有机分子聚集过程参数如何设置 [打印本页]

作者
Author:
tiandikuoyuan    时间: 2021-6-15 15:18
标题: 求助模拟有机分子聚集过程参数如何设置
各位老师,我想模拟有机分子在不良溶剂堆积的过程,咨询一下使用gromacs模拟计算的参数如何设置以及模型构建是否合理。有机分子元素有CHN,分子不带电荷;已经通过Multiwfn计算出RESP电荷,并通过acpype生成了拓扑文件;通过packmol生成了5*5*50nm的盒子,插入了300个分子,随后通过gmx solvate在盒子中填充水分子。分别做了能量最小化、NVT平衡、NPT平衡和MD;由于教程是蛋白质模拟,参数设置可能不是很合理;由于刚接触gromacs,很多参数不太清楚,请老师帮忙看下哪里需要改进。
(, 下载次数 Times of downloads: 67)




(, 下载次数 Times of downloads: 63)

当前能量最小化使用的参数minim.mdp:
  1. define          = -DFLEXIBLE
  2. integrator      = steep
  3. emtol           = 250.0
  4. nsteps          = 5000
  5. nstenergy       = 1
  6. energygrps      = System
  7. nstlist         = 1
  8. ns_type         = grid
  9. coulombtype     = PME
  10. rlist           = 1.0
  11. rcoulomb        = 1.0
  12. rvdw            = 1.0
  13. constraints     = none
  14. pbc             = xyz
复制代码
NVT平衡使用的参数nvt.mdp:
  1. ; 预处理选项
  2. define                   = -DPOSRES ; 告诉GROMACS运行位置限制性模拟
  3. ; 运行控制参数
  4. integrator               = md
  5. dt                       = 0.002 ; 时间步长(单位为ps, 我们使用了2 fs). 只用于动力学积分器(如md), 能量最小化时不需要
  6. nsteps                   = 50000 ; 模拟步数(总模拟时间为nsteps*dt)
  7. ; 输出控制参数
  8. nstxout                  = 500   ; 输出模拟坐标的频率(nstxout=500且dt=0.002, 所以每1 ps输出一次)
  9. nstvout                  = 500   ; 速度保存频率
  10. nstenergy                = 500   ; 能量保存频率
  11. nstlog                   = 500   ; log文件输出频率
  12. ; 近邻列表参数
  13. nstlist                  = 5
  14. ns_type                  = grid
  15. pbc                      = xyz
  16. rlist                    = 1.0
  17. ; 静电和VDW参数
  18. coulombtype              = PME  ; 长程静电相互作用的计算方法
  19. pme_order                = 4    ; 三次插值
  20. fourierspacing           = 0.16 ; FFT间隔
  21. rcoulomb                 = 1.0  ; 计算静电作用的截断值(单位nm)
  22. vdw-type                 = Cut-off
  23. rvdw                     = 1.0
  24. ; 温度耦合部分非常重要, 必须正确填写.
  25. tcoupl                   = v-rescale            ; 随机重新调整速度
  26. tc-grps                  = System ; 与控温器耦合的组(模型中的每个原子或残基都用一定的索引组表示)
  27. tau_t                    = 0.1              ; 温度耦合的时间常数(单位ps). 必须每个tc_grps指定一个, 且顺序对应
  28. ref_t                    = 300             ; 代表耦合的参考温度(即动力学模拟的温度, 单位K). 每个tc_grp对应一个ref_t
  29. ; 色散校正
  30. DispCorr                 = EnerPres ; 校正VDW截断
  31. ; 不使用压力耦合
  32. pcoupl                   = no                    ; NVT中不能使用压力耦合
  33. ; 初始速度选项
  34. gen_vel                  = yes    ; 根据Maxwell分布随机产生速度
  35. gen_temp                 = 300    ; 当你改变温度时, 别忘了改变gen_temp变量以生成速度
  36. gen_seed                 = -1     ; 随机数生成器的种子
  37. ; 键约束选项
  38. constraints              = all-bonds    ; 使用LINCS算法约束所有键
  39. continuation             = no           ; 第一次运行
  40. constraint_algorithm     = lincs        ; 约束算法
  41. lincs_iter               = 1            ; LINCS精度
  42. lincs_order              = 4            ; LINCS阶数, 与精度有关
复制代码
NPT平衡使用的参数npt.mdp:
  1. define                   = -DPOSRES
  2. integrator               = md
  3. dt                       = 0.002
  4. nsteps                   = 50000
  5. nstxout                  = 500
  6. nstvout                  = 500
  7. nstfout                  = 500
  8. nstenergy                = 500
  9. nstlog                   = 500
  10. nstlist                  = 5
  11. ns-type                  = Grid
  12. pbc                      = xyz
  13. rlist                    = 1.0
  14. coulombtype              = PME
  15. pme_order                = 4
  16. fourierspacing           = 0.16
  17. rcoulomb                 = 1.0
  18. vdw-type                 = Cut-off
  19. rvdw                     = 1.0
  20. Tcoupl                   = V-rescale
  21. tc-grps                  = System
  22. tau_t                    = 0.1      
  23. ref_t                    = 300
  24. DispCorr                 = EnerPres
  25. ; 压力耦合
  26. Pcoupl                   = Parrinello-Rahman ; Parrinello-Rahman控压器.
  27. Pcoupltype               = Isotropic         ; isotropic 指盒子可以平均地向各个方向(x, y,z)膨胀或压缩以维持一定的压力. 进行膜模拟时需要用semiisotropic.
  28. tau_p                    = 2.0               ; 压力耦合的时间常数(单位ps).
  29. compressibility          = 4.5e-5            ; 溶剂的压缩系数(4.5e-5为水在300 K和标准大气压下的压缩系数).
  30. ref_p                    = 1.0               ; 压力耦合的参考压力(单位bar, 1大气压约为0.983 bar).
  31. refcoord_scaling         = com
  32. gen_vel                  = no                ; 不产生速度
  33. constraints              = all-bonds
  34. continuation             = yes
  35. constraint_algorithm     = lincs
  36. lincs_iter               = 1
  37. lincs_order              = 4
复制代码
MD过程md.mdp:
  1. integrator               = md
  2. dt                       = 0.002
  3. nsteps                   = 500000 ; 1 ns
  4. nstxout                 = 500
  5. nstvout                 = 500
  6. nstfout                 = 500
  7. nstenergy               = 500
  8. nstlog                  = 500
  9. nstlist                  = 5
  10. ns-type                  = Grid
  11. pbc                      = xyz
  12. rlist                    = 1.0
  13. coulombtype              = PME
  14. pme_order                = 4
  15. fourierspacing           = 0.16
  16. rcoulomb                 = 1.0
  17. vdw-type                 = Cut-off
  18. rvdw                     = 1.0
  19. Tcoupl                   = v-rescale
  20. tc-grps                  = System
  21. tau_t                    = 0.1     
  22. ref_t                    = 300
  23. DispCorr                 = EnerPres
  24. Pcoupl                   = Parrinello-Rahman
  25. Pcoupltype               = Isotropic
  26. tau_p                    = 2.0
  27. compressibility          = 4.5e-5
  28. ref_p                    = 1.0
  29. gen_vel                  = no
  30. constraints              = all-bonds
  31. continuation             = yes
  32. constraint_algorithm     = lincs
  33. lincs_iter               = 1
  34. lincs_order              = 4
复制代码



作者
Author:
sobereva    时间: 2021-6-15 16:33
描述得不清楚。直接把体系结构截图发出来

直接用NPT就完了,根本不需要先做NVT。平衡之前不要用PR压浴

没事不要自己改fourierspacing、nstlist,直接用默认的

绝对不要用constraints              = all-bonds,一些教程严重误人子弟

用什么方式算静电作用和分子带不带净电荷完全没有直接关系。周期性体系若无特殊情况一律用PME




作者
Author:
tiandikuoyuan    时间: 2021-6-15 19:57
sobereva 发表于 2021-6-15 16:33
描述得不清楚。直接把体系结构截图发出来

直接用NPT就完了,根本不需要先做NVT。平衡之前不要用PR压浴

非常感谢老师指导!我重新调整参数计算一下。
(, 下载次数 Times of downloads: 70)


(, 下载次数 Times of downloads: 77)

(, 下载次数 Times of downloads: 79)



作者
Author:
sobereva    时间: 2021-6-16 00:49
tiandikuoyuan 发表于 2021-6-15 19:57
非常感谢老师指导!我重新调整参数计算一下。
  • 结构为芳香环+烷基链,只是烷基链长度不一样。

  • constraint设hbonds

    想往中间聚集显然得去掉周期性
    作者
    Author:
    牧生    时间: 2021-6-16 14:13
    sobereva 发表于 2021-6-16 00:49
    constraint设hbonds

    想往中间聚集显然得去掉周期性

    我也被相似的问题困扰了很久了。。

    做表面活性剂的自组装,文献中我看到最低有不到100 mmol/L的浓度即可形成棒状胶束,而我要做到接近500  mmol/L才能看到棒状胶束。。

    如果我建立一个长方体的盒子,去掉了周期性,那么,分子就会在长方体内形成棒状胶束吗?

    去掉周期性,就是取消pbc = xyz这一行就行了吗?   教程里面的辛醇和水的分离,也形成了棒状的形状,mdp里面就有pbc = xyz,显示XYZ周期以后,看起来就很好。
    作者
    Author:
    tiandikuoyuan    时间: 2021-6-16 14:39
    sobereva 发表于 2021-6-16 00:49
    constraint设hbonds

    想往中间聚集显然得去掉周期性

    老师,我现在在原先盒子(5*5*80)的基础上增加了5nm的真空层,先做能量最小化,然后做了NVT位置限制性模拟,看能量和势能是达到了平衡;但是跑MD过程中分子还是跨过了真空层,这是因为分子太长了吗(整个分子长度将近5nm)? (, 下载次数 Times of downloads: 85)
    另外,老师能帮忙看下当前设置的参数有哪些需要改进或者错误的地方吗?十分感谢!
    能量最小化使用的参数minim.mdp:
    1. define          = -DPOSRES
    2. integrator      = steep
    3. emtol           = 10.0
    4. nsteps          = 5000
    5. nstenergy       = 1
    6. energygrps      = System
    7. nstlist         = 10
    8. ns-type         = grid
    9. coulombtype     = PME
    10. rlist           = 1.0
    11. rcoulomb        = 1.0
    12. rvdw            = 1.0
    13. constraints     = none
    14. pbc             = xyz
    复制代码
    NVT平衡使用的参数nvt.mdp:
    1. define                   = -DPOSRES
    2. integrator               = md
    3. dt                       = 0.002
    4. nsteps                   = 50000
    5. nstxout                  = 500
    6. nstvout                  = 500
    7. nstenergy                = 500
    8. nstlog                   = 500
    9. nstlist                  = 10
    10. ns-type                  = grid
    11. pbc                      = xyz
    12. rlist                    = 1.0
    13. coulombtype              = PME
    14. pme-order                = 4
    15. fourierspacing           = 0.12
    16. rcoulomb                 = 1.0
    17. vdw-type                 = Cut-off
    18. rvdw                     = 1.0
    19. tcoupl                   = v-rescale
    20. tc-grps                  = System
    21. tau-t                    = 0.1
    22. ref-t                    = 300
    23. DispCorr                 = EnerPres
    24. pcoupl                   = no
    25. gen-vel                  = yes
    26. gen-temp                 = 300
    27. gen-seed                 = -1
    28. constraints     = h-bonds
    29. continuation             = no
    30. constraint-algorithm     = lincs
    31. lincs-iter               = 1
    32. lincs-order              = 4
    复制代码
    MD过程md.mdp:
    1. integrator               = md
    2. dt                       = 0.002
    3. nsteps                   = 500000 ; 1 ns
    4. nstxout                 = 5000
    5. nstvout                 = 5000
    6. nstfout                 = 5000
    7. nstenergy               = 5000
    8. nstlog                  = 5000
    9. nstlist                  = 10
    10. ns-type                  = Grid
    11. pbc                      = xyz
    12. rlist                    = 1.0
    13. coulombtype              = PME
    14. pme-order                = 4
    15. fourierspacing           = 0.12
    16. rcoulomb                 = 1.0
    17. vdw-type                 = Cut-off
    18. rvdw                     = 1.0
    19. Tcoupl                   = v-rescale
    20. tc-grps                  = System
    21. tau-t                    = 2.0     
    22. ref-t                    = 300
    23. DispCorr                 = EnerPres
    24. Pcoupl                   = no
    25. gen-vel                  = no
    26. constraints     = h-bonds
    27. continuation             = yes
    28. constraint-algorithm     = lincs
    29. lincs-iter               = 1
    30. lincs-order              = 4
    复制代码



    作者
    Author:
    sobereva    时间: 2021-6-17 11:44
    tiandikuoyuan 发表于 2021-6-16 14:39
    老师,我现在在原先盒子(5*5*80)的基础上增加了5nm的真空层,先做能量最小化,然后做了NVT位置限制性模拟 ...

    有真空区的体系明显不应当用DispCorr                 = EnerPres

    都说了要去掉周期性,你还写pbc             = xyz干嘛,明显要设no

    另外,跑你这种体系,做位置限制的动力学这一步完全是多余的,直接做常规动力学就完了


    作者
    Author:
    tiandikuoyuan    时间: 2021-6-17 13:50
    sobereva 发表于 2021-6-17 11:44
    有真空区的体系明显不应当用DispCorr                 = EnerPres

    都说了要去掉周期性,你还写pbc     ...

    谢谢老师;我将pbc设为no之后,运行时报错了,说是cutoff-scheme = Verlet不支持pbc = no,但是当前版本cutoff-scheme只有Verlet一个选项,这应该怎么解决?
    minim.mdp:
    1. integrator      = steep
    2. emtol           = 10.0
    3. nsteps          = 5000
    4. nstenergy       = 1
    5. energygrps      = System
    6. nstlist         = 10
    7. coulombtype     = PME
    8. rlist           = 1.0
    9. rcoulomb        = 1.0
    10. rvdw            = 1.0
    11. constraints     = none
    12. pbc             = no
    复制代码
    错误信息:
    1. ERROR 1 [file minim.mdp]:
    2.   With Verlet lists only full pbc or pbc=xy with walls is supported
    3. ERROR 2 [file minim.mdp]:
    4.   Can not have Ewald with pbc=no
    复制代码



    作者
    Author:
    牧生    时间: 2021-6-18 09:53
    我也试了下,cutoff-scheme = Verlet不支持pbc = no

    但是cutoff-scheme只有Verlet一个选项才能支持GPU加速。


    作者
    Author:
    sobereva    时间: 2021-6-19 00:22
    tiandikuoyuan 发表于 2021-6-17 13:50
    谢谢老师;我将pbc设为no之后,运行时报错了,说是cutoff-scheme = Verlet不支持pbc = no,但是当前版本[ ...

    没PBC了,当然不能用Ewald及其变体
    改成cut-off算静电作用
    并且改用group方式构建邻居列表代替verlet方式(但版本太新的话不行)

    作者
    Author:
    tiandikuoyuan    时间: 2021-6-19 16:53
    sobereva 发表于 2021-6-19 00:22
    没PBC了,当然不能用Ewald及其变体
    改成cut-off算静电作用
    并且改用group方式构建邻居列表代替verlet方 ...

    好的,老师,我已经安装2019.6版本计算了一下。
    请问我想统计MD过程中某一帧中所有分子内某两个原子间的距离分布,比如说计算烷基链末端碳原子和咔唑上氮原子的距离范围和概率,gromacs或者vmd中有现成的命令吗,还是需要自己去编代码计算原子距离?主要是想探讨分子聚集过程中烷基链末端与咔唑之间距离变化范围。
    作者
    Author:
    sobereva    时间: 2021-6-20 17:45
    tiandikuoyuan 发表于 2021-6-19 16:53
    好的,老师,我已经安装2019.6版本计算了一下。
    请问我想统计MD过程中某一帧中所有分子内某两个原子间的 ...

    得自己写脚本
    作者
    Author:
    小维    时间: 2024-9-13 08:42
    本帖最后由 小维 于 2024-9-13 10:31 编辑

    哥,在线吗?关于模拟有机分子聚集过程参数如何设置的一些问题想请教下您。




    欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3