前面我们介绍了对于格点原子无序的FCC-CoCrCuFeNi高熵合金理论模拟中的建模思想,以及LAMMPS的程序实现,并详细解读我们编写的LAMMPS脚本,下面我们将继续介绍快速后处理结果的过程以及程序实现。
当我们用PBS提交计算任务完成后我们可以看到,计算任务文件夹中多了1000个FCC-CoCrCuFeNi高熵合金的结构data文件以及每个结构优化过程中对应的log文件。由于我们建模时保证了每个模型都是不一样的,因此静力学结构优化后,一定可以将这些体系自由能量从底到高排列,能量最低的那个就是我们需要找的目标结构。任意打开一个log文件,可以看到每一次优化完成之后都会有自由能的输出:
而对于每一个log文件里面会打印三次这样的信息,我们只需要抓取最后次的第三列就可以了。将每次获取的文件编号及能量写成列表,再按能量大小从小到大排序后,第一个就是我们筛选到的最优结构编号。处理程序如下:
#!/bin/bash
echo `echo -e "Number""\t""Energy_(eV)"` >>result.txt
for i in {1..1000}
do
energy=$(echo "`grep -A 1 'Energy initial' log.$i | tail -1|awk '{printf "%12f \n", $3}'`")
echo `echo -e $i"\t