Flagship Codes

Quantum ESPRESSO (Quantum opEn-Source Package for Research in electronic Structure, Simulation, and Optimisation) is the prime open-source (set of) code(s) for quantum materials modelling using the planewave pseudopotential method; it has been the development platform for such important methodological innovations as Car-Parrinello molecular dynamics and Density-Functional Perturbation Theory. It is released under the GNU GPL. It implements density-functional theory (DFT) in the plane-wave pseudopotential approach, but it also includes more advanced levels of theory: DFT+U, hybrid functionals, various functionals for van der Waals forces, many-body perturbation theory, adiabatic-connection fluctuation-dissipation theory.
Among the various packages composing QUANTUM ESPRESSO, we mention
– PWscf: structural optimisation and molecular dynamics on the electronic ground state, with self-consistent solution of DFT equations;
– CP: Car-Parrinello molecular dynamics;
– PHonon: vibrational and dielectric properties from Density-Functional Perturbation Theory;
– TD-DFPT: spectra from Time-dependent Density-Functional Perturbation Theory;
– EPW: calculation of electron-phonon coefficients in metals;
– PWneb: reaction pathways and transition states with the Nudged Elastic Band method;
– GWL: many-body perturbation theory in the GW approach using ultra-localised Wannier functions and Lanczos chains.

Ref. Stefano Baroni | SISSA (IT) | stefano.baroni@max-centre.it
Ref. Stefano de Gironcoli | SISSA (IT) | stefano.degironcoli@max-centre.eu
Ref. Paolo Giannozzi | CNR (IT) | paolo.giannozzi@max-centre.eu

SIESTA is a density-functional code able to perform efficient electronic structure calculations and ab initio molecular dynamics simulations of molecules and solids. SIESTA’s efficiency stems from the use of strictly localised basis sets and from the implementation of linear-scaling algorithms which can be applied to suitable systems. A very important feature of the code is that its accuracy and cost can be tuned in a wide range, from quick exploratory calculations to highly accurate simulations matching the quality of other approaches, such as plane-wave methods. The possibility of treating large systems with some first-principles electronic-structure methods has opened up new opportunities in many disciplines.
SIESTA incorporates also a subsystem (TranSIESTA) for obtaining the electronic structure under nonequilibrium conditions, as appropriate for electronic transport.

Ref. Pablo Ordejon | ICN2 (ES) | pablo.ordejon@max-centre.eu
Ref. Alberto Garcia | ICMAB (ES) | alberto.garcia@max-centre.eu
Ref. Emilio Artacho | ICN2 (ES) | emilio.artacho@max-centre.eu

YAMBO is a code that implements ground-state as well as excited-state properties in an ab initio context. YAMBO is released within the GPL license and is currently interfaced with two of the mostly used planewaves codes used in the scientific community: QUANTUM ESPRESSO and Abinit. The code implements MBPT, DFT and Non-Equilibrium Green’s Function Theory (NEGF) in order to allow the user to calculate a wealth of physical properties: reliable band gaps, band alignments, defect quasi-particle energies, optical and out–of–equilibrium properties. Among the variety of physical quantities that can be described with YAMBO, we mention:

  • Quasi-particle energies and widths;
  • Temperature dependent electronic and optical properties;
  • Linear properties within the Bethe-Salpeter equation and Time-Dependent DFT;
  • Total Energies within the Adiabatic Connection Fluctuation Dissipation method;
  • Non–linear optical properties within the NEGF;

Advanced post-processing tools to analyse the simulation flow of data. All these properties are ubiquitous for the understanding of the optical and electronic properties of a wealth of materials and, more importantly, they provide valid tools in fields like Pump&Probe techniques where the numerical tools are scarse if not nonexistent. The code is under a constant development and fully documented. YAMBO has a user-friendly command-line interface, flexible I/O procedures, and it is parallelised by using an hybrid MPI plus OpenMP infrastructure. This has allowed YAMBO to run on several tens of thousand of cores.

Ref. Andrea Marini | CNR (IT) | andrea.marini@max-centre.eu
Ref. Davide Sangalli | CNR (IT) | davide.sangalli@max-centre.eu

FLEUR (Full-potential Linearised augmented plane wave in EURope) is a code family for calculating groundstate as well as excited-state properties of solids within the context of density functional theory. A key difference with respect to the other MAX-codes and indeed most other DFT codes lies in the treatment of all electrons on the same footing. Thereby we can also calculate the core states and investigate effects in which these states change. FLEUR is based on the full-potential linearised augmented plane wave method, a well established scheme often considered to provide the most accurate DFT results and used as a reference for other methods. The FLEUR family consists of several codes and modules: a versatile DFT code for the ground-state properties of multicomponent magnetic one-, two- and three-dimensional solids. A focus of the code is on non-collinear magnetism, determination of exchange parameters, spin-orbit related properties topological and Chern insulators, Rashba and Dresselhaus effect, magnetic anisotropies, Dzyaloshinskii-Moriya interaction).
A link to WANNIER90 permits the calculation of intrinsic and extrinsic transverse transport properties (anomalous-, spin- and inverse spin Hall effect, spin orbit torque, anomalous Nernst effect, spin-orbit torque, or topological transport properties such as the quantum spin Hall effect etc.) in linear response theory using the Kubo formula. It includes LDA+U, hybrid-functionals, and OEP-EEX to deal with different correlation aspects. A Green-function version of the code is used to calculate ballistic transport properties through planar junctions. The SPEX code implements many-body perturbation theory (MBPT) for the calculation of the electronic excitation properties of solids. It includes different levels of GW approaches to calculate the electronic self-energy including a relativistic quasiparticle self-consistent GW approach. The code enables the determination of static and frequency dependent Hubbard U parameters by constraint random phase approximation (RPA) and the excitation and lifetime of magnons through the Bethe-Salpeter equation. The experimental KKRnano code, part of the J¨ulich High-Q club88 of highest scaling codes, provides the possibility to utilize current supercomputers to their full extend to perform all-electron calculations for complex magnetic structures. It has demonstrated to scale up to the full BlueGene-Q installed in J¨ulich using all its 458,752 cores in a hybrid multithreaded-MPI parallelisation and is applicable to dense-packed crystals.

Ref. Stefan Bluegel | Juelich (DE) | stefan.bluegel@max-centre.eu
Ref. Daniel Wortmann | Juelich (DE) | daniel.wortmann@max-centre.eu

CP2K is a quantum chemistry and solid state physics software package that can perform atomistic simulations of solid state, liquid, molecular, periodic, material, crystal, and biological systems. CP2K provides a general framework for different modeling methods such as DFT using the mixed Gaussian and plane waves approaches GPW and GAPW. Supported theory levels include DFTB, LDA, GGA, MP2, RPA, semi-empirical methods (AM1, PM3, PM6, RM1, MNDO), and classical force fields (AMBER, CHARMM). CP2K can do simulations of molecular dynamics, metadynamics, Monte Carlo, Ehrenfest dynamics, vibrational analysis, core level spectroscopy, energy minimization, and transition state optimization using NEB or dimer method.
CP2K is written in Fortran 2003 and can be run efficiently in parallel using a combination of multi-threading, MPI, and CUDA.

Ref. Joost VandeVondele | ETHZ (CH) | joost.vandevondele@max-centre.eu
Ref. Juerg Hutter | UZH (CH) | juerg.hutter@max-centre.eu

BIGDFT is an electronic structure pseudopotential code that employs Daubechies wavelets as a computational basis, designed for usage on massively parallel architectures. It features high-precision cubic-scaling
DFT functionalities enabling treatment of molecular, slab-like as well as extended systems, and efficiently supports hardware accelerators such as GPUs since 2009. Also, it features a linear-scaling algorithm that employs
adaptive Support Functions (generalized Wannier orbitals) enabling the treatment of system of many thousand atoms. The code is developed and released as a software suite made of independent, interoperable components, some of which have already been linked and distributed in other DFT codes.
The BigDFT package is used in production for eight years, mainly in the domain of structure prediction calculations. The recent activities of the BigDFT consortium, performed in the context of various EU projects,
have already concentrated some effort in finding solutions for present-day problems for HPC at the petascale level, either from the Developers and Users perspectives. Among the various actions, it is worth to mention,
in particular, that the entire code package has been restructured and redesigned such as to be

  1. Able to perform highly scalable and very accurate Density Functional Theory Calculations in the many thousand atoms regime with linear scaling computational performances [JCP – PCCP];
  2. Distributed as a collection of independent pieces of software, packaged in separated modules, some of which have already been used and linked in third party softwares, with MAX flagship codes QE and SIESTA among them [CheSS – PSolver];
  3. Able to adapt the low-level computational kernels (i.e. wavelet convolutions) to recent (and potentially disruptive) HPC architectures towards kernels Auto-Tuning and Source-To-Source optimization,
    performed via the BOAST software package in connection with EU consortia since the first Mont-Blanc EU project. The primary goal of the BOAST metaprogramming framework is to simplify the optimization of computing kernels for HPC applications. The main idea is to use a high-level language to define an application program interface (API) of computing kernels (subroutines and their related
    arguments), but also to describe the way to optimize it (unrolling, vectorization, parametrization, templating, and tiling). BOAST will then test automatically the many possibilities of optimizations and choose the best one after validation from a reference version. Then BOAST can generate pieces of Fortran, C, Open Computing Language (OpenCL), or CUDA codes, and test them for a specific target architecture.

Ref. ThierryDeutsch | CEA (FR) | thierry.deutsch@max-centre.eu
Luigi Genovese | CEA (FR) | luigi.genovese@max-centre.eu

AIIDA (Automated Interactive Infrastructure and Database for computational science) is a Python materials’ informatics framework to manage, store, share, and disseminate the workload of high-throughput computational efforts, while providing an ecosystem for materials simulations where codes are automatically optimised on the relevant hardware platforms, and complex scientific workflows involving different codes and datasets can be seamlessly implemented and shared. Six active developers of the code are at EPFL (another main developer is at Bosch RTC in Cambridge, MA), and are complemented by two software engineers
supported by the Swiss MARVEL project and by a number of code contributors. AIIDA is designed around the four ADES pillars of materials’ informatics, detailed below. At the low-level, AIIDA takes care of Automation and Data storage for the management and safeguarding of calculations, data and workflows. At the user-level, it provides an advanced and intuitive research Environment for accelerating scientific discoveries,
and Sharing capabilities to enable collaborative research.

Ref. Nicola Marzari | EPFL (CH) | nicola.marzari@max-centre.eu
Ref. Giovanni Pizzi | EPFL (CH) | giovanni.pizzi@max-centre.eu

SIRIUS

SIRIUS library is a collection of C++ classes that abstract away the different building blocks of plane-wave based DFT electronic structure methods. The development of SIRIUS library started within the work package 8 of the PRACE second implementation phase (PRACE-2IP), with the main goal of finding and isolating major performance bottlenecks in the ground-state calculations of the Exciting and Elk codes. During the first MAX phase the functionality of the library has been extended with the support of the pseudopotential method and the API for Quantum ESPRESSO code was proposed. The library is written in C++11 with OpenMP and CUDA programming models and contains about 70K lines of code and documentation text.