14.09.2014 Views

CASINO manual - Theory of Condensed Matter

CASINO manual - Theory of Condensed Matter

CASINO manual - Theory of Condensed Matter

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

The vmc method input parameter selects which is to be used: a value <strong>of</strong> 1 means electron-byelectron,<br />

whereas a value <strong>of</strong> 3 means configuration-by-configuration. 17<br />

The local energy does not have to be calculated every configuration move. In particular, energies are<br />

not calculated during the first vmc equil nstep moves <strong>of</strong> a VMC simulation when the Metropolis<br />

algorithm has yet to reach its equilibrium. Furthermore, because the configurations are serially correlated,<br />

the expense <strong>of</strong> calculating the energy at every configuration move is unjustified: it is more<br />

efficient to calculate the energy once every vmc decorr period moves, where typically the input<br />

parameter vmc decorr period might be in the range 4–20.<br />

Note that it is not necessary to write out every local energy calculated. vmc ave period successive<br />

energies can be averaged over before being written out to vmc.hist: this helps ensure that the<br />

vmc.hist file is not excessively large when long production calculations are carried out. Furthermore,<br />

on parallel machines the local energies computed on each processor are averaged over before being<br />

written out.<br />

The input parameter vmc nstep gives the number <strong>of</strong> energy-calculating steps in the VMC simulation.<br />

In parallel machines, each processor goes over vmc nstep/nproc energy-calculating steps.<br />

12.3 Two-level sampling<br />

The Metropolis acceptance probability for a move from R ′ to R in the standard algorithm 18 is<br />

} {<br />

}<br />

p(R ← R ′ ) = min<br />

{1, |Ψ(R)|2<br />

|D↑ 2<br />

|Ψ(R ′ )| 2 = min 1,<br />

(R)D2 ↓<br />

(R)| exp[2J(R)]<br />

|D↑ 2(R′ )D↓ 2(R′ )| exp[2J(R ′ . (12)<br />

)]<br />

It is straightforward to show that if detailed balance [11] in configuration space is satisfied then the<br />

resulting ensemble <strong>of</strong> configurations will be distributed according to the square <strong>of</strong> the trial wave<br />

function.<br />

However, casino employs a two-level sampling algorithm, which has been shown to be considerably<br />

more efficient [25].<br />

Let us define the first-level acceptance probability<br />

{<br />

p 1 (R ← R ′ |D↑ 2 ) = min 1,<br />

(R)D2 ↓ (R)|<br />

}<br />

|D↑ 2(R′ )D↓ 2(R′ )|<br />

and the second-level acceptance probability<br />

p 2 (R ← R ′ ) = min<br />

(13)<br />

{<br />

1, exp[2J(R)] }<br />

exp[2J(R ′ . (14)<br />

)]<br />

In the two-level algorithm we accept trial moves from R ′ to R with probability p 1 (R ← R ′ )p 2 (R ←<br />

R ′ ). It can be shown that, provided detailed balance in configuration space is satisfied, this procedure<br />

also results in an ensemble <strong>of</strong> configurations distributed according to the square <strong>of</strong> the trial wave<br />

function.<br />

The two-level approach is computationally advantageous because the Metropolis accept/reject step<br />

can be carried out in two stages: if the ‘first level’ is accepted (with probability p 1 ) then we compute<br />

the Jastrow factors <strong>of</strong> the new and old configurations and determine whether the ‘second level’ is<br />

accepted (with probability p 2 ). Thus, if a move is rejected at the first level then we do not have to<br />

compute the Jastrow factors for the new and old configuration 19 .<br />

12.4 Optimal value <strong>of</strong> the VMC time step<br />

Ideally, the VMC time step dtvmc should be chosen such that the correlation period (as determined<br />

by reblocking analysis) <strong>of</strong> the resulting configuration local energies is minimized. For large time steps<br />

17 There used to be a vmc method=2, but after extensive testing we concluded that it did not <strong>of</strong>fer any advantage<br />

over the other methods and was hard to support.<br />

18 In the electron-by-electron algorithm, R and R ′ differ only in the coordinates <strong>of</strong> a single electron.<br />

19 It is better to use the Slater wave function to compute the first-level acceptance probability because p 1 is much<br />

lower (in general) than the corresponding acceptance probability for the Jastrow part (p 2 ); hence we are less likely to<br />

need to compute the second level acceptance probability than if the situation were reversed.<br />

122

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!