SPPARKS Ising 能量与磁化
用24×24晶格比较三种温度,直接从站点状态提取能量、磁化和结构变化。
阅读本篇目录
下载SPPARKS实操包。包内含78个真实计算条件、原始输入/轨迹/统计、独立提取脚本和11张结构与数据图。每篇建议从新的解压目录开始;已经完整计算过的目录不要再次执行同名条件,以免混入旧结果。
1. 输入与参数#
本例采用二维正方四近邻晶格,站点状态1和2对应两种自旋;为画磁化,使用 spin=2×state−3 映射到−1、+1。
seed 30303
app_style ising
dimension 2
lattice sq/4n 1.0
region box block 0 24 0 24 -0.5 0.5
create_box box
create_sites box
set site range 1 2
solve_style tree
sector no
diag_style energy
temperature 0.75
stats 5.0
dump 1 text 5.0 dump.sites
run 60.0
sector no + solve_style tree运行单进程事件驱动KMC。三种模型温度0.25、0.75、1.5各用三个种子;比较温度时保持晶格、持续时间和相互作用定义一致。
2. 运行并看输出#
bash run.sh ising-T0p75-s30303
head -n 25 work/ising-T0p75-s30303/stdout.log
换温度的完整输入已在同级 inputs/,如 ising-T0p25-s30303 和 ising-T1p5-s30303。把输入复制到自己的工作目录后再调整参数,避免覆盖参考。

同一随机种子的实际初态与末态;低温在这个有限时间内更容易形成大块同向区域。
3. 提取与画图#
先在新的解压目录里完成整套计算,再运行下面的读取命令;run-all.sh已经自动完成提取和画图,不必重复执行分析脚本。
bash run-all.sh
head -n 8 analysis/case-summary.csv
ls figures/ising-*.png
只想重画已有参考,另解压一份,执行 bash analyze.sh。绘图读取每一帧的实际时间、完整周期边界状态,不把输出序号当时间。
| 模型温度 | 末态每站点独立键能 | 末态M,seed=30303 |
|---|---|---|
| 0.25 | 0.059028 | 0.802083 |
| 0.75 | 0.125000 | 0.645833 |
| 1.5 | 0.631944 | 0.083333 |
原生 Energy 是所有站点邻接差异之和,一条无向键被两个端点各算一次;这里的独立键能是 Energy/(2N)。磁化 M 是所有±1自旋的平均。不能把本模型能量约定直接当作其他教科书的J=1约定,或用三个短轨迹确定临界温度。

三个独立种子在实际输出时刻的能量与磁化;连线用于看变化,不表示已完成平衡采样。
相关入口:SPPARKS专题、官方文档、08Oct25源码版本。本专题使用有限小模型解释操作和输出,不把这些数字当作已收敛材料参数。