lammps案例:石墨烯热导率模拟计算(EMD方法)

大家好,我是小马老师。
在前面的文章中,介绍了非平衡态下石墨烯的热导率模拟方法,本文介绍第二种热导率模拟方法:使用平衡态分子动力学(EMD)计算热导率。
本文仍然以石墨烯热导率计算为例,以供大家对比参考。
在平衡态下计算热导率,主要计算公式为Green-Kubo。
用到的主要命令为compute heat/flux。
用法为:
compute myFlux all heat/flux myKE myPE myStress
其中,myKE为原子动能,myPE为原子势能,myStress为原子应力。
在使用compute heat/flux命令前,必须提前计算出这三个量的值。
下面给出石墨烯EMD热导模拟代码,代码已经注释。

#模型参数设置
units metal           
dimension 3
boundary p p p        
atom_style atomic
neighbor 0.3 bin
neigh_modify delay 10
timestep 0.001
#读取石墨烯模型文件
read_data gp.data
mass 1 12.0107 
#使用tersoff力场
pair_style tersoff
pair_coeff * * SiC.tersoff C
#热力学信息输出
thermo 10000
thermo_style custom step temp vol press
#温度初始化
velocity all create 300 98989 dist gaussian
fix 1 all npt temp 300 300  0.1 x 0 0 1 y 0 0 1 
run 50000
unfix 1
reset_timestep 0

#Green-Kubo公式中需要的数据
variable A equal lx*ly*1.54      
variable dt equal 0.001          
variable cor equal 10000         
variable sam equal 10            
variable dum equal ${cor}*${sam} 
#单位转换公式
variable kB equal 8.6173324e-5  # eV/K Boltzmann                                                                                               
variable ev2J equal 1.60210e-19 # eV to J/mol                                                                                 
variable A2m equal 1.0e-10      # Angstrom to meter                                                                                           
variable ps2s equal 1.0e-12     # picoseconds to seconds
variable convert equal ${ev2J}/(${A2m}*${ps2s})
#计算热流
compute myKE all ke/atom
compute myPE all pe/atom
compute myStress all stress/atom NULL virial
compute flux all heat/flux myKE myPE myStress
#保存三个方向的热流
variable Jx equal c_flux[1]
variable Jy equal c_flux[2]
variable Jz equal c_flux[3]
fix JJ all ave/correlate ${sam} ${cor} ${dum} c_flux[1] c_flux[2] c_flux[3] type auto file SLG_J.J_t${temp_s}.dat ave running

#计算Green-Kubo公式系数
variable   scale equal (${dt}*${sam})/(${kB}*${temp_s}^2*$A) 
#计算Green-Kubo公式
variable k11 equal (trap(f_JJ[3])*${scale})*${convert}
variable k22 equal (trap(f_JJ[4])*${scale})*${convert}
variable k33 equal (trap(f_JJ[5])*${scale})*${convert}
variable k_total equal (v_k11+v_k22+v_k33)/3.0
fix Ph all phonon 10 10000 0 GAMMA SLG nasr 100 

#启动运算
thermo 100000
thermo_style custom step temp press v_k11 v_k22 v_k33 v_k_total 
fix 1 all nve 
run 1000000
#输出热导率
print "***************************************************** "
print " k11 conductivity : ${k11} [W/mK] @ ${temp_s} K"
print " k22 conductivity : ${k22} [W/mK] @ ${temp_s} K"
print " k33 conductivity : ${k33} [W/mK] @ ${temp_s} K"
print " 3D average conductivity: ${k_total} [W/mK] @ ${temp_s} K"
print "*****************************************************"

更多lammps教程,请关注微信公众号:
lammps加油站
在这里插入图片描述

  • 3
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
### 回答1: LAMMPS是一个经典分子动力学(MD)模拟软件,它可以用于研究原子模型的系统,并用于计算材料的热导率。在固态氩的计算中,LAMMPS利用了误差递减法(EMD)来计算热导率EMD是一种基于MD的计算方法,它通过模拟材料系统的热输运过程来计算热导率。在固态氩的情况下,首先需要在LAMMPS中构建一个氩原子的初始晶格结构。然后,在所需的温度下进行MD模拟,对系统施加热源,并测量热流的大小和方向。 在MD模拟期间,LAMMPS将跟踪每个氩原子的位置、质量和速度,并计算热流的传输过程。通过在MD模拟中施加梯度热源,可以处理从热源到被测样品的热传导。 利用MD模拟产生的数据,LAMMPS使用EMD方法来计算热导率EMD方法基于维拉尔模型,该模型假设热流等于热流密度乘以负梯度温度。通过在样品中引入不同的温度梯度以及计算MD模拟中的热流密度,可以得到热导率。 简而言之,LAMMPS利用EMD方法来模拟固态氩中的热输运过程,并通过计算热流密度和温度梯度之间的关系来计算热导率。这使得研究者可以确定氩材料的热导率以及与其他因素相关的热传导性质。 ### 回答2: LAMMPS(Large-scale Atomic/Molecular Massively Parallel Simulator)是一种用于分子动力学模拟的开源软件包。它可以通过分子之间的相互作用模拟原子和分子的运动,以研究材料的物理、化学和力学性质。 EMD(Einstein-Mueller Displacement)是一种用于计算热导率方法。在固态氩材料中,如果希望使用LAMMPS进行热导率的计算,可以采用EMD方法EMD方法是基于热导率与能量传递之间的关系。通过在材料中引入一个热源,在热源与其他部分之间存在温度梯度的条件下,可以计算热传导现象。通过记录热源的温度变化以及与之相接触的其他部分的温度变化,可以计算出热流,并通过热流和温度梯度之间的比例关系来计算热导率。 在使用LAMMPS进行热导率计算时,首先需要构建固态氩的模型,并通过LAMMPS的输入文件定义原子间的相互作用势能。然后,设置一个区域作为热源,并在热源和其他部分之间设置一个温度梯度。运行LAMMPS模拟,记录热源和其他部分的温度变化,再通过EMD方法计算热导率。 总之,通过LAMMPS使用EMD方法进行固态氩热导率的计算,可以通过模拟材料中的热传导现象,记录温度的变化,最终计算出热导率。这种方法可以帮助我们深入了解固态氩热传导的机理以及材料的热性质。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lammps加油站

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值