Computational Physics - Department of Physics

(Axel Boer) #1

480 14 Quantum Monte Carlo Methods


where the inter-particle separationri jfor simplicity is written asr. In additions=ri+riand
t=ri−riwithriandrjbeing the two electron-nucleus distances. All the other quantities are
free parameters. Notice that the cusp condition is satisfiedby the exponential. Unfortunately
the convergence of this function turned out to be quite slow.For example, to pinpoint the He-
energy to the fourth decimal digit a nine term function wouldsuffice. To double the number
of digits, one needed almost 1100 terms.
The so called Padé-Jastrow form, however, is more suited forlarger systems. It is based on
an exponential function with a rational exponent:


f(ri j) =exp(U)

In its general form,Uis a potential series expansion on both the absolute particle coordinates
riand the inter-particle coordinatesri j:


U=

N

i<j





k

αkrki

1 +∑
k

αk′rki



+

N

i





k

βkrki j

1 +∑
k

βk′rki j




A typical Padé-Jastrow function used for quantum mechanical Monte Carlo calculations of
molecular and atomic systems is


exp

(

ari j
( 1 +βri j)

)

whereβis a variational parameter andadependes on the spins of the interacting particles.


14.5.5Program Example for Atomic Systems


The variational Monte Carlo algorithm consists of two distinct parts. In the first a walker, a
single electron in our case, consisting of an initially random set of electron positions is prop-
agated according to the Metropolis algorithm, in order to equilibrate it and begin sampling.
In the second part, the walker continues to be moved, but energies and other observables are
also accumulated for later averaging and statistical analysis. In the program below, the elec-
trons are moved individually and not as a whole configuration. This improves the efficiency of
the algorithm in larger systems, where configuration moves require increasingly small steps
to maintain the acceptance ratio. The main part of the code contains calls to various func-
tions, setup and declarations of arrays etc. Note that we have defined a fixed step lengthh
for the numerical computation of the second derivative of the kinetic energy. Furthermore,
we perform the Metropolis test when we have moved all electrons. This should be compared
to the case where we move one electron at the time and perform the Metropolis test. The lat-
ter is similar to the algorithm for the Ising model discussedin the previous chapter. A more
detailed discussion and better statistical treatments andanalyses are discussed in chapters
17 and 15.


http://folk.uio.no/compphys/programs/chapter14/cpp/program1.cpp
// Variational Monte Carlo for atoms with up to two electrons
#include
#include
#include
#include"lib.h"
using namespacestd;
// output file as global variable
ofstream ofile;

Free download pdf