[模型]XY模型的模拟技术

定义

XY模型是一种点阵模型,每个点阵点可以想象为代表一个二维的平面内的一个小磁针,由相角$\theta$描述其“方向”,即每个点阵点的值是一个二维的单位矢量$\bm{s}_i$。这个二维平面的定义是全局的,所有格点的“方向”都与之平行。如果格点的值是三维的单位矢量(点阵可以是任何维度N),那么就称为N维Heisenberg模型。这样的模型也可以理解称是量子自旋模型的经典极限[1]。
XY模型的哈密顿量定义为

如果取$J_{ij}=J=1$,$h_i=h=0$,就得到最简单的模型

与Ising模型不同,这样的格点可取连续值的模型对应的能量谱是连续的,每一个能量下可取的态的数目因此也是无穷多的。对于基态,尽管XY模型一定是所有格点矢量的方向相同,但是由于方向$\theta$是连续的,基态就有无穷多个。此时系统有一个自由度,就是这个$\theta$。这个现象称为Goldstone mode。

物理量

除了能量和热容、磁矩和磁化率,以及空间关联函数以外,XY模型还有一个重要的性质,就是旋度模量(helicity modulus)。二维XY模型就是一个二维(离散)向量场,这个场会有涡漩。涡旋的形状可以用涡旋的绕数描述(见[3,4])。正反涡旋的数目发生变化时,可能导致不能正反抵消,于是发生了Kosterlitz-Thouless相变(准确的详细描述见[3])。这是一种拓扑相变。

Single Flip Monte Carlo

最简单地,可以通过Single Flip(SF)算法进行模拟。类似Ising模型,每次随机选择一个格点,然后随机选择一个新方向,计算格点取新方向带来的能量差$\Delta E$,按照概率$p=\exp(-\beta\Delta E)$翻转(即取$[0,1)$随机数,若小于$p$,则接受新方向,否则保持不变;无论是否接受新方向,这步尝试之后的构型都被统计,即Metropolis算法)。

虽然这个最简单的方法是模拟XY模型的最常用的方法[1],但是这个方法不见得高效。如果模拟从$T=\infty$的态开始,冷却到$T$很低的状态,需要非常多的步数。

Wolff Cluster Algorithm

同样,XY模型在靠近相变点的时候也可以使用团簇算法。对应的Wolff团簇算法完全类比Ising模型的算法,变化的是除了随机选择一个起始格点,还要选择一个任意的方向$\bm{n}$(二维单位向量)来产生团簇。将最邻近格点加入团簇的概率设为

参考资料

  1. M. E. J. Newman and G. T. Barkema. Monte Carlo Methods in Statistical Physics. Oxford, 1999.
  2. Classical XY model. Wikipedia (2018.5)
  3. Z. Chen. 高等统计物理. 第九章 几种典型的晶格统计模型 (2018.5)
  4. 戴希, 凝聚态中的拓扑(一):Kosterlitz-Thouless相变:拓扑元激发导致的特殊相变 (2019.1)