跳至内容

常用参数

以下输入参数是大多数 ALPS 应用程序共有的。

格子定义

在格子上运行的 ALPS 应用程序通过以下三个参数来指定格子(关于格子库本身如何构建,参见格子定义):

参数默认值含义
LATTICE_LIBRARYlattices.xml包含格子描述的文件路径
LATTICE格子的名称,由维数、大小和晶胞指定
GRAPH作为 LATTICE 的替代,也可以直接引用格子库中定义的某个具体的任意图

此外,格子描述可能还需要格子描述文件中指定的其他参数(例如 L 或 W)。

模型定义

ALPS 量子格点模型可以通过以下参数指定(关于模型库本身如何构建,参见 ALPS 模型定义):

参数默认值含义
MODEL_LIBRARYmodels.xml包含模型描述的文件路径
MODEL模型的名称(例如 “spin” 或 “boson”)

模型描述可能还需要模型描述文件中指定的其他参数(例如自旋模型的 S=1/2 或 S=1、h=0.5,玻色子模型的 t=1.5 或 mu=0.5)。

有限温度模拟的参数

参数含义
T温度
BETA温度的倒数,在未给出 T 时使用

蒙特卡罗模拟的附加参数

参数默认值含义
SEED0本次运行所用的随机数种子。每次为同一个任务创建新的运行时,该值都会加一,以避免重复运行使用相同的种子。
RNG“mt19937”所使用的伪随机数生成器。允许的取值为 “lagged_fibonacci607” 和 “mt19937”。
WORK_FACTOR1负载均衡时,调度程序用于估算某次模拟工作量的乘法系数。
SWEEPS蒙特卡罗步数(热化之后)
THERMALIZATION用于热化的蒙特卡罗扫描次数

以上是在参数文件本身中设置的参数。当从命令行运行时,调度程序还接受一组单独的运行时标志——例如 --time-limit--checkpoint-time--Tmin/--Tmax,以及用于并行运行的 --mpi/--Nmin/--Nmax——这些标志直接传给程序,而不是写在参数文件中;完整列表参见使用命令行

精确对角化的附加参数

以下参数专用于 sparsediagfulldiag 应用程序:

参数默认值含义
CONSERVED_QUANTUMNUMBERS指定守恒的全局量子数,用于将计算拆分为针对不同扇区的更小规模计算。如果有多个量子数守恒,则将这些量子数用双引号括起来并以逗号分隔,如 CONSERVED_QUANTUMNUMBERS=“N,Sz”
N_total、Sz_total 等只要模型中为相应量子数定义了 <CONSTRAINT>(参见格子基),就可以用这些参数将其固定为某个具体值。只有当该参数被赋值,且相应量子数也出现在 CONSERVED_QUANTUMNUMBERS 中时,这一约束才会生效。
TRANSLATION_SYMMETRYtruefulldiag 和 sparsediag 会利用平移对称性,并在可能的情况下按动量量子数对本征态进行分类。可以通过 TRANSLATION_SYMMETRY=false 关闭这种对称性约化。
TOTAL_MOMENTUM固定总动量的取值。更多说明见下文。
MEASURE_ENERGYfalse如果没有显式指定任何测量,fulldiag 和 sparsediag 默认不会存储关于本征态的任何信息;不过任何本征态的能量总是可以计算的——如果希望在未指定其他测量的情况下仍将能量包含在输出中,可以设置 MEASURE_ENERGY=true。

注意: 除了 true 和 false,你也可以分别用 1 和 0 来表示。

如果格子支持平移对称性,你可以指定总动量量子数,但在这样做时应当十分小心。 TOTAL_MOMENTUM 以矢量的形式给出动量量子数,即用空格分隔的一组数字。通常,每个动量量子数 kik_i 具有如下形式

ki=2πni/Lik_i = 2\pi n_i/L_i,

其中 nin_i 是整数,LiL_i 是对应方向上的线度。如果将取值放在引号中,也可以指定诸如 2Pi/5 这样的符号表达式,例如 TOTAL_MOMENTUM=“2Pi/5 0”。

警告: TOTAL_MOMENTUM 的非法取值可能会导致错误的结果,而不会给出任何进一步的错误提示。


关于 LATTICE/LATTICE_LIBRARY 参数与格子库的关系,参见格子定义。关于 MODEL/MODEL_LIBRARY 参数与模型库的关系,参见 ALPS 模型定义。关于 ALPS 文档的其他章节,参见总体介绍