KRONOS

Research-grade plane-wave DFT engine in C++20 — ground-state energies, forces, and band structures for crystalline systems.

Stack
C++ · CUDA
Status
active
Source
https://github.com/kdpisda/kronos

Kohn-Residual Optimized Numerics Over Silicon — an ab initio plane-wave Density Functional Theory engine. It computes ground-state total energies, electronic densities, Kohn-Sham eigenvalues, and ionic forces for periodic crystalline systems, driven by strictly schema-validated YAML inputs (scf, relax, bands, dos).

Physics and numerics

  • Plane-wave basis with configurable cutoff (10–500 Ry), norm-conserving UPF v2 pseudopotentials
  • LDA (Perdew–Zunger) and spin-polarized LSDA built in; PBE/PBEsol GGA via libxc
  • Davidson eigensolver with Pulay/DIIS density mixing
  • Monkhorst–Pack k-point sampling, reduced to the irreducible Brillouin zone with spglib space-group symmetry
  • Ewald summation for ion–ion interactions; Hellmann–Feynman forces driving BFGS geometry optimization
  • Band-structure and density-of-states post-processing

Engineering

C++20 with a CMake build; FFTW3, BLAS/LAPACK, and yaml-cpp as the core dependencies, with HDF5, MPI, and libxc optional. A GPU abstraction layer targets CUDA and HIP, plus an fp32-only Apple Metal research tier — Metal has no double precision, so it stays opt-in and is never used for validation-grade runs. Results ship as JSON summaries and atomically written HDF5 binaries; logs are structured JSON. The test suite runs 298+ GoogleTest cases, including physics invariants, convergence studies, and finite-difference force checks.

Validation

Gamma-only silicon total energy agrees with Quantum ESPRESSO to 10 µRy (~0.07 meV/atom), and analytic forces match finite differences to five significant figures — checked across seven material types, including spin-polarized BCC iron.

cmake -B build -S . && cmake --build build -j
./build/kronos examples/si_bulk.yaml

Builds from source (GPL-3.0); docs live at kdpisda.github.io/kronos.