LAMMPS 晶核保留与结构长大分析
用OVITO/PTM和周期连通图检查冷却轨迹,保留未出现明显长大的对照,区分局部晶体环境和成核率。
阅读本篇目录
本篇继续镍熔化与冷却。目标是从真实轨迹提取 FCC/HCP 局部环境比例、最大有序连通结构和时间演化,并说明人工晶核应何时释放。下载完整对照与分析包。
1. 生成结构表格#
bash analyze.sh
head -n 5 tables/p100-seeded-seed556001-cooling.csv
表格把温度、势能、FCC/HCP 数量、比例、连通结构数量、最大连通结构和原始种子数量放在一起。crystalline 在本例中明确为 FCC+HCP。
OTHER 只指 PTM 编号 0;remaining_nonFCC_HCP 才是全部非 FCC/HCP 原子数,其中也可能包括 BCC 等其他识别类型。不要把前者当作所有剩余原子,再错误地相加成总数。
2. OVITO 怎样分析#
GUI 中打开自己的实际轨迹:
new-work/p100-seeded-seed556001/cooling.dump
脚本采用以下步骤,均由现有 OVITO Python 3.16.1 执行:
- 用 Polyhedral Template Matching 得到 Structure Type。
- 选择 FCC/HCP 两类局部环境。
- 用 Cluster Analysis,设置 3.2 Å 截断,只分析所选原子,保持 xyz 周期。
- 记录所有连通结构大小、最大大小与各类原子数量。
独立后处理还用最小镜像距离建立周期邻居图,复核加热初帧、加热末帧和冷却末帧的全部连通结构大小。这样可以发现周期边界或选择组设置不一致的问题。
最大连通结构可以跨周期边界,也可能把不同取向的局部晶体环境连在一起。它不自动等于一个单取向晶粒,更不直接给出临界晶核大小。 若要划分晶粒,还需额外考虑取向。
3. 晶核为什么不能在高温时提前释放#
本例在 4000 K 就释放 79 原子小晶体时,它在降温初段失去原来的局部晶体环境,40 ps 内没有达到本例预先设置的明显长大标准。个别案例仍出现较小的有序连通区域,所有结果均保留。
另一组在降温时继续保持原子位置固定,到 800 K 后再释放。两组从同一份加热末态开始,后续结构演化出现明显区别:

实线/虚线分别为两种随机种子。绿色为保留至 800 K 后释放,橙色为提前释放,蓝色为无预设晶核。最大连通结构采用保留零值的对称对数坐标,不把零值替换成正数。
最终实际结果为:
| 后端/种子 | 保留晶核后的 FCC+HCP 数 | 占2048原子的比例 | 最大连通结构 |
|---|---|---|---|
| P100 / 556001 | 1523 | 0.743652 | 1523 |
| P100 / 556002 | 995 | 0.485840 | 994 |
| V100 16G / 556001 | 1695 | 0.827637 | 1695 |
| V100 16G / 556002 | 622 | 0.303711 | 616 |
这四例都比冷却开始时增加至少 0.2 的 FCC/HCP 比例,最大连通结构也超过原 79 原子种子至少 100 原子。这是本例用于识别明显长大的预设观察标准,正式研究仍需更长时间、多种尺寸与重复统计。
4. 无预设晶核的结果怎样读#
原始四个无预设晶核案例在加热末态都没有大于等于 50 原子的 FCC/HCP 连通区域。冷却/观察 40 ps 后,最大有序连通结构依次为:
| 条件 | 最大连通结构原子数 |
|---|---|
| P100 / 556001 | 101 |
| P100 / 556002 | 19 |
| V100 16G / 556001 | 22 |
| V100 16G / 556002 | 4 |
其中一例出现超过 100 原子的有序连通结构,其余三例未出现相同规模。它展示有限轨迹内有序结构出现的差异;这些数据不足以确定均匀成核机制、临界尺寸、自由能势垒或成核率。也不能把 P100/V100 两条独立混沌轨迹的事件差别直接称为 GPU 计算错误。

5. 为什么保留固定体积和人为约束的说明#
本例晶胞始终为 28.16 Å 立方体,升温时没有通过 NPT 调整密度;固定种子的高温阶段也带有外部约束。这些设置适合先学会分组、积分、降温和识别结构。
研究具体材料时,应检查压力/密度、体系尺寸、势函数、高温液体准备、冷却速率、种子形状与大小。观察到 FCC/HCP 比例增大,需要结合空间结构、取向和更充分的采样解释,不能仅凭一条比例曲线给出平衡相变温度。
6. 文件和复画#
ls figures
figures-new 在自己执行 run.sh 后产生。主要文件为:
| 路径 | 内容 |
|---|---|
reference/original/ |
原始无预设晶核与提前释放系列 |
reference/retained/ |
从已有加热末态补算的保留晶核系列 |
reference/*/案例/melt.dump、cooling.dump |
全部原子、温度阶段对应的坐标/速度/力/能量与种子标签 |
tables/*-cooling.csv |
配套实际对照的温度、能量和结构统计 |
new-work/ |
默认一对新完整计算,保留原生输入与轨迹 |
tables-new/final-structures.csv |
自己这次新轨迹的末态统计 |
figures-new/your-seeded-cooling.png |
自己这次实际温度与结构曲线 |
bash plot.sh
这条命令重画随包提供的参考对照,不覆盖自己 figures-new 中的新图。