大家好,我是小马老师。
本文介绍lammps计算CNA的方法。
CNA(公共邻居分析)可用来分析原子周围局部晶体结构,如FCC、BCC、HCP以及晶体缺陷。
在ovito后处理软件中有CNA的计算,但这个计算在单个原子的体系比较准,对于合金体系,有可能识别不准,如把FCC识别为other类型。
lammps也提供了CNA的计算命令:compute cna/atom。
(1)命令语法
compute cna/atom命令语法结构为:
compute ID group-ID cna/atom cutoff
cutoff为截断半径,该值与力场中的cutoff不是一个值,需要单独计算确定。
计算的原子是保证每个原子周围在此截断距离内能够找到适当的近邻原子,如完美的fcc和hcp晶格有12个近邻原子,bcc晶体有14个近邻原子。
lammps也给出了cutoff计算公式,按此公式选择基本就可以:
其中,a为晶格常数。
例如Cu的晶格常数为fcc 3.61,因此,cutoff为3.08。
计算Cu的CNA命令为:
compute 1 all cna/atom 3.08
(2)计算结果输出
compute cna/atom计算结果为单个原子的量,一共5类结果。
- fcc = 1
- hcp = 2
- bcc = 3
- icosahedral = 4
- unknown = 5
用dump命令输出到轨迹文件,用ovito color coding进行涂色就可以看到原子结构了。
dump 1 all custom 1000 npt.xyz id type x y z c_1
下图是用本命令计算的Cu融化过程中晶格变化情况,与ovito cna方法得到的结果基本相同,颜色不同主要与color coding配色有关。
公众号:lammps加油站