Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas

Quantum espresso, Notas de estudo de Engenharia de Produção

QUANTUM ESPRESSO

Tipologia: Notas de estudo

2010
Em oferta
30 Pontos
Discount

Oferta por tempo limitado


Compartilhado em 07/01/2010

igor-donini-9
igor-donini-9 🇧🇷

4.5

(4)

419 documentos

Pré-visualização parcial do texto

Baixe Quantum espresso e outras Notas de estudo em PDF para Engenharia de Produção, somente na Docsity! QUANTUM ESPRESSO: a modular and open-source software project for quantum simulations of materials Paolo Giannozzi,1,2 Stefano Baroni,1,3 Nicola Bonini,4 Matteo Calandra,5 Roberto Car,6 Carlo Cavazzoni,7,8 Davide Ceresoli,4 Guido L. Chiarotti,9 Matteo Cococcioni,10 Ismaila Dabo,11 Andrea Dal Corso,1,3 Stefano Fabris,1,3 Guido Fratesi,12 Stefano de Gironcoli,1,3 Ralph Gebauer,1,13 Uwe Gerstmann,14 Christos Gougoussis,5 Anton Kokalj,1,15 Michele Lazzeri,5 Layla Martin-Samos,1 Nicola Marzari,1,3 Francesco Mauri,5 Riccardo Mazzarello,16 Stefano Paolini,3,9 Alfredo Pasquarello,17 Lorenzo Paulatto,1,3 Carlo Sbraccia,1‡ Sandro Scandolo,1,13 Gabriele Sclauzero,1,3 Ari P. Seitsonen,5 Alexander Smogunov,13 Paolo Umari,1 Renata M. Wentzcovitch,18,19 1CNR-INFM Democritos National Simulation Center, 34100 Trieste, Italy 2Dipartimento di Fisica, Università degli Studi di Udine, via delle Scienze 208, 33100 Udine, Italy 3SISSA – Scuola Internazionale Superiore di Studi Avanzati, via Beirut 2-4, 34151 Trieste Grignano, Italy 4Department of Materials Science and Engineering, Massachusetts Institute of Technology, Cambridge, MA 02139 USA 5Institut de Minéralogie et de Physique des Milieux Condensés, Université Pierre et Marie Curie, CNRS, IPGP, 140 rue de Lourmel, 75015 Paris, France 6Department of Chemistry, Princeton University, Princeton NJ 08544, USA 7CINECA National Supercomputing Center, Casalecchio di Reno, 40033 Bologna, Italy 8CNR-INFM S3 Research Center, 41100 Modena, Italy 9SPIN s.r.l. via del Follatoio 12, 34148 Trieste, Italy 10Department of Chemical Engineering and Materials Science, University of Minnesota, 151 Amundson Hall, 421 Washington Avenue SE, Minneapolis MN 55455, USA 11Université Paris-Est, CERMICS, Projet Micmac ENPC-INRIA, 6-8 avenue Blaise Pascal, 77455 Marne-la-Vallée Cedex 2, France 12Dipartimento di Scienza dei Materiali, Università degli Studi di Milano-Bicocca, via Cozzi 53, 20125 Milano, Italy 13The Abdus Salam International Centre for Theoretical Physics, Strada Costiera 11, 34151 Trieste Grignano, Italy 14Theoretische Physik, Universität Paderborn, D-33098 Paderborn, Germany 15Jožef Stefan Institute, Jamova 39, SI-1000 Ljubljana, Slovenia 16Computational Science, Department of Chemistry and Applied Biosciences, ETH Zurich, USI Campus, via Giuseppe Buffi 13, CH-6900 Lugano, Switzerland 17Ecole Polytechnique Fédérale de Lausanne (EPFL), Institute of Theoretical Physics, and Institut Romand de Recherche Numérique en Physique des Matériaux (IRRMA), CH-1015 Lausanne, Switzerland ‡ Present address: Constellation Energy Commodities Group 7th Floor, 61 Aldwich, London, WC2B 4AE, United Kingdom ar X iv :0 90 6. 25 69 v2 [ co nd -m at .m tr l- sc i] 2 6 Ju l 2 00 9 QUANTUM ESPRESSO 2 18Department of Chemical Engineering and Materials Science, University of Minnesota, 151 Amundson Hall, 421 Washington Avenue SE, Minneapolis MN 55455, USA 19Minnesota Supercomputing Institute for Advanced Computational Research, University of Minnesota, Minneapolis MN 55455, USA Abstract. QUANTUM ESPRESSO is an integrated suite of computer codes for electronic- structure calculations and materials modeling, based on density-functional theory, plane waves, and pseudopotentials (norm-conserving, ultrasoft, and projector-augmented wave). QUANTUM ESPRESSO stands for opEn Source Package for Research in Electronic Structure, Simulation, and Optimization. It is freely available to researchers around the world under the terms of the GNU General Public License. QUANTUM ESPRESSO builds upon newly- restructured electronic-structure codes that have been developed and tested by some of the original authors of novel electronic-structure algorithms and applied in the last twenty years by some of the leading materials modeling groups worldwide. Innovation and efficiency are still its main focus, with special attention paid to massively-parallel architectures, and a great effort being devoted to user friendliness. QUANTUM ESPRESSO is evolving towards a distribution of independent and inter-operable codes in the spirit of an open-source project, where researchers active in the field of electronic-structure calculations are encouraged to participate in the project by contributing their own codes or by implementing their own ideas into existing codes. QUANTUM ESPRESSO 5 2. The QUANTUM ESPRESSO project QUANTUM ESPRESSO is an integrated suite of computer codes for electronic-structure calculations and materials modeling based on density-functional theory, plane waves basis sets and pseudopotentials to represent electron-ion interactions. QUANTUM ESPRESSO is free, open-source software distributed under the terms of the GNU General Public License (GPL) [20]. The two main goals of this project are to foster methodological innovation in the field of electronic-structure simulations and to provide a wide and diverse community of end users with highly efficient, robust, and user-friendly software implementing the most recent innovations in this field. Other open-source projects [21, 22, 23, 24, 25] exist, besides QUANTUM ESPRESSO, that address electronic-structure calculations and various materials simulation techniques based on them. Unlike some of these projects, QUANTUM ESPRESSO does not aim at providing a single monolithic code able to perform several different tasks by specifying different input data to a same executable. Our general philosophy is rather that of an open distribution, i.e. an integrated suite of codes designed to be interoperable, much in the spirit of a Linux distribution, and thus built around a number of core components designed and maintained by a small group of core developers, plus a number of auxiliary/complementary codes designed, implemented, and maintained by members of a wider community of users. The distribution can even be redundant, with different applications addressing the same problem in different ways; at the end, the sole requirements that QUANTUM ESPRESSO components must fulfill are that: i) they are distributed under the same GPL license agreement [20] as the other QUANTUM ESPRESSO components; ii) they are fully interoperable with the other components. Of course, they need to be scientifically sound, verified and validated. External contributors are encouraged to join the QUANTUM ESPRESSO project, if they wish, while maintaining their own individual distribution and advertisement mode for their software (for instance, by maintaining individual web sites with their own brand names [26]). To facilitate this, a web service called qe-forge [27], described in the next subsection, has been recently put in place. Interoperability of different components within QUANTUM ESPRESSO is granted by the use of common formats for the input, output, and work files. In addition, external contributors are encouraged, but not by any means forced, to use the many numerical and application libraries on which the core components are built. Of course, this general philosophy must be seen more as an objective to which a very complex software project tends, rather than a starting point. One of the main concerns that motivated the birth of the QUANTUM ESPRESSO project is high performance, both in serial and in parallel execution. High serial performance across different architectures is achieved by the systematic use of standardized mathematical libraries (BLAS, LAPACK [28], and FFTW [29]) for which highly optimized implementations exist on many platforms; when proprietary optimizations of these libraries are not available, the user can compile the library sources distributed with QUANTUM ESPRESSO. Optimal performance in parallel execution is achieved through the design of several parallelization QUANTUM ESPRESSO 6 levels, using sophisticated communication algorithms, whose implementation often does not need to concern the developer, being embedded and concealed in appropriate software layers. As a result the performance of the key engines, PWscf (Sec. 4.1) and CP (Sec. 4.2) may scale on massively parallel computers up to thousands of processors. The distribution is organized into a basic set of modules, libraries, installation utilities, plus a number of directories, each containing one or more executables, performing specific tasks. The communications between the different executables take place via data files. We think that this kind of approach lowers the learning barrier for those who wish to contribute to the project. The codes distributed with QUANTUM ESPRESSO, including many auxiliary codes for the post-processing of the data generated by the simulations, are easy to install and to use. The GNU configure and make utilities ensure a straightforward installation on many different machines. Applications are run through text input files based on Fortran namelists, that require the users to specify only an essential but small subset of the many control variables available; a specialized graphical user interface (GUI) that is provided with the distribution facilitates this task for most component programs. It is foreseen that in the near future the design of special APIs (Application Programming Interfaces) will make it easier to glue different components of the distribution together and with external applications, as well as to interface them to other, custom-tailored, GUIs and/or command interpreters. The QUANTUM ESPRESSO distribution is written, mostly, in Fortran-95, with some parts in C or in Fortran-77. Fortran-95 offers the possibility to introduce advanced programming techniques without sacrificing the performances. Moreover Fortran is still the language of choice for high-performance computing and it allows for easy integration of legacy codes written in this language. A single source tree is used for all architectures, with C preprocessor options selecting a small subset of architecture-dependent code. Parallelization is achieved using the Message-Passing paradigm and calls to standard MPI (Message Passing Interface) [30] libraries. Most calls are hidden in a few routines that act as an intermediate layer, accomplishing e.g. the tasks of summing a distributed quantity over processors, of collecting distributed arrays or distributing them across processors, and to perform parallel three-dimensional Fast Fourier Transforms (FFT). This allows to develop straightforwardly and transparently new modules and functionalities that preserve the efficient parallelization backbone of the codes. 2.1. QE-forge The ambition of the QUANTUM ESPRESSO project is not limited to providing highly efficient and user-friendly software for large-scale electronic-structure calculations and materials modeling. QUANTUM ESPRESSO aims at promoting active cooperation between a vast and diverse community of scientists developing new methods and algorithms in electronic-structure theory and of end users interested in their application to the numerical simulation of materials and devices. As mentioned, the main source of inspiration for the model we want to promote is the successful cooperative experience of the GNU/Linux developers’ and users’ community. One QUANTUM ESPRESSO 7 of the main outcomes of this community has been the incorporation within the GNU/Linux operating system distributions of third-party software components, which, while being developed and maintained by autonomous, and often very small, groups of users, are put at the disposal of the entire community under the terms of the GPL. The community, in turn, provides positive feedback and extensive validation by benchmarking new developments, reporting bugs, and requesting new features. These developments have largely benefited from the SourceForge code repository and software development service [31], or by other similar services, such as RubyForge, Tigris.org, BountySource, BerliOS, JavaForge, and GNU Savannah. Inspired by this model, the QUANTUM ESPRESSO developers’ and users’ community has set up its own web portal, named qe-forge [27]. The goal of qe-forge is to complement the traditional web sites of individual scientific software projects, which are passive instruments of information retrieval, with a dynamical space for active content creation and sharing. Its aim is to foster and simplify the coordination and integration of the programming efforts of heterogeneous groups and to ease the dissemination of the software tools thus obtained. qe-forge provides, through a user-friendly web interface, an integrated development environment, whereby researchers can freely upload, manage and maintain their own software, while retaining full control over it, including the right of not releasing it. The services so far available include source-code management software (CVS or SVN repository), mailing lists, public forums, bug tracking facilities, up/down-load space, and wiki pages for projects’ documentation. qe-forge is expected to be the main tool by which QUANTUM ESPRESSO end users and external contributors can maintain QUANTUM ESPRESSO- related projects and make them available to the community. 2.2. Educational usage of QUANTUM ESPRESSO Training on advanced simulation techniques using the QUANTUM ESPRESSO distribution is regularly offered at SISSA to first-year graduate students within the electronic structure course. The scope of this course is not limited to the opportunities that modern simulation techniques based on electronic-structure theory offer to molecular and materials modeling. Emphasis is put onto the skills that are necessary to turn new ideas into new algorithms and onto the methods that are needed to validate the implementation and application of computer simulation methods. Based on this experience, the QUANTUM ESPRESSO developers’ group offers on a regular basis training courses to graduate students and young researchers worldwide, also in collaboration with the Abdus Salam International Centre for Theoretical Physics, which operates under the aegis of the UNESCO and IAEA agencies of the UNO. The QUANTUM ESPRESSO distribution is used not only for graduate, but also for undergraduate training. At MIT, for example, it is one of the teaching tools in the class Introduction to Modeling and Simulations—an institute-wide course offered to undergraduates from the School of Science and the School of Engineering. The challenge here is to provide students of different backgrounds with an overview of numerical simulations QUANTUM ESPRESSO 10 mentioned in the last section. Selected applications were described in Ref [66]. Several utilities for data post-processing and interfacing to advanced graphic applications are available, allowing e.g. to calculate scanning tunneling microscopy (STM) images [67], the electron localization function (ELF) [68], Löwdin charges [69], the density of states (DOS), and planar [70] or spherical averages of the charge and spin densities and potentials. 3.1. Data file format The interoperability of different software components within a complex project such as QUANTUM ESPRESSO relies on the careful design of file formats for data exchange. A rational and open approach to data file formats is also essential for interfacing applications within QUANTUM ESPRESSO with third-party applications, and more generally to make the results of lengthy and expensive computer simulations accessible to, and reproducible by, the scientific community at large. The need for data file formats that make data exchange easier than it is now is starting to be widely appreciated in the electronic-structure community. This problem has many aspects and likely no simple, "one-size-fits-all", solution. Data files should ideally be • extensible: one should be able to add some more information to a file without breaking all codes that read that file; • self-documenting: it should be possible to understand the contents of a file without too much effort; • efficient: with data size in the order of GBytes for large-scale calculations, slow or wasteful I/O should be avoided. The current trend in the electronic-structure community seems to be the adoption of one of the following approaches: • Structured file formats, notably Hierarchical Data Format (HDF) [71] and network Common Data Form (netCDF) [72], that have been widely used for years in other communities; • file formats based on the Extensible Markup Language (XML) [73]. It is unlikely that a common, standardized data format will ever prevail in our community. We feel that we should focus, rather than on standardization, on an approach that allows an easy design and usage of simple and reliable converters among different data formats. Prompted by these considerations, QUANTUM ESPRESSO developers have opted for a simple solution that tries to combine the advantages of both the above-mentioned approaches. A single file containing all the data of a simulation is replaced by a data directory, containing several files and subdirectories, much in the same way as it is done in the Mac OS X operating system. The “head” file contains data written with ordinary Fortran formatted I/O, identified by XML tags. Only data of small size, such as atomic positions, parameters used in the calculation, one- electron and total energies, are written in the head file. Data of potentially large size, such as PW coefficients of KS orbitals, charge density, and potentials, are present as links to separate QUANTUM ESPRESSO 11 files, written using unformatted Fortran I/O. Data for each k-point are written to a separate subdirectory. A lightweight library called iotk, standing for Input/Output ToolKit [74], is used to read and write the data directory. Another problem affecting interoperability of PW-PP codes is the availability of data files containing atomic PP’s—one of the basic ingredients of the calculation. There are many different types of PP’s, many different codes generating PP’s (see e.g. Ref [75, 76, 77]), each one with its own format. Again, the choice has fallen on a simple solution that makes it easy to write converters from and to the format used by QUANTUM ESPRESSO. Each atomic PP is contained in a formatted file (efficiency is not an issue here), described by a XML-like syntax. The resulting format has been named Unified Pseudopotential File (UPF). Several converters from other formats to the UPF format are available in QUANTUM ESPRESSO. 4. QUANTUM ESPRESSO packages The complete QUANTUM ESPRESSO distribution is rather large. The current 4.1 version includes about 310,000 lines of Fortran-90 code, 1,000 lines of Fortran-77 code, 1,000 lines of C code, 2000 lines of Tcl code, plus parts of external libraries such as FFTW, BLAS, LAPACK and the external toolkit iotk. In addition, there are approx. 10,000 lines of specific documentation (not counting different formats), more than 100 different examples and more than 100 tests of the different functionalities. Overall the complete distribution includes more than 3000 files, organized into 200 directories, and takes 22Mb in compressed format. With such a sizable code basis, modularization becomes necessary. QUANTUM ESPRESSO is presently divided into several executables, performing different types of calculations, although some of them have overlapping functionalities. Typically there is a single set of functions/subroutines or a single Fortran 90 module that performs each specific task (e.g. matrix diagonalizations, or potential updates), but there are still important exceptions to this rule, reflecting the different origin and different styles of the original components. QUANTUM ESPRESSO has in fact been built out of the merge and re- engineering of different packages, that were independently developed for several years. In the following, the main components are briefly described. 4.1. PWscf PWscf implements an iterative approach to reach self-consistency, using at each step iterative diagonalization techniques, in the framework of the plane-wave pseudopotential method. An early version of PWscf is described in Ref [78]. Both separable NC-PPs and US-PPs are implemented; recently, also the projector augmented-wave method [37] has been added, largely following the lines of Ref [79] for its implementation. In the case of US-PPs, the electronic wave functions can be made smoother at the price of having to augment their square modulus with additional contributions to recover the actual physical charge densities. For this reason, the charge density is more structured than the square of the wavefunctions, and requires a larger energy cutoff for its QUANTUM ESPRESSO 12 plane wave expansion (typically, 6 to 12 times larger; for a NC-PP, a factor of 4 would be mathematically sufficient). Hence, different real-space Fourier grids are introduced - a "soft" one that represents the square of electronic wave functions, and a "hard" one that represents the charge density [80, 81]. The augmentation terms can be added either in reciprocal space (using an exact but expensive algorithm) or directly in real space (using an approximate but faster algorithm that exploits the local character of the augmentation charges). PWscf can use the well established LDA and GGA exchange-correlation functionals, including spin-polarization within the scheme proposed in Ref [82] and can treat non-collinear magnetism[48, 49] as e.g. induced by relativistic effects (spin-orbit interactions) [83, 84] or by complex magnetic interactions (e.g. in the presence of frustration). DFT + Hubbard U calculations [85] are implemented for a simplified (“no-J”) rotationally invariant form [86] of the Hubbard term. Other advanced functionals include TPSS meta-GGA [39], functionals with finite-size corrections [87], and the PBE0 [40] and B3LYP [41, 42] hybrids. Self-consistency is achieved via the modified Broyden method of Ref [88], with some further refinements that are detailed in Appendix A.1. The sampling of the Brillouin Zone (BZ) can be performed using either special [89, 90] k-points provided in input or those automatically calculated starting from a uniform grid. Crystal symmetries are automatically detected and exploited to reduce computational costs, by restricting the sampling of the BZ to the irreducible wedge alone (See Appendix A.4). When only the Γ point (k = 0) is used, advantage is taken of the real character of the KS orbitals, allowing one to store just half of the Fourier components. BZ integrations in metallic systems can be performed using a variety of smearing/broadening techniques, such as Fermi-Dirac, Gaussian, Methfessel-Paxton [91], and Marzari-Vanderbilt cold smearing [92]. The tetrahedron method [93] is also implemented. Finite-temperature effects on the electronic properties can be easily accounted for by using the Fermi-Dirac smearing as a practical way of implementing the Mermin finite-temperature density-functional approach [94]. Structural optimizations are performed using the Broyden-Fletcher-Goldfarb-Shanno (BFGS) algorithm [95, 96, 97] or damped dynamics; these can involve both the internal, microscopic degrees of freedom (i.e. the atomic coordinates) and/or the macroscopic ones (shape and size of the unit cell). The calculation of minimum-energy paths, activation energies, and transition states uses the Nudged Elastic Band (NEB) method [57]. Potential energy surfaces as a function of suitably chosen collective variables can be studied using Laio-Parrinello metadynamics [98]. Microcanonical (NVE) MD is performed on the BO surface, i.e. achieving electron self- consistency at each time step, using the Verlet algorithm[99]. Canonical (NVT) dynamics can be performed using velocity rescaling, or Anderson’s or Berendsen’s thermostats [100]. Constant-pressure (NPT) MD is performed by adding additional degrees of freedom for the cell size and volume, using either the Parrinello-Rahman Lagrangian [101] or the so-called invariant Lagrangian of Wentzcovitch [53]. The effects of finite macroscopic electric fields on the electronic structure of the ground state can be accounted for either through the method of Ref [102, 103] based on the Berry phase, or (for slab geometries only) through a sawtooth external potential [104, 105]. A QUANTUM ESPRESSO 15 an axis of magnetization. The atomic code uses the same exchange and correlation energy routines of PWscf and can deal with the same functionals. The code is able to generate NC PPs directly in separable form (also with multiple projectors per angular momentum channel) via the Troullier-Martins [141] or the Rappe- Rabe-Kaxiras-Joannopoulos [142] pseudization. US PPs can be generated by a two-step pseudization process, starting from a NC PPs, as described in Ref. [143], or using the solutions of the all-electron equation and pseudizing the augmentation functions [80]. The latter method is used also for the PAW data-set generation. The generation of fully relativistic NC and US PPs including spin-orbit coupling effects is also available. Converters are available to translate pseudopotentials encoded in different formats (e.g. according to the Fritz-Haber [75] or Vanderbilt [76] conventions) into the UPF format adopted by QUANTUM ESPRESSO. Transferability tests can be made simultaneously for several atomic configurations with or without spin-polarization, by solving the non relativistic radial KS equations generalized for separable nonlocal PPs and for the presence of an overlap matrix. 4.5. PWcond The PWcond code implements the scattering approach proposed by Choi and Ihm [60] for the study of coherent electron transport in atomic-sized nanocontacts within the Landauer- Büttiker theory. Within this scheme the linear response ballistic conductance is proportional to the quantum-mechanical electron transmission at the Fermi energy for an open quantum system consisting of a scattering region (e.g., an atomic chain or a molecule with some portions of left and right leads) connected ideally from both sides to semi-infinite metallic leads. The transmission is evaluated by solving the KS equations with the boundary conditions that an electron coming from the left lead and propagating rightwards gets partially reflected and partially transmitted by the scattering region. The total transmission is obtained by summing all transmission probabilities for all the propagating channels in the left lead. As a byproduct of the method, the PWcond code provides the complex band structures of the leads, that is the Bloch states with complex kz in the direction of transport, describing wave functions exponentially growing or decaying in the z direction. The original method formulated with NC PPs has been generalized to US PPs both in the scalar relativistic [144] and in the fully relativistic forms [145]. 4.6. GIPAW The GIPAW code allows for the calculation of physical parameters measured by i) nuclear magnetic resonance (NMR) in insulators (the electric field gradient (EFG) tensors and the chemical shift tensors), and by ii) electronic paramagnetic resonance (EPR) spectroscopy for paramagnetic defects in solids or in radicals (the hyperfine tensors and the g-tensor). The code also computes the magnetic susceptibility of nonmagnetic insulators. GIPAW is based on the PW-PP method, and uses many subroutines of PWscf and of PHonon. The code is currently restricted to NC PPs. All the NMR and EPR parameters depend on the detailed shape of the electronic wave-functions near the nuclei and thus require the reconstruction of QUANTUM ESPRESSO 16 the all-electron wave-functions from the PP wave-functions. For the properties defined at zero external magnetic field, namely the EFG and the hyperfine tensors, such reconstruction is performed as a post-processing step of a self-consistent calculation using the PAW reconstruction, as described for the EFG in Ref. [146] and for the hyperfine tensor in Ref. [147]. The g-tensor, the NMR chemical shifts and the magnetic susceptibility are obtained from the orbital linear response to an external uniform magnetic field. In the presence of a magnetic field the PAW method is no more gauge- and translationally invariant. Gauge and translational invariances are restored by using the gauge including projector augmented wave (GIPAW) method [63, 64] both i) to describe in the PP Hamiltonian the coupling of orbital degrees of freedom with the external magnetic field, and ii) to reconstruct the all-electron wave-functions, in presence of the external magnetic field. In addition, the description of a uniform magnetic field within periodic boundary conditions is achieved by considering the long wave-length limit of a sinusoidally modulated field in real space [148, 149]. The NMR chemical shifts are computed following the method described in Ref. [63], the g-tensor following Ref. [150] and the magnetic susceptibility following Refs. [148, 63]. Recently, a “converse” approach to calculate chemical shifts has also been introduced [151], based on recent developments on the Berry-phase theory of orbital magnetization; since it does not require a linear-response calculation, it can be straightforwardly applied to arbitrarily complex exchange-correlation functionals, and to very large systems, albeit at a computational cost that is proportional to the number of chemical shifts that need to be calculated. 4.7. XSPECTRA The XSPECTRA code allows for the calculation of K-edge X-ray absorption spectra (XAS). The code calculates the XAS cross-section including both dipolar and quadrupolar matrix elements. The code uses the self-consistent charge density produced by PWscf and acts as a post-processing tool. The all-electron wavefunction is reconstructed using the PAW method and its implementation in the GIPAW code. The presence of a core-hole in the final state of the X-ray absorption process is simulated by using a pseudopotential for the absorbing atom with a hole in the 1s state. The calculation of the charge density is performed on a supercell with one absorbing atom. From the self-consistent charge density, the X-ray absorption spectra are obtained using the Lanczos method and a continued fraction expansion [65, 152]. The advantage of this approach is that once the charge density is known it is not necessary to calculate empty bands to describe very high energy features of the spectrum. Correlation effects can be simulated in a mean-field way using the Hubbard U correction [86] that has been included in the XSPECTRA code in Ref. [153]. Currently the code is limited to collinear magnetism. Its extension to noncollinear magnetism is under development. 4.8. Wannier90 Wannier90 [26, 154] is a code that calculates maximally-localized Wannier functions in insulators or metals—according to the algorithms described in Refs. [61, 62]—and a number of properties that can be conveniently expressed in a Wannier basis. The code is developed QUANTUM ESPRESSO 17 and maintained independently by a Wannier development group [154] and can be taken as a representative example of the philosophy described earlier, where a project maintains its own individual distribution but provides full interoperability with the core components of QUANTUM ESPRESSO in this case PWscf or CP. These codes are in fact used as “quantum engines” to produce the data onto which Wannier90 operates. The need to provide transparent protocols for interoperability has in turn facilitated the interfacing of wannier90 with other quantum engines [21, 14], fostering a collaborative engagement with the broader electronic-structure community that is also in the spirit of QUANTUM ESPRESSO . Wannier90 requires as input the scalar products between wavefunctions at neighboring k-points, where these latter form uniform meshes in the Brillouin zone. Often, it is also convenient to provide scalar products between wavefunctions and trial, localized real-space orbitals—these are used to guide the localization procedure towards a desired, physical minimum. As such, the code is not tied to a representation of the wavefunctions in any particular basis—for PWscf and CP a post-processing utility is in charge of calculating these scalar products using the plane-wave basis set of QUANTUM ESPRESSO and either NC-PPs or US-PPs. Whenever Γ sampling is used, the simplified algorithm of Ref. [155] is adopted. Besides calculating maximally localized Wannier functions, the code is able to construct the Hamiltonian matrix in this localized basis, providing a chemically accurate, and transferable, tight-binding representation of the electronic structure of the system. This, in turn, can be used to construct Green’s functions and self-energies for ballistic transport calculations [156, 157], to determine the electronic structure and DOS of very large scale structures [157], to interpolate accurately the electronic band structure (i.e. the Hamiltonian) across the Brillouin zone [157, 158], or to interpolate any other operator [158]. These latter capabilities are especially useful for the calculation of integrals that depend sensitively on a submanifold of states; common examples come from properties that depend sensitively on the Fermi surface, such as electronic conductivity, electron-phonon couplings Knight shifts, or the anomalous Hall effect. A related by-product of Wannier90 is the capability of downfolding a selected, physically significant manifold of bands into a minimal but accurate basis, to be used for model Hamiltonians that can be treated with complex many-body approaches. 4.9. PostProc The PostProc module contains a number of codes for post-processing and analysis of data files produced by PWscf and CP. The following operations can be performed: • Interfacing to graphical and molecular graphics applications. Charge and spin density, potentials, ELF [68] and STM images [67] are extracted or calculated and written to files that can be directly read by most common plotting programs, like xcrysden [159] and VMD [160]. • Interfaces to other codes that use DFT results from QUANTUM ESPRESSO for further calculations, such as e.g.: pw2wannier90, an interface to the wannier90 library and code [26, 154] (also included in the QUANTUM ESPRESSO distribution); pw2casino.f90, an interface to the casino quantum Monte Carlo code [161]; QUANTUM ESPRESSO 20 QUANTUM ESPRESSO distribution are designed to exploit this highly structured hardware hierarchy. High performance on massively parallel architectures is achieved by distributing both data and computations in a hierarchical way across available processors, ending up with multiple parallelization levels [167] that can be tuned to the specific application and to the specific architecture. This remarkable characteristic makes it possible for the main codes of the distribution to run in parallel on most or all parallel machines with very good performance in all cases. More in detail, the various parallelization levels are geared into a hierarchy of processor groups, identified by different MPI communicators. In this hierarchy, groups implementing coarser-grained parallel tasks are split into groups implementing finer-grained parallel tasks. The first level is image parallelization, implemented by dividing processors into nimage groups, each taking care of one or more images (i.e. a point in the configuration space, used by the NEB method). The second level is pool parallelization, implemented by further dividing each group of processors into npool pools of processors, each taking care of one or more k-points. The third level is plane-wave parallelization, implemented by distributing real- and reciprocal-space grids across the nPW processors of each pool. The final level is task group parallelization [168], in which processors are divided into ntask task groups of nFFT = nPW/ntask processors, each one taking care of different groups of electron states to be Fourier-transformed, while each FFT is parallelized inside a task group. A further paralellization level, linear-algebra, coexists side-to-side with plane-wave parallelization, i.e. they take care of different sets of operations, with different data distribution. Linear-algebra parallelization is implemented both with custom algorithms and using ScaLAPACK [169], which on massively parallel machines yield much superior performances. Table 1 contains a summary of the five levels currently implemented. With the recent addition of the two last levels, most parallelization bottlenecks have been removed, while both computations and data structures are fully distributed. This being said, the size and nature of the specific application set quite natural limits to the maximum number of processors up to which the performances of the various codes are expected to scale. For instance, the number of k−points calculation sets a natural limit to the size of each pool, or the number of electronic bands sets a limit for the parallelization of the linear algebra operations. Moreover some numerical algorithms scale better than others. For example, the use of norm-conserving pseudopotentials allows for a better scaling than ultrasoft pseudopotentials for a same system, because a larger plane-wave basis set and a larger real- and reciprocal-space grids are required in the former case. On the other hand, using ultrasoft pseudopotentials is generally faster because the use of a smaller basis set is obviously more efficient, even though the overall parallel performance may not be as good. Simulations on systems containing several hundreds of atoms are by now quite standard (see Fig. 3 for an example). Scalability does not yet extend to tens of thousands of processors as in especially-crafted codes like QBox [170], but excellent scalability on up to 4800 processors has been demonstrated (see Fig. 4) even for cases where coarse-grained parallelization does not help, using only MPI parallelization. We remarks that the results for CNT (2) in Fig. 4 were obtained with an earlier version of the CP code that didn’t use QUANTUM ESPRESSO 21 50 100 150 200 250 300 350 0 100 200 300 400 500 C P U ti m e (s ) Number of CPUs scalability for < 1000 processors BG/P 1 task BG/P 4 tasks BG/P 8 tasks Altix 1 task Altix 4 tasks Altix 8 tasks 1 2 4 8 16 32 64 128 256 512 S pe ed up Number of CPUs Ideal scaling slope Figure 3. Scalability for medium-size calculations (CP code). CPU time (s) per electronic time step (left panel) and speedup with respect to 32 processors (right panel) as a function of the number of processors and for different numbers ntask of task groups, on a IBM BlueGene/P (BG/P) and on a SGI Altix. The system is a fragment of an Aβ−peptide in water containing 838 atoms and 2311 electrons in a 22.1 × 22.9 × 19.9 Å3 cell, ultrasoft pseudopotentials, Γ point, 25 Ry and 250 Ry cutoff for the orbitals and the charge density respectively. ScaLAPACK; the current version performs better in terms of scalability. 1000 1500 2000 2500 3000 3500 4000 4500 5000 0 1000 2000 3000 4000 5000 W al l t im e (s ) Number of CPUs Scalability for > 1000 processors PSIWAT CNT (1) CNT (2) 1 2 4 8 256 512 1024 2048 4096 S pe ed up Number of CPUs Ideal scaling slope Figure 4. Scalability for large-scale calculations: Wall time (left panel) and speedup (right panel) as a function of the number of processors. PSIWAT: PWscf code, npool = 4, ntask = 4, on a Cray XT 4. The system is a gold surface covered by thiols in interaction with water, 4 k−points, 10.59× 20.53× 32.66 Å3 cell, 587 atoms, 2552 electrons. CNT (1): PWscf code, ntask = 4, on a Cray XT 4. The system is a porphyrin-functionalized nanotube, Γ point, 1532 atoms, 5232 electrons. CNT (2): CP code on a Cray XT3, same system as for CNT (1), Times for PSIWAT and CNT (1) are for 10 and 2 self-consistency iterations, respectively; times for CNT (2) are for 10 electronic steps plus 1 Car-Parrinello step, divided by 2 so that they fall in the same range as for CNT (1). The efforts of the QUANTUM ESPRESSO developers’ team are not limited to the performance on massively parallel architectures. Special attention is also paid to optimize the performances for simulations of intermediate size (on systems comprising from several tens to a few hundreds inequivalent atoms), to be performed on medium-size clusters, readily QUANTUM ESPRESSO 22 available to many groups [81]. In particular, the QUANTUM ESPRESSO developers’ team is now working to better exploit new hardware trends, particularly in the field of multicore architectures. The current version implements a partial but fully functional OpenMP parallelization [171], that is especially suitable for modern multicore CPU’s. Mixing OpenMP with MPI also allows to extend scalability towards a higher number of processors, by adding a parallelization level on top of what can already be achieved using MPI. Preliminary tests on realistic physical systems demonstrate scalability up to 65536 cores, so far. Looking ahead, future developments will likely focus on hybrid systems with hardware accelerators (GPUs and cell co-processors). 6. Perspectives and Outlook Further developments and extensions of QUANTUM ESPRESSO will be driven by the needs of the community using it and working on it. Many of the soon-to-come additions will deal with excited-state calculations within time-dependent DFT (TDDFT [172, 173]) and/or many- body perturbation theory [174]. A new approach to the calculation of optical spectra within TDDFT has been recently developed [175], based on a finite-frequency generalization of density-functional perturbation theory [54, 55], and implemented in QUANTUM ESPRESSO. Another important development presently under way is an efficient implementation of GW calculations for large systems (whose size is of the order of a few hundreds inequivalent atoms) [176]. The implementation of efficient algorithms for calculating correlation energies at the RPA level is also presently under way [177, 178, 179]. It is foreseen that by the time this paper will appear, many of these developments will be publicly released. It is hoped that many new functionalities will be made available to QUANTUM ESPRESSO users by external groups who will make their own software compati- ble/interfaceable with QUANTUM ESPRESSO. At the time of the writing of the present pa- per, third-party scientific software compatible with QUANTUM ESPRESSO and available to its users’ community include: yambo, a general-purpose code for excited-state calculations within many-body perturbation theory [180]; casino, a code for electronic-structure quan- tum Monte Carlo simulations [161]; want, a code for the simulation of ballistic transport in nanostructures, based on Wannier functions [181]; xcrysden, a molecular graphics ap- plication, especially suited for periodic structures [159]. The qe-forge portal is expected to burst the production and availability of third-party software compatible with QUANTUM ESPRESSO. Among the projects already available, or soon-to-be available, on qe-forge, we mention: SaX [163], an open-source project implementing state-of-the-art many-body perturbation theory methods for excited states; dmft [162], a code to perform Dynamical Mean-Field Theory calculations on top of a tight-binding representation of the DFT band structure; qha, a set of codes for calculating thermal properties of materials within the quasi- harmonic approximation [182]; pwtk, a fully functional Tcl scripting interface to PWscf [183]. Efforts towards better interoperability with third-party software will be geared towards releasing accurate specifications for data structures and data file formats and providing QUANTUM ESPRESSO 25 where ∆ρ = ρ(out) − ρ(in) and ∆VH is the Hartree potential generated by ∆ρ. Moreover it can be shown that, when exchange and correlation contributions to the electronic screening do not dominate over the electrostatic ones, this quantity is an upper bound to the self-consistent error incurred when using the standard form for the DFT energy. We therefore take this term, which can be trivially calculated in reciprocal space, as our squared scf norm: ||ρ(out) − ρ(in)||2 = 4πe 2 Ω ∑ G |∆ρ(G)|2 G2 , (A.7) where G are the vectors in reciprocal space and Ω is the volume of the unit cell. Once the optimal linear combination of ρ(in) from previous iterations (typically 4 to 8) is determined, one adds a step in the new search direction that is, in the simplest case, a fraction of the optimal ∆ρ or, taking advantage of some approximate electronic screening[188], a preconditioned ∆ρ. In particular, the simple, Thomas-Fermi, and local Thomas-Fermi mixing described in Ref. [188] are implemented and used. The above algorithm has been extended to more sophisticated calculations, in which the x vector introduced above may contain additional quantities: for DFT+U, occupancies of atomic correlated states; for meta-GGA, kinetic energy density; for PAW, the quantities∑ i〈ψi|βn〉〈βm|ψi〉, where the β functions are the atomic-based projectors appearing in the PAW formalism. The scf norm is modified accordingly in such a way to include the additional variables in the estimated self-consistency error. Appendix A.2. Iterative diagonalization During self-consistency one has to solve the generalized eigenvalue problem for all N occupied states Hψi = iSψi, i = 1, . . . , N (A.8) in which both H (the Hamiltonian) and S (the overlap matrix) are available as operators (i.e. Hψ and Sψ products can be calculated for a generic state ψ ). Eigenvectors are normalized according to the generalized orthonormality constraints 〈ψi|S|ψj〉 = δij . This problem is solved using iterative methods. Currently PWscf implements a block Davidson algorithm and an alternative algorithm based on band-by-band minimization using conjugate gradient. Appendix A.2.1. Davidson One starts from an initial set of orthonormalized trial orbitals ψ (0) i and of trial eigenvalues  (0) i = 〈ψ (0) i |H|ψ (0) i 〉. The starting set is typically obtained from the previous scf iteration, if available, and if not, from the previous time step, or optimization step, or from a superposition of atomic orbitals. We introduce the residual vectors g (0) i = (H −  (0) i S)ψ (0) i , (A.9) a measure of the error on the trial solution, and the correction vectors δψ(0)i = Dg (0) i , where D is a suitable approximation to (H − (0)i S)−1. The eigenvalue problem is then solved in the QUANTUM ESPRESSO 26 2N -dimensional subspace spanned by the reduced basis set φ(0), formed by φ(0)i = ψ (0) i and φ (0) i+N = δψ (0) i : 2N∑ k=1 (Hjk − iSjk)c(i)k = 0, (A.10) where Hjk = 〈φ(0)j |H|φ (0) k 〉, Sjk = 〈φ (0) j |S|φ (0) k 〉. (A.11) Conventional algorithms for matrix diagonalization are used in this step. A new set of trial eigenvectors and eigenvalues is obtained: ψ (1) i = 2N∑ j=1 c (i) j φ (0) j ,  (1) i = 〈ψ (1) i |H|ψ (1) i 〉 (A.12) and the procedure is iterated until a satisfactory convergence is achieved. Alternatively, one may enlarge the reduced basis set with the new correction vectors δψ(1)i = Dg (1) i , solve a 3N -dimensional problem, and so on, until a prefixed size of the reduced basis set is reached. The latter approach is typically slightly faster at the expenses of a larger memory usage. The operator D must be easy to estimate. A natural choice in the PW basis set is a diagonal matrix, obtained keeping only the diagonal term of the Hamiltonian: 〈k + G|D|k + G′〉 = δGG ′ 〈k + G|H − S|k + G〉 (A.13) where k is the Bloch vector of the electronic states under consideration, |k + G′〉 denotes PWs,  an estimate of the highest occupied eigenvalue. Since the Hamiltonian is a diagonally dominant operator and the kinetic energy of PWs is the dominant part at high G, this simple form is very effective. Appendix A.2.2. Conjugate-Gradient The eigenvalue problem of Eq.(A.8) can be recast into a sequence of constrained minimization problems: min 〈ψi|H|ψi〉 −∑ j≤i λj (〈ψi|S|ψj〉 − δij)  , (A.14) where the λj are Lagrange multipliers. This can be solved using a preconditioned conjugate gradient algorithm with minor modifications to ensure constraint enforcement. The algorithm here described was inspired by the conjugate-gradient algorithm of Ref. [189], and is similar to one of the variants described in Ref. [190]. Let us assume that eigenvectors ψj up to j = i − 1 have already been calculated. We start from an initial guess ψ(0) for the i-th eigenvector, such that 〈ψ(0)|S|ψ(0)〉 = 1 and 〈ψ(0)|S|ψj〉 = 0. We introduce a diagonal precondition matrix P and auxiliary functions y = P−1ψ and solve the equivalent problem min [ 〈y|H̃|y〉 − λ ( 〈y|S̃|y〉 − 1 )] , (A.15) where H̃ = PHP , S̃ = PSP , under the additional orthonormality constraints 〈y|PS|ψj〉 = 0. The starting gradient of Eq.(A.15)) is given by g(0) = (H̃ − λS̃)y(0). (A.16) QUANTUM ESPRESSO 27 By imposing that the gradient is orthonormal to the starting vector: 〈g(0)|S̃|y(0)〉 = 0, one determines the value of the Lagrange multiplier: λ = 〈y(0)|S̃H̃|y(0)〉 〈y(0)|S̃2|y(0)〉 . (A.17) The remaining orthonormality constraints are imposed on Pg(0) by explicit orthonormaliza- tion (e.g. Gram-Schmid) to the ψj . We introduce the conjugate gradient h(0), which for the first step is set equal to g(0) (after orthonormalization), and the normalized direction n(0) = h(0)/〈h(0)|S̃|h(0)〉1/2. We search for the minimum of 〈y(1)|H̃|y(1)〉 along the direc- tion y(1), defined as: [189] y(1) = y(0) cos θ + n(0) sin θ. (A.18) This form ensures that the constraint on the norm is correctly enforced. The calculation of the minimum can be analytically performed and yields θ = 1 2 atan ( a(0) (0) − b(0) ) , (A.19) where a(0) = 2<〈y(0)|H̃|n(0)〉, b(0) = 〈n(0)|H̃|n(0)〉, and (0) = 〈y(0)|H̃|y(0)〉. The procedure is then iterated; at each step the conjugate gradient is calculated from the gradient and the conjugate gradient at the previous step, using the Polak-Ribière formula: h(n) = g(n) + γ(n−1)h(n−1), (A.20) γ(n−1) = 〈g(n) − g(n−1)|S̃|g(n)〉 〈g(n−1)|S̃|g(n−1)〉 . (A.21) h(n) is subsequently re-orthogonalized to y(n). We remarks that in the practical implementation only Pg and Ph need to be calculated and that only P 2 – the analogous of the D matrix of Davidson algorithm – is actually used. A kinetic-only form of P 2 has proved satisfactory: 〈k + G|P 2|k + G′〉 = 2m h̄2(k + G)2 δGG′ . (A.22) Appendix A.3. Wavefunction extrapolation In molecular dynamics runs and in structural relaxations, extrapolations are employed to generate good initial guesses for the wavefunctions at time t + dt from wavefunctions at previous time steps. The extrapolation algorithms used are similar to those described in Ref. [189]. The alignment procedure, needed when wavefunctions are the results of a self-consistent calculation, is as follows. The overlap matrix Oij between wavefunctions at consecutive time steps: Oij = 〈ψi(t+ dt)|S(t+ dt)|ψj(t)〉, (A.23) can be used to generate the unitary transformation U [191] that aligns ψ(t + dt) to ψ(t): ψ ‖ i (t+dt) = ∑ j Uijψj(t+dt). Since O is not unitary, it needs to be made unitary via e.g. the unitarization procedure U = (O†O)−1/2O†. (A.24) QUANTUM ESPRESSO 30 Appendix A.5. Fock exchange Hybrid functionals are characterized by the inclusion of a fraction of exact (i.e. non-local) Fock exchange in the definition of the exchange-correlation functional. For a periodic system, the Fock exchange energy per unit cell is given by: Ex = − e2 N ∑ kv k′v′ ∫ ψ∗kv(r)ψk′v′(r)ψ∗k′v′(r′)ψkv(r′) |r− r′| drdr′, (A.32) where an insulating and non magnetic system is assumed for simplicity. Integrals and wave- function normalizations are defined over the whole crystal volume, V = NΩ (Ω being the unit cell volume), and the summations run over all occupied bands and all N k-points defined in the BZ by Born-von Kármán boundary conditions. The calculation of this term is performed exploiting the dual-space formalism: auxiliary codensities, ρk′,v′ k,v (r) = ψ∗k′,v′(r)ψk,v(r) are computed in real space and transformed to reciprocal space by FFT, where the associated electrostatic energies are accumulated. The application of the Fock exchange operator to a wavefunction involves additional FFTs and real-space array multiplications. These basic operations need to be repeated for all the occupied bands and all the points in the BZ grid. For this reason the computational cost of the exact exchange calculation is very high, at least an order of magnitude larger than for non-hybrid functional calculations. In order to limit the computational cost, an auxiliary grid of q-points in the BZ, centered at the Γ point, can be introduced and the summation over k′ be limited to the subset k′ = k+q. Of course convergence with respect to this additional parameter needs to be checked, but often a grid coarser than the one used for computing densities and potentials is sufficient. The direct evaluation of the Fock energy on regular grids in the BZ is however problematic due to an integrable divergence that appears in the q → 0 limit. This problem is addressed resorting to a procedure, first proposed by Gygi and Baldereschi [193], where an integrable term that displays the same divergence is subtracted from the expression for the exchange energy and its analytic integral over the BZ is separately added back to it. Some care must still be paid [177] in order to estimate the contribution of the q = 0 term in the sum, which contains a 0/0 limit that cannot be calculated from information at q = 0 only. This term is estimated [177] assuming that the grid of q-points used for evaluating the exchange integrals is dense enough that a coarser grid, including only every second point in each direction, would also be equally accurate. Since the limiting term contributes to the integral with different weights in the two grids, one can extract its value from the condition that the two integral give the same result. This procedure removes an error proportional to the inverse of the unit cell volume Ω that would otherwise appear if this term were simply neglected. References [1] N. Marzari. MRS BULLETIN, 31:681, 2006. [2] R. G. Parr and W. Yang. Density Functional Theory of Atoms and Molecules. Oxford University Press, 1989. QUANTUM ESPRESSO 31 [3] R. M. Dreizler and E. K. U. Gross. Density Functional Theory. Springer-Verlag, 1990. [4] R.M. Martin. Cambridge University Press, Cambridge, UK, 2004. [5] E. J. Baerends, J. Autschbach, A. Bérces, F.M. Bickelhaupt, C. Bo, P. M. Boerrigter, L. Cavallo, D. P. Chong, L. Deng, R. M. Dickson, D. E. Ellis, M. van Faassen, L. Fan, T. H. Fischer, C. Fonseca Guerra, S. J. A. van Gisbergen, A. W. Götz, J. A. Groeneveld, O. V. Gritsenko, M. Grüning, F. E. Harris, P. van den Hoek, C. R. Jacob, H. Jacobsen, L. Jensen, G. van Kessel, F. Kootstra, M. V. Krykunov, E. van Lenthe, D. A. McCormack, A. Michalak, J. Neugebauer, V. P. Nicu, V. P. Osinga, S. Patchkovskii, P. H. T. Philipsen, D. Post, C. C. Pye, W. Ravenek, J. I. Rodriguez, P. Ros, P. R. T. Schipper, G. Schreckenbach, J. G. Snijders, M. Solà, M. Swart, D. Swerhone, G. te Velde, P. Vernooijs, L. Versluis, L. Visscher, O. Visser, F. Wang, T. A. Wesolowski, E. M. van Wezenbeek, G. Wiesenekker, S. K. Wolff, T. K. Woo, A. L. Yakovlev, and T. Ziegler. ADF2008.01, SCM, Theoretical Chemistry, Vrije Universiteit, Amsterdam, The Netherlands, http://www.scm.com. [6] Roberto Dovesi, Bartolomeo Civalleri, Roberto Orlando, Carla Roetti, and Victor R. Saunders. in Reviews in Computational Chemistry, Ch. 1, Vol. 21, K. B. Lipkowitz, R. Larter, T. R. Cundari editors, John Wiley and Sons, New York (2005). [7] G. Karlström, R. Lindh, P.-Å. Malmqvist, B. O. Roos, U. Ryde, V. Veryazov, P.-O. Widmark, M. Cossi, B. Schimmelpfennig, P. Neogrady, and L. Seijo. Comp. Mater. Sci., 28:222, 2003. [8] Reinhart Ahlrichs, Filipp Furche, Christof Hättig, Willem M. Klopper, Marek Sierka, and Florian Weigend. TURBOMOLE – http://www.turbomole-gmbh.com. [9] M. J. Frisch, G. W. Trucks, H. B. Schlegel, G. E. Scuseria, M. A. Robb, J. R. Cheeseman, J. A. Montgomery, Jr., T. Vreven, K. N. Kudin, J. C. Burant, J. M. Millam, S. S. Iyengar, J. Tomasi, V. Barone, B. Mennucci, M. Cossi, G. Scalmani, N. Rega, G. A. Petersson, H. Nakatsuji, M. Hada, M. Ehara, K. Toyota, R. Fukuda, J. Hasegawa, M. Ishida, T. Nakajima, Y. Honda, O. Kitao, H. Nakai, M. Klene, X. Li, J. E. Knox, H. P. Hratchian, J. B. Cross, V. Bakken, C. Adamo, J. Jaramillo, R. Gomperts, R. E. Stratmann, O. Yazyev, A. J. Austin, R. Cammi, C. Pomelli, J. W. Ochterski, P. Y. Ayala, K. Morokuma, G. A. Voth, P. Salvador, J. J. Dannenberg, V. G. Zakrzewski, S. Dapprich, A. D. Daniels, M. C. Strain, O. Farkas, D. K. Malick, A. D. Rabuck, K. Raghavachari, J. B. Foresman, J. V. Ortiz, Q. Cui, A. G. Baboul, S. Clifford, J. Cioslowski, B. B. Stefanov, G. Liu, A. Liashenko, P. Piskorz, I. Komaromi, R. L. Martin, D. J. Fox, T. Keith, M. A. Al-Laham, C. Y. Peng, A. Nanayakkara, M. Challacombe, P. M. W. Gill, B. Johnson, W. Chen, M. W. Wong, C. Gonzalez, and J. A. Pople. Gaussian 03, Revision C.02. Gaussian, Inc., Wallingford, CT, 2004, http://www.gaussian.com. [10] Materials Studio, http://accelrys.com/products/materials-studio. [11] Jaguar: rapid ab initio electronic structure package, Schrödinger, LLC., http://www.schrodinger.com/. [12] Spartan, Wavefunction, Inc., http://www.wavefun.com/products/spartan.html. [13] G. Kresse and J. Furthmuller. Comp. Mater. Sci., 6(1):15–50, JUL 1996. http://cmp.univie.ac.at/vasp. [14] http://www.castep.org, http://accelrys.com/products/materials-studio/modules/CASTEP.html. [15] The CPMD consortium page, coordinated by M. Parrinello and W. Andreoni, Copyright IBM Corp 1990- 2008, Copyright MPI für Festkörperforschung Stuttgart 1997-2001, http://www.cpmd.org. [16] E. J. Bylaska, W. A. de Jong, N. Govind, K. Kowalski, T. P. Straatsma, M. Valiev, D. Wang, E. Apra, T. L. Windus, J. Hammond, P. Nichols, S. Hirata, M. T. Hackler, Y. Zhao, P.-D. Fan, R. J. Harrison, M. Dupuis, D. M. A. Smith, J. Nieplocha, V. Tipparaju, M. Krishnan, Q. Wu, T. Van Voorhis, A. A. Auer, M. Nooijen, E. Brown, G. Cisneros, G. I. Fann, H. Fruchtl, J. Garza, K. Hirao, R. Kendall, J. A. Nichols, K. Tsemekhman, K. Wolinski, J. Anchell, D. Bernholdt, P. Borowski, T. Clark, D. Clerc, H. Dachsel, M. Deegan, K. Dyall, D. Elwood, E. Glendening, M. Gutowski, A. Hess, J. Jaffe, B. Johnson, J. Ju, R. Kobayashi, R. Kutteh, Z. Lin, R. Littlefield, X. Long, B. Meng, T. Nakajima, S. Niu, L. Pollack, M. Rosing, G. Sandrone, M. Stave, H. Taylor, G. Thomas, J. van Lenthe, A. Wong, , and Z. Zhang. Nwchem, a computational chemistry package for parallel computers, version 5.1. Pacific Northwest National Laboratory, Richland, Washington 99352-0999, USA, http://www.emsl.pnl.gov/docs/nwchem/nwchem.html. [17] R. A. Kendall, E. Apra, D. E. Bernholdt, E. J. Bylaska, M. Dupuis, G. I. Fann, R. J. Harrison, J. Ju, J. A. Nichols, J. Nieplocha, T. P. Straatsma, T. L. Windus, and A. T. Wong. High performance QUANTUM ESPRESSO 32 computational chemistry: An overview of nwchem a distributed parallel application. Comput. Phys. Commun., 128:260–283, 2000. [18] M. W. Schmidt, K. K. Baldridge, J. A. Boatz, S. T. Elbert, M. S. Gordon, J. H. Jensen, S. Koseki, N. Matsunaga, K. A. Nguyen, S. J. Su, T. L. Windus, M. Dupuis, and J. A. Montgomery. General atomic and molecular electronic structure system. J. Comput. Chem., 14:1347–1363, 1993. [19] M. S. Gordon and M. W. Schmidt. Advances in electronic structure theory: Gamess a decade later. in Theory and Applications of Computational Chemistry, the first forty years, C. E. Dykstra, G. Frenking, K. S. Kim, G. E. Scuseria editors, ch. 41, pp 1167-1189, Elsevier, Amsterdam, 2005, http://www.msg.chem.iastate.edu/GAMESS/GAMESS.html. [20] http://www.gnu.org/licenses/. [21] X. Gonze, J.-M. Beuken, R. Caracas, F. Detraux, M. Fuchs, G.-M. Rignanese, L. Sindic, M. Verstraete, G. Zerah, F. Jollet, M. Torrent, A. Roy, M. Mikami, Ph. Ghosez, J.-Y. Raty, and D. C. Allan. First- principle computation of material properties: the abinit software project. Comp. Mater. Sci., 25:478, 2002. http://www.abinit.org. [22] J. VandeVondele, M. Krack, F. Mohamed, M. Parrinello, T. Chassaing, and J. Hutter. Comput. Phys. Commun., 167:103, 2005. http://cp2k.berlios.de. [23] S. R. Bahn and K. W. Jacobsen. An object-oriented scripting interface to a legacy electronic-structure code. Comput. Sci. Eng., 4:56, 2002. http://www.fysik.dtu.dk/campos. [24] J. J. Mortensen, L. B. Hansen, and K. W. Jacobsen. Phys. Rev. B, 71, 2005. https://wiki.fysik.dtu.dk/gpaw. [25] T. Daniel Crawford, C. David Sherrill, Edward F. Valeev, Justin T. Fermann, Rollin A. King, Matthew L. Leininger, Shawn T. Brown, Curtis L. Janssen, Edward T. Seidl, Joseph P. Kenny, and Wesley D. Allen. J. Comput. Chem., 28(9):1610–1616, 2007. http://www.psicode.org. [26] A. A. Mostofi, J. R. Yates, Y.-S. Lee, I. Souza, D. Vanderbilt, and N. Marzari. Wannier90: A tool for obtaining maximally-localised wannier functions. Comput. Phys. Commun., 178:685, 2008. [27] http://qe-forge.org. [28] E. Anderson, Z. Bai, C. Bischof, S. Blackford, J. Demmel, J. Dongarra, J. Du Croz, A. Greenbaum, S. Hammarling, A. McKenney, and D. Sorensen. LAPACK Users’ Guide. Society for Industrial and Applied Mathematics, Philadelphia, PA, third edition, 1999. [29] Matteo Frigo and Steven G. Johnson. The design and implementation of FFTW3. Proceedings of the IEEE, 93(2):216–231, 2005. special issue on "Program Generation, Optimization, and Platform Adaptation". [30] Message Passing Interface Forum. Int. J. Supercomputer Applications, 8 (3/4), 1994. [31] http://en.wikipedia.org/wiki/SourceForge. [32] W. E. Pickett. Comput. Phys. Rep., 9:115, 1989. [33] Ismaila Dabo, Boris Kozinsky, Nicholas E. Singh-Miller, and Nicola Marzari. Phys. Rev. B, 77:115139, 2008. [34] L. Kleinman and D. M. Bylander. Phys. Rev. Lett., 48:1425, 1982. [35] D. R. Hamann, M. Schlüter, and C. Chiang. Phys. Rev. Lett., 43:1494, 1979. [36] D. Vanderbilt. Phys. Rev. B, 41:7892, 1990. [37] P. E. Blöchl. Phys. Rev. B, 50(24):17953, Dec. 1994. [38] J. P. Perdew, J. A. Chevary, S. H. Vosko, K. A. Jackson, D. J. Singh, and C. Fiolhais. Phys. Rev. B, 46:6671, 1992. [39] J. Tao, J. P. Perdew, V. N. Staroverov, and G. E. Scuseria. Phys. Rev. Lett., 91:146401, 2003. [40] J. P. Perdew, M. Ernzerhof, and K. Burke. J. Chem. Phys., 105:9982, 1996. [41] A. D. Becke. J. Chem. Phys., 98:1372, 1993. [42] P. J. Stephens, F. J. Devlin, C. F. Chabalowski, and M. J. Frisch. J. Phys. Chem., 98:11623, 1994. [43] W. Kohn and L. J. Sham. Phys. Rev., 140:A1133, 1965. [44] H. Hellmann. Einführung in die Quantenchemie. Deutliche, 1937. [45] R. P. Feynman. Phys. Rev., 56:340, 1939. [46] O. H. Nielsen and R. M. Martin. Phys. Rev. B, 32:3780, 1985. [47] P. Pyykkö. Chem. Rev., 88:563, 1988. QUANTUM ESPRESSO 35 [140] A. K. Rajagopal and J. Callaway. Phys. Rev. B, 7(5):1912–1919, Mar 1973. [141] N. Troullier and José Luìs Martins. Phys. Rev. B, 43(3):1993–2006, Jan 1991. [142] Andrew M. Rappe, Karin M. Rabe, Efthimios Kaxiras, and J. D. Joannopoulos. Phys. Rev. B, 41(2):1227– 1230, Jan 1990. [143] G. Kresse and J. Hafner. J. Phys.-Condens. Mat., 6:8245, 1994. [144] A. Smogunov, A. Dal Corso, and E. Tosatti. Phys. Rev. B, 70:045417, 2004. [145] A. Dal Corso, A. Smogunov, and E. Tosatti. Phys. Rev. B, 74:045429, 2006. [146] M. Profeta, F. Mauri, and C. J. Pickard. J. Am. Chem. Soc., 125:541, 2003. [147] C. G. van de Walle and P. E. Blöchl. Phys. Rev., B 47:4244, 1993. [148] F. Mauri and S. G. Louie. Phys. Rev. Lett., 76:4246, 1996. [149] F. Mauri, B. Pfrommer, and S. G. Louie. Phys. Rev. Lett., 77:5300, 1996. [150] C. J. Pickard and F. Mauri. Phys. Rev. Lett., 88:086403, 2002. [151] Timo Thonhauser, Davide Ceresoli, Arash Mostofi, Nicola Marzari, Raffaele Resta, and David Vanderbilt. Electrostatics in periodic boundary conditions and real-space corrections. submitted to Phys. Rev. Lett., 2009. http://arxiv.org/abs/0709.4429v1. [152] C. Gougoussis, M. Calandra, A. Seitsonen, and F. Mauri. Phys. Rev. B, in press, 2009. http://arxiv.org/abs/0906.0897. [153] C. Gougoussis, M. Calandra, A. Seitsonen, Ch. Brouder, A. Shukla, and F. Mauri. Phys. Rev. B, 79:045118, 2009. [154] http://www.wannier.org/. [155] P.L. Silvestrelli, N. Marzari, D. Vanderbilt, and M. Parrinello. Solid State Commun., 107:7, 1998. [156] A. Calzolari, I. Souza, N. Marzari, and M. Buongiorno Nardelli. Phys. Rev. B, 69:035108, 2004. [157] Young-Su Lee, M. Buongiorno Nardelli, and Nicola Marzari. Phys. Rev. Lett., 95:076804, 2005. [158] J. R. Yates, X. Wang, D. Vanderbilt, and I. Souza. Phys. Rev. B, 75:195121, 2007. [159] A. Kokalj. Xcrysden-a new program for displaying crystalline structures and electron densities. J. Mol. Graph. Model., 17:176–179, 1999. http://www.xcrysden.org/. [160] William Humphrey, Andrew Dalke, and Klaus Schulten. VMD – Visual Molecular Dynamics. J. Mol. Graph. Model., 14:33–38, 1996. [161] http://www.tcm.phy.cam.ac.uk/ mdt26/casino2.html. [162] D. Korotin, A. V. Kozhevnikov, S. L. Skornyakov, I. Leonov, N. Binggeli, V. I. Anisimov, and G. Trimarchi. Eur. Phys. J. B, 65:91–98, 2008. http://dmft@qe-forge.org. [163] L. Martin-Samos and G. Bussi. Sax: An open source package for electronic-structure and optical- properties calculations in the gw approximation. Comp. Phys. Comm., in press, 2009. http://sax- project.org. [164] http://dp-code.org. [165] http://www.bethe-salpeter.org. [166] A. Kokalj. Computer graphics and graphical user interfaces as tools in simulations of matter at the atomic scale. Comp. Mater. Sci., 28:155, 2003. http://www-k3.ijs.si/kokalj/guib/. [167] P. Giannozzi and C. Cavazzoni. Large-scale computing with quantum-espresso. Nuovo Cimento C, in press, 32, 2009. [168] Juerg Hutter and Alessandro Curioni. Car-parrinello molecular dynamics on massively parallel computers. ChemPhysChem, 6:1788, 2005. [169] L. S. Blackford, J. Choi, A. Cleary, J. Demmel, I. Dhillon, J. Dongarra, S. Hammarling, G. Henry, A. Petitet, K. Stanley, D. Walker, and R. C. Whaley. Scalapack: A portable linear algebra library for distributed memory computers - design issues and performance. SC Conference, 0:5, 1996. [170] Francois Gygi, Erik W. Draeger, Martin Schulz, Bronis R. de Supinski, John A. Gunnels, Vernon Austel, James C. Sexton, Franz Franchetti, Stefan Kral, Christoph W. Ueberhuber, and Juergen Lorenz. IBM J. Res. Dev., 52(1/2):137, 2008. [171] Using OpenMP:Portable Shared Memory Parallel Programming. The MIT Press, 2007. [172] Erich Runge and E. K. U. Gross. Phys. Rev. Lett., 52(12):997–1000, 1984. [173] M. A. L. Marques, C. L. Ullrich, F. Nogueira, A. Rubio, K. Burke, and E. K. U. Gross, editors. Time- QUANTUM ESPRESSO 36 Dependent Density Functional Theory, volume 706 of Lecture notes in Physics. Springer-Verlag, Berlin, Heidelberg, 2006. DOI-10.1007/3-540-35426-3-17. [174] Giovanni Onida, Lucia Reining, and Angel Rubio. Rev. Mod. Phys., 74(2):601–659, 2002. [175] D. Rocca, R. Gebauer, Y. Saad, and S. Baroni. J. Chem. Phys., 128:154105, 2008. [176] P. Umari, Geoffrey Stenuit, and Stefano Baroni. Phys. Rev. B, 79:201104(R), 2009. [177] H.-V. Nguyen and S. de Gironcoli. Phys. Rev. B, 79:205114, 2009. [178] H.-V. Nguyen and S. de Gironcoli. Phys. Rev. B, 79:115105, 2009. [179] H.-V. Nguyen. PhD thesis, SISSA, 2008. http://www.sissa.it/cm/thesis/2008/VietHuyNguyen_PhDthesis.pdf. [180] Andrea Marini, Conor Hogan, Myrta Grüning, and Daniele Varsano. Yambo: an ab initio tool for excited state calculations. Comp. Phys. Commun., in press, 2009. http://www.yambo-code.org. [181] A. Calzolari, I. Souza, N. Marzari, and M. Buongiorno Nardelli. Phys. Rev. B, 69:035108, 2004. http://www.wannier-transport.org. [182] http://qha@qe-forge.org. [183] A. Kokalj, pwtk: a Tcl scripting interface to PWscf, http://pwtk.qe-forge.org/. [184] P. da Silveira, C. R. S. da Silva, and R. M. Wentzcovitch. Comput. Phys. Commun., 178:186, 2008. [185] Cesar R. S. da Silva, P. R. C. da Silveira, B. B. Karki, R. M Wentzcovitch, P. A. Jensen, E. F. Bollig, M. Pierce, G. Erlebacher, and D. A. Yuen. Phys. Earth Planet. Int., 163:321, 2007. Special Issue: Computational Challenges. [186] http://dasilveira.cems.umn.edu:8080/gridsphere/gridsphere, http://www.vlab.msi.umn.edu. [187] R. M. Wentzcovitch, B. B. Karki, M. Cococcioni, and S. de Gironcoli. Phys. Rev. Lett., 92:018501, 2004. [188] D. Raczkowski, A. Canning, and L. W. Wang. Phys. Rev. B, 64:R121101, 2001. [189] T. A. Arias, M. C. Payne, and J. D. Joannopoulos. Phys. Rev. B, 45:1538, 1992. [190] A. Qteish. Phys. Rev. B, 52:14497–14504, 1995. [191] C. Alden Mead. Rev. Mod. Phys., 64:51, 1992. [192] R. di Meo, A. Dal Corso, P. Giannozzi, and S. Cozzini. Calculation of phonon dispersions on the grid using quantum espresso. In Proceedings of the COST School, Trieste, 2009. to be published. [193] F. Gygi and A. Baldereschi. Phys. Rev. B, 34:4405, 1986.
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved