Changelog

Version 4.0.0

This is the first public release of ModEST, the Modular Electronic Structure Toolkit. ModEST is the electronic-structure extension pack to TRIQS, providing the building blocks for generic quantum-embedding (DMFT and beyond) calculations in connection with electronic-structure methods such as DFT and many-body perturbation theory.

This release requires a TRIQS installation of the same major and minor version (4.0) and is built on the latest app4triqs skeleton, with Python bindings generated by the clair + c2py framework.

We thank all contributors: Jennifer Coulter, Thomas Hahn, Alexander Hampel, Harrison LaBollita, Jae-Mo Lihm, Henri Menke, Olivier Parcollet, Dylan Simon, Nils Wentzell

The main features of this release are:

One-body elements and tight-binding

  • one_body_elements (OBE) types describing the one-body part of an embedding problem, both on a fixed k-grid and as a tight-binding model (obe_tb)

  • Adaptive Brillouin-zone integration for tight-binding models, with a user-specified target accuracy

  • Construction of obe_tb directly from a tb_hamiltonian, and from GW input

  • MPI broadcast and equality operators for the one-body-element types

Embedding

  • embedding class describing the correlated subspace and its mapping to impurities, with embed / extract operations dispatched on array rank

  • Support for constructing a two-particle embedding from a one-particle one, and for embedding/extraction of CoQui-type (GW+EDMFT) objects

  • split_block, make_embedding (incl. from HDF5 and atomic decomposition), spinless embeddings, and rotation of embedded self-energies for sign-problem optimization

  • Automatic detection of unconnected impurities and degenerate-block analysis

Local Green’s function and charge self-consistency

  • Local Green’s function gloc with a Woodbury-based inversion that scales linearly rather than cubically in the number of bands

  • charge_density_correction for charge self-consistent DFT+DMFT

  • Hybrid OpenMP/MPI parallelism in the density routines

Double counting and interaction Hamiltonians

  • dc_solver supporting spin-polarized and non-polarized double counting

  • Interaction-Hamiltonian factories (hamiltonians), including density-density interactions

DFT interfaces

  • Generic DFT driver and DFT-code-specific support (VASP, Quantum ESPRESSO, Wien2k), organized under dft_tools/

  • Loaders for HkConverter and GW input

Post-processing and I/O

  • Spectral-function and Green’s-function post-processing utilities

  • HDF5 checkpointing of calculations

  • symmetrize for block-matrix and Green’s-function types, and exposure of ibz_symmetry_ops to Python

Python bindings and documentation

  • Python bindings split into per-component submodules, generated with clair + c2py and compiled with hidden symbol visibility

  • Documentation built with Doxygen and Sphinx, including a charge self-consistent VASP+DMFT tutorial for SrVO3 and theory notes

Build, install and CI

  • Dependencies managed via CPM

  • Optional Git LFS test data (Enable_LFS_Tests) for large multi-orbital tests

  • GitHub Actions and TRIQS Jenkins CI for Linux (clang/gcc) and macOS