15.5 Reducing critical slowing down 497
It will be clear that the cluster generated in this way is a SW cluster and therefore
the method satisfies detailed balance. The difference between the two methods is
that the selection of the cluster to be grown can be viewed as throwing a dart at
the lattice [21] with equal probability of hitting any of the sites – the probability of
hitting a SW cluster (SWC) of sizeNSWCisNSWC/Ld(forddimensions), thereby
favouring the growth of large clusters. Because of this preference for large clusters
it is expected that the single cluster version changes the configuration on average
more drastically in the same amount of time and that statistically independent
configurations are generated in fewer steps. This turns out to be the case in the 3D
Ising model, where the single cluster algorithm yields time correlation exponents
0.28 or 0.14 (depending on the correlation function studied) as opposed to 0.5 for
the SW algorithm. For the 2D Ising model only a small increase in efficiency has
been measured [21].
It is convenient to generate the clusters in a recursive way. Each MC step consists
of selecting a random site (Location) on the lattice.ClusterSpinis minus the spin
at this location (the spins are flipped when added to the cluster). The algorithm is
then as follows:
ROUTINE GrowCluster(Location, ClusterSpin):
FlipSpinatLocation;
MarkSpinas being added toCluster;
IF right-hand neighbour not yet added THEN
TryAdd(RightNeighbour, ClusterSpin);
...Similar for other neighbours...
END GrowCluster.
ROUTINE TryAdd (Location, ClusterSpin):
DetermineSpinatLocation;
IFSpinopposite toClusterSpinTHEN
IFRandom number< 1 −e−^2 JTHEN
GrowCluster(Location, ClusterSpin);
END IF;
END IF;
END TryAdd.
Measuring correlation times requires some care, as a step in the Wolff algorithm
consists of flipping one cluster instead of (on average) half of the total number of
spins in the lattice as in the SW algorithm. The correlation timeτ ̄Wexpressed in
numbers of single cluster flips must therefore be translated into the single cluster