OVITO是非常常用的分子动力学模型可视化软件,自带共近邻原子分析(Common Neighbour Analysis),可以获得原子结构信息。一般来说,分子动力学结果文件包含在数十、甚至数百个时刻的原子模型。为了体现模型结构随时间变化,通常要逐帧对模型进行分析。例如对于应力诱发钢的马氏体相变模拟,通过查看各原子结构所占比例,即可了解相变进行的程度,如图1所示。
对于一个可视化专用软件,这种时程显然是非常耗时的(上图可能对应了逾1000个原子模型)。不过OVITO给出了python接口,由python script模块调用,可以比较方便与高效地调用后处理相关函数来处理大量同名模型文件。Ovito官方对python接口的介绍可见https://www.ovito.org/docs/current/python/ 本文仅是其中内容的浅显应用。
py文件分为三个部分:
定义序列(pipeline)与引用模块(modifier);
在序列内进行for循环,获得关键信息并写入矩阵;
输出矩阵为文本。
对于本应用,模块名称为CommonNeighborAnalysisModifier();关键信息为data.attributes['Commo