计算化学公社

标题: Parrinello-Rahman热浴随模拟时间增加,体系波动增加 [打印本页]

作者
Author:
施潇虎    时间: 2025-10-29 10:28
标题: Parrinello-Rahman热浴随模拟时间增加,体系波动增加
大家好,我在模拟聚合物在水中的运动,在充分预平衡后,使用Parrinello-Rahman热浴进行数据收集,但是发现这个过程温度的变化越来越剧烈,最后趋于稳定。我第一次使用GROMACS,这个现象正常吗

输入参数文件:
title                    = run_npt
define                   = -DPOSRES_mxene  ;约束mxene
integrator               = md
dt                       = 0.001 ; 时间步长(单位为ps, 我们使用了2 fs). 只用于动力学积分器(如md), 能量最小化时不需要
nsteps                   = 5000000 ; 模拟步数(总模拟时间为nsteps*dt)
constraints              = h-bonds ;约束氢键
constraint_algorithm     = lincs
lincs_iter               = 1
lincs_order              = 4
periodic-molecules = yes         ;用于周期性边界材料

; 输出控制参数
nstxout                  = 10000   ; 输出模拟坐标的频率(nstxout=500且dt=0.002, 所以每1 ps输出一次)
nstvout                  = 10000   ; 速度保存频率
nstenergy                = 10000   ; 能量保存频率
nstlog                   = 10000   ; log文件输出频率

; 近邻列表参数
nstlist                  = 20    ;每 20 步更新邻居列表
pbc                      = xyz   ;周期边界条件 xyz 全开


; 静电和VDW参数
coulombtype              = PME  ; 长程静电相互作用的计算方法
cutoff-scheme            = Verlet ;使用 Verlet scheme,更适合 PME 模拟
pme_order                = 4    ; 三次插值
fourierspacing           = 0.12 ; FFT间隔
rcoulomb                 = 1.4  ; 计算静电作用的截断值(单位nm)
vdw-type                 = Cut-off
rvdw                     = 1.4
DispCorr                 = EnerPres ; 校正VDW截断


; 温度耦合部分非常重要, 必须正确填写.
tcoupl                   = v-rescale      ; Velocity-rescale 温控器,带随机扰动,保持 Canonical NVT
tc-grps                  = mxene no_mxene         ;全系统耦合
tau_t                    = 0.2 0.2            ; 温度耦合的时间常数(单位ps). 必须每个tc_grps指定一个, 且顺序对应
ref_t                    = 300 300       ; 代表耦合的参考温度(即动力学模拟的温度, 单位K). 每个tc_grp对应一个ref_t
nsttcouple               = 10        ; 每 5 步更新一次温控器


; 压力耦合
pcoupl                  =  Parrinello-Rahman   ; NPT中压力耦合Parrinello-Rahman,C-rescale(产生相,系综严格)Berendsen(平衡相,不会有震荡),NVT设置为no
pcoupltype              =  semiisotropic   
tau_p                   =  20.000000    ;压力耦合的时间常
ref_p                   =  1.0 1.0   
compressibility         =  4.5e-5 4.5e-5    ;系统压缩率
nstpcouple              =  50           ;更新压力耦合
refcoord_scaling        =  com     ;压力耦合时参考坐标缩放按质心


; 初始速度选项
gen_vel                  = no    ; 使用NVT模拟保留的速度,不生成新速度
continuation            = yes       ; Restarting after NVT

; 退火
;annealing               =  periodic periodic;周期性退火
;annealing-npoints       =  6 6        ;时间点数量
;annealing-time          =  0   15000  30000  230000  245000  250000  0   15000  30000  230000  245000  250000    ;每个时间点对应的步数
;annealing-temp          =  300  325    350   350      320    300     300  320    350    350     320     300   ;对应时间点温度(K),升温 → 保温 → 降温 → 回到初始温度



作者
Author:
student0618    时间: 2025-10-29 13:46
现在用v-rescale就好。
作者
Author:
jackshoulder    时间: 2025-10-29 14:28
student0618 发表于 2025-10-29 13:46
现在用v-rescale就好。

应该是C-rescale,2021较新的方法,gromacs直接支持的

作者
Author:
施潇虎    时间: 2025-10-29 14:41
jackshoulder 发表于 2025-10-29 14:28
应该是C-rescale,2021较新的方法,gromacs直接支持的

好的,谢谢
作者
Author:
施潇虎    时间: 2025-10-29 14:41
student0618 发表于 2025-10-29 13:46
现在用v-rescale就好。

谢谢




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