26.11.2014 Views

Maximally localized Wannier functions: Theory and applications

Maximally localized Wannier functions: Theory and applications

Maximally localized Wannier functions: Theory and applications

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

9<br />

to write down many alternative finite-difference expressions<br />

for ¯r n <strong>and</strong> ⟨r 2 ⟩ n which agree numerically to leading<br />

order in the mesh spacing b (first <strong>and</strong> second order for ¯r n<br />

<strong>and</strong> ⟨r 2 ⟩ n respectively). We give here the expressions of<br />

Marzari <strong>and</strong> V<strong>and</strong>erbilt (1997), which have the desirable<br />

property of transforming correctly under gauge transformations<br />

that shift |0n⟩ by a lattice vector. They are<br />

¯r n = − 1 N<br />

k,b<br />

∑<br />

k,b<br />

w b b Im ln M (k,b)<br />

nn (28)<br />

(where we use, as outlined in Sec. II.A.3, the convention<br />

of Eq. (14)), <strong>and</strong><br />

⟨r 2 ⟩ n = 1 ∑<br />

{ [<br />

w b 1 − |M nn (k,b) | 2] [<br />

] } 2<br />

+ Im ln M nn<br />

(k,b) .<br />

N<br />

(29)<br />

The corresponding expressions for the gauge-invariant<br />

<strong>and</strong> gauge-dependent parts of the spread functional are<br />

<strong>and</strong><br />

Ω I = 1 N<br />

∑<br />

k,b<br />

˜Ω = 1 ∑ ∑<br />

w b<br />

N<br />

k,b<br />

k,b<br />

m≠n<br />

n<br />

(<br />

w b J − ∑ |M mn (k,b) | 2) (30)<br />

mn<br />

|M (k,b)<br />

mn | 2 (31)<br />

+ 1 ∑ ∑ (<br />

) 2<br />

w b −Im ln M nn (k,b) − b · ¯r n .<br />

N<br />

As mentioned, it is possible to write down alternative<br />

discretized expressions which agree numerically with<br />

Eqs. (28)–(31) up to the orders indicated in the mesh<br />

spacing b; at the same time, one needs to be careful in<br />

realizing that certain quantities, such as the spreads, will<br />

display slow convergence with respect to the BZ sampling<br />

(see II.F.2 for a discussion), or that some exact results<br />

(e.g., that the sum of the centers of the <strong>Wannier</strong> <strong>functions</strong><br />

is invariant with respect to unitary transformations)<br />

might acquire some numerical noise. In particular, Stengel<br />

<strong>and</strong> Spaldin (2006a) showed how to modify the above<br />

expressions in a way that renders the spread functional<br />

strictly invariant under BZ folding.<br />

D. Localization procedure<br />

In order to minimize the localization functional, we<br />

consider the first-order change of the spread functional<br />

Ω arising from an infinitesimal gauge transformation<br />

U (k)<br />

mn<br />

= δ mn + dW mn (k) , where dW is an infinitesimal<br />

anti-Hermitian matrix, dW † = −dW , so that |u nk ⟩ →<br />

|u nk ⟩ + ∑ (k)<br />

m<br />

dW mn |u mk ⟩ . We use the convention<br />

( ) dΩ<br />

= dΩ<br />

(32)<br />

dW dW mn<br />

nm<br />

(note the reversal of indices) <strong>and</strong> introduce A <strong>and</strong> S as<br />

the superoperators A[B] = (B − B † )/2 <strong>and</strong> S[B] = (B +<br />

B † )/2i. Defining<br />

q (k,b)<br />

n<br />

R (k,b)<br />

mn<br />

= Im ln M (k,b)<br />

nn + b · ¯r n , (33)<br />

T (k,b)<br />

mn<br />

= M mn<br />

(k,b) M nn (k,b)∗ , (34)<br />

= M mn<br />

(k,b)<br />

q (k,b)<br />

M nn<br />

(k,b) n , (35)<br />

<strong>and</strong> referring to Marzari <strong>and</strong> V<strong>and</strong>erbilt (1997) for the<br />

details, we arrive at the explicit expression for the gradient<br />

G (k) = dΩ/dW (k) of the spread functional Ω as<br />

G (k) = 4 ∑ )<br />

w b<br />

(A[R (k,b) ] − S[T (k,b) ] . (36)<br />

b<br />

This gradient is used to drive the evolution of the U mn<br />

(k)<br />

(<strong>and</strong>, implicitly, of the | Rn ⟩ of Eq. (10)) towards the<br />

minimum of Ω. A simple steepest-descent implementation,<br />

for example, takes small finite steps in the direction<br />

opposite to the gradient G until a minimum is reached.<br />

For details of the minimization strategies <strong>and</strong> the enforcement<br />

of unitarity during the search, the reader is<br />

referred to Mostofi et al. (2008). We should like to point<br />

out here, however, that most of the operations can be<br />

performed using inexpensive matrix algebra on small matrices.<br />

The most computationally dem<strong>and</strong>ing parts of<br />

the procedure are typically the calculation of the selfconsistent<br />

Bloch orbitals |u (0)<br />

nk<br />

⟩ in the first place, <strong>and</strong> then<br />

the computation of a set of overlap matrices<br />

M (0)(k,b)<br />

mn = ⟨u (0)<br />

mk |u(0) n,k+b ⟩ (37)<br />

that are constructed once <strong>and</strong> for all from the |u (0)<br />

nk<br />

⟩. After<br />

every update of the unitary matrices U (k) , the overlap<br />

matrices are updated with inexpensive matrix algebra<br />

M (k,b) = U (k)† M (0)(k,b) U (k+b) (38)<br />

without any need to access the Bloch wave<strong>functions</strong><br />

themselves. This not only makes the algorithm computationally<br />

fast <strong>and</strong> efficient, but also makes it independent<br />

of the basis used to represent the Bloch <strong>functions</strong>.<br />

That is, any electronic-structure code package capable<br />

of providing the set of overlap matrices M (k,b) can easily<br />

be interfaced to a common <strong>Wannier</strong> maximal-localization<br />

code.<br />

E. Local minima<br />

It should be noted that the localization functional can<br />

display, in addition to the desired global minimum, multiple<br />

local minima that do not lead to the construction

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

Saved successfully!

Ooh no, something went wrong!