open access publication

Article, 2024

GPAW: An open Python package for electronic structure calculations

The Journal of Chemical Physics, ISSN 1089-7690, 0021-9606, Volume 160, 9, Page 092503, 10.1063/5.0182685

Contributors

Mortensen, Jens Jørgen 0000-0001-5090-6706 (Corresponding author) [1] Larsen, Ask Hjorth 0000-0001-5267-6852 [1] Kuisma, Mikael Juhani 0000-0001-8323-3405 [1] Ivanov, Aleksei V 0000-0001-7403-3508 [2] Taghizadeh, Alireza 0000-0003-0876-9538 [1] Peterson, Andrew [3] Haldar, Anubhab 0000-0002-2308-7415 [4] Dohn, Asmus Ougaard 0000-0002-5172-7168 [1] Schäfer, Christian 0000-0002-8557-733X [5] Jónsson, Elvar Örn 0000-0001-6273-1237 [6] Hermes, Eric D. [7] Nilsson, Fredrik Andreas 0000-0002-0163-3024 [1] Kastlunger, Georg 0000-0002-3767-8734 [1] Levi, Gianluca 0000-0002-4542-0653 [6] Jónsson, Hannes 0000-0001-8285-5421 [6] Häkkinen, Hannu J 0000-0002-8558-5436 [8] Fojt, Jakub 0000-0002-8372-3153 [5] Kangsabanik, Jiban 0000-0003-4900-016X [1] Sødequist, Joachim 0000-0001-7767-0633 [1] Lehtomäki, Jouko [9] Heske, Julian 0000-0001-6503-9967 [1] Enkovaara, Jussi [10] Winther, Kirsten Trøstrup 0000-0003-1254-1165 [11] Dułak, Marcin [1] Melander, Marko M 0000-0001-7111-1603 [8] Ovesen, Martin 0009-0008-6950-510X [1] Louhivuori, Martti J 0009-0009-2632-8243 [10] Walter, Michael 0000-0001-6679-2491 [12] Gjerding, Morten Niklas 0000-0002-5256-660X [1] Lopez-Acevedo, Olga 0000-0003-4489-6841 [13] Erhart, Paul 0000-0002-2516-6061 [5] Warmbier, Robert 0000-0001-8508-4095 [14] Würdemann, Rolf [12] Kaappa, Sami 0000-0001-6989-6077 [15] Latini, Simone [1] Boland, Tara Maria [1] Bligaard, Thomas 0000-0003-0386-0201 [1] Skovhus, Thorbjørn 0000-0001-5215-6419 [1] Susi, Toma 0000-0003-2513-573X [16] Maxson, Tristan 0000-0002-7668-8986 [17] Rossi, Tuomas [10] Chen, Xi [18] Schmerwitz, Yorick Leonard Adrian 0000-0001-6277-0359 [6] Schiøtz, Jakob 0000-0002-0670-8013 [1] Olsen, Thomas 0000-0001-6256-9284 [1] Jacobsen, Karsten Wedel 0000-0002-1121-2979 [1] Thygesen, Kristian Sommer 0000-0001-5197-214X [1]

Affiliations

  1. [1] Technical University of Denmark
  2. [NORA names: DTU Technical University of Denmark; University; Denmark; Europe, EU; Nordic; OECD];
  3. [2] Riverlane (United Kingdom)
  4. [NORA names: United Kingdom; Europe, Non-EU; OECD];
  5. [3] Brown University
  6. [NORA names: United States; America, North; OECD];
  7. [4] Boston University
  8. [NORA names: United States; America, North; OECD];
  9. [5] Chalmers University of Technology
  10. [NORA names: Sweden; Europe, EU; Nordic; OECD];

Abstract

We review the GPAW open-source Python package for electronic structure calculations. GPAW is based on the projector-augmented wave method and can solve the self-consistent density functional theory (DFT) equations using three different wave-function representations, namely real-space grids, plane waves, and numerical atomic orbitals. The three representations are complementary and mutually independent and can be connected by transformations via the real-space grid. This multi-basis feature renders GPAW highly versatile and unique among similar codes. By virtue of its modular structure, the GPAW code constitutes an ideal platform for the implementation of new features and methodologies. Moreover, it is well integrated with the Atomic Simulation Environment (ASE), providing a flexible and dynamic user interface. In addition to ground-state DFT calculations, GPAW supports many-body GW band structures, optical excitations from the Bethe-Salpeter Equation, variational calculations of excited states in molecules and solids via direct optimization, and real-time propagation of the Kohn-Sham equations within time-dependent DFT. A range of more advanced methods to describe magnetic excitations and non-collinear magnetism in solids are also now available. In addition, GPAW can calculate non-linear optical tensors of solids, charged crystal point defects, and much more. Recently, support for graphics processing unit (GPU) acceleration has been achieved with minor modifications to the GPAW code thanks to the CuPy library. We end the review with an outlook, describing some future plans for GPAW.

Keywords

Atomic Simulation Environment, Bethe-Salpeter, Bethe-Salpeter equation, CuPy, DFT calculations, GPAW, GPAW code, GW band structure, Kohn-Sham, Kohn-Sham equations, Python package, acceleration, advanced methods, atomic orbitals, atoms, band structure, calculation of excited states, calculations, code, code thanks, crystal point defects, defects, density functional theory, dynamic user interface, electronic structure calculations, environment, equations, excitation, excited states, features, functional theory, graphics, graphics processing units, grid, ground-state DFT calculations, ideal platform, implementation, interface, library, magnetic excitations, magnetization, method, methodology, modification, modular structure, molecules, non-collinear magnetism, numerical atomic orbitals, open-source python package, optical excitation, optimization, orbit, outlook, package, plane, plane wave, planning, platform, point defects, processing unit, projector-augmented wave method, propagation, real-space grid, real-time propagation, representation, review, self-consistent density functional theory, simulation environment, solids, state, structure, structure calculations, thanks, theory, transformation, units, user interface, variational calculations, wave, wave method, wave-function representation

Funders

  • Danish Agency for Science and Higher Education
  • European Research Council
  • Danish National Research Foundation
  • Knut and Alice Wallenberg Foundation
  • Swedish Research Council
  • Academy of Finland
  • United States Army Corps of Engineers
  • The Icelandic Centre for Research
  • Interface (United States)
  • European Commission
  • The Velux Foundations
  • Office of Basic Energy Sciences

Data Provider: Digital Science