这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
adf:heatconductance [2023/10/02 23:28] – [温度曲线生成] liu.jun | adf:heatconductance [2024/06/14 07:36] (当前版本) – [计算方法与思路] liu.jun | ||
---|---|---|---|
行 1: | 行 1: | ||
- | ======ReaxFF-热导率:使用T-NEMD方法计算热导率====== | + | ======热导率方法1:T-NEMD方法结合温度分布====== |
=====计算方法与思路===== | =====计算方法与思路===== | ||
在体系中划分一个区域为“热源”,类似划分一个区域为“热漏”,二者之间存在一个热传导区域。系统不断通过“热源”以一定速率释放能量,而“热漏”则以相同速率吸收能量,在经过足够时间长度之后,整个系统的温度将达到一种平衡状态。热传导区域的温度分布曲线,将会存在一个稳定的梯度:靠近“热源”的位置温度最高,靠近“热漏”的位置温度最低。 | 在体系中划分一个区域为“热源”,类似划分一个区域为“热漏”,二者之间存在一个热传导区域。系统不断通过“热源”以一定速率释放能量,而“热漏”则以相同速率吸收能量,在经过足够时间长度之后,整个系统的温度将达到一种平衡状态。热传导区域的温度分布曲线,将会存在一个稳定的梯度:靠近“热源”的位置温度最高,靠近“热漏”的位置温度最低。 | ||
行 5: | 行 5: | ||
**温度分布曲线:** | **温度分布曲线:** | ||
- | A、B、C三个方向,分别均分为N个切片,温度曲线是这N个切片的温度。会得到三个温度分布函数,对应三个方向的温度分布。每个切片的温度,是这个切片内所有原子,从上一帧到当前帧的时间范围内的平均温度。因此切片数不建议太多(以确保片内原子个数较多,具有统计平均的意义),保存轨迹的频率不宜高(默认100建议改为1000或2000甚至根据需要改到更大数值),否则都会导致温度曲线震荡会比较剧烈,失去统计意义。 | + | A、B、C三个方向([[adf: |
**热导率计算公式:** | **热导率计算公式:** | ||
行 18: | 行 18: | ||
**计算引擎:** | **计算引擎:** | ||
- | 本文以ReaxFF为例进行演示,实际上使用普通力场的分子动力学、DFT、DFTB分子动力学均可用于热导率计算,除了Main面板(引擎自身参数)的设置不同,其他设置是完全一致的。力场的质量会直接影响热导率计算的准确性。 | + | 本文以ReaxFF为例进行演示,实际上使用普通力场的分子动力学、机器学习势、DFT、DFTB分子动力学均可用于热导率计算,除了Main面板(引擎自身参数)的设置不同,其他设置是完全一致的。力场的质量会直接影响热导率计算的准确性。 |
关于周期性:热导率计算对于0~3维周期边界条件均支持,用户需要注意在没有周期性的情况下,哪个方向,哪一段区域是热传导区域,找到对应的温度分布数据即可。 | 关于周期性:热导率计算对于0~3维周期边界条件均支持,用户需要注意在没有周期性的情况下,哪个方向,哪一段区域是热传导区域,找到对应的温度分布数据即可。 | ||
行 41: | 行 41: | ||
* Method是实现热传导的三种算法:1) Simple方法中,原子速度按比例放大(或缩小)一个因子,该因子与能量速率对应,不考虑总动量的守恒;2) HEX 方法中,速度以总动量守恒的方式缩放,这会在总能量中引入一个小但可见的漂移;3) e HEX 算法,通过添加三阶时间积分校正来消除漂移,从而改进HEX。我们测试SiO< | * Method是实现热传导的三种算法:1) Simple方法中,原子速度按比例放大(或缩小)一个因子,该因子与能量速率对应,不考虑总动量的守恒;2) HEX 方法中,速度以总动量守恒的方式缩放,这会在总能量中引入一个小但可见的漂移;3) e HEX 算法,通过添加三阶时间积分校正来消除漂移,从而改进HEX。我们测试SiO< | ||
* 设置为2000步以后才开始进行热传导(因为MD前面的一些step,体系有可能还没有达到平衡,这个过程相当于让体系充分弛豫,这个值也可以适当调整 | * 设置为2000步以后才开始进行热传导(因为MD前面的一些step,体系有可能还没有达到平衡,这个过程相当于让体系充分弛豫,这个值也可以适当调整 | ||
- | * 能量传递速率(即功率)为0.004 Hatree/ | + | * 能量传递速率(即功率)为0.004 Hatree/ |
* 指定热源为Source区域的原子,热漏为Sink区域的原子。当然用户也可以不使用region,直接勾选Show,然后在下面对应的ABC数据中设定热源与热漏的范围,ABC为晶格矢量,后面的数据为分数坐标,用户可以通过修改数值,观察阴影区域的变化,从而正确理解数据的作用。 | * 指定热源为Source区域的原子,热漏为Sink区域的原子。当然用户也可以不使用region,直接勾选Show,然后在下面对应的ABC数据中设定热源与热漏的范围,ABC为晶格矢量,后面的数据为分数坐标,用户可以通过修改数值,观察阴影区域的变化,从而正确理解数据的作用。 | ||
行 57: | 行 57: | ||
=====温度曲线生成===== | =====温度曲线生成===== | ||
- | 计算完毕后,SCM → Kf Browser → File → Expert Mode,窗口底部输入tempprofiel,在MDHistory中可以找到每一帧(本例60万步,每3000步保存一次,加上初始结构因此有201帧)的温度分布函数数据,例如101帧C方向: | + | 计算完毕后,SCM → Kf Browser → File → Expert Mode,窗口底部输入tempprofile,在MDHistory中可以找到每一帧(本例60万步,每3000步保存一次,加上初始结构因此有201帧)的温度分布函数数据,例如101帧C方向: |
{{ : | {{ : | ||
行 89: | 行 89: | ||
= 5.59 W/mK | = 5.59 W/mK | ||
- | 热导率结果,受力场影响很大。 | + | =====注意:===== |
+ | * 模型太小,则热涨落很大,模型越大,结果越趋于稳定。 | ||
+ | * 力场的准确度对结果影响很大。 | ||
+ | * 该方法对力场、DFTB、MOPAC、DFT均适用。 |