几何对称团簇算法

Heringa, J. R., and H. W. J. Blöte. “Geometric cluster monte carlo simulation.” Physical Review E 57.5 (1998): 4976.

SW算法及其改进版本Wolff算法是处理二阶相变的主要工具。但是在具体的情况中,需求可能有变化。对于某种情况我们需要生成满足某种对称性的cluster。

Heringa等提出的这个算法很大程度上类似Wolff。这里我们用Ising-spin模型来介绍。每个MC move:

  1. 选择一对$s_i,s_{i’}$。体系本身有对称性使得存在操作$A(i)=i’$。
  2. 如果$s_i=s_{i’}$,那么本次move什么都不改变、本次move结束。
  3. 将$s_i$加入cluster stack和seed stack。
  4. 若seed stack空,则cluster生成完毕,将cluster中的每个spin $s_{i}$及其对称位置的spin $s_{A(i)}$翻转。本次move结束。
  5. $s_j$=seed.pop()
  6. 检查$s_j$的所有相邻spin $s_k$,如果$s_j=s_k$,且$s_{A(j)}=s_A{k}$,且$s_k$不在cluster中,则按照概率$p=1-\exp(-4\beta J)$将$s_k$加入cluster和seed。
  7. GOTO 4

这个算法的特点:每次翻转的spin正负数量相同,因此保证$M$不变。每次产生的cluster(实际上是两个)对称。