SPPARKS 烧结模型与组织变化
展示sinter输入、真实晶粒截面和局部密度,说明边框、空位和短时结果应该怎样读取。
阅读本篇目录
下载SPPARKS实操包。包内含78个真实计算条件、原始输入/轨迹/统计、独立提取脚本和11张结构与数据图。每篇建议从新的解压目录开始;已经完整计算过的目录不要再次执行同名条件,以免混入旧结果。
1. 输入:先形成组织,再看演化#
本例建立18³的三维26近邻晶格,正数为晶粒标号、0为空位、−1为固定边框;随机初始化晶粒与空位,比较两个湮灭事件开始时刻。
seed 70001
app_style sinter
dimension 3
lattice sc/26n 1.0
region box block 0 18 0 18 0 18
create_box box
create_sites box
set site value -1
region compact block 3 15 3 15 3 15
set i1 unique region compact
set i1 value 0 fraction 0.2 region compact
event_ratios 2.0 1.0 10.0
events_temperatures 1.0 1.0 15.0
time_sinter_start 2.0
sweep random
sector yes
diag_style energy
diag_style sinter_density
stats 1.0
dump 1 text 1.0 dump.sites
run 260.0
event_ratios依次控制晶粒长大、孔隙迁移、空位产生/湮灭的尝试比例;events_temperatures分别控制对应接受过程。time_sinter_start决定何时开始尝试产生/湮灭事件,不代表到那一刻一定发生致密化。
2. 注意程序自动设置的边界#
这个版本在开始运行时强制加入1层frame与2层空置border。因此输入compact的3..15区间上侧15层会被重置为空;实际初始材料区域为3..14。换盒子尺寸或初始组织时,需要预留足够空间,而不是只按输入region计算“初始材料体积”。
空置border也被记成state=0,所以全盒0的数量包括外部空层,不能直接当内部孔隙率。原生Density只在中央严格6..10的125个格点上计算占据比例,也不是整个试样的总体密度。
3. 运行与看组织#
bash run.sh sinter-start2-s70001-long
head -n 25 work/sinter-start2-s70001-long/stdout.log
再在新解压目录生成全部图:
bash run-all.sh
ls figures/sinter-*.png

实际z=9中央截面:颜色以晶粒编号作稳定类别映射,黑色为空位、白色为frame;不使用连续颜色深浅表示物理取向。
4. 这次结果说明什么#
seed=70001初态有1365个晶粒占据站点,2731个空位(包含外层),中央Density=0.760。实际时间260:
| 湮灭尝试开始时刻 | 原生Energy | 中央Density | 全盒空位 |
|---|---|---|---|
| 2 | 65132 | 0.696 | 2731 |
| 1000 | 64222 | 0.768 | 2731 |
两条小模型中都有晶粒/空位位置变化与能量变化,没有出现净空位消除。不能根据“已经启用sinter”就宣称获得了收敛的烧结收缩或致密化速率;局部密度下降也不等于整个试样在膨胀。

中央占据比例和包含外部空层的全部空位数分开显示;每组两条种子,实际扫描时间按原输出读取。 输出中的Vmade是程序当时记录的量,不能把每一行直接相加当作累计湮灭次数。真正研究致密化还需要合适的初始颗粒、内部孔隙、界面动力学、足够空间和更长的多种子统计。
相关入口:SPPARKS专题、官方文档、08Oct25源码版本。本专题使用有限小模型解释操作和输出,不把这些数字当作已收敛材料参数。