Electronic Shells in Spherical Metal Clusters

advertisement
Electronic Shells in Spherical Metal Clusters
Complementing material to the book “Simple Models
of Many-Fermion Systems” by J.A. Maruhn,
P.-G. Reinhard, and E. Suraud
Contents
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 The Constituents and Their Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1 The Jellium Model for the Ionic Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2 The Hamiltonian for the Valence Electrons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.3 Observables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 Reduction to Spherical Symmetry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.1 Radial Wavefunctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Bookkeeping of States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 Numerical Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.1 Representation and Operations on a Radial Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Storage of Wavefunctions and Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Iterative Solution of the Kohn–Sham Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4 Explanation of Input and Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 First Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
2
2
3
5
6
6
7
9
9
11
12
15
17
19
1 Introduction
This package provides a code for computing the valence electron shells in simple
metal clusters. The aim is twofold: First, we have an example for self-consistent
calculations in a finite many-Fermion system based on density-functional theory
(see Chap. 6 of the book). Second, we exemplify the physics metal clusters and
their pronounced electronic shell effects (see Chap. 3 of the book).
The prototypes of self-consistent models are the Hartree and Hartree–Fock
approaches used since long for atoms [17]. They are often summarized under the
notion of “mean-field” models and those have been extended to almost any field in
physics dealing with the many-Fermion problem. It turns out, however, that straightforward Hartree–Fock employing the basic two-body forces fails in most cases as
it misses the correlations effects which are crucial in almost all systems, may it be
atoms, molecules, or nuclei. The success of empirical shell models, on the one hand,
and the urgent need for an independent particle basis, on the other hand, have led
to the development of mean-field approaches with effective interactions where all
1
2
Electronic Shells in Spherical Metal Clusters
complicated correlation effects are built into the effective Hamiltonian of the model.
The key word for this procedure is energy-density formalism. It is well developed
and microscopically founded for many-electron systems, for reviews see [8, 15]. It
is somewhat more phenomenological in nuclear or hadron physics. A pedagogical
example for a nuclear self-consistent code was given earlier [30]. A much similar
code is available for metal clusters, and this is what is being presented here.
Metal clusters are small pieces of a bulk metal. They are often created by sputtering that piece off a metal surface using the brute force of an intense laser field. A
more swift production technique is condensation of the metal drop out of gaseous
supersonic expansion process. For reviews on clusters in general and their experimental aspects, see [13, 35]. The properties of the clusters are thus much related to
the properties of the corresponding bulk material. And metals are distinguished by
the existence of a conduction band where the valence electrons can move freely over
long distances covering several elementary cells. A particular interesting case are the
simple metals which are simple because the valence electrons are energetically well
separated from all other electrons bound more tightly to the atoms. The alkaline
atoms, Li, Na, K, Cs, and Rb, are typical simple metals having all valence charge
one. We will in the following concentrate on this class of materials. The structure
of metal clusters is dominated by the shell structure of the valence electrons; for a
theoretical review, see [7]. Unlike nuclei, clusters can be produced at any size, and
thus they have been the ideal tool to study the appearance of super-shells in very
large systems [23]. We will use them here as handy examples for spherical shell
structure.
Before going into the details, we need to clarify the units: We are using here
and in the code the natural units which means that all energies are given in Ry
(Rydberg = 13.6 eV) and all length are given in Bohr radii a0 = 0.53Å.
2 The Constituents and Their Description
2.1 The Jellium Model for the Ionic Background
The energetic separation of the core electrons makes them inert, and thus the simple
metals can be viewed as a lattice of fixed ions and a cloud of freely wandering
valence electrons. Although this provides an already much simplified picture, the
necessary optimization of ionic positions is very cumbersome and limits that level
of description to small clusters with nowadays N ≤ 40. Models with full ionic
structure are described in [6, 19, 22]. An even simpler approach is obtained by
recurring to the jellium picture where the ions are smeared out to a homogenous
positive background. This approach is often employed to study the electronic structure of simple metals in bulk material and on metal surfaces [2, 33]. It is justified by
arguing that the prevailing electronic effects are connected with long wavelengths
which are insensitive to details of ionic structure. The jellium model has also been
used successfully for simple metal clusters [3, 9, 7]. It is well adapted for the present
2
The Constituents and Their Description
3
Table 1 The Wigner–Seitz radii rs and the core radii rc for the alkaline metals
Element
rs [a0 ]
Li
Na
K
Rb
Cs
3.25
3.96
4.86
5.20
5.62
purpose of presenting a code which gives first insight into the electronic structure of
metal clusters. Thus we will model the positive background of the cluster as
ρ J (r ) =
ρ0
√
1 + exp rr −R
/ 3
,
ρ0 =
3
4πrs
,
1/3
R = r s NI ,
(1)
c
where rs is the bulk Wigner–Seitz radius of the system, ρ0 the bulk equilibrium
density, R the radius of the system, and NI the number of atoms (= ions) in the
cluster. Note that this jellium model has a Woods–Saxon surface profile with a finite
width. Most applications of the jellium model employ a steep surface profile which
is recovered from the form (1) in the limit rc → 0. A finite width can account
to some extent for the folding with the ionic pseudo-potential [5, 31, 28]. This is
achieved when inserting the Ashcroft empty core radius rc in the above profile. The
pseudo-potential describes the effective interaction between a valence electron and
the ion including all its core electrons [1]. The rc is determined such that a bulk
model with ionic structure has the desired empirical equilibrium density and rs .
Last not least, the background profile (1) with finite surface width is numerically
preferable because a smooth function is easier to represent on a grid. After all
these very quick explanations, one is right if one suspects more subtle theoretical
aspects behind these pseudo-potentials. Nonetheless, we cannot extend too much
on that topic and refer the interested reader to the corresponding references. For
the purposes of this program, we assume the soft jellium model just as a working
prescription. To make it practical, we supply in Table 1 the Wigner–Seitz and cutoff
radii (in units of the Bohr radius a0 ) for the alkaline metals. The values are taken
from [2, 20].
2.2 The Hamiltonian for the Valence Electrons
The valence electrons are the main constituents determining the structure of simple
metal clusters. They are to be described in more detail. We will use for this the
Kohn–Sham scheme based on the energy-density functional approach, for reviews
see [8, 15]. The aim is to have a microscopic description in terms of a set of
single-electron wavefunctions {ϕα (r)}. The reduction to a picture of independent
single-particle states means that we are dealing effective with quasi-particles from
which observables are to be deduced with care. The total energy and all observables
4
Electronic Shells in Spherical Metal Clusters
related with the spatial density distribution are on the safe side of an appropriate
energy functional is used which encompasses all correlation effects in an effective
exchange-correlation functional E xc . Actually, we are using the functional of [12]
which reads
E tot = E kin (ϕα ) + E Coul (ρel − ρJ ) + E xc (ρel ),
E kin = d 3 r
wα |∇ϕα |2 ,
(2)
(3)
α
E Coul (ρ) =
e2
2
E xc =
d 3r d 3r ρ(r)ρ(r )
|r − r |
,
e2 = 2 Ry a0 ,
(4)
d 3 r ρel [x (ρel ) + c (ρel )],
(5)
1/3
0.916
3
Rya0 , rs (ρel ) =
,
rs
4πρel
1
1
,
c (ρel ) = −0.066 Ry (1 + x 3 ) log (1 + x −1 ) + x − x 2 −
2
3
x (ρel ) = −
ρel (r) =
|ϕα (r)|2 ,
(6)
x=
rs
,
11.4 a0
(7)
(8)
α
where the units are given here in Ry = 13.6eV and Bohr radii a0 = 0.53 Å. The
kinetic energy and the Coulomb energy are obvious. The x models the exchange in
a local approximation. It is, in fact, the well-known Slater approximation [8]. The
c is a local correlation functional which is derived from a correlated calculation in
homogenous electron matter. Note that the accumulation of kinetic energy (3) and
density (8) invokes occupation weights wα . These should be 0 or 1 in a strict Kohn–
Sham scheme. We allow for broken occupation to deal with non-closed electron
shells. In this case, the occupation weights are to be determined by giving the system
some temperature and requiring thermal equilibrium occupations.
The Kohn–Sham equations are derived from a variation of the energy functional
with respect to the electronic wavefunctions. This yields from the above energy
functional the Kohn–Sham equation
(h KS (ρel ) − εα ) ϕα = 0,
(9)
where the Kohn–Sham Hamiltonian is derived formally as
h KS ϕα =
∂E
∂ϕα+
(10)
2
The Constituents and Their Description
5
and reads explicitely
h KS = −
2 2
∇ + UC (r) + Uxc (r),
2m
ΔUC = 4πρel ,
Uxc =
(11)
(12)
4
11.4 a0
x (ρel (r)) − 0.066 Ry log 1 +
3
rs (ρel (r))
,
(13)
where we have recurred to expression x for the exchange potential and the abbreviation rs , both specified in Eq. (6). Having the single-particle energies εα at hand,
one can determine the thermal occupation weights as
wα =
1
,
F
1 + exp εα −ε
T
(14)
where T is the assumed temperature and εF the Fermi energy, to be determined such
that the desired particle number
Nel =
wα
(15)
α
is obtained. The occupation weights can be set simply to wα = 1 if exactly as
many states are provided as particles are contained in the system, which is typically
the case in closed shell clusters. The shell sequence for spherical clusters will be
discussed in Sect. 3.2.
The Eq. (9) is a nonlinear equation for the single-particle wavefunctions ϕα ,
and occasionally the occupation weights wα . This poses a self-consistent problem
because the Hamiltonian depends itself on the solution. Iterative methods are the
natural strategy for this kind of problems. Our special solution technique will be
discussed in Sect. 3.2 dealing with the numerical aspects, in particular in Sect. 4.3.
2.3 Observables
Once the Kohn–Sham equations have been successfully solved, one can extract several observables from the solution. The most important of all is, of course, the energy
E. It could be computed in a straightforward manner directly as defined in Eqs. (2),
(3), (4), (5), (6), (7) and (8). The kinetic energy, however, is a bit cumbersome to
compute. We exploit that it is already contained in the single-particle energies εα
and compute the energy as follows:
1
E=
wα εα −
(16)
d 3r (ρel − ρJ )UC − d 3 r ρel2 ∂ρ cx ,
2
α
6
Electronic Shells in Spherical Metal Clusters
where the two last terms subtract contributions which are over-counted in the mere
sum of single-particle energies. This total energy, however, should not be compared
with the true binding energy of a cluster, because it is evaluated with the inappropriate Coulomb energy of the smooth jellium background. The ionic structure has
an important effect on the total binding. Yet, it can be incorporated into an extended
version of the jellium model, the structure-averaged jellium model which is discussed in detail in [21]. Although the total energy is to be taken with care, one can
very well deduce relative energies, as, e.g., the change in energy when increasing
the temperature. This will deliver the properties of the heath bath of electrons. More
about that in Sect. 5.
Another important result is the electron density ρel . It may be looked at as such,
or one can deduce various global parameters from it. For example, the root-meansquare radius
rel =
d 3 r 2 ρel
d 3 ρel
(17)
or the formfactor Fel (q) by Fourier transformation. The formfactor allows to extract
two further important observables, the diffraction radius Rel and the surface thickness σel . For details of its definition and evaluation, see [11, 10].
The single-particle energies εα as such provide also interesting insight into the
shell structure of the electron cloud. One has to keep in mind, however, that these
are not directly observable and reach a bit beyond the safe grounds of energy density
formalism.
Finally, one can evaluate quantities
which are related to the thermal occupation
which are the entropy S = − α wα log (wα ) and the free energy F = E − T S.
These quantities are, of course, negligible for closed shell systems. This fact can
serve as a quick indicator of the shell structure.
3 Reduction to Spherical Symmetry
3.1 Radial Wavefunctions
In the following we specialize the consideration to spherical clusters. The jellium
background (1) was already designed to be spherical. We assume, furthermore, that
the valence electron cloud provides a spherical density. Thus all mean-field potentials in the mean-field Hamiltonian h are radially symmetric. As a consequence, the
single-particle wavefunctions can be separated as
ϕα (r) =
Rn α lα (r )
Ylα m α (θ, φ)χνα ,
r
(18)
3
Reduction to Spherical Symmetry
7
where Y is a spherical harmonics [14] and χ is a spinor. We will consider only even
clusters which are spin-saturated such that the spinor degree-of-freedom plays no
role and can be dropped in the following.
The spherical separation (18) reduces the overlap matrix elements to mere radial
integration
ϕα |ϕβ =
0
∞
dr Rn α lα (r )Rn β lβ (r ) .
(19)
The kinetic energy reduces to radial derivatives and the Kohn-Sham equation
remains as an equation for the radial wavefunction
2 lα (lα + 1)
2 d 2
+
+ UKS (r ) Rn α lα = εα Rn α lα
−
2m d 2r
2m
r2
.
(20)
The spherical symmetry makes all states with the same n α and lα but different
magnetic quantum number m α to be degenerate. Thus the single particle energies
do not depend on m α as indicated in the labeling εα . Subsequently the occupation
weights wα , as determined by Eq. (14), become also degenerated and are denoted
now by wn α lα .
The self-consistent Kohn–Sham potential requires the electron density (8) as
input. It becomes also radially symmetric and it is sampled from the radial wavefunctions as
ρ(r ) =
2(2lα + 1)wn α lα
Rn2α lα (r )
n α lα
r2
,
(21)
where the factor 2 stands for the spin degeneracy and the factor 2lα + 1 accounts for
the degeneracy of the m α .
3.2 Bookkeeping of States
These few relations (19), (20), and (21) suffice to reduce the treatment to effectively
one-radial dimension. We have seen already that this induces a labeling of the states
in terms of the radial quantum number n α and orbital angular momentum lα together
with a 2lα + 1-fold degeneracy with respect to the magnetic quantum number. The
question remains which of the states (n α , lα ) contribute significantly to a cluster
with given electron number Nel . The impact of a state is regulated by its occupation
weight wα and the weights depend on the single-particle energies εα according to
Eq. (14). Thus it is desirable to have an ordering of the states with respect to the
expected single-particle energies. And a simple, analytical expression for these is
given in the harmonic oscillator model [17] yielding
1
,
εα = ω 2n α + lα +
2
n α ∈ {1, 2, 3, . . .},
lα ∈ {0, 1, 2, . . .}
.
(22)
8
Electronic Shells in Spherical Metal Clusters
This ordering groups the shells into degenerate blocks which then constitute what
one calls the magic numbers. For the oscillator model we would obtain the sequence
of magic numbers as Nel = 2, 8, 20, 40, 70, and further. This sequence is at
variance with the actual magic numbers for metal clusters above Nel = 40 which
reads 2, 8, 20, 40, 58, 92, 138, and further. The reason for this deviation is that
the actual mean-field resembles more a Woods–Saxon potential where the potential
approaches smoothly the value 0 for large distances, whereas the oscillator grows
quadratically to infinity. Thus states with large probability at the outer bounds, i.e.,
states with high angular momentum, have less energy in a realistic potential than
in the oscillator. This downshift grows with system size and it has reached the next
lower shell for the state with n = 1 and l = 4. Subsequently, there appears a shell
closure already for Nel = 58 rather than for the full next oscillator shell Nel = 70.
The trend continues and the next shell closures include always the highest l state
from the next oscillator shell. For even larger systems (Nel > 200), the sequence
turns over once more and counts the next two high l states to the past shell. Actual
turning points for very large systems depend somewhat on the model. Thus one
needs to explore each system carefully when going higher up in electron number.
In Table 2, we produce the assumed energy ordering and indicate shell closures for
the predictable shells. This information will be used later on to arrange the level
ordering and the automatic selection of states in the code. It is one of the first exercises when exploring this code to look at the spectra of single-particle energies;
see Sect. 5.
Table 2 The labeling and ordering of the spherical shells. The column “name” displays the naming
of the state in the convention of atomic physics. The column “deg.”(=degeneracy) shows the number of degenerated states. The column “acc.”(=accumulated particle number) provides the particle
number when filling up to and including the present state. Magic shell closures are indicated by a
horizontal line
Nr.
n
l
naming
deg.
acc.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
1
1
1
2
1
2
1
2
3
1
2
3
1
2
3
4
1
0
1
2
0
3
1
4
2
0
5
3
1
6
4
2
0
7
1s
1p
1d
2s
1f
2p
1g
2d
3s
1h
2f
3p
1i
2g
3d
4s
1j
2
6
10
2
14
6
18
10
2
22
14
6
26
18
10
2
30
2
8
18
20
34
40
58
68
70
92
106
112
138
154
164
168
198
4
Numerical Implementation
9
4 Numerical Implementation
4.1 Representation and Operations on a Radial Grid
4.1.1 The Radial Grid
After the spherical separation (18) there remain only dependences on the radial distance r in the radial wavefunctions Rn α lα and in the densities and fields. We represent
all these spatially dependent quantities on an equidistant radial grid. Any radial
function f (r ) is then handled as
f (r ) ≡ f i = f (ri )
,
ri = (i − 1)Δr
,
i = 1, . . . , Nr ,
(23)
where Δr is the grid spacing and Nr the number of grid points.
Radial integration is done by the simple trapezoidal rule as
∞
dr F(r ) = Δr
0
1
F
2 1
+
N
r −1
Fi + 12 FNr
≈ Δr
i=2
Nr
Fi ,
(24)
i=2
where we exploit that all integrands which occur in spherical calculations vanish
at the origin (i = 1) and are negligible at the boundary (i = Nr ). It is to be
remarked that this simple trapezoidal rule is very precise for integrands which vanish
at the boundaries and have vanishing first derivative there. The precision becomes
comparable or even better than a five-point integration formula. The reason is that
one actually works with a trapezoidal rule complemented by the Euler–McLaurin
corrections using the first derivatives [25], and it happens that these derivative corrections just accumulate to zero under the given conditions.
4.1.2 Derivatives on the Grid
For the derivatives, we use five-point precision throughout. That means
1
Δr
1
(∂r2 f )i = 2
Δr
(∂r f )i =
1
− 12 f i+2 +
2
f
3 i+1
−
2
f
3 i−1
1
− 12 f i+2 +
4
f
3 i+1
−
5
f
2 i
+
+
1
f
12 i−2
4
f
3 i−1
−
,
1
f
12 i−2
(25)
.
(26)
These formulas cease to work at the boundaries of the grid because they would call
the function f at points outside the grid, e.g., f 0 or f −1 . Fortunately, all functions
have well-defined reflection symmetry about the lower bound r = 0. The radial
wavefunctions behave as Rn α lα ∝ r lα +1 P(r 2 ), where P can be any polynomial,
and all densities and potentials are radially symmetric thus belonging to angular
momentum l = 0, i.e., they behave ∝ P(r 2 ). Thus we can define the function at the
missing grid points by
f0 = Π f2
,
f −i = Π f i+2
,
(27)
10
Electronic Shells in Spherical Metal Clusters
where the parity of the field f is Π = (−)lα +1 for the radial wavefunctions Rn α lα
and Π = +1 for any density or potential. The extension beyond the boundary is
not so straightforward at the upper bound of the grid. But all wavefunctions and
fields should be very small there. Thus one may very well switch to a less precise
treatment. We assume that the wavefunctions and fields simply dissappear beyond
the boundary, thus setting
f Nr +1 = 0 ,
f Nr +2 = 0 .
(28)
A special treatment is devised for the second derivative in the inversion of the meanfield Hamiltonian. This will be discussed in the next section.
4.1.3 Efficient Inversion with Five-Point Precision
The five-point formula (26) for the second derivative makes the Hamiltonian of the
kinetic energy on the grid to be a sparse matrix with two off-diagonal lines. This
could easily and quickly be inverted by a Gaussian elimination scheme. However,
there is an even faster scheme [34, 16]. We write the five-point approach to the
second derivative as
Δ5 = D3 −1 Δ3
1
(D3 f )i = 12
f i+1 +
5
f
6 i
+
1
f ,
12 i−1
(Δ3 f )i = f i+1 − 2 f i + f i−1 .
(29)
(30)
The inversion problem, e.g., for the kinetic energy inversion,
ψ=
p2
+ E0
2m
−1
ϕ,
(31)
can be formulated as an inhomogeneous linear equation
p2
+ E0 ψ = ϕ
2m
(32)
to be solved for ψ. We insert the second derivative in the approach (29) and operate
with D3 from left. Thus we have to solve
2
−
Δ3 + E 0 D3 ϕ = D3 ψ.
2m
(33)
The matrix to be inverted is now sparse with the structure of the three-point finite
differences, i.e., with only one off-diagonal line. This can be inverted in a standard
and stable manner by a Gaussian elimination scheme. Thus we obtain five-point
precision at the low cost of three-point finite differences. It costs only the bit more
4
Numerical Implementation
11
care to evaluate the three-point foldings D3 before running the elimination scheme.
Altogether, we have now at hand a quick scheme for the important operation of
inversion (31).
4.1.4 The Coulomb Solver
The Coulomb potential UC for a given charge density ρC is determined as the solution of the Poisson equation (12) which reduces for radially symmetric fields to
∂r2 (rUC ) = 4πrρC
.
(34)
This is an inhomogeneous linear equation of the type (32) which can be solved with
the techniques discussed in the previous Sect. 4.1.3. There is only one point which
differs from all other inversions: The Coulomb potential decays very slowly and
thus has a finite value at the boundary of the grid
UC (r Nr ) = e
2 4π
dr r 2 ρC (r )
r Nr
.
(35)
This boundary value has to be supplied when starting to run the Gaussian elimination scheme backward, i.e., from i = Nr down to i = 1.
4.2 Storage of Wavefunctions and Fields
The spatial fields for the densities and the potentials are stored in linear arrays
[1 . . . Nr ]. For the wavefunctions comes in addition the label of the state α ≡
(n α , lα ). Each wavefunction as such is again a linear array [1 . . . Nr ]. We stack them
on above another in a large linear array and handle the pointers to the first element of a given wavefunction explicitely. The order of stacking follows the double
quantum number (n α , lα ). The first block contains all states with lα = 0. There are
several states n α ∈ {1, . . . , n max }(lα = 0). These are stacked in the order of n α . Then
follows the second block for lα = 1 running up to n max (1). And so forth until we
have finished with lmax . The access to the wavefunctions is handled by a pointer
field NPLA(n,l). For given angular momentum l and radial quantum number n,
NPLA(n,l) points to the position of the first element of the wavefunction. The
single-particle energies εα and weights wα are stored in linear arrays using the same
ordering as for stacking the wavefunctions. But each state occupies now only one
element instead of Nr subsequent elements. We use the pointer field to access also
the single-particle energies and weights. The actual position in their array is computed as NPLSHL=NPLA(n,l)/Nr + 1, where we use integer division delivering
the next full integer result.
12
Electronic Shells in Spherical Metal Clusters
4.3 Iterative Solution of the Kohn–Sham Equations
4.3.1 The Gradient Iteration
The Kohn–Sham equations (9), (10), (11), (12) and (13) are nonlinear in the wavefunctions. Thus an iterative solution is needed to resolve the nonlinearity. It is
advisable then to use also an iterative scheme for solving the differential equation
(9) because the intermediate solutions for the wavefunctions are discarded anyway. The simplest and most robust iteration scheme to find an eigenvalue of h is
ϕβ(n+1) = hϕβ(n) . This scheme will converge toward h max , the maximum eigenvalue of
h. However, we are interested rather on the opposite, the minimum eigenvalue h min .
To this end, we have to iterate a modified Hamiltonian whose maximum eigenvalue
corresponds to h min . This is achieved by the gradient iteration
ϕα(n+1) = O [1 − δh (n) ]ϕα(n)
,
δ<
2
h max
,
(36)
where O means ortho-normalization of all ϕβ in ascending order of the singleparticle states ϕα . The restriction on δ guarantees that h min produces a maximal
1 − δh. Note that h (n) depends on the iteration because the Kohn–Sham equations
are nonlinear equations in ϕα(n) .
There is a complementing point-of-view on that gradient iteration. Remind that
the Kohn–Sham equations have been derived from a minimization of the energy
functional (2). And remind Eq. (10) which expresses the Kohn–Sham Hamiltonian
h KS as gradient of the energy with respect to the wavefunctions. Thus we can rewrite
the step (36) before ortho-normalization as
ϕα(n+1) = ϕα(n) − δ
∂E
,
∂ϕα+
(37)
which makes it obvious that this step proceeds just along the gradient of the energy
landscape, that is where its name comes from.
The gradient step is simple and robust. But it can become extremely slow due
to large h max in a good numerical representation of the ϕα . For example, with the
kinetic energy in a finite difference scheme with five-point precision we obtain
2
16
h max ≈ 2mΔr
2 ( 3 + l max (l max + 1)) which can easily reach 2, 000 eV for a medium
large cluster. On the other hand, we are looking for single-particle energies in the
eV range. Thus one needs typically a few thousand iterations to obtain satisfying
precision from the simple gradient iteration (36).
4.3.2 The Damped Gradient Iteration
The problem with the large h max , and thus the slow convergence of the gradient
step, can be easily localized for the Kohn–Sham Hamiltonian (11): it is the kinetic
energy which rises to those annoyingly large values of thousands of eV whereas
4
Numerical Implementation
13
the potential energy stays typically within the range of 1–10 eV. This suggests to
improve the step by damping the components with high kinetic energy and leads to
the damped gradient step
ϕα(n+1)
=O
ϕα(n)
−
x0
p̂2
2m
+ E0
h
(n)
−
ϕα(n)
|h
(n)
|
ϕα(n) ϕα(n)
,
(38)
where x0 and E 0 are numerical parameters to be adjusted for optimal speed and
stability. The E 0 is to mimic the typical variation of the local mean-field, i.e., E 0 ≈
1
U , which amounts to E 0 ≈ 0.5 Ry for the case of Na clusters. It needs to be
2 min
readjusted for other materials. The overall step size x0 should be chosen as large as
possible for optimum speed. But one ought to be careful. A small increase can turn
the step to divergence. In practice it is better to go a bit below optimum to be on the
safer side. We will use typically x0 ≈ 0.2 − 0.8. The lower values apply for large
clusters where convergence is more critical due to the high angular momenta and
kinetic energies involved. The subtraction of the expectation value h is necessary
to avoid deadlock oscillations. It is physically motivated by variation with constraint
on the norm ϕα |ϕα = 1 for which the single-particle energy ea is actually the
Lagrangian multiplier. The subtraction serves also to switch off the step as soon as
the Kohn–Sham equation (9) is fulfilled.
The damped gradient step (38) is a substantial improvement over the simple
gradient step. One usually obtains five digits precision within about 30–50 iteration steps. The method has been applied successfully in many different problems with different representations of the fields (finite differences, fast Fourier,
Bsplines) and different dimensions (spherical 1D, axially symmetric 2D, full Cartesian 3D) [32, 29]. For applications in more than one dimension one can reduce
the potentially expensive inversion of the kinetic energy by a separable approach,
2
p2
(1 + 2mp E0 ) ≈ i=x,y,z (1 + 2m iE0 ). Thus one needs inversions only successively
in one dimension which makes the damped gradient an extremely fast scheme in
higher dimensions; for a detailed discussion see [4].
The wavefunction iteration with the damped gradient step is so fast that the
change in the potential fields gives rise to unwanted oscillations. We damp them
away by mixing only a fraction ADDNEW of the new potential U (n) with the previous potential U (n−1) .
In one-dimensional calculations, it is even conceivable
to invert the full Kohn–
p2
in the damped gradient step (38) by
Sham Hamiltonian h KS . One can then replace 2m
h KS . One finds that optimum convergence is achieved at parameter combinations x0
and E 0 such that the step becomes a mere inversion of h KS . This leads to the inverse
−1
(n)
ϕα(n) . This step converges a bit
gradient step [24, 26] propagating as h KS − Umin
faster than the damped gradient step (38). But we will stay here with the damped
gradient step because it is more general and it is worth gaining experience with that.
Those who want to have a closer look can recur to the nuclear example provided
in [30].
14
Electronic Shells in Spherical Metal Clusters
Initializations in INITFC, INITGR and INITWF
(n )
(n )
Given {ϕ α , α = 1 , .., A}
Given {w α , α = 1 , .., A}
(n )
Compute ρ el with Eq. (8) in DENSIT
(n )
Compute h KS , with eqs. (11–13)
and accumulat energy corrections
(16) in KSPOT
(n )
( n =1)
Iterate ϕ α → ϕ α
step (38) in WELFDR
with
( n +1)
εα
Compute
(n )
(n )
(n )
= ϕ α | h KS | ϕ α
in WELFDR
( n +1)
Solve for F,q
according to
condition (15) in TEMPDN
Check convergence
Final analysis and prints of energy, radius, etc.
Fig. 1 Schematic flow diagram of the code
4
Numerical Implementation
15
4.3.3 Iteration of Thermal Occupation
It remains to determine the thermal occupation (14) which means to find for given
single-electron energies εα a Fermi energy which allows to meet the condition (15)
on the particle number. This is a typical root finding problem which we solve by the
standard secant iteration [25]. It is not worth to spend much labor in optimization of
this part as it costs negligible time anyway. The occupation numbers are determined
in each iteration step after the new single-particle energies have been determined
and before the new density is to be accumulated.
4.3.4 Summary of the Procedure
The main program, HAFOMN, serves only as a short master routine which sets
default values to some of the parameters, which contains exclusively all READ
statements, and which then quickly calls the principle subroutine HAFOSU which
performs all other tasks, as initialization, iteration, final analysis, and printing. All
transfer to and from HAFOSU is done via common blocks. For detailed information
on the I/O see the comments on top of HAFOSU. A full explanation of each variable
in each of the COMMON blocks is given at the top of the master routine HAFOMN.
The Kohn–Sham equations together with the thermal occupation are solved by an
interleaved simultaneous iteration, preceeded by an initialization phase and followed
by an analyzing (and printing) phase. The structure of the code within HAFOSU is
shown diagrammatically in Fig. 1.
4.4 Explanation of Input and Output
A typical input file ‘for005’ is shown in Table 3. The left half contains the variable
to be put in. The right half carries comments for the user. Input will work without the
right half. But one will soon be lost without it. Thus one better keeps a copy of this
input and edits only the value on the left side according to the desired calculations.
An empty entry, i.e. just a comma, recurs to the default values set in the package. In
the following we will explain quickly the input parameters and provide the systems
default values:
IWUNIT determines the output unit (0 → file FOR006, 1 → terminal) or terminates the program (−1).
TITLE is a text line carried by the program to label output by a comment. That can
be used to mark results.
NELECT number of electrons.
NIONS number of ions = charge of jellium background.
NMAXSH Maximum number of spherical shells in harmonic oscillator sequence.
The code computes automatically the appropriate NMAXSH for given NELECT
if NMAXSH = 0 is entered. Default = 0
RS Wigner–Seitz radius. Default = 4, i.e., Na clusters.
16
Electronic Shells in Spherical Metal Clusters
RC Ashcroft
√ empty core radius. It delivers the width of the Woods–Saxon shape as
rc / 3. Setting rc = 0 runs the steep jellium model.
TEMPRT temperature T in Ry.
IFRCRS option for automatic setting of rc according to given rs : 0 = rc taken as
input in ‘rc’; 1 = rc computed automatically.
IENCAS option for the energy functional: 0 = full functional from [12]; 1 = only
exchange, no correlations; 2 = no exchange, no correlations.
IFERHO option to read the background density explicitely. IFERHO=1 overrides
computation of jellium background and reads the density line by line from
‘for005’ after all other parameters have been read.
NGRID = Nr = number of radial grid points. If NGRID = 0 is entered, the program computes automatically a reasonable grid size according to the number
of electrons. Default = 0.
RSTEP = Δr = grid spacing in units of a0 . Default = 0.6 which is appropriate for
Na clusters.
IWR = print level. Possible values are −2, −1, 0, 1. The higher the value the more
is printed. Default = –1.
IFPLOT = Switch for output on a plot file FOR011 (Default = 0):
0 → no plot file is written,
1 → a short plotfile is written up to the single-particle energies,
2 → in addition the densities are given,
3 → furthermore the formfactor is given.
PLNAME = the first name of plot files to be written.
Six digits must be specified. The densities and the potential will then be
written to ‘plname’.rho and a protocol of convergence to ‘plname’.cnv .
No plot files will be written if an empty string, i.e. ‘ ’, is entered.
Note that subsequent runs will overwrite the files. One needs to give different
names if one wants to keep all information.
The plot files have a header with a # in the first column. Thus they are immediately applicable for plotting with GNUPLOT.
DABR = relative error in radius which needs to be achieved before the iteration
terminates. Default = 0.00001.
DABE = relative error in energy which needs to be achieved before the iteration
terminates. Default = 0.00001.
ITMAX = maximum number of iterations. Default = 500
ITPR = number of secant iteration steps to determine ε F . Default = 50.
X0DAMP = δ = step size of damped gradient step (38). Default = 0.3.
E0DAMP = E 0 = energy parameter in the kinetic energy damping (38). Default
−3/2
= 5rs . The default will work for neutral or not too highly charged clusters.
ADDNEW = weight for mixing the new potentials U (n) to the previous potentials
U (n−1) to stabilize the iteration. Default = 0.3.
The actual example, shown in Table 3, runs three subsequent cases. First, a neutral
small cluster, Na8 , using default values; but the defaults have been explicitely put in
via ‘for005’. Second, a positively charged small cluster, Na+
9 , employing the default
5
First Applications
17
Table 3 Typical input file ‘for005’
0,
‘test case Na8, show defaults’,
8,8,0,
4.0,0.0,0.0001,
1,0,0,
0,0.0,
-1,2,‘
’,
0.3,0.6,0.3,
3.0E-6,1.0E-7,50,500,
0,
‘test case Na9+, use defaults’
8,9,,
,,,
,,,
,,,
,,,
,,,
,,,,
0,
‘test case Na8, different settings’
8,8,7,
3.96,0.0,0.001,
0,0,0,
0,0.8,
-1,3,‘Na8tst’,
0.3,0.6,0.3,
1.0E-6,1.0E-7,50,500,
-1,
iwunit
title
nelect,nions,nmaxsh
rs,rc,temprt
ifrcrs,iferho,iencas
ngrid,rstep
iwr,ifplot,plname
x0damp,e0damp,addnew
dabr,dabe,itpr,itmax
iwunit
title
nelect,nions,nmaxsh
rs,rc,temprt
ifrcrs,iferho,iencas
ngrid,rstep
iwr,ifplot,plname
x0damp,e0damp,addnew
dabr,dabe,itpr,itmax
iwunit
title
nelect,nions,nmaxsh
rs,rc,temprt
ifrcrs,iferho,iencas
ngrid,rstep
iwr,ifplot,plname
x0damp,e0damp,addnew
dabr,dabe,itpr,itmax
iwunit
values by putting a mere comma where the default is desired; this is the simplest way
to vary the system (sizes and rs ) without bothering too much about the numerical
parameters. And the third case runs again Na8 but now with non-default settings.
Note in particular the larger space of single-particle states (NMAXSH). This will
display in file ‘for011’ also the energies of the first few unoccupied states.
5 First Applications
The first step is, of course, to install the code and to test it by running the above
sample input. To this end, one generates a new directory for that code and copies
the Fortran source ‘spherclu.f’ as well as all include files ‘*.inc’ into it. The code
uses Fortran77 with a few nonstandard extension, in particular the ‘do . . . enddo’
clause. It compiles on most modern Fortran compilers. But it is important to set the
‘static’ option of the compiler to enforce that all variables are kept in core (and not
removed when leaving a subroutine). A first test is to run the sample input. A sample
output to compare with is provided in the file ‘for011.smp’. When the code has been
successfully installed, there opens a wide variety of possible investigations. We will
hint in the following a few of the possibilities.
18
Electronic Shells in Spherical Metal Clusters
1. To get an idea of the structure, one can compute a series of magic clusters, Na2 ,
Na8 , Na20 , Na40 , Na58 , Na92 , Na138 , and Na198 (all of them will work well with
the default shell selection NMAXSH=0) and plot their densities as well as their
potentials (mind to give different plot-file names ‘plname’ for different clusters).
One sees the system grow in radius while the average central density is about
constant. The density profiles look like a Woods–Saxon shape bat have oscillations about it. These oscillations are due to shell structure [27]. The potentials
behave much similar. It is also interesting to compare the electron density and
the jellium density and to plot also the difference of both densities, i.e., the net
charge density. Particularly for the larger clusters we see how the Coulomb force
has arranged a neutralization in the bulk. It is only at the surface that the electrons
reach farther out due to quantum effects.
2. In a next step, one can compare the densities from the smoothened jellium model
(IFRCRS=1, RC=0) with those of the steep jellium model (IFRCRS=0, RC=0),
for one fixed clusters, e.g. Na92 . There is not much of a change in the interior
but the density profiles at the surface differ. Look in particular at the net charge
density. There is a much stronger fluctuation for the steep jellium model.
3. Variation of the charge state is another important direction. Take, e.g., the magic
electron number Nel = 92 and vary the ion number Nion = 91, 92, 93, 94, and
95. Plot again densities and potentials. The potentials will become deeper with
increasing net charge, and accordingly the electron spill out at the surface will
shrink.
You can go even higher in the charge state. But at some point you need to enhance
the value of E0DAMP because the default setting is tuned to neutral clusters and
their neighbors.
4. For all above variations, it is also worthwhile to look at the trends of the singleparticle energies. These are provided at the end of file ‘for011’. You have to
develop your own strategy how to visualize the spectra.
5. An extension of the studies, still concerned with the physical properties, is to
switch on temperature. To this end, one has to choose the number of shells
larger than the minimum necessary, see the output of the above tests or Table 2.
Typical temperatures are in the range T = 0.002−0.02 Ry. Lower temperatures
may run into trouble in the root finding routine for magic systems. For higher
temperatures, the electron cloud dissolves (watch the occupation of continuum
states). With temperature switched on, all clusters, magic as well as non-magic
ones, can be computed on an equal footing. It is interesting to study the trend of
the binding energy with temperature. Look, e.g., for the specific heat per particle
(i.e., ∂∂T NE ) and compare it for magic systems Nel = 8, 20, 40 and for non-magic
ones Nel = 14, 30. Compare the result also with the predictions of the Fermi gas
model (see a textbook of statistical physics for this).
6. It is also interesting to study the numerical aspects of the procedure. Take a test
case like Na92 and vary the convergence parameters X0DAMP and/or E0DAMP.
The plot output of the convergence is found on ‘plname’.cnv.
It is also worthwhile to check the stability of the results with the grid spacing
RSTEP of box size RSTEP*NGRID.
For a discussion of these numerical aspects of the method, see [26, 4].
References
19
Note that the code actually has built in more shells than displayed Table 2. But
the higher states require some experience. You can develop your own picture while
setting a large number of states and running the code with a very low temperature.
The emerging single-particle states and occupation weights give you insight into the
shell structure.
References
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
N.W. Ashcroft, D.C. Langreth, Phys. Rev. 155 682 (1067)
N.W. Ashcroft, N.D. Mermin, Solid State Physics (Saunders, Philadelphia, 1976)
D.E. Beck, Sol. St. Comm. 49 381 (1984)
V. Blum, G. Lauritsch, J.A. Maruhn, P.-G. Reinhard, J. Comp. Phys. 100 364 (1992)
S.A. Blundell, C. Guet, Z. Phys. D28 81 (1993)
V. Bonačić-Koutecký, P. Fantucci, J. Koutecký, Chem. Rev. 91 1035 (1991)
M. Brack, Rev. Mod. Phys. 65 677 (1993)
R.M. Dreizler, E.K.U. Gross, Density Functional Theory (Springer, Berlin, 1990)
W. Ekardt, Phys. Rev. Lett. 52 1925 (1984)
J. Friedrich, P.-G. Reinhard, Phys. Rev. C33 335 (1986)
J. Friedrich, N. Voegeler, Nucl. Phys. A373 191 (1982)
O. Gunnarsson, B.I. Lundqvist, Phys. Rev. B13 4274 (1976)
H. Haberland (ed.), Clusters of Atoms and Molecules (Springer, Heidelberg, 1994)
J.D. Jackson, Classical Electrodynamics (Wiley, New York, NY, 1975)
R.O. Jones, O. Gunnarsson, Rev. Mod. Phys. 61 689 (1989)
S.E. Koonin, Computational Physics, Ch. 3.1 (Addison-Wesley, New York, NY, 1986)
L.D. Landau, E.M. Lifschitz, Lehrbuch der Theoretischen Physik, Band III: Quantenmechanik
(Akademie, Berlin, 1965)
G. Lauritsch, P.-G. Reinhard, Int. J. Mod. Phys. C 5 65 (1994)
J.L. Martins, J. Buttet, R. Car, Phys. Rev. B 31 1804 (1985)
B. Montag, PhD thesis, University of Erlangen (1995)
B. Montag, J. Meyer, P.-G. Reinhard, Z. Phys. D32 125 (1994)
B. Montag, P.-G. Reinhard, Z. Phys. D33 265 (1995)
J. Pedersen et al., Nature 353 733 (1991)
H. Pfeiffer, P.-G. Reinhard, D. Drechsel, Z. Phys. A292 375 (1979)
W.H. Press, S.A. Teukolsky, W.T. Vetterling, B.P. Flannery, Numerical Recipes (Cambridge
University Press, Cambridge, 1992)
P.-G. Reinhard, R.Y. Cusson, Nucl. Phys. A378 418 (1982)
P.-G. Reinhard, J. Friedrich, N. Voegeler, Z. Phys. A316 207 (1984)
P.-G. Reinhard, O. Genzken, M. Brack, Ann. Phys. (Leipzig) 5 1 (1996)
P.-G. Reinhard, F. Grümmer, K. Goeke, Z. Phys. A317 339 (1984)
P.-G. Reinhard, in Computational Nuclear Physics I, edited by K. Langanke, S.E. Koonin, J.A.
Maruhn, p. 28 (Springer, Berlin,1990)
Ll. Serra, G.B. Bachelet, N. Van Giai, E. Lipparini, Phys. Rev. B48 14708 (1993)
M.R. Strayer, R.Y. Cusson, A.S. Umar, P.-G. Reinhard, D.A. Bromley, W. Greiner, Phys. Lett.
B135 261 (1984); R.Y. Cusson, P.-G. Reinhard, M.R. Strayer, J.A. Maruhn and W. Greiner, Z.
Phys. A320 475 (1985)
K.-D. Tsuei, E.W. Plummer, A. Liebsch, E. Pehlke, K. Kempa, P. Bakshi, Surf. Sci. 247 302
(1991)
R. Zurmühl, Praktische Mathematik, Chap. VII, Sect. 3 (Springer, Berlin, 1963)
W. de Heer, Rev. Mod. Phys. 65 611 (1993)
Download