Skip to content
This repository was archived by the owner on Jun 12, 2026. It is now read-only.

dmftwdft/DMFTwDFT

Repository files navigation

DMFTwDFT

Warning

This repository is deprecated.

This legacy Python 2 version is no longer recommended for new installations. Please use the maintained Python 3 version instead: https://github.com/dmftwdft/DMFTwDFT3

DMFTwDFT is an open-source, user-friendly framework to calculate properties of strongly correlated materials (SCM) using DFT+DMFT (Dynamical Mean Field Theory) with a variety of different DFT codes. Currently supports VASP, Siesta and Quantum Espresso.

Features

Workflow

Installation and usage

Please refer to the documentation.

https://dmftwdft-project.github.io/DMFTwDFT/

Quick Install:

Run setup with the desired bundled compiler profile:

python setup.py {gfortran, intel, macos}

Available setup profiles:

  • gfortran: GNU compilers on Linux-style systems.
  • intel: Intel oneAPI compilers.
  • macos: macOS x86_64 conda/Python 2 environment, including Apple Silicon hosts running the conda environment under Rosetta.

setup.py copies the matching config/Makefile.in.* and sources/*.make.inc template automatically for the selected profile.

Recommended environments:

  • Linux: mamba env create -f environment.yml
  • macOS: mamba env create -f environment.macos.yml

These environment files cover the Python 2 stack plus the key compiled/runtime dependencies we had to fix manually, including the GNU toolchain for weave, libgfortran.so.3, and libxcrypt on Linux.

Notes

For GNU compilers, it is assumed that liblapack.a, libblas.a and GSL libraries are installed in the /usr/local/lib/ directory. If not, modify LALIB and GSLLIB in Makefile.in to point to the correct location. Additionally, set compiler flags in FFLAGSEXTRA.

The macOS profile uses config/Makefile.in.macos and sources/macos.make.inc. It is intended for an osx-64 conda environment with Python 2 and matching x86_64 dependencies. Install the required compiler and libraries into the same conda environment, for example:

mamba install -n dmft -c conda-forge/label/cf202003 gfortran_osx-64 gsl fftw

On Apple Silicon, avoid mixing /opt/homebrew ARM libraries with an osx-64 conda Python environment. Use conda-provided x86_64 libraries for GSL, FFTW, BLAS and LAPACK. Runtime atom_d.py compilation on macOS uses Apple clang/clang++ with the active macOS SDK to avoid incompatibilities between legacy Python 2 weave code and newer SDK headers.

For Intel builds on Linux, the Python environment comes from environment.yml. Only the Fortran/MPI compiler stack is external and should come from your Intel oneAPI module or shell setup.

Developers

Hyowon Park
Aldo Romero
Uthpala Herath
Vijay Singh
Benny Wah
Xingyu Liao

Contributors

Kristjan Haule
Chris Marianetti

How to cite

If you have used DMFTwDFT in your work, please cite:

10.1016/j.cpc.2020.107778

BibTex:

@article{SINGH2021107778,
title = "DMFTwDFT: An open-source code combining Dynamical Mean Field Theory with various density functional theory packages",
journal = "Computer Physics Communications",
volume = "261",
pages = "107778",
year = "2021",
issn = "0010-4655",
doi = "https://doi.org/10.1016/j.cpc.2020.107778",
url = "http://www.sciencedirect.com/science/article/pii/S001046552030388X",
author = "Vijay Singh and Uthpala Herath and Benny Wah and Xingyu Liao and Aldo H. Romero and Hyowon Park",
keywords = "DFT, DMFT, Strongly correlated materials, Python, Condensed matter physics, Many-body physics",
}

Thank you.

Mailing list

Please post your questions on our forum.

https://groups.google.com/d/forum/dmftwdft

Support packages

We acknowledge the use of the following packages:

Uthpala Herath, Pedram Tavadze, Xu He, Eric Bousquet, Sobhit Singh, Francisco Muñoz, and Aldo H. Romero. "PyProcar: A Python library for electronic structure pre/post-processing". Computer Physics Communications 251 (2020): 107080.

[1] Kristjan Haule, Phys. Rev. B 75, 155113 (2007).

Free energy implementation : [2] Kristjan Haule, Turan Birol, Phys. Rev. Lett. 115, 256402 (2015).

  • Wannier90
    Wannier90 as a community code: new features and applications, G. Pizzi et al., J. Phys. Cond. Matt. 32, 165902 (2020)

Note:

Users can download these external programs, as explained in the README file of each supported package folder (see folder DMFTwDFT-master/support-packages). For installation, we suggest users refer to this link: https://dmftwdft-project.github.io/DMFTwDFT/installation.html for more details. OR Users can run the python script "setup.py" which will automatically download and install the internal as well as external programs.

PyProcar is used as a support package to find the wannier window of the correlated orbitals. It's not necessary to be installed for DMFTwDFT. PyChemia is required for the Python 3 version of the code which is still under development. For the Python 2 version this is not required.

Changes

v2.0 June 8, 2026 - Updated code to support modern compute architectures including Intel oneAPI LLVM compilers and MacOS.
v1.2 Jan 13th, 2020 - Fixed bug with exponentially large numbers in UNI_mat.dat for SCF calculations.
v1.1 May 11th, 2020 - Added support for Quantum Espresso through Aiida.
v1.0 April 23, 2020 - Cleaned repository. Defaulted to Python 2.x version.
v0.3 November 25, 2019 - Added DMFT.py and postDMFT.py scripts
v0.2 July 10, 2019 - DMFTwDFT library version
v0.1 July 31, 2018 - Initial release (Command line version)

About

An open-source framework to treat strongly correlated materials using DMFT.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages