This program allows to perform DFT+DMFT ''one-shot'' and CSC calculations from h5 archives, VASP, ro Quantum Espresso for multiband systems using the TRIQS package, in combination with various impurity solvers and SumkDFT from DFT-tools.
Runs with triqs 3.x.x
Copyright (C) 2021: A. Hampel, M. Merkel, and S. Beck (see LICENSE.txt for details)
- bin/solid_dmft: main file that runs the DMFT calculation and starts a CSC flow
- main.py: main function that invokes
csc_flow_control
or a one shot calculation directly by invokingdmft_cycle
on a given h5 archives - read_config.py: contains the functions to read the dmft config file. Take a
look in
read_config_doc.md
for a detailed list of parameters - dmft_cycle.py: contains the
dmft_cycle
function that run a predefined number of DMFT iterations - csc_flow.py: contains the
csc_flow_control
function to steer the CSC calculation and call then ones per DFT+DMFT cycle thedmft_cycle
function - /dmft_tools
- convergence.py: contains functions to calculate convergence properties and
defining definitions for Gf differences. Results will be stored in a dictionary:
convergence_obs
- formatter.py:
- interaction_hamiltonian.py:
- legendre_filter.py:
- manipulate_chemical_potential.py:
- observables.py: contains all functions necessary to calculate and write the
observables during the run, which are stored in a general dictionary:
observables
- solver.py:
- convergence.py: contains functions to calculate convergence properties and
defining definitions for Gf differences. Results will be stored in a dictionary:
- /dft_managers.py
- vasp_manager.py: contains all functions to communicate with vasp, which in a CSC calculation in running the whole time (in the background, if not needed)
- qe_manager.py: contains all functions to start quantum espresso
- /util: non-essential scripts that are independent of the rest of the code
- /postprocessing: different scripts to perform postprocessing steps like analytical continuations with triqs's MaxEnt
To start take a look in the example
directory. There one finds several
examples to run. Best start with the svo-one-shot example. The
dmft_config.ini
file contains the configuration for the DMFT run, which is
explained in the read_config method in the main script. The svo.h5
is the DMFT
input data, which is obtained from projection on localized Wannier functions
(see folder svo-one-shot/converter
).
Furthermore, there is a read_config_doc.md
file containing the docstrings from
the main script in a readable format. If one wishes to do CSC calculations the
docker container must contain also a installed VASP version >5.4.4 that
understands the ICHARG=5 flag.
To test triqs, you can use the official image from https://hub.docker.com/r/flatironinstitute/triqs/.
For a full installation including Vasp run our own Docker image (see folder /docker
).