Computational Physics

(Rick Simeone) #1
10.6 Further applications and Monte Carlo methods 323

1

10

100

1000

10 000

10 100
N

(^2) R
Figure 10.3. Scaling behaviour of the square of the end-to-end lengthRas a
function ofNon a semi-log scale. Crosses with error bars: Rosenbluth algorithm.
Double crosses: PERM algorithm. The circles are the population sizes in the PERM
algorithm. The drawn line has the forma(N− 1 )0.75, whereais chosen to fit the data.
Calculate the weightswLj and their productWL;
Add bead number L;
PolWeight = PolWeight∗WL;
IF L<N THEN
AddBead(Polymer, PolWeight, L+1);
END IF
END ROUTINE AddBead.
A careful read of this pseudocode should convince you that this routine is equivalent
to the Rosenbluth algorithm described above. The PERM algorithm cleverly uses
this recursive type of procedure in order to perform pruning (i.e. the removal of
weak members of the population) and enrichment (the proliferation of the strong
members) in a single recursive procedure without having to analyse an entire pop-
ulation. Note that by ‘weak’ we denote conformations having low weight and vice
versa for ‘strong’.
Now consider a polymer which has a relatively large weight. This is ‘enriched’
in the following way. We create two members of this polymer at the next step (i.e.
when adding the next bead) and give them each a weight which is half of the weight

Free download pdf