计算化学公社

 找回密码 Forget password
 注册 Register
Views: 101|回复 Reply: 4
打印 Print 上一主题 Last thread 下一主题 Next thread

[GROMACS] gromacs在做退火模拟时不同的续算命令运行结果有问题

[复制链接 Copy URL]

8

帖子

0

威望

39

eV
积分
47

Level 2 能力者

本帖最后由 lts! 于 2025-8-10 20:31 编辑

我在做200个小分子的平衡态模拟,首先在650K下NPT了60ns后达到平衡,然后进行退火模拟。以下是我的mdp文件

integrator               = md
dt                       = 0.002
nsteps                   = 50000000

; 温度耦合(恒温)
tcoupl                   = V-rescale
tc-grps                  = System
ref-t                    = 650
gen-temp          = 650
tau-t                    = 0.2

; 压力耦合(恒压)
pcoupl                   = C-rescale
pcoupltype               = isotropic
ref-p                    = 1.0
tau-p                    = 2               
compressibility          = 4.5e-5


; 周期性边界条件与截断
pbc                      = xyz
cutoff-scheme            = Verlet
rlist                    = 1.5
vdwtype                  = Cut-off
rvdw                     = 1.5              
coulombtype              = PME  
rcoulomb                 = 1.5

; 约束设置
constraints              = h-bonds
constraint-algorithm     = LINCS
lincs-order              = 4
lincs-iter               = 1

; 退火设置
annealing                = single   
annealing-npoints        = 36
annealing-time           = 0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 11000 12000 13000 14000 15000 16000 17000 18000 19000 20000 21000 22000 23000 24000 25000 26000 27000 28000 29000 30000 31000 32000 33000 34000 35000
annealing-temp           = 650 640 630 620 610 600 590 580 570 560 550 540 530 520 510 500 490 480 470 460 450 440 430 420 410 400 390 380 370 360 350 340 330 320 310 300

; 输出控制
nstxout                  = 5000      ; 每5000步输出结构(10 ps一次)
nstenergy                = 500       ; 每500步输出能量(1 ps一次)
nstlog                   = 500       ; 每500步记录日志
energygrps               = System    ; 能量输出组
nstxout-compressed = 5000      ; 轨迹精度(减少文件大小)

continuation=yes
gen-vel=no

如果我采用以下这样的续算命令
gmx grompp -f cool.mdp -p L8BO.top -c NPT.gro -t NPT.cpt -o cool.tpr
gmx mdrun -v -s cool.tpr -cpi NPT.cpt -nb gpu -bonded gpu -pme gpu·
那么会如下图所示,刚开始运行时规定的温度便是300K,且一直保持在300K附近,奇怪的是看log文件中是有正确识别退火设定的

图1,使用第一种续算命令时log文件内容异常的温度设定

图2,使用第一种续算命令时log文件内容中读取的退火设定
而如果我采用下面这种续算命令
gmx grompp -f cool.mdp -p L8BO.top -c NPT.gro -t NPT.cpt -o cool.tpr
gmx mdrun -v -deffnm cool -nb gpu -update gpu -pme gpu
退火就没有问题,以下是在这样的续算命令下的温度变化图

图3,第二种续算命令下运算后的温度控制图










8

帖子

0

威望

39

eV
积分
47

Level 2 能力者

5#
 楼主 Author| 发表于 Post on 7 hour ago | 只看该作者 Only view this author
student0618 发表于 2025-8-11 18:07
所以这边不应用-cpi 续跑

通常是在跑同一任务断掉才会用

哦哦好的!

485

帖子

1

威望

1131

eV
积分
1636

Level 5 (御坂)

A Student

4#
发表于 Post on yesterday 18:07 | 只看该作者 Only view this author
所以这边不应用-cpi 续跑

通常是在跑同一任务断掉才会用
敬仰一针见血的指责,厌倦别有用心的赞美。

8

帖子

0

威望

39

eV
积分
47

Level 2 能力者

3#
 楼主 Author| 发表于 Post on yesterday 16:55 | 只看该作者 Only view this author
student0618 发表于 2025-8-11 13:36
npt.cpt timestamp是60000ps开始

cool.mdp 60000ps 是300K

我也试过给这次任务的时间全部加上60000,变成60000,61000,...,但是这样的话,必须得把60000变成0,然后变成0,61000,62000,才可以算,不然他会报错First time point for annealing > init_t.

485

帖子

1

威望

1131

eV
积分
1636

Level 5 (御坂)

A Student

2#
发表于 Post on yesterday 13:36 | 只看该作者 Only view this author
npt.cpt timestamp是60000ps开始

cool.mdp 60000ps 是300K

这当然会停在300K
敬仰一针见血的指责,厌倦别有用心的赞美。

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2025-8-12 17:44 , Processed in 0.440476 second(s), 24 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list