Changelog

Version 4.0.1

ModEST version 4.0.1 is a patch release that pins the c2py build dependency to the 0.9.x release branch and fixes several documentation issues. c2py is fetched at build time and its Python type registry is only compatible between modules built from the same revision, so tracking a moving branch could leave a fresh ModEST build incompatible with the released triqs 4.0.x.

We thank all contributors: Thomas Hahn, Alexander Hampel, Nils Wentzell

Find below an itemized list of changes in this release.

deps

  • Pin c2py to the 0.9.x release branch for the 4.0.x release

doc

  • Add a Zenodo DOI badge to the README

  • Fix the documentation website URLs to not use the triqs_ prefix

  • Drop 3.3.x from the documentation version switcher, as there is no 3.3.x release branch

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