计算化学公社

标题: 如何解决Domain decomposition does not work with nstlist=0呢? [打印本页]

作者
Author:
yihanxu    时间: 2019-3-21 11:42
标题: 如何解决Domain decomposition does not work with nstlist=0呢?
本帖最后由 yihanxu 于 2019-3-29 21:40 编辑

sob老师好,大家好,
为一个聚合物链运行一个真空下的MD或者EM,出现:
Domain decomposition does not work with nstlist=0
想请教大家如何解决?多谢!



作者
Author:
beyond    时间: 2019-3-21 16:58
提示说的很明白啊,修改mdp文件中的nstlist, 使之>0
作者
Author:
yihanxu    时间: 2019-3-22 02:35
beyond 发表于 2019-3-21 02:58
提示说的很明白啊,修改mdp文件中的nstlist, 使之>0

谢谢。请问不可以等于0吗?为什么呢?
作者
Author:
beyond    时间: 2019-3-23 01:05
yihanxu 发表于 2019-3-22 02:35
谢谢。请问不可以等于0吗?为什么呢?

那你为什么要设为0呢
作者
Author:
sobereva    时间: 2019-3-23 03:50
你的这个链本身是有限长度的,还是无限长度的跨越盒子那种?如果是前者,em.gro里就不应该有盒子信息,而且看着是PBC形式记录的轨迹。
作者
Author:
sobereva    时间: 2019-3-23 03:51
beyond 发表于 2019-3-23 01:05
那你为什么要设为0呢

0对应The neighbor list is only constructed once and never updated. This is mainly useful for vacuum simulations in which all particles see each other

真空下模拟,考虑无穷远范围的相互作用,邻居列表只需要这样要求一开始构建一次就够了。对于有限长度的不用pbc的真空下模拟的情况,这样是合适的。
作者
Author:
beyond    时间: 2019-3-23 04:07
sobereva 发表于 2019-3-23 03:51
0对应The neighbor list is only constructed once and never updated. This is mainly useful for vacuu ...

原来如此,没做过真空模拟,对于这点倒是没了解
受教了!
作者
Author:
yihanxu    时间: 2019-3-23 08:56
sob老师好,请问rlist和buffer距离是一个概念吧
作者
Author:
yihanxu    时间: 2019-3-23 09:04
sobereva 发表于 2019-3-22 13:50
你的这个链本身是有限长度的,还是无限长度的跨越盒子那种?如果是前者,em.gro里就不应该有盒子信息,而且 ...

是有限长度的。谢谢老师,我再仔细检查检查。构建邻居列表时用的group方式,这方式基于电荷组,但是GAFF力场的每个原子自己是一个电荷组,需要手动把原子归到电荷组让每个电荷组的总电荷为零吗?
作者
Author:
sobereva    时间: 2019-3-23 15:01
yihanxu 发表于 2019-3-23 09:04
是有限长度的。谢谢老师,我再仔细检查检查。构建邻居列表时用的group方式,这方式基于电荷组,但是GAFF ...

不用管电荷组的问题,和当前问题无关
作者
Author:
sobereva    时间: 2019-3-23 15:02
yihanxu 发表于 2019-3-23 08:56
sob老师好,请问rlist和buffer距离是一个概念吧

不一码事
buffer距离是rlist与cutoff之差
作者
Author:
yihanxu    时间: 2019-3-24 10:34
sobereva 发表于 2019-3-23 01:02
不一码事
buffer距离是rlist与cutoff之差

谢谢老师!不然我就理解错了。
作者
Author:
yihanxu    时间: 2019-3-30 11:42
本帖最后由 yihanxu 于 2019-3-29 21:49 编辑
sobereva 发表于 2019-3-23 01:02
不一码事
buffer距离是rlist与cutoff之差

您讲的金原子撞击金板例子中rlist和cutoff都设为1.2,buffer就是零了,就是说邻居列表范围和cutoff范围是一样的吗?
作者
Author:
sobereva    时间: 2019-3-30 12:26
yihanxu 发表于 2019-3-30 11:42
您讲的金原子撞击金板例子中rlist和cutoff都设为1.2,buffer就是零了,就是说邻居列表范围和cutoff范围是 ...

对于不同gmx版本,rlist的实际意义不同
目前的gmx默认用cutoff-scheme=verlet,此时根本不需要设rlist,程序总会自动调合适
作者
Author:
yihanxu    时间: 2019-3-31 08:22
sobereva 发表于 2019-3-29 22:26
对于不同gmx版本,rlist的实际意义不同
目前的gmx默认用cutoff-scheme=verlet,此时根本不需要设rlist, ...

谢谢老师。如果是gmx2018.4且设置如下,buffer距离是0吗?
pbc = xyz
rlist = 1.2
nstlist = 1
cutoff-scheme = group
coulombtype   = cut-off
rcoulomb      = 1.2
vdwtype       = cut-off
rvdw          = 1.2
DispCorr      = no
作者
Author:
sobereva    时间: 2019-3-31 12:30
yihanxu 发表于 2019-3-31 08:22
谢谢老师。如果是gmx2018.4且设置如下,buffer距离是0吗?
pbc = xyz
rlist = 1.2

一看手册就知道,你手动设这个没意义,程序是自动确定的
With the cutoff-scheme=Verlet cutoff-scheme, this is by default set by the verlet-buffer-tolerance option and the value of rlist is ignored.
作者
Author:
yihanxu    时间: 2019-4-15 10:54
本帖最后由 yihanxu 于 2019-4-15 21:14 编辑

@sobereva 老师好,我想研究真空中分子间相互作用,参考了Actos四聚体分子自组装的MD模拟。体系包含43个S4(2-)阴离子、86个Li+阳离子、和1个聚合物链。但是提交md任务后会出现Fatal error: Domain decomposition does not work with nstlist=0,请问该怎么解决呢?在其他条件都不变的情况下,我又分别试了只放1个聚合物链、1个聚合物链+1组离子(1个S4+2个Li)、1个聚合物链+5组离子,都没有报错,但是1个聚合物链+10组离子就会发生相同的错误了。请老师指点。谢谢。

附md.mdp
define =
integrator = md
dt         = 0.002   ; ps
nsteps     = 3000000
comm-grps  = system
comm-mode  = Angular
energygrps =
;
nstxout = 0
nstvout = 0
nstfout = 0
nstlog  = 500
nstenergy = 1000
nstxout-compressed = 1000
compressed-x-grps  = system
;
pbc = no
nstlist = 0
rlist = 0
cutoff-scheme = group
coulombtype   = cut-off
rcoulomb      = 0
vdwtype       = cut-off
rvdw          = 0
;
Tcoupl  = V-rescale
tau_t   = 0.2
tc_grps = system
ref_t   = 298.15
;
gen_vel  = no
gen_temp = 298.15
gen_seed = -1
;
freezegrps  =
freezedim   =
constraints = hbonds






作者
Author:
yihanxu    时间: 2019-4-16 11:22
本帖最后由 yihanxu 于 2019-4-15 21:23 编辑

@sobereva 老师好,因为上一楼的error我没能解决,所以又参考了纳米水球MD模拟的设置来研究真空中分子间相互作用,但还是没成功,可以请老师帮忙看看可以怎么办吗?谢谢。

作者
Author:
yihanxu    时间: 2019-4-17 09:59
mdrun用了-nt 1,可以计算了
作者
Author:
mol    时间: 2020-4-18 20:48
yihanxu 发表于 2019-4-17 09:59
mdrun用了-nt 1,可以计算了

lz您好,我们碰到了类似的问题,但不能一直一个核跑吧,您后来找到更合适的解决办法了吗
作者
Author:
yihanxu    时间: 2020-4-19 04:49
mol 发表于 2020-4-18 06:48
lz您好,我们碰到了类似的问题,但不能一直一个核跑吧,您后来找到更合适的解决办法了吗

很可惜 没找到其他好办法 有的情况试其他的核数 说不准几个核可以
作者
Author:
一条君    时间: 2020-12-6 21:30
sobereva 发表于 2019-3-23 03:50
你的这个链本身是有限长度的,还是无限长度的跨越盒子那种?如果是前者,em.gro里就不应该有盒子信息,而且 ...

请问老师链本身是有限长度的,em.gro里就不应该有盒子信息——是删掉gro文件最后一行解决吗?删掉后还是报Domain decomposition does not work with nstlist=0,请问如何解决呢,谢谢
作者
Author:
一条君    时间: 2020-12-6 21:30
请问同学你最后是怎么解决的呢,谢谢
作者
Author:
yihanxu    时间: 2020-12-7 04:58
一条君 发表于 2020-12-6 07:30
请问同学你最后是怎么解决的呢,谢谢

mdrun用了-nt 1,可以计算了
作者
Author:
王采岑    时间: 2021-4-13 22:06
yihanxu 发表于 2019-3-23 09:04
是有限长度的。谢谢老师,我再仔细检查检查。构建邻居列表时用的group方式,这方式基于电荷组,但是GAFF ...

请问你当时是怎么解决这个问题的?我现在也遇到了,谷歌目前也没找到解决方法,是不是和并行有关系?
作者
Author:
yihanxu    时间: 2021-4-14 10:39
王采岑 发表于 2021-4-13 08:06
请问你当时是怎么解决这个问题的?我现在也遇到了,谷歌目前也没找到解决方法,是不是和并行有关系?

mdrun用了-nt 1,可以计算了
作者
Author:
王采岑    时间: 2021-4-14 10:44
yihanxu 发表于 2021-4-14 10:39
mdrun用了-nt 1,可以计算了

我用-nt 1 会出现下面的错误。
Fatal error:
The total number of threads requested (1) is not divisible by the number of
thread-MPI ranks requested (6)
我刚发了一个帖子问,在谷歌上搜到的是要用少于8个线程,可以不调用Domain decomposition,这个应该是MPI的问题,我还没弄清楚,对inux的知识少了,等社长或其他大佬回复,再来
作者
Author:
yihanxu    时间: 2021-4-14 14:14
王采岑 发表于 2021-4-13 20:44
我用-nt 1 会出现下面的错误。
Fatal error:
The total number of threads requested (1) is not divis ...

嗯嗯 要是他们回复了请艾特我 谢谢!你可以先试试其他数目




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