常用参数
以下输入参数是大多数 ALPS 应用程序共有的。
格子定义
在格子上运行的 ALPS 应用程序通过以下三个参数来指定格子(关于格子库本身如何构建,参见格子定义):
| 参数 | 默认值 | 含义 |
|---|---|---|
| LATTICE_LIBRARY | lattices.xml | 包含格子描述的文件路径 |
| LATTICE | 格子的名称,由维数、大小和晶胞指定 | |
| GRAPH | 作为 LATTICE 的替代,也可以直接引用格子库中定义的某个具体的任意图 |
此外,格子描述可能还需要格子描述文件中指定的其他参数(例如 L 或 W)。
模型定义
ALPS 量子格点模型可以通过以下参数指定(关于模型库本身如何构建,参见 ALPS 模型定义):
| 参数 | 默认值 | 含义 |
|---|---|---|
| MODEL_LIBRARY | models.xml | 包含模型描述的文件路径 |
| MODEL | 模型的名称(例如 “spin” 或 “boson”) |
模型描述可能还需要模型描述文件中指定的其他参数(例如自旋模型的 S=1/2 或 S=1、h=0.5,玻色子模型的 t=1.5 或 mu=0.5)。
有限温度模拟的参数
| 参数 | 含义 |
|---|---|
| T | 温度 |
| BETA | 温度的倒数,在未给出 T 时使用 |
蒙特卡罗模拟的附加参数
| 参数 | 默认值 | 含义 |
|---|---|---|
| SEED | 0 | 本次运行所用的随机数种子。每次为同一个任务创建新的运行时,该值都会加一,以避免重复运行使用相同的种子。 |
| RNG | “mt19937” | 所使用的伪随机数生成器。允许的取值为 “lagged_fibonacci607” 和 “mt19937”。 |
| WORK_FACTOR | 1 | 负载均衡时,调度程序用于估算某次模拟工作量的乘法系数。 |
| SWEEPS | 蒙特卡罗步数(热化之后) | |
| THERMALIZATION | 用于热化的蒙特卡罗扫描次数 |
以上是在参数文件本身中设置的参数。当从命令行运行时,调度程序还接受一组单独的运行时标志——例如 --time-limit、--checkpoint-time、--Tmin/--Tmax,以及用于并行运行的 --mpi/--Nmin/--Nmax——这些标志直接传给程序,而不是写在参数文件中;完整列表参见使用命令行。
精确对角化的附加参数
以下参数专用于 sparsediag 和 fulldiag 应用程序:
| 参数 | 默认值 | 含义 |
|---|---|---|
| CONSERVED_QUANTUMNUMBERS | 指定守恒的全局量子数,用于将计算拆分为针对不同扇区的更小规模计算。如果有多个量子数守恒,则将这些量子数用双引号括起来并以逗号分隔,如 CONSERVED_QUANTUMNUMBERS=“N,Sz” | |
| N_total、Sz_total 等 | 只要模型中为相应量子数定义了 <CONSTRAINT>(参见格子基),就可以用这些参数将其固定为某个具体值。只有当该参数被赋值,且相应量子数也出现在 CONSERVED_QUANTUMNUMBERS 中时,这一约束才会生效。 | |
| TRANSLATION_SYMMETRY | true | fulldiag 和 sparsediag 会利用平移对称性,并在可能的情况下按动量量子数对本征态进行分类。可以通过 TRANSLATION_SYMMETRY=false 关闭这种对称性约化。 |
| TOTAL_MOMENTUM | 固定总动量的取值。更多说明见下文。 | |
| MEASURE_ENERGY | false | 如果没有显式指定任何测量,fulldiag 和 sparsediag 默认不会存储关于本征态的任何信息;不过任何本征态的能量总是可以计算的——如果希望在未指定其他测量的情况下仍将能量包含在输出中,可以设置 MEASURE_ENERGY=true。 |
注意: 除了 true 和 false,你也可以分别用 1 和 0 来表示。
如果格子支持平移对称性,你可以指定总动量量子数,但在这样做时应当十分小心。 TOTAL_MOMENTUM 以矢量的形式给出动量量子数,即用空格分隔的一组数字。通常,每个动量量子数 具有如下形式
,
其中 是整数, 是对应方向上的线度。如果将取值放在引号中,也可以指定诸如 2Pi/5 这样的符号表达式,例如 TOTAL_MOMENTUM=“2Pi/5 0”。
警告: TOTAL_MOMENTUM 的非法取值可能会导致错误的结果,而不会给出任何进一步的错误提示。
关于 LATTICE/LATTICE_LIBRARY 参数与格子库的关系,参见格子定义。关于 MODEL/MODEL_LIBRARY 参数与模型库的关系,参见 ALPS 模型定义。关于 ALPS 文档的其他章节,参见总体介绍。