SPPARKS 实操专题
从Ising、晶粒长大到扩散、反应、沉积与烧结,按模型阅读命令、真实轨迹和结果。
阅读本篇目录
下载SPPARKS实操包。包内含78个真实计算条件、原始输入/轨迹/统计、独立提取脚本和11张结构与数据图。每篇建议从新的解压目录开始;已经完整计算过的目录不要再次执行同名条件,以免混入旧结果。
SPPARKS适合事件驱动的动力学Monte Carlo(KMC)和拒绝式Monte Carlo(rKMC)。它解决的是离散状态和跃迁事件的演化;建模时首先确定“站点存什么、允许什么事件、事件速率是什么”,再选求解器。
1. 环境与资源#
module purge
module load spparks/08Oct25-8173m
which spparks
spparks -h
当前使用08Oct25 CPU版、Intel oneAPI 2024.2与Intel MPI工具链。示例用原生可执行程序,不需要GPU。8173m是集群的构建入口名称,实际还须使用兼容该二进制指令集的CPU资源。程序版本和完整来源随包保存。
较长计算在申请到的CPU资源内执行。包内 run.slurm 按CPU分区整节点规则请求56核,示例实际最多同时4个MPI进程、每进程1线程;这套输入用于教学,没有把请求核数当成实际加速比。分区暂时没有可用资源时等待调度或联系管理员安排资源。
2. 按问题选择教程#
| 想完成的事情 | 阅读入口 | 实际内容 |
|---|---|---|
| 从一份输入开始 | 第一次计算 | 输入、运行、输出文件与续学顺序 |
| 小晶格自旋变化 | Ising | 三温度、多种子、磁化与能量 |
| 晶粒长大 | Potts | Q=16、温度、neigh变体和周期连通晶粒 |
| 分子反应事件 | 反应KMC | A+B⇌C、计数、体积、速率和随机涨落 |
| 周期晶格上的空位迁移 | 空位扩散 | 16条真实轨迹、跳跃事件和无歧义展开 |
| 沉积与表面迁移竞争 | 薄膜沉积 | 势垒表、入射通量、失败事件和结构图 |
| 多孔组织的变化 | 烧结模型 | 边框、空位、晶粒、局部密度及模型边界 |
| 选求解器与并行方式 | 求解器、种子与并行 | tree/linear/group、1/2/4MPI和输出时间 |
| 查模型和文件 | 命令与模型目录 | 当前26个app入口及本专题的使用范围 |
3. 先看参考,或者完整计算#
只从已有原始数据重新提取、画图:
bash analyze.sh
ls analysis-reference
ls figures-reference
另一份新解压目录中,提交整套工作流:
sbatch run.slurm
也可以在已经分配好的CPU资源内执行 bash run-all.sh。整套78条件串行排列,每次最多4MPI;analysis/保存CSV和数值,figures/保存高清图。下载包中的原始参考始终在 reference/。
基础包示范6个app样式,沉积是diffusion的另一条工作流;下面的扩展包补充另外20个家族。两包合计124个原生条件(含ID初始化复核),使已注册26个app均有实际操作示例。各包单独解压,不能将两个包的同名脚本混放;逐app覆盖不代表所有参数分支或材料均已计算。
相关入口:SPPARKS专题、官方文档、08Oct25源码版本。本专题使用有限小模型解释操作和输出,不把这些数字当作已收敛材料参数。
更多原生模型的实操入口#
下载扩展模型包,含46个原生条件、16张实际图与完整输入/提取命令。与基础78条件合起来,已注册26个app都有实际输入和输出示例;这只表示逐app教学范围,不表示所有参数分支、材料与长时收敛均已覆盖。
- 钉扎、应变与自旋变体
- 多相守恒交换
- 膜与蛋白区域
- 相场与浓度
- 四元数取向
- 温度/迁移率梯度
- 表面高度
- 离格Monte Carlo
- Er/H/He反应扩散
- 增材熔池扫描
- 移动焊接
- 扫描路径生成
- 人工事件网络
特殊模型使用可选 module load spparks/08Oct25-appfix-8173m。原默认保留;appfix只修正两个构造入口与默认32位站点ID条件,不改变相场能量或四元数随机初态约定。帮助 spparks -h 在08Oct25打印后返回1,独立交互查看即可,勿用其返回值判断计算是否成功。