本文源于自己在学习过程中的问题及解决办法记录,仅供大家参考,可能表述并不准确,欢迎批评交流!

ERROR on proc 0: Neighbor list overflow, boost neigh_modify one or page

出现这个错误的直接原因是体系中某些原子的近邻数超过了2000个(除非你使用neigh_modify命令增加了允许的近邻数),而导致这个错误的可能因素有:

  1. 初始结构有问题,比如原子分布过于密集。这种情况在一开始就会出错。
  2. 截断半径设置的太大了,比如大于10A。可以通过命令neighbor,减小截断半径来解决。
  3. neigh_modify 添加 one 参数
  4. 势参数设置有问题,这种情况一般是在运行一些步后才会出错。
    本文直接翻译自网页:http://lammps.sandia.gov/threads/msg36842.html

ERROR on proc 12: Angle atoms 69338 69339 69340 missing on proc 12 at step 38110 (…/ntopo_angle_all.cpp:68)

相似报错还有键bond缺失,解决办法如下:

  1. 初始模型是否正确,确定建模方法及参数。这里重点仔细检查,由于无法可视化,或者无法直观的观察,这里错误的可能性比较大。
  2. 参数设置错误
    a. 势函数是否正确,如果能从文献中确定比较好。
    b. neighbor
    在前期优化结构的过程中,由于结构极度不合理,可临时调大bin值,同时仔细查看neigh_modify的参数,进行合理的修改,如
neighbor        28 bin
neigh_modify every 2 delay 10 check yes page 100000 one 10000

在优化后,调回标准值
c. timestep
d. 如果温度波动不正常,请检查控温方式及参数(temp)
e. comm_style tiled 及 fix balance
f. boundary
f. ·····································

温度达不到设置的要求,一般出现为温度偏低
在模拟nvt或者npt的时候,温度偏低。
在fix nvt时,是定义了部分原子进行nvt模拟,有部分原子未进行模拟。此时会造成,运行nvt那部分原子具有温度控制,但是未运行那部分,会保持原来的模拟温度。
此问题提供两种解决方案:
a. 利用temp对未fix部分施加温度
b. fix all nvt模拟,不需要进行nvt模拟的部分利用

fix             noforce nonvt setforce   0 0 0
velocity        nonvt set 0 0 0

将作用力设置为0

ERROR on proc 0: Non-numeric atom coords - simulation unstable
初始模型结构太差,原子重叠严重,导致部分数值超标 出现nan
提高能量最小化的精度,重新能量最小化。可能无法进行能量最小化
可采用软力场pair_style soft 1.0
nve:fix mobile all nve/limit 0.1
同时调整 neighbor

WARNING: Proc sub-domain size < neighbor skin, could lead to lost atoms
在运行fix nve后遇到这个报错,再用nvt优化便无 (好像不可行)

WARNING:Non-numeric pressure - simulation unstable

  1. 在设置刚体以后,同时对刚性粒子和非刚性粒子使用NPT,这是不可行的。
    此时选择其中一个使用npt系综,而另外一个使用nve或者nvt系综,此时需要在npt系综后面加关键词dilate
    eg:
fix             1 rigid rigid/nvt molecule temp 298 298 1000.0
fix             2 mobile npt temp 298 298 1000.0 iso 1 1 1000.0 dilate  rigid
  1. 体系结构优化不充分,也可能会出现此类报错。需要继续优化
fix             1 nvtall nve/limit 0.1
  1. 压力控制参数设置问题
    Pstart,Pstop = scalar external pressure at start/end of run (pressure units)
    Pdamp = pressure damping parameter (time units)
    A good choice for many models is a Pdamp of around 1000 timesteps

Particle on or inside fix wall surface
由于设置了虚拟墙,而粒子正好处于虚拟墙上。尝试过长时间模拟,无法把这个粒子从墙上推开。故选择重新建模,把墙和粒子初始化模型距离分开较大距离

Out of range atoms - cannot compute PPPM
在模型优化初期,可能会遇到此类报错。猜测可能的原因是初始模型不合理导致的。可以尝试先不使用PPPM,而在优化到一定阶段后再使用。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐