Let us now discuss what happens when we introduce external sources into the system. In this case we have a new term in the action, which becomes
where the sum in the new term denoted as
is over all the
sites of the lattice. The external source
is a given, fixed but
otherwise arbitrary function of the sites. It is not simply a new
parameter of the model because, unlike
, it may change from site
to site. It is not a dynamical variable either, since, unlike
, it
does not fluctuate according to a statistical ensemble. It is what we may
call a classical (non-quantum) variable introduced into the model in this
way.
The issue at hand now, regarding the stochastic simulations, is how to
update the configurations so as to converge to the ensemble given by
, with this new action. At a first glance one may think
that the most natural thing to do is to modify the algorithm in order to
take the new term into account while building the cluster, but one can
quickly verify that this does not work, due to the fact that the flipping
of the cluster changes this new term at the interior sites of the
cluster. Under such circumstances the algorithm no longer satisfies the
condition of detailed balance.
The only known alternative left open to us is to modify the probability
of acceptance of the clusters, built exactly as before, taking only the
term into consideration. This means that, instead of
flipping the cluster with probability
, once it is built, we will flip
it with a probability that depends on
, using a version
of the usual Metropolis algorithm at the end of the Wolff algorithm. Here
is the complete algorithm with this modification:
It is apparent at once that this algorithm is inevitably somewhat less efficient than the pure Wolff algorithm, in terms of diffusion speed through configuration space, but the important thing is that is still free from the severe critical slowing down problems of the Metropolis algorithm. It is not difficult to check that the modified algorithm satisfies the condition of detailed balance. Since the cluster is built just like before, we already know that the ratio of the corresponding building probabilities is given by
We must now multiply this by the flipping probability, which can easily be obtained from our previous argument regarding the Metropolis algorithm,
so that we have for the ratio of the complete probabilities
,
![]() |
which is the condition of detailed balance, thus showing that the
algorithm does work. Note, however, that there is no way to control the
rejection rate of the clusters built, because the variation of
will depend on the average size of the clusters and we have no control
over that. It is possible, therefore, that the algorithm will become very
inefficient under certain conditions, with a high rejection rate, such
as, for example, in the case of a very large external source which is
constant over the whole lattice.