QUANTUM MONTE CARLO METHODS Featuring detailed explanations of the major algorithms used in quantum Monte Carlo simulations, this is the first textbook of its kind to provide a pedagogical overview of the field and its applications. The book provides a comprehensive introduction to the Monte Carlo method, its use, and its foundations, and examines algorithms for the simulation of quantum many-body lattice problems at finite and zero temperature. These algorithms include continuous-time loop and cluster algorithms for quantum spins, determinant methods for simulating Fermions, power methods for computing ground and excited states, and the variational Monte Carlo method. Also discussed are continuous-time algorithms for quantum impurity models and their use within dynamical mean-field theory, along with algorithms for analytically continuing imaginary-time quantum Monte Carlo data. The parallelization of Monte Carlo simulations is also addressed. This is an essential resource for graduate students, teachers, and researchers interested in quantum Monte Carlo. j. e. gubernatis works at the Los Alamos National Laboratory. He is a Fellow of the American Physical Society (APS) and served as a Chair of the APS Division of Computational Physics. He represented the United States on the Commission of Computational Physics of International Union of Pure and Applied Physics (IUPAP) for nine years and chaired the Commission for three years. n. kawashima is a professor at the University of Tokyo. He is a member of the Society of Cognitive Science and has been a Steering Committee member for the public use of the supercomputer at the Institute for Solid State Physics (ISSP) for the last 15 years. He received the Ryogo Kubo Memorial Prize for his contributions to the development of loop and cluster algorithms in 2002. p. werner is a professor at the University of Fribourg. In 2010, he received the IUPAP Young Scientist Prize in computational physics for the development and implementation of quantum Monte Carlo methods for impurity models.
QUANTUM MONTE CARLO METHODS Algorithms for Lattice Models J. E. GUBERNATIS Los Alamos National Laboratory N. KAWASHIMA University of Tokyo P. WERNER University of Fribourg
University Printing House, Cambridge CB2 8BS, United Kingdom Cambridge University Press is part of the University of Cambridge. It furthers the University s mission by disseminating knowledge in the pursuit of education, learning and research at the highest international levels of excellence. Information on this title: /9781107006423 Cambridge University Press 2016 This publication is in copyright. Subject to statutory exception and to the provisions of relevant collective licensing agreements, no reproduction of any part may take place without the written permission of Cambridge University Press. First published 2016 Printed in the United Kingdom by TJ International Ltd. Padstow Cornwall A catalogue record for this publication is available from the British Library Library of Congress Cataloging in Publication data Gubernatis, J. E., author. Quantum Monte Carlo methods : algorithms for lattice models / J.E. Gubernatis (Los Alamos National Laboratory), N. Kawashima (University of Tokyo), P. Werner (University of Fribourg). pages cm Includes bibliographical references and index. ISBN 978-1-107-00642-3 (Hardback : alk. paper) 1. Monte Carlo method. 2. Many-body problem. I. Kawashima, N. (Naoki), author. II. Werner, P., 1975 author. III. Title. QC174.85.M64G83 2016 530.1201 518282 dc23 2015026699 ISBN 978-1-107-00642-3 Hardback Cambridge University Press has no responsibility for the persistence or accuracy of URLs for external or third-party internet websites referred to in this publication, and does not guarantee that any content on such websites is, or will remain, accurate or appropriate.
Contents Preface page xi Part I Monte Carlo basics 1 1 Introduction 3 1.1 The Monte Carlo method 3 1.2 Quantum Monte Carlo 5 1.3 Classical Monte Carlo 6 2 Monte Carlo basics 11 2.1 Some probability concepts 11 2.2 Random sampling 15 2.3 Direct sampling methods 17 2.3.1 Discrete distributions 17 2.3.2 Continuous distributions 20 2.4 Markov chain Monte Carlo 23 2.4.1 Markov chains 24 2.4.2 Stochastic matrices 25 2.5 Detailed balance algorithms 28 2.5.1 Metropolis algorithm 28 2.5.2 Generalized Metropolis algorithms 31 2.5.3 Heat-bath algorithm 33 2.6 Rosenbluth s theorem 35 2.7 Entropy content 38 Exercises 40 3 Data analysis 43 3.1 Equilibrating the sampling 43 3.2 Calculating averages and estimating errors 46 3.3 Correlated measurements and autocorrelation times 49 v
vi Contents 3.4 Blocking analysis 50 3.5 Data sufficiency 52 3.6 Error propagation 55 3.7 Jackknife analysis 57 3.8 Bootstrap analysis 59 3.9 Monte Carlo computer program 61 Exercises 63 4 Monte Carlo for classical many-body problems 66 4.1 Many-body phase space 66 4.2 Local updates 68 4.3 Two-step selection 69 4.4 Cluster updates 70 4.4.1 Swendsen-Wang algorithm 71 4.4.2 Graphical representation 73 4.4.3 Correlation functions and cluster size 75 4.5 Worm updates 76 4.6 Closing remarks 80 Exercises 82 5 Quantum Monte Carlo primer 84 5.1 Classical representation 84 5.2 Quantum spins 86 5.2.1 Longitudinal-field Ising model 86 5.2.2 Transverse-field Ising model 87 5.2.3 Continuous-time limit 92 5.2.4 Zero-field XY model 98 5.2.5 Simulation with loops 103 5.2.6 Simulation with worms 106 5.2.7 Ergodicity and winding numbers 110 5.3 Bosons and Fermions 111 5.3.1 Bosons 111 5.3.2 Fermions 112 5.4 Negative-sign problem 114 5.5 Dynamics 115 Exercises 117 Part II Finite temperature 119 6 Finite-temperature quantum spin algorithms 121 6.1 Feynman s path integral 121
Contents vii 6.2 Loop/cluster update 124 6.2.1 General framework 124 6.2.2 Continuous-time loop/cluster update 127 6.2.3 XXZ models 129 6.2.4 Correlation functions 132 6.2.5 Magnetic fields 136 6.2.6 Large spins ( ) S > 1 137 2 6.3 High-temperature series expansion 140 6.3.1 Stochastic series expansion 140 6.3.2 Continuous-time limit 144 6.4 Worm update 145 6.4.1 Freezing problem 146 6.4.2 Directed-loop algorithm 147 6.4.3 Violation of the detailed balance condition 153 6.4.4 Correlation functions 154 6.4.5 XXZ model 156 6.4.6 On-the-fly vertex generation 161 6.5 Toward zero temperature 164 6.5.1 Extrapolation to zero temperature 166 6.5.2 Quantum phase transitions 168 6.5.3 Finite-size scaling 170 6.6 Applications to Bosonic systems 174 Exercises 179 7 Determinant method 180 7.1 Theoretical framework 180 7.1.1 Hubbard-Stratonovich transformations 181 7.1.2 Determinantal weights 185 7.1.3 Single-particle Green s function 188 7.2 Finite temperature algorithm 189 7.2.1 Matrix representation 190 7.2.2 Metropolis sampling 192 7.2.3 The algorithm 194 7.2.4 Measurements 197 7.3 Hirsch-Fye algorithm 198 7.4 Matrix product stabilization 202 7.5 Comments 209 Exercises 211 8 Continuous-time impurity solvers 214 8.1 Quantum impurity models 214
viii Contents 8.1.1 Chain representation 216 8.1.2 Action formulation 217 8.2 Dynamical mean-field theory 219 8.2.1 Single-site effective model 219 8.2.2 DMFT approximation 221 8.2.3 DMFT self-consistency loop 222 8.2.4 Simulation of strongly correlated materials 223 8.2.5 Cluster extensions 226 8.3 General strategy 228 8.4 Weak-coupling approach 230 8.4.1 Sampling 232 8.4.2 Determinant ratios and fast matrix updates 233 8.4.3 Measurement of the Green s function 234 8.4.4 Multi-orbital and cluster impurity problems 236 8.5 Strong-coupling approach 237 8.5.1 Sampling 240 8.5.2 Measurement of the Green s function 240 8.5.3 Generalization Matrix formalism 244 8.5.4 Generalization Krylov formalism 247 8.6 Infinite-U limit: Kondo model 249 8.6.1 Weak-coupling approach 249 8.6.2 Strong-coupling approach 252 8.7 Determinant structure and sign problem 254 8.7.1 Combination of diagrams into a determinant 254 8.7.2 Absence of a sign problem 256 8.8 Scaling of the algorithms 258 Exercises 262 Part III Zero temperature 265 9 Variational Monte Carlo 267 9.1 Variational Monte Carlo 267 9.1.1 The variational principle 267 9.1.2 Monte Carlo sampling 270 9.2 Trial states 272 9.2.1 Slater-Jastrow states 273 9.2.2 Gutzwiller projected states 274 9.2.3 Valence bond states 282 9.2.4 Tensor network states 287 9.3 Trial-state optimization 291 9.3.1 Linear method 293
Contents ix 9.3.2 Newton s method 296 9.3.3 Connection between linear and Newton methods 298 9.3.4 Energy variance optimization 298 9.3.5 Stabilization 299 9.3.6 Summary of the linear and Newton s optimization methods 299 Exercises 301 10 Power methods 302 10.1 Deterministic direct and inverse power methods 302 10.2 Monte Carlo power methods 305 10.2.1 Monte Carlo direct power method 306 10.2.2 Monte Carlo inverse power method 310 10.3 Stochastic reconfiguration 314 10.4 Green s function Monte Carlo methods 320 10.4.1 Linear method 322 10.4.2 Diffusion Monte Carlo 324 10.4.3 Importance sampling 326 10.5 Measurements 327 10.6 Excited states 329 10.6.1 Correlation function Monte Carlo 329 10.6.2 Modified power method 331 10.7 Comments 334 Exercises 337 11 Fermion ground state methods 338 11.1 Sign problem 338 11.2 Fixed-node method 341 11.3 Constrained-path method 345 11.4 Estimators 349 11.4.1 Mixed estimator 349 11.4.2 Forward walking and back propagation 352 11.5 The algorithms 355 11.6 Constrained-phase method 360 Exercises 363 Part IV Other topics 365 12 Analytic continuation 367 12.1 Preliminary comments 367 12.2 Dynamical correlation functions 370 12.3 Bayesian statistical inference 373
x Contents 12.3.1 Principle of maximum entropy 375 12.3.2 The likelihood function and prior probability 378 12.3.3 The best solutions 380 12.4 Analysis details and the Ockham factor 383 12.5 Practical considerations 388 12.6 Comments 395 Exercises 396 13 Parallelization 398 13.1 Parallel architectures 398 13.2 Single-spin update on a shared-memory computer 399 13.3 Single-spin update on a distributed-memory computer 402 13.4 Loop/cluster update and union-find algorithm 403 13.5 Union-find algorithm for shared-memory computers 408 13.6 Union-find algorithm for distributed-memory computers 411 13.7 Back to the future 413 Appendix A Alias method 416 Appendix B Rejection method 418 Appendix C Extended-ensemble methods 420 Appendix D Loop/cluster algorithms: SU(N) model 425 Appendix E Long-range interactions 428 Appendix F Thouless s theorem 432 Appendix G Hubbard-Stratonovich transformations 435 Appendix H Multi-electron propagator 441 Appendix I Zero temperature determinant method 445 Appendix J Anderson impurity model: chain representation 449 Appendix K Anderson impurity model: action formulation 451 Appendix L Continuous-time auxiliary-field algorithm 455 Appendix M Continuous-time determinant algorithm 459 Appendix N Correlated sampling 462 Appendix O The Bryan algorithm 464 References 469 Index 484
Preface Fast computers enable the solution of quantum many-body problems by Monte Carlo methods. As computing power increased dramatically over the years, similarly impressive advances occurred at the level of the algorithms, so that we are now in a position to perform accurate simulations of large systems of interacting quantum spins, Bosons, and (to a lesser extent) Fermions. The purpose of this book is to present and explain the quantum Monte Carlo algorithms being used today to simulate the ground states and thermodynamic equilibrium states of quantum models defined on a lattice. Our intent is not to review all relevant algorithms there are too many variants to do so comprehensively but rather to focus on a core set of important algorithms, explaining what they are and how and why they work. Our focus on lattice models, such as Heisenberg and Hubbard models, has at least two implications. The first is obviously that we are not considering models in the continuum where extensive use of quantum Monte Carlo methods traditionally has focused on producing highly accurate ab initio calculations of the ground states of nuclei, atoms, molecules, and solids. Quantum Monte Carlo algorithms for simulating the ground states of continuum and lattice models, however, are very similar. In fact, the lattice algorithms are in many cases derived from the continuum methods. With fewer degrees of freedom, lattice models are compact and insightful representations of the physics in the continuum. The second implication is a focus on both zero and finite temperature algorithms. 1 On a lattice, it is natural to study phase transitions. In particular, the recent dramatic advances in quantum Monte Carlo lattice methods for the simulation of quantum spin models were prompted by a need for more efficient and effective ways to study finite-temperature transitions. While quantum Monte Carlo is profitably used to study zero temperature phase transitions (quantum critical phenomena), 1 Temperature zero is a finite temperature, but common usage separates T = 0 (zero temperature) from T > 0 (finite temperature) when classifying algorithms. Throughout, we adopt the common usage. xi
xii Preface some ground state algorithms have no finite temperature analogs and vice versa. In many respects, the lattice is where the current algorithmic action is. The book is divided into four parts. The first part is a self-contained, more advanced than average, discussion of the Monte Carlo method, its use, and its foundations. With the basics in place, this part then steps toward the more recent worm and loop/cluster Monte Carlo algorithms for simple classical models, and finally for simple quantum models. Our intent is to be as tutorial as possible and impart a good taste for what quantum Monte Carlo is like. In this introduction, we only briefly mention ground state simulations. The foundations for ground state simulations require less introduction, and we wanted to keep Part I reasonably sized so it can be used as teaching material for a course on computational classical and quantum many-body physics. Parts II and III present the main quantum Monte Carlo algorithms. Part II discusses finite-temperature methods for quantum spin and Fermion systems. The quantum spin chapter, plus its associated appendices, present a more extensive and sophisticated treatment of the worm and loop/cluster algorithms introduced in Part I. The Fermion chapter details the most important methods for the finitetemperature simulation of lattice Fermion models. Many of the formal techniques developed in this chapter are used in the discussion of the zero temperature Fermion methods in Part III. Besides well-established algorithms for Fermionic lattice models, we also discuss the more recent continuous-time Monte Carlo technique for quantum impurity models. This method is the dynamo driving today s lattice calculations based on the dynamical mean-field approximation, which in turn is being coupled to ab initio calculations of the electronic properties of solids. The chapter on impurity models hence connects the lattice and continuum modeling and simulations of many-electron physics. Part III discusses the two main zero temperature methods, the variational Monte Carlo and the power method. The power method is a more universal term for what is often called the Green s function Monte Carlo method. Part III also includes a special chapter on the use of the power method for the simulation of Fermion systems. It is in this chapter that the sign problem is discussed. This problem is the biggest inhibitor to quantum Monte Carlo reaching its full potential. The final part does not discuss quantum Monte Carlo algorithms but rather topics that accompany their use. First, we present a widely used method to analytically continue simulation data from imaginary time to real time, so dynamical properties can be extracted from finite-temperature simulations. Finally, we address the parallelization of Monte Carlo simulations. While Monte Carlo calculations per se are naturally parallel (the code, with different random number seeds, can be run on independent processors and the results combined when all calculations have finished), this chapter is about a relatively recent trend, namely, the complexity of
Preface xiii simulations is making the sharing of specific computational tasks among several processors desirable or mandatory, and about what is lying in the future, namely, running even more complex simulations on computers with orders of magnitude more processors. We happily thank Tom Booth, Yan Chen, Kenji Harada, Akiko Kato, Yasuyuki Kato, Tsuyoshi Okubo, Gerado Ortiz, Brenda Rubenstein, Richard Scalettar, Devinder Sivia, Synge Todo, and Cyrus Umrigar for helpful comments and suggestions about various parts of the manuscript. One of the coauthors (NK) thanks Yan Chen, in particular, for offering a quiet place for writing a part of the book. Another coauthor (PW) would like to thank Matthias Troyer, Emanuel Gull, and Andrew Millis for fruitful discussions and collaborations on quantum Monte Carlo and dynamical mean-field related topics. The third coauthor (JG) thanks his wife, Michele, for her proofreading of a manuscript that to say the least was not her cup of tea. Of course, for the errors that remain we take full responsibility. We also thank our editor, Simon Capelin. His polite, but yearly, inquiry about interest in writing such a textbook caused one of the coauthors eventually to cave in and to start writing this book. Simon s patience in waiting for something that took longer than just a few years is also appreciated. To the researchers, students, and teachers using this book: we hope that it helps you appreciate and understand the essence of quantum Monte Carlo algorithms. We also hope that it inspires you to develop even better ways to do quantum simulations. Without doubt, this important research tool has limitations needing mitigation to realize its full potential. Realizing this potential, however, will contribute to our understanding of quantum many-body physics, which in the long run is our attractor to this research area and our motivation to explore and develop new algorithms. J. E. Gubernatis N. Kawashima P. Werner