“atoms are time integrated more than once”积分重复警告,常见三种原因及解决办法

本文主要是介绍“atoms are time integrated more than once”积分重复警告,常见三种原因及解决办法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

大家好,我是小马老师。
本文介绍lammps in文件编写过程中一个常见的错误:重复积分。
分子动力学模拟的主要运算是原子的积分运算,通过求解积分方程得到原子的受力以及计算原子的速度,从而得出下一时刻原子的位置和状态。
原子的积分体现到代码中就是fix nve/nvt/npt等系综的设置,有些fix命令也自带积分运算,如fix move等命令。
原子不设置系综,就不会参与积分方程的求解,最明显的现象是在模拟过程中,原子是静止的。
但原子也不能设置多个系综,如果设置两个以上的系综,要参与两次积分运算,很明显是错误的。
此时,lammps会给出多重积分设置警告:
在这里插入图片描述

常见重复积分设置错误有以下几种:
(1)分层设置系综
有牛顿层、固定层、恒温层等不同层的模拟体系中,分层系综设置不当,容易造成积分设置重复。
如:

fix 1 all nve
fix 2 mobile nvt temp 300 300 0.1

以上代码中,all原子组包含mobile原子组,因此,mobile组被设置了nve和nvt两个系综。
(2)分阶段设置,忘记取消上一个系综。
用不同的系综进行分阶段弛豫,在一个弛豫阶段完成进入下一个阶段时,忘记取消上一个系综,同样会造成积分重复。

#1 npt弛豫
fix 1 all npt temp 300 300 0.1 iso 0 0 1
run 10000
#2 nvt弛豫
fix 2 all nvt temp 300 300 0.1
run 10000

在npt弛豫后,没有使用unfix 1命令,直接设置fix nvt,会造成npt和nvt同时起作用。
(3)使用带有积分功能的命令
上面两种错误相对比较明显,稍微细心一些完全可以避免,但是下面这种情况却不容易发现。
如:

fix 1 all nvt temp 300 300 0.1
fix 2 top move linear 0 0 -1

在nvt系综下设置top组沿z轴向下移动,看似正常,但是代码是有问题的。
因为fix move命令自身带有积分功能,top组不能再设置nvt系综,正确的做法是把top组之外的原子设置为mobile组,代码更改为:

fix 1 mobile nvt temp 300 300 0.1
fix 2 top move linear 0 0 -1

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

公众号:lammps加油站

这篇关于“atoms are time integrated more than once”积分重复警告,常见三种原因及解决办法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/342292

相关文章

Go标准库常见错误分析和解决办法

《Go标准库常见错误分析和解决办法》Go语言的标准库为开发者提供了丰富且高效的工具,涵盖了从网络编程到文件操作等各个方面,然而,标准库虽好,使用不当却可能适得其反,正所谓工欲善其事,必先利其器,本文将... 目录1. 使用了错误的time.Duration2. time.After导致的内存泄漏3. jsO

springboot循环依赖问题案例代码及解决办法

《springboot循环依赖问题案例代码及解决办法》在SpringBoot中,如果两个或多个Bean之间存在循环依赖(即BeanA依赖BeanB,而BeanB又依赖BeanA),会导致Spring的... 目录1. 什么是循环依赖?2. 循环依赖的场景案例3. 解决循环依赖的常见方法方法 1:使用 @La

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

Linux samba共享慢的原因及解决方案

《Linuxsamba共享慢的原因及解决方案》:本文主要介绍Linuxsamba共享慢的原因及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux samba共享慢原因及解决问题表现原因解决办法总结Linandroidux samba共享慢原因及解决

Spring事务中@Transactional注解不生效的原因分析与解决

《Spring事务中@Transactional注解不生效的原因分析与解决》在Spring框架中,@Transactional注解是管理数据库事务的核心方式,本文将深入分析事务自调用的底层原理,解释为... 目录1. 引言2. 事务自调用问题重现2.1 示例代码2.2 问题现象3. 为什么事务自调用会失效3

MySQL错误代码2058和2059的解决办法

《MySQL错误代码2058和2059的解决办法》:本文主要介绍MySQL错误代码2058和2059的解决办法,2058和2059的错误码核心都是你用的客户端工具和mysql版本的密码插件不匹配,... 目录1. 前置理解2.报错现象3.解决办法(敲重点!!!)1. php前置理解2058和2059的错误

Docker镜像pull失败两种解决办法小结

《Docker镜像pull失败两种解决办法小结》有时候我们在拉取Docker镜像的过程中会遇到一些问题,:本文主要介绍Docker镜像pull失败两种解决办法的相关资料,文中通过代码介绍的非常详细... 目录docker 镜像 pull 失败解决办法1DrQwWCocker 镜像 pull 失败解决方法2总

找不到Anaconda prompt终端的原因分析及解决方案

《找不到Anacondaprompt终端的原因分析及解决方案》因为anaconda还没有初始化,在安装anaconda的过程中,有一行是否要添加anaconda到菜单目录中,由于没有勾选,导致没有菜... 目录问题原因问http://www.chinasem.cn题解决安装了 Anaconda 却找不到 An

Spring定时任务只执行一次的原因分析与解决方案

《Spring定时任务只执行一次的原因分析与解决方案》在使用Spring的@Scheduled定时任务时,你是否遇到过任务只执行一次,后续不再触发的情况?这种情况可能由多种原因导致,如未启用调度、线程... 目录1. 问题背景2. Spring定时任务的基本用法3. 为什么定时任务只执行一次?3.1 未启用

Java报NoClassDefFoundError异常的原因及解决

《Java报NoClassDefFoundError异常的原因及解决》在Java开发过程中,java.lang.NoClassDefFoundError是一个令人头疼的运行时错误,本文将深入探讨这一问... 目录一、问题分析二、报错原因三、解决思路四、常见场景及原因五、深入解决思路六、预http://www