3
0
mirror of https://github.com/triqs/dft_tools synced 2024-12-21 11:53:41 +01:00

Added documentation

Added documentation on the converter input file.
Added a drafts of the documentation on charge self-consistency.
This commit is contained in:
Oleg Peil 2017-01-27 11:39:02 +01:00
parent 776e0a31d1
commit d76f2d381a
3 changed files with 48 additions and 5 deletions

View File

@ -184,14 +184,19 @@ steps, including the conversion.
Interface with VASP
---------------------
.. warning::
The VASP interface is in the alpha-version and the VASP part of it is not
yet publicly released. The documentation may, thus, be subject to changes
before the final release.
The interface with VASP relies on new options introduced since
version 5.4.x. The output of raw (non-normalized) projectors is
controlled by an INCAR option LOCPROJ whose complete syntax is described in
VASP documentaion.
The definition of a projector set starts with specifying which sites
and which local states we are going to projecto onto.
This information is provided using option LOCPROJ
and which local states we are going to project onto.
This information is provided by option LOCPROJ
| `LOCPROJ = <sites> : <shells> : <projector type>`

View File

@ -1,8 +1,14 @@
.. _full_charge_selfcons:
Full charge self consistency
Full charge self-consistency
============================
In order to do charge self-consistent calculations, we have to tell the band structure program about the
changes in the charge density due to correlation effects. The feedback of the charge density is generally
program-dependent and the procedure for running charge self-consistent calculations has to be adopted
accordingly for a given band structure program. Below we describe two implementations based on Wien2k
and VASP codes.
Wien2k + dmftproj
-----------------
@ -14,8 +20,7 @@ Wien2k + dmftproj
construct the Wannier functions. For this step, see either sections
:ref:`conversion`, or the extensive :download:`dmftproj manual<images_scripts/TutorialDmftproj.pdf>`.
In order to do charge self-consistent calculations, we have to tell the band structure program about the
changes in the charge density due to correlation effects. In the following, we discuss how to use the
In the following, we discuss how to use the
:ref:`TRIQS <triqslibs:welcome>` tools in combination with the :program:`Wien2k` program.
We can use the DMFT script as introduced in section :ref:`singleshot`,
@ -118,6 +123,26 @@ the convergence.
In the section :ref:`DFTDMFTtutorial` we will see in a detailed
example how such a self-consistent calculation is performed from scratch.
VASP + PLOVasp
--------------
.. warning::
This is a preliminary documentation valid for the alpha-version of the interface.
Modifications to the implementation might be introduced before the final release.
Unlike Wien2k implementation the charge self-consistent DMFT cycle
in the framework of PLOVasp interface is controlled by an external script.
Because of the specific way the DFT self-consistency is implemented in VASP
the latter has to run parallel to the DMFT script, with the synchronisation being
ensured by a lock file. PLOVasp interface provides a shell-script :program:`vasp_dmft.sh`
which takes care of the process management. The user must, however, specify a path
to VASP code and provide the DMFT Python-script.
The user-provided script is almost the same as for Wien2k charge self-consistent
calculations with the main difference that its functionality (apart from
the lines importing other modules) should be placed inside a function `dmft_cycle()`
which will be called every DMFT cycle. Another difference is the way
function `calc_density_correction()` works.
Other DFT codes
---------------

View File

@ -139,3 +139,16 @@ Optional group parameters:
File of transformation matrices
"""""""""""""""""""""""""""""""
.. warning::
The description below applies only to collinear cases (i.e. without spin-orbit
coupling). In this case the matrices are spin-independent.
The file specified by option `TRANSFILE` contains transformation matrices
for each ion. Each line must contain a series of floats whose number is either equal to
the number of orbitals :math:`N_{orb}` (in this case the transformation matrices
are assumed to be real) or to :math:`2 N_{orb}` (for the complex transformation matrices).
The number of lines :math:`N` must be a multiple of the number of ions :math:`N_{ion}`
and the ratio :math:`N / N_{ion}`, then, gives the dimension of the transformed
orbital space. The lines with floats can be separated by any number of empty or
comment lines which are ignored.