BraveZhao的个人博客分享 http://blog.sciencenet.cn/u/BraveZhao

博文

[转载]LAMMPS-用fix nve一定表示NVE系综的模拟么

已有 5906 次阅读 2019-6-26 08:59 |个人分类:MD|系统分类:科研笔记|文章来源:转载

首先要声明的是,或者要强调的是:命令和系综没有直接联系,除非你的in文件里只有一个和系综相关的fix.

我们知道,按统计物理的概念来讲,我们常用的模拟系综分NVE(表示系统粒子数、体积、总能量保持不变,是为微正则系综),NVT(表示,粒子数、体积、温度保持不变,是正则系综,大多数体系都会用此系综进行抽样),NPT(表示粒子数、压强、温度保持不变,是等温等压系综)。注:上面说的保持不变,指的是宏观统计平均值。

而与上面对应的LAMMPS命令有 fix nve; fix nvt; fix npt. 到这里大家应该没有什么疑问,因为系综和命令是一一对应的。那下面一个命令组如何理解呢?:

Fix nve+ fix temp/rescale

……………………………………………………….(此处大家先思考下)

看到上面命令,你判断是nve还是nvt,还是npt呢????????????????

正确答案是 nvt系综!想不明白的仔细读我下面说的话。我们上面所说的系综,是指的你的模拟体系宏观上对应于什么样的系统。当整个体系保持,N, V, T不变时,就是NVT系综。而上述组合命令的最终结果,就是保证了体系N、V、T的不变。所以我们不能看的有fix nve就认为是nve系综。只要大家抓住N、V、T、P这些量哪些被调控了,就能理解自己的系统是什么系综了。比如fix nve+ fix langven; fix nve+ fix temp/berendsen都是NVT的系综。

Fix nve+ fixtemp/berendsen + fix press/berendsen; fix nvt +fix press/berendsen 就是NPT系综.

到这,大家应该理解最前面的fix命令,其实是启动更新坐标和速度的作用,后面的命令是进行相关量的调控。比如fix +nve 进行位置和速度的更新,体系没有能量的输入输出,所以是NVE。。当你加上fix temp/rescale时,这个命令在第一个命令更新速度时,进行了速度的标度(也就是说对温度进行了调控,使其保持不变),那这样的系统,最终导致的结果就是T也保持了恒定。所以是NVT系综。

到此,大家应该能理解fix nvt+ fix press/berendsen为什么不是nvt系综了吧。

注:fixnvt已经对体系进行了T的调节,而没对V进行调节;到加上fix press/berendsen时,这个命令对V进行了调节来保证体系P恒定

--------------------- 

作者:iSimuLy 

来源:CSDN 

原文:https://blog.csdn.net/iSimuLy/article/details/82928045 

版权声明:本文为博主原创文章,转载请附上博文链接!



https://blog.sciencenet.cn/blog-3388193-1186861.html

上一篇:python code LAMMPS轨迹文件格式转化
下一篇:[转载]Numpy高维数组的理解
收藏 IP: 157.0.78.*| 热度|

1 刘长伟

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-17 04:16

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部