【LAMMPS学习】八、基础知识(3.6)计算热导率

2024-04-20 17:44

本文主要是介绍【LAMMPS学习】八、基础知识(3.6)计算热导率,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

8. 基础知识

此部分描述了如何使用 LAMMPS 为用户和开发人员执行各种任务。术语表页面还列出了 MD 术语,以及相应 LAMMPS 手册页的链接。 LAMMPS 源代码分发的 examples 目录中包含的示例输入脚本以及示例脚本页面上突出显示的示例输入脚本还展示了如何设置和运行各种模拟。

8.1.通用基础知识

8.2. 设置入门

8.3. 分析入门

8.3.1. LAMMPS 的输出(thermo, dumps, computes, fixes, variables

8.3.2.使用chunks计算系统属性 

8.3.3.使用分布式网格 

8.3.4.计算温度

8.3.5.计算弹性常数

8.3.6.计算热导率 

使用 LAMMPS 中的各种选项,至少可以通过 4 种方式测量材料的导热系数 kappa。请参阅示例/KAPPA 目录,了解实现此处讨论的简单 Lennard-Jones 流体模型的 4 种方法的脚本。另请参阅  Howto viscosity 页面,了解有关粘度的类似讨论。

热导率张量 kappa 是材料以扩散方式传输热能的倾向的度量,如傅立叶定律所示

J = -kappa grad(T)

其中 J 是单位时间内每面积能量的热通量,grad(T) 是温度的空间梯度。因此,热导率的单位为每距离每时间每度 K 的能量,并且通常近似为各向同性量,即标量。


第一种方法是在模拟箱的两端设置两个恒温区域,或者在周期箱的中间和末端设置一个恒温区域。通过thermostatting fix将两个区域保持在不同的温度,添加到热区域的能量应等于从冷区域减去的能量,并且与区域之间移动的热通量成正比。有关这一想法的详细信息,请参阅 Ikeshoji 和 Hafskjold 和 Wirnsberger et al 的论文。请注意,诸如fix nvt, fix langevin, 和 fix temp/rescale 之类的恒温修正会存储它们添加/减去的累积能量。


或者,作为第二种方法,可以使用fix heat 或 fix ehex 命令代替两个区域中每个区域上的恒温器,以向两个区域添加/减去指定量的能量。在这两种情况下,可以使用“compute temp/region”命令监视两个区域的最终温度,并且可以使用 fix ave/chunk 和 compute ke/atom ​​​​​​​命令监视中间区域的温度分布。


三种方法是使用fix thermal/conductivity ​​​​​​​命令执行反向非平衡MD模拟,该命令实现了Muller-Plathe的rNEMD算法。模拟盒的两个不同层中的原子之间交换动能。这会在两层之间产生温度梯度,可以使用fix ave/chunk 和 compute ke/atom ​​​​​​​命令进行监控。该修复会计算其执行的累积能量传输。有关详细信息,请参阅 fix thermal/conductivity ​​​​​​​命令。


第四种方法基于 Green-Kubo (GK) 公式,该公式将热通量自相关的系综平均值与 kappa 联系起来。热通量可以根据稳态平衡模拟中每原子势能和动能的波动以及每原子应力张量来计算。这与前面两种非平衡方法形成鲜明对比,在这两种方法中,能量在模拟盒的热区和冷区之间连续流动。


compute heat/flux ​​​​​​​ 命令可以计算所需的热通量,并描述如何使用其他 LAMMPS 命令(例如用于计算所需自相关的 fix ave/correlate ​​​​​​​命令)来实现 Green_Kubo 形式。请参阅 compute heat/flux ​​​​​​​命令页面,获取通过 G​​K 形式计算固体 Ar 热导率的示例输入脚本。

Ref:

 

(Ikeshoji) Ikeshoji and Hafskjold, Molecular Physics, 81, 251-261 (1994).

(Wirnsberger) Wirnsberger, Frenkel, and Dellago, J Chem Phys, 143, 124104 (2015).

c85ff83157e74ca09bcc2cb96360c590.png

 

 

这篇关于【LAMMPS学习】八、基础知识(3.6)计算热导率的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

使用C#代码计算数学表达式实例

《使用C#代码计算数学表达式实例》这段文字主要讲述了如何使用C#语言来计算数学表达式,该程序通过使用Dictionary保存变量,定义了运算符优先级,并实现了EvaluateExpression方法来... 目录C#代码计算数学表达式该方法很长,因此我将分段描述下面的代码片段显示了下一步以下代码显示该方法如

如何用Java结合经纬度位置计算目标点的日出日落时间详解

《如何用Java结合经纬度位置计算目标点的日出日落时间详解》这篇文章主详细讲解了如何基于目标点的经纬度计算日出日落时间,提供了在线API和Java库两种计算方法,并通过实际案例展示了其应用,需要的朋友... 目录前言一、应用示例1、天安门升旗时间2、湖南省日出日落信息二、Java日出日落计算1、在线API2

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

linux-基础知识3

打包和压缩 zip 安装zip软件包 yum -y install zip unzip 压缩打包命令: zip -q -r -d -u 压缩包文件名 目录和文件名列表 -q:不显示命令执行过程-r:递归处理,打包各级子目录和文件-u:把文件增加/替换到压缩包中-d:从压缩包中删除指定的文件 解压:unzip 压缩包名 打包文件 把压缩包从服务器下载到本地 把压缩包上传到服务器(zip

学习hash总结

2014/1/29/   最近刚开始学hash,名字很陌生,但是hash的思想却很熟悉,以前早就做过此类的题,但是不知道这就是hash思想而已,说白了hash就是一个映射,往往灵活利用数组的下标来实现算法,hash的作用:1、判重;2、统计次数;

计组基础知识

操作系统的特征 并发共享虚拟异步 操作系统的功能 1、资源分配,资源回收硬件资源 CPU、内存、硬盘、I/O设备。2、为应⽤程序提供服务操作系统将硬件资源的操作封装起来,提供相对统⼀的接⼝(系统调⽤)供开发者调⽤。3、管理应⽤程序即控制进程的⽣命周期:进程开始时的环境配置和资源分配、进程结束后的资源回收、进程调度等。4、操作系统内核的功能(1)进程调度能⼒: 管理进程、线

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

【机器学习】高斯过程的基本概念和应用领域以及在python中的实例

引言 高斯过程(Gaussian Process,简称GP)是一种概率模型,用于描述一组随机变量的联合概率分布,其中任何一个有限维度的子集都具有高斯分布 文章目录 引言一、高斯过程1.1 基本定义1.1.1 随机过程1.1.2 高斯分布 1.2 高斯过程的特性1.2.1 联合高斯性1.2.2 均值函数1.2.3 协方差函数(或核函数) 1.3 核函数1.4 高斯过程回归(Gauss