ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

“atoms are time integrated more than once”警告,常见三种原因及解决办法(原子多次积分)

2022-05-15 21:34:59  阅读:199  来源: 互联网

标签:nvt 积分 fix 系综 设置 time 原子 atoms than


摘自:https://mp.weixin.qq.com/s/9AXfK4pttzhwZ3H7U-JIgw (小马老师)

 

本文介绍lammps in文件编写过程中一个常见的错误:重复积分。

分子动力学模拟的主要运算是原子的积分运算,通过求解积分方程得到原子的受力以及计算原子的速度,从而得出下一时刻原子的位置和状态。

原子的积分体现到代码中就是fix nve/nvt/npt等系综的设置,有些fix命令也自带积分运算,如fix move等命令。

原子不设置系综,就不会参与积分方程的求解,最明显的现象是在模拟过程中,原子是静止的。

但原子也不能设置多个系综,如果设置两个以上的系综,要参与两次积分运算,很明显是错误的。

此时,lammps会给出多重积分设置警告:

图片

常见重复积分设置错误有以下几种:

 

(1)分层设置系综

有牛顿层、固定层、恒温层等不同层的模拟体系中,分层系综设置不当,容易造成积分设置重复。

如:

 

 以上代码中,all原子组包含mobile原子组,因此,mobile组被设置了nve和nvt两个系综。

 

(2)分阶段设置,忘记取消上一个系综。

用不同的系综进行分阶段弛豫,在一个弛豫阶段完成进入下一个阶段时,忘记取消上一个系综,同样会造成积分重复。

如:

 

 

 在npt弛豫后,没有使用unfix 1命令,直接设置fix nvt,会造成npt和nvt同时起作用。

正确的写法为:

 

 (3)使用带有积分功能的命令

上面两种错误相对比较明显,稍微细心一些完全可以避免,但是下面这种情况却不容易发现。

如:

 

 

在nvt系综下设置top组沿z轴向下移动,看似正常,但是代码是有问题的。

因为fix move命令自身带有积分功能,top组不能再设置nvt系综,正确的做法是把top组之外的原子设置为mobile组,代码更改为:

只要log文件给出了系综重复设置警告,一定要检查in文件代码,解决掉这个警告,否则计算结果肯定是错误的。

-------------------- End ------------------

标签:nvt,积分,fix,系综,设置,time,原子,atoms,than
来源: https://www.cnblogs.com/sysu/p/16274632.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有