lammps问题-关于NVT与NVE系综产生的不同

article/2025/9/21 21:01:03

相同的材料构型,在不同的系综下产生如下不同的结果:
1.NVE系综下:
在这里插入图片描述
2.NVT系综如下:
在这里插入图片描述
产生的不同结果如上,原脚本如下:
1.
shell mkdir initial-comp
shell mkdir config-comp
shell mkdir restart-comp
#--------------------------DEFINITION-------------------
units metal
dimension 3
boundary s s s
atom_style atomic

read_data Ti.data
region 1 block INF INF INF INF INF 27 units box
region 2 block INF INF INF INF 319 INF units box
group bottom region 1
group upper region 2
group mobile subtract all bottom upper
group boundary union bottom upper
#---------- Define Interatomic Potential ---------------------
pair_style eam/fs
pair_coeff * * Ti.eam.fs Ti

#-----------------------------setting------------------------
compute eng all pe/atom
compute 1 all stress/atom NULL
compute v all voronoi/atom
variable e1 equal “step”
variable e2 equal “pe”
variable e3 equal “temp”
#------------------------------------------------CUT------------------------------------------------------
delete_atoms overlap 2 all all compress yes
#----------------------------EQUILIBRATION---------------------
timestep 0.002
velocity mobile create 300.0 12345

min_style cg
minimize 1e-18 1e-18 100000 100000
fix 2 boundary setforce 0.0 0.0 0.0
fix 1 all nve
fix 3 mobile temp/rescale 10 300.0 300.0 10.0 1.0

dump 1 all custom 10000 ./initial-comp/relax.*.dump id type x y z
fix def2 all print 100 “${e1} ${e2} ${e3}” file initial-pe-comp screen no
thermo 2000
thermo_style custom step lx ly lz press pe temp

run 50000
undump 1
unfix def2
variable tmp equal “lz”
variable L0 equal ${tmp}
print “Initial Length, L0: ${L0}”

#-------------------------COMPRESSION---------------------------------
reset_timestep 0
timestep 0.002
dump 2 all custom 500 ./config-comp/comp..dump id type x y z c_1[] c_v[]
restart 500000 ./restart-comp/compression.
.equil

variable strain equal “-(lz - v_L0)/v_L0”
variable e1 equal “v_strain”
variable s1 equal “pzz/10000”
variable s2 equal “pxx/10000”
variable s3 equal “pyy/10000”

#variable s2 equal “4v_s1lx/(ly*PI)”
fix def1 all print 1000 “${e1} ${s1} ${s2} ${s3}” file Ti1000-comp screen no
thermo 100000
thermo_style custom step temp ke pe press

velocity upper set 0 0 -0.15
velocity mobile ramp vz 0.0 -0.15 z 29 317 sum yes
run 200000

print “ALL DONE!”

shell mkdir initial-comp
shell mkdir config-comp
shell mkdir restart-comp
#--------------------------DEFINITION-------------------
units metal
dimension 3
boundary s s s
atom_style atomic

read_data Ti.data
region 1 block INF INF INF INF INF 27 units box
region 2 block INF INF INF INF 319 INF units box
group bottom region 1
group upper region 2
group mobile subtract all bottom upper
group boundary union bottom upper
#---------- Define Interatomic Potential ---------------------
pair_style eam/fs
pair_coeff * * Ti.eam.fs Ti

#-----------------------------setting------------------------
compute eng all pe/atom
compute 1 all stress/atom NULL
compute v all voronoi/atom
variable e1 equal “step”
variable e2 equal “pe”
variable e3 equal “temp”
#------------------------------------------------CUT------------------------------------------------------
delete_atoms overlap 2 all all compress yes
#----------------------------EQUILIBRATION---------------------
timestep 0.002
velocity mobile create 300.0 12345

min_style cg
minimize 1e-18 1e-18 100000 100000
fix 2 boundary setforce 0.0 0.0 0.0
fix 1 all nvt temp 300 300 100

dump 1 all custom 10000 ./initial-comp/relax.*.dump id type x y z
fix def2 all print 100 “${e1} ${e2} ${e3}” file initial-pe-comp screen no
thermo 2000
thermo_style custom step lx ly lz press pe temp

run 50000
undump 1
unfix def2
variable tmp equal “lz”
variable L0 equal ${tmp}
print “Initial Length, L0: ${L0}”

#-------------------------COMPRESSION---------------------------------
reset_timestep 0
timestep 0.002
dump 2 all custom 500 ./config-comp/comp..dump id type x y z c_1[] c_v[]
restart 500000 ./restart-comp/compression.
.equil

variable strain equal “-(lz - v_L0)/v_L0”
variable e1 equal “v_strain”
variable s1 equal “pzz/10000”
variable s2 equal “pxx/10000”
variable s3 equal “pyy/10000”

#variable s2 equal “4v_s1lx/(ly*PI)”
fix def1 all print 1000 “${e1} ${s1} ${s2} ${s3}” file Ti1000-comp screen no
thermo 100000
thermo_style custom step temp ke pe press

velocity upper set 0 0 -0.15
velocity mobile ramp vz 0.0 -0.15 z 29 317 sum yes
run 200000

print “ALL DONE!”


http://chatgpt.dhexx.cn/article/XeNhsUBj.shtml

相关文章

Ensemble Average(系综平均)(集平均)

什么是系综平均?: 下图(来自知乎:卖艺的小青年)中集平均实际就是系综平均,按照随机信号分析的知识来分析,我们可以把这一系列函数看成一个随机信号,取定一个时间,我们就得…

系综理论(Ensemble Theory)

本文参考[Pathria] Statistical Mechanics (3rd Ed.)里的思路整理了系综理论的一些基本知识。Pathria的书有较多繁复的计算,在此不详细给出,只希望对系综理论能形成一个宏观的认知。 1. 前言 给定一个系统的宏观态描述 ( N , V , E ) (N,V ,E) (N,V,E)…

经典系综理论

系综理论是统计力学的理论基础 本质上来说,统计热力学中只有一个问题,即给定能量$E$,如何分布在$N$个全同系统构成的系综上 --薛定谔 1.系综的定义 在下面的介绍中我们可以逐渐体会这句话的含义,此时我们暂且把这个定位我们解决的…

lammps教程:nve/nvt/npt系综设置方法

系综是指大量性质和结构完全相同的、处于各种运动状态的、各自独立的系统的集合。 在lammps模拟中,常用的系综有nve、nvt、npt三种系综,下面说说这三种系综的使用方法。 1. nve(微正则系综) nve系综保证系统中原子数量n、体系总…

数值分析(2)-多项式插值: 拉格朗日插值法

整理一下数值分析的笔记~ 目录: 1. 误差 2. 多项式插值与样条插值(THIS) 3. 函数逼近 4. 数值积分与数值微分 5. 线性方程组的直接解法 6. 线性方程组的迭代解法 7. 非线性方程求根 8. 特征值和特征向量的计算 9. 常微分方程初值问题的数值解 1. 拉格朗日基函数 定…

拉格朗日插值法求多项式系数 (附代码)

写在前面: 学了拉格朗日插值法之后发现大家都说可以在O(n^2)时间内得到多项式系数,但是没有找到代码,网上找了很多资料又因为我太弱了没能看懂,最后在emofunx学长的帮助下终于搞明白了。 由于太弱没能看懂的文章 引入 我们都知…

拉格朗日插值多项式的龙格现象

利用插值基函数可以很容易得到拉格朗日插值多项式,公式结构紧凑,在理论分析中甚为重要。但存在以下问题: 当插值节点增减时,计算要全部重新进行,甚为不便(当然现在我们有MATLAB,只需改变下参数…

拉格朗日多项式插值法

在数值分析中,拉格朗日常用于多项式插值。假定提供一组数据点[xi,yi],拉格朗日插值多项式就是由这些 数据的线性运算得到的。 其中基本的多项式有以下公式计算得到 注意 1.第一提供的xi应该是没有相同的,否则不能应用此算法 2.对于每一个xi&…

拉格朗日插值和求多项式系数

拉格朗日介绍 先说说拉格朗日是啥吧 首先 拉格朗日插值是给你 n1 个点 (x,y) 然后根据这n个点可以O(n^2)的求出多项式的系数。也就是解出这个多项式的答案。 假设给你一个多项式 ya0a1*xa2*x^2 然后给你3个解 (x1,y1)(x2,y2)(x3,y3)你第一个想法是怎么解?解方程啊…

数学建模准备 插值(拉格朗日多项式插值,牛顿多项式插值,分段线性插值,分段三次样条插值,分段三次Hermite插值)

文章目录 摘要(必看)0 基础概念什么是插值插值用途什么是拟合插值和拟合的相同点插值和拟合的不同点 1 常用的基本插值方法1.1 多项式插值法1.1.1 拉格朗日多项式插值法多项式插值并不是次数越大越好(龙格现象)分段低次线性插值以…

数模--拉格朗日多项式插值、matlab实现

拉格朗日多项式公式: matlab中插入一个值的代码 function yhlagrange(x,y,xh) %定义拉格朗日插入函数 nlength(x); %统计x和xh的长度 mlength(xh); yhzeros(1,m); %构建一行m列的zero矩阵 c1ones(n-1,1); …

计算方法实验(一):拉格朗日插值多项式

拉格朗日插值数学原理 给定平面上 n 1 n 1 n1个不同的数据点 ( x k , f ( x k ) ) (x_{k},f(x_{k})) (xk​,f(xk​)), k 0 , 1 , ⋯ , n k 0,1,\cdots,n k0,1,⋯,n, x i ≠ x j x_{i} \neq x_{j} xi​​xj​, i ≠ j i \neq j i​j&…

拉格朗日插值多项式在MATLAB中的实现

拉格朗日插值多项式在MATLAB中的实现 Hi! 这是我的一个CSDN博客 例 以下给出了针对题(2)的使用方法 输入: 1.节点值 2.需要插值的原函数 对于题(2)需要设置参数为: xx [0,0.25,0.5,1];% The nodes(n…

lagrange插值法:求拉格朗日插值多项式matlab实现(内附代码及例题)

lagrange插值法:求拉格朗日插值多项式matlab实现(内附代码及例题) 关于拉格朗日插值法相关理论知识,在这里小编不在赘述,请不明白的小伙伴自行百度。小编只负责给出matlab源码。 **例题:**看下面例题(如图): matlab代码: %%%% 求拉格朗日多项式及基函…

拉格朗日插值算法分析

这几天一直研究拉格朗日多项式,今天将自己对拉格朗日多项式的理解写在这里,方便大家交流。 在数值分析中,拉格朗日常用于多项式插值。假定提供一组数据点[xi,yi],拉格朗日插值多项式就是由这些 数据的线性运算得到的。 其中基本…

拉格朗日(Lagrange)插值多项式

题目: 基本原理: 拉格朗日(Lagrange)插值多项式python实现: # encoding: utf-8 from symtable import Symbol X[0.4,0.5,0.6,0.7,0.8] Y[-0.9163,-0.6931,-0.5108,-0.3567,-0.2231] print(X,Y) Lfloat(0.0) x0.54 len…

使用拉格朗日多项式(Lagrangian polynomials)的插值法(python,数值积分)

第三十五篇 拉格朗日多项式插值 插值多项式 首先考虑一个函数的推导,该函数精准地通过一系列np离散数据点。虽然有无限多的函数具备这个条件,但我们将专注于最简单的一个,一个n阶多项式,其中n np−1。我们称这个函数为“插值多…

三点估算法 PERT计划评审技术

三点估算也称PERT法,在计算每项活动的工期时都要考虑三种可能性,计算最悲观的工 期、最可能的工期、最乐观的工期,然后再计算出该活动的期望工期,PERT法计算的是 期望工期. 用PERT法计算工期,我们必须记住下面三个公…

计划评审技术PERT和关键路径法CP

PERT是利用网络分析制定计划以及对计划予以评价的技术。它能协调整个计划的各道工序,合理安排人力、物力、时间和资金,加速计划的完成。PERT网络是一种类似流程圈的箭线圈。它描绘出项目包含的各种活动的先后次序,标明每项活动的时间或相关的…

PERT(计划评审技术,Program Evaluation an Review Technique)

如果你对项目管理、系统架构有兴趣,请加微信订阅号“softjg”,加入这个PM、架构师的大家庭 PERT(计划评审技术,Program Evaluation an Review Technique) 的理论基础是假设项目持续时间以及整个项目完成时间是随机的,且服从某种概…