What you should know ==================== Probably, you can hardly wait to perform your first DFT+DMFT calculation with the :program:`DFTTools` package. This documentation and user guide should make it as easy as possible to get started quickly. However, it is mutually important to sort out a few prerequisites first. What is :program:`DFTTools`? ---------------------------- :program:`DFTTools` connects the :ref:`TRIQS ` library to realistic materials calculations based on density functional theory (DFT). It allows an efficient implementation of DFT plus dynamical mean-field theory (DMFT) calculations and it supplies tools and methods to construct Wannier functions and to perform the DMFT self-consistency cycle in this basis set. Post-processing tools, such as band-structure plotting or the calculation of transport properties are also implemented. The package comes with a fully charge self-consistent interface to the Wien2k band structure code, as well as a generic interface. We assume that you are already know about DFT and the usage of Wien2k. Have a look at :ref:`DFT+DMFT page ` for a brief introduction on the DFT+DMFT method and on how the theory is reflected in the :ref:`basic structure ` of the :program:`DFTTools` package. Understand the philosophy of :program:`DFTTools` ------------------------------------------------ The purpose of :program:`DFTTools` is to provide the necessary tools required for a DFT+DMFT calculations. Putting those tools together to a working DFT+DMFT implementation is the task of the user. We do not supply an universal script which runs with the click of a button, simply because each material requires a different treatment or different settings. Building your own script offers a great deal of flexibility and customizability. Additionally, the :ref:`DFTTools user guide ` is there to support you during this process. It should go without saying, but the verification of outputs and the inspection of results on their meaningfulness is the responsibility of the user. The :program:`DFTTools` package is a toolbox and **not** a black box! Learn how to use `TRIQS library `_ (and the `CTHYB `_ solver) ----------------------------------------------------------------------------------------------------------------------------- As :program:`DFTTools` is a :ref:`TRIQS ` based application it is beneficial to invest a few hours to become familiar with the :ref:`TRIQS ` basics first. The :ref:`TRIQS tutorial ` covers the most important aspects of :ref:`TRIQS `. We recommend downloading our hands-on training in the form of ipython notebooks from the `tutorials repository on GitHub `_. Tutorials 1 to 6 are on the :ref:`TRIQS ` library, whereas tutorials 7 and 8 are more specific to the usage of the `CTHYB solver `_ hybridization-expansion solver. In general, those tutorials will take at least a full day to finish. Afterwards you can continue with the :ref:`DFTTools user guide `. .. _ac: Analytic Continuation --------------------- Often impurity solvers working on the Matsubra axis are used within the DFT+DMFT framework. However, many :ref:`post-processing tools `, require a self energy on the real-frequency axis, e.g. to calculate the spectral function :math:`A(k,\omega)` or to perform :ref:`transport calculations `. The ill-posed nature of the analytic continuation has lead to a plethora of methods, and conversely, computer codes. :program:`DFTTools` itself does not provide functions to perform analytic continuations. Within the TRIQS environment the following options are available: * Pade: Implemented in the :ref:`TRIQS` library * Stochastic Optimization Method (Mishchenko): `SOM `_ package by Igor Krivenko * Maximum Entropy Method: `TRIQS/maxent `_ package