Packaged Versions of DFTTools

A Docker image including the latest version of DFTTools is available here. For more information, please see the page on TRIQS Docker.

We further provide a Debian package for the Ubuntu LTS Versions 16.04 (xenial) and 18.04 (bionic), which can be installed by following the steps outlined here, and the subsequent command:

sudo apt-get install -y triqs_dft_tools

Compiling DFTTools from source

Prerequisites

  1. The TRIQS toolbox. In the following, we will suppose that it is installed in the path_to_triqs directory.
  2. Likely, you will also need at least one impurity solver, e.g. the CTHYB solver.

Installation steps

  1. Download the sources from github:

    $ git clone https://github.com/TRIQS/dft_tools.git src
    
  2. Create an empty build directory where you will compile the code:

    $ mkdir dft_tools.build && cd dft_tools.build
    
  3. Make sure that you have added the TRIQS and Cpp2Py installation to your environment variables:

    $ source path_to_triqs/share/triqsvarsh.sh
    
  4. Compile the code, run the tests and install the application:

    $ make
    $ make test
    $ make install
    

Installation steps for the use with WIEN2K version 14.2 and older

Warning

The following steps are only necessary if you use a Wien2k version 14.2 and older. For newer versions (15.1 onwards), these things have been included already in the Wien2k package. There are no run_triqs and runsp_triqs scripts any more, since their functionality has been included in the Wien2k run scripts.

You need to take this last step manually since the Wien2k installation is not standard on all machines. After the above installation several files will be installed into:

path_to_TRIQS_install_directory/share/triqs/Wien2k_SRC_files/SRC_templates

These files are:

  • case.cf_f_mm2 and case.cf_p_cubic containing matrices for the complex->cubic transformation of the local angular basis
  • case.indmftpr is a template for the input file needed by the dmftproj program. This program constructs a set of localized orbitals representing correlated states.

These files then have to be copied manually to path_to_Wien2k/SRC_templates, where path_to_Wien2k is the path to the Wien2K main directory.

When building the Wien2k extension module, the dmftproj is compiled and installed it into path_to_triqs/bin.

In addition, path_to_Wien2k/SRC_templates also contains run_triqs and runsp_triqs scripts for running Wien2k+DMFT fully self-consistent calculations. These files should be copied to path_to_Wien2k, and set as executables by running:

$ chmod +x run*_triqs

You will also need to insert manually a correct call of python into these scripts using an appropriate for your system MPI wrapper (mpirun, mpprun, etc.), if needed.

Finally, you will have to change the calls to python_with_DMFT to your python installation in the Wien2k path_to_Wien2k/run* files.

Version compatibility

Be careful that the version of the TRIQS library and of the DFTTools must be compatible (more information on the TRIQS website. If you want to use a version of the DFTTools that is not the latest one, go into the directory with the sources and look at all available versions:

$ cd src && git tag

Checkout the version of the code that you want, for instance:

$ git co 1.2

Then follow the steps 2 to 5 described above to compile the code.

Custom CMake options

Functionality of dft_tools can be tweaked using extra compile-time options passed to CMake:

cmake -DOPTION1=value1 -DOPTION2=value2 ... ../dft_tools.src
Options Syntax
Disable testing (not recommended) -DBuild_Tests=OFF
Build the documentation locally -DBuild_Documentation=ON
Check test coverage when testing (run make coverage to show the results; requires the python coverage package) -DTEST_COVERAGE=ON