Pulay mixing[16] has became one of the standard methods
implemented in the ab initio Density Functional Theory
(DFT)[8,10] codes to achieve self-consistency
in ground-state energy calculations[13, pp. 172-174]. The scheme at beginning of a given
self-consistent loop , takes a set of histories of input densities
from self-consistency loops
in the range
to
(for a given integer
and if
then we use an initial guess) and forms an optimised input
density for step
The phenomenon called ``charge sloshing''[9]--where a
small variation in the input density (in the self-consistency loop)
causes a large change in output density--is often observed in
calculations for metallic systems. This results in very long repeats
of the self-consistency loop if the calculation ever converges and it
is one of the main obstacles against fast calculations on metallic
systems. The solution to this problem exists from noting that charge
sloshing is caused by long-range real-space changes (and hence short
reciprocal-space changes) in the density dominating the variation of
the Hartree potential. Hence by slightly modifying the mixing
procedure and by filtering out the long range changes in density (the
residuals) one can reduce the effect of charge sloshing and hence
achieve much faster self-consistency convergence. This
preconditioning method is named after its inventor
Kerker[9], and has already been successfully applied to
various ab initio electronic structure
codes[11,12]. An alternative method is by adding
weight to the computation of the residual metric ( in equation
(2)) so that the short ranged variations in density are given
more importance in the mixing procedure, and this method is referred
to as Wave-dependent metric approach.
Working under reciprocal space, the Pulay mixing equation
(1) becomes
where
are the Fourier transform
of input density histories; and
. For Kerker preconditioning, we
replace the scalar mixing parameter
with a diagonal matrix
in reciprocal space:
where
is a user input parameter controlling the meaning of
``long ranged'' variation in density in the preconditioning procedure:
for
(short range in real space),
so we
have normal Pulay mixing, but for
(long range in real
space),
so the portion of
do not
take part in the mixing.
While the Kerker preconditioning method effectively adds a
-dependent weight to the mixing parameter, the wave-dependent
metric method adds a
-dependent weight on how we compute the
Pulay paramaters
. We modify the residual metric
(given in equation (2)) to become
![]() |
(3) |
Special treatment is needed for the point , since
is undefined at this
point. The easiest approach is to define the weight at
as analytic continuation of the factor, and hence we define
.