Source-linked AI summary

JDFTx: software for joint density-functional theory

Ravishankar Sundararaman, Kendra Letchworth-Weaver, Kathleen A. Schwarz, Deniz Gunceler, Yalcin Ozhabes, T. A. Arias

arXiv:1708.03621v2cond-mat.mtrl-sciphysics.chem-phphysics.comp-ph

TL;DR

DFT needs new methods to improve accuracy for emerging materials and to connect electronic calculations with larger-scale theories, while liquid systems remain especially challenging. JDFTx addresses this by providing an open-source, modular DFT platform whose algebraic formulation supports electronic DFT, liquid models, rapid method development, and hardware-efficient execution. It has enabled JDFT and solvation-model development and supported applications in electrochemistry, energy conversion, energy storage, and photo-excited carrier dynamics.

  • Problem

    DFT has limited accuracy for some materials and properties, is expensive for large and liquid systems, and requires new methods connecting electronic structure to larger length scales.

  • Method

    JDFTx uses a modular algebraic formulation to combine electronic DFT with classical DFT and continuum liquid models while exposing functionality through extensible, hardware-efficient code.

  • Results

    JDFTx enabled rapid development of JDFT and efficient solvation models and has been applied to solvated and electrochemical systems, including catalysis, energy conversion, and energy storage.

  • Takeaways & Limitations

    JDFTx provides a general-purpose platform for developing and applying multiscale electronic-structure methods across solvated, electrochemical, and photo-excited systems.

Abstract

from arXiv · show

Density-functional theory (DFT) has revolutionized computational prediction of atomic-scale properties from first principles in physics, chemistry and materials science. Continuing development of new methods is necessary for accurate predictions of new classes of materials and properties, and for connecting to nano- and mesoscale properties using coarse-grained theories. JDFTx is a fully-featured open-source electronic DFT software designed specifically to facilitate rapid development of new theories, models and algorithms. Using an algebraic formulation as an abstraction layer, compact C++11 code automatically performs well on diverse hardware including GPUs. This code hosts the development of joint density-functional theory (JDFT) that combines electronic DFT with classical DFT and continuum models of liquids for first-principles calculations of solvated and electrochemical systems. In addition, the modular nature of the code makes it easy to extend and interface with, facilitating the development of multi-scale toolkits that connect to ab initio calculations, e.g. photo-excited carrier dynamics combining electron and phonon calculations with electromagnetic simulations.

1. Motivation and significance

JDFT addresses DFT’s accuracy and scale limitations for complex materials and liquids, but developing such methods in production software is difficult. JDFTx is introduced as a full-featured, developer-friendly platform for rapidly prototyping new electronic-structure and related methods.

  • Motivation and significance: DFT has limited accuracy for some materials and properties and becomes extremely expensive for amorphous materials, liquids, and nanostructures.These limitations motivate continual method development and multiscale approaches.
  • Motivation and significance: Multiscale theories are needed to reach larger length scales while retaining DFT electronic structure where appropriate.Brute-force simulations of systems containing thousands to millions of atoms are not practical.
  • Motivation and significance: Liquid-containing systems such as electrochemical interfaces and solvated biomolecules require sampling thousands of atomic configurations in AIMD simulations.JDFT combines electronic DFT with classical DFT of liquids to compute equilibrium properties of quantum-mechanically described solutes in diverse solvents.
  • Motivation and significance: JDFTx is a general-purpose, full-featured DFT software designed to support rapid prototyping of new electronic-structure and related methods.Its design targets both usability and development speed.
  • Motivation and significance: The paper uses JDFTx to develop new liquid models, variational algorithms, and code for joint density-functional theory.The algebraic formulation separates implementation into physics, algorithm, and hardware layers.

2. Software description

JDFTx couples plane-wave electronic DFT with classical-DFT and continuum descriptions of liquids, while its layered algebraic architecture supports extensible, hardware-efficient implementations. The software provides broad electronic-structure functionality alongside specialized solvation, electrochemical, and multiscale capabilities.

  • Software description: JDFTx is open-source software designed to couple electronic DFT with coarse-grained theories and bridge atomic and system length scales.It uses a plane-wave basis for periodic systems and also applies to molecular systems.
  • Software description: JDFTx models liquids through classical DFT and combines it with electronic DFT or simpler solvation models for liquid environments.This functionality extends standard electronic DFT toward solvated and electrochemical calculations.
  • Software Architecture: The DFT++ algebraic formulation separates physics, algorithms, and computational layers, keeping theory concise while lower layers handle hardware optimization.The same operators support pthreads-based CPU execution and CUDA-based NVIDIA GPU execution.
  • Software Architecture: The codebase contains approximately 60000 lines across 275 source files, with most functionality compiled into the dynamically linked library libjdftx.Lightweight executables support standard calculations, phonons and electron-phonon interactions, and Wannier functions.
  • Software Architecture: JDFTx’s core modules provide data structures, plane-wave grids, Fourier transforms, Coulomb kernels, variational minimization, and self-consistency algorithms.ManagedMemory coordinates CPU-GPU transfers, while Minimize and Pulay provide minimization and mixing functionality.
  • Software Functionalities: JDFTx supports broad electronic-DFT features, including multiple exchange-correlation families, DFT+U, dispersion corrections, and several pseudopotential formats.Its selected-feature set is documented in Table 1 and extended through LibXC.

3. Illustrative Example

The example demonstrates JDFTx input for a constrained, fixed-potential solvated calculation and illustrates its outputs and parallel performance. The calculation models formate on Pt(111) in aqueous NaF using the CANDLE solvation model and grand canonical DFT.

  • Listing 2 models a formate ion on a three-layer Pt(111) slab in a 2×2 supercell with constrained geometry optimization.
  • The calculation uses grand canonical DFT at fixed electron chemical potential µ = −0.16 Eh and the CANDLE model for water with 1M Na+ and F− ions.
  • JDFTx outputs ionic positions, electron density, and fluid bound charge density at every ionic step for visualization.
  • The formate electron density is greatest on oxygen atoms, while fluid bound charge is predominantly positive around the molecule and negatively charged Pt surface.
  • Each K80 GPU delivers approximately 3× the performance of an 8-core Xeon for this problem size, while MPI scaling is almost linear when process counts match the 20-k-point count.

4. Impact

JDFTx serves both developers of new DFT methods and practitioners applying them. Its modular framework has supported solvation, electrochemical, and photo-excited carrier research across diverse applications.

  • JDFTx targets both developers of DFT methods, models, and algorithms and practitioners who use those methods.
  • Its algebraic DFT formulation and C++11 abstraction express physics close to theoretical derivations while supporting modular, efficient code.
  • JDFTx enabled rapid development of JDFT, liquid free-energy functionals, and increasingly accurate linear, nonlinear, and nonlocal solvation models.
  • JDFT and solvation techniques have been applied to batteries, energy-conversion catalysts, supercapacitors, pseudocapacitance, and solid-liquid band alignments.
  • JDFTx also supported Wannier-based tight-binding studies of photo-excited hot-carrier generation, transport, and ultrafast dynamics.

5. Conclusions

The paper presents JDFTx as an open-source plane-wave DFT platform emphasizing solvated and electrochemical calculations, ease of development, and ease of use. Its design supports rapid prototyping and future interfaces for multiscale workflows.

  • JDFTx is a general-purpose open-source plane-wave DFT software with a rich feature set for solvated and electrochemical calculations.
  • In its first five years, JDFTx enabled rapid development of JDFT and a hierarchy of efficient and accurate solvation models.
  • The design combines short, readable code with performance across hardware architectures, supporting rapid prototyping, testing, and optimization of new methods.
  • The libjdftx library enables direct linking by other software and supports future interfaces for electronic structure, observables, electromagnetic simulations, and phase-field methods.

Required Metadata

The paper includes separate tables for code metadata and software metadata.

  • Table 3 is identified as the code metadata table.
  • Table 4 is identified as the software metadata table.
Loading 1708.03621v2…