mirror of
https://github.com/triqs/dft_tools
synced 2024-12-21 20:03:41 +01:00
[doc] Correct typos in guide
This commit is contained in:
parent
9e1ebfe5e0
commit
f586c98508
@ -10,7 +10,7 @@ A hack solution is as follows:
|
|||||||
1) `x lapw1 -band`
|
1) `x lapw1 -band`
|
||||||
2) edit in2 file: replace 'TOT' with 'QTL', 'TETRA' with 'ROOT'
|
2) edit in2 file: replace 'TOT' with 'QTL', 'TETRA' with 'ROOT'
|
||||||
3) `x lapw2 -almd -band`
|
3) `x lapw2 -almd -band`
|
||||||
4) `dmftproj -band` (add the fermi energy to file, it can be found by running `grep :FER *.scf`)
|
4) `dmftproj -band` (add the Fermi energy to file, it can be found by running `grep :FER *.scf`)
|
||||||
|
|
||||||
How do I plot the output of `spaghettis`?
|
How do I plot the output of `spaghettis`?
|
||||||
-----------------------------------------
|
-----------------------------------------
|
||||||
@ -31,7 +31,7 @@ However, we are working on reading directly the `case.mommat2` file.
|
|||||||
No module named pytriqs.*** error when running a script
|
No module named pytriqs.*** error when running a script
|
||||||
-------------------------------------------------------
|
-------------------------------------------------------
|
||||||
|
|
||||||
Make sure that have propaly build, tested and installed TRIQS and DFTTools
|
Make sure that have properly build, tested and installed TRIQS and DFTTools
|
||||||
using, make, make test and make install. Additionally, you should always
|
using, make, make test and make install. Additionally, you should always
|
||||||
use pytriqs to call your scripts, e.g. pytriqs yourscript.py
|
use pytriqs to call your scripts, e.g. pytriqs yourscript.py
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ Interface with Wien2k
|
|||||||
|
|
||||||
We assume that the user has obtained a self-consistent solution of the
|
We assume that the user has obtained a self-consistent solution of the
|
||||||
Kohn-Sham equations. We further have to require that the user is
|
Kohn-Sham equations. We further have to require that the user is
|
||||||
familiar with the main inout/output files of Wien2k, and how to run
|
familiar with the main in/output files of Wien2k, and how to run
|
||||||
the DFT code.
|
the DFT code.
|
||||||
|
|
||||||
Conversion for the DMFT self-consistency cycle
|
Conversion for the DMFT self-consistency cycle
|
||||||
@ -31,7 +31,7 @@ We note that any other flag for lapw2, such as -c or -so (for
|
|||||||
spin-orbit coupling) has to be added also to this line. This creates
|
spin-orbit coupling) has to be added also to this line. This creates
|
||||||
some files that we need for the Wannier orbital construction.
|
some files that we need for the Wannier orbital construction.
|
||||||
|
|
||||||
The orbital construction itself is done by the fortran program
|
The orbital construction itself is done by the Fortran program
|
||||||
:program:`dmftproj`. For an extensive manual to this program see
|
:program:`dmftproj`. For an extensive manual to this program see
|
||||||
:download:`TutorialDmftproj.pdf <images_scripts/TutorialDmftproj.pdf>`.
|
:download:`TutorialDmftproj.pdf <images_scripts/TutorialDmftproj.pdf>`.
|
||||||
Here we will only describe only the basic steps.
|
Here we will only describe only the basic steps.
|
||||||
@ -79,7 +79,7 @@ following 3 to 5 lines:
|
|||||||
|
|
||||||
These lines have to be repeated for each inequivalent atom.
|
These lines have to be repeated for each inequivalent atom.
|
||||||
|
|
||||||
The last line gives the energy window, relativ to the Fermi energy,
|
The last line gives the energy window, relative to the Fermi energy,
|
||||||
that is used for the projective Wannier functions. Note that, in
|
that is used for the projective Wannier functions. Note that, in
|
||||||
accordance with Wien2k, we give energies in Rydberg units!
|
accordance with Wien2k, we give energies in Rydberg units!
|
||||||
|
|
||||||
@ -207,7 +207,7 @@ The lines of this header define
|
|||||||
2 3. Thiw would mean, 2 irreps (eg and t2g), of dimension 2 and 3,
|
2 3. Thiw would mean, 2 irreps (eg and t2g), of dimension 2 and 3,
|
||||||
resp.
|
resp.
|
||||||
|
|
||||||
After these header lines, the file has to contain the hamiltonian
|
After these header lines, the file has to contain the Hamiltonian
|
||||||
matrix in orbital space. The standard convention is that you give for
|
matrix in orbital space. The standard convention is that you give for
|
||||||
each
|
each
|
||||||
:math:`\mathbf{k}`-point first the matrix of the real part, then the
|
:math:`\mathbf{k}`-point first the matrix of the real part, then the
|
||||||
|
@ -56,10 +56,10 @@ We need also the correlation energy, which we evaluate by the Migdal formula::
|
|||||||
correnerg = 0.5 * (S.G_iw * S.Sigma_iw).total_density()
|
correnerg = 0.5 * (S.G_iw * S.Sigma_iw).total_density()
|
||||||
|
|
||||||
Other ways of calculating the correlation energy are possible, for
|
Other ways of calculating the correlation energy are possible, for
|
||||||
instance a direct measurment of the expectation value of the
|
instance a direct measurement of the expectation value of the
|
||||||
interacting hamiltonian. However, the Migdal formula works always,
|
interacting Hamiltonian. However, the Migdal formula works always,
|
||||||
independent of the solver that is used to solve the impurity problem.
|
independent of the solver that is used to solve the impurity problem.
|
||||||
From this value, we substract the double counting energy::
|
From this value, we subtract the double counting energy::
|
||||||
|
|
||||||
correnerg -= SK.dc_energ[0]
|
correnerg -= SK.dc_energ[0]
|
||||||
|
|
||||||
@ -104,13 +104,13 @@ number of nodes to be used:
|
|||||||
|
|
||||||
In that case, you will run on 64 computing cores. As standard setting,
|
In that case, you will run on 64 computing cores. As standard setting,
|
||||||
we use `mpirun` as the proper MPI execution statement. If you happen
|
we use `mpirun` as the proper MPI execution statement. If you happen
|
||||||
to have a differnet, non-standard MPI setup, you have to give the
|
to have a different, non-standard MPI setup, you have to give the
|
||||||
proper MPI execution statement, in the `run_lapw` script (see the
|
proper MPI execution statement, in the `run_lapw` script (see the
|
||||||
corresponding :program:`Wien2k` documentation).
|
corresponding :program:`Wien2k` documentation).
|
||||||
|
|
||||||
In many cases it is advisable to start from a converged one-shot
|
In many cases it is advisable to start from a converged one-shot
|
||||||
calculation. For practical purposes, you keep the number of DMFT loops
|
calculation. For practical purposes, you keep the number of DMFT loops
|
||||||
within one DFT cycle low, or even to `loops=1`. If you encouter
|
within one DFT cycle low, or even to `loops=1`. If you encounter
|
||||||
unstable convergence, you have to adjust the parameters such as
|
unstable convergence, you have to adjust the parameters such as
|
||||||
the number of DMFT loops, or some mixing of the self energy to improve
|
the number of DMFT loops, or some mixing of the self energy to improve
|
||||||
the convergence.
|
the convergence.
|
||||||
|
@ -107,7 +107,7 @@ execution. For the convenience of the user, we provide also two
|
|||||||
working python scripts in this documentation. One for a calculation
|
working python scripts in this documentation. One for a calculation
|
||||||
using Kanamori definitions (:download:`dft_dmft_cthyb.py
|
using Kanamori definitions (:download:`dft_dmft_cthyb.py
|
||||||
<images_scripts/dft_dmft_cthyb.py>`) and one with a
|
<images_scripts/dft_dmft_cthyb.py>`) and one with a
|
||||||
rotational-invariant Slater interaction hamiltonian (:download:`dft_dmft_cthyb_slater.py
|
rotational-invariant Slater interaction Hamiltonian (:download:`dft_dmft_cthyb_slater.py
|
||||||
<images_scripts/dft_dmft_cthyb.py>`). The user has to adapt these
|
<images_scripts/dft_dmft_cthyb.py>`). The user has to adapt these
|
||||||
scripts to his own needs.
|
scripts to his own needs.
|
||||||
|
|
||||||
@ -165,7 +165,7 @@ from scratch::
|
|||||||
previous_present = mpi.bcast(previous_present)
|
previous_present = mpi.bcast(previous_present)
|
||||||
|
|
||||||
|
|
||||||
You can see in this code snipet, that all results of this calculation
|
You can see in this code snippet, that all results of this calculation
|
||||||
will be stored in a separate subgroup in the hdf5 file, called
|
will be stored in a separate subgroup in the hdf5 file, called
|
||||||
`dmft_output`. Removing this subgroup allows you to reset your
|
`dmft_output`. Removing this subgroup allows you to reset your
|
||||||
calculation to the starting point easily.
|
calculation to the starting point easily.
|
||||||
@ -178,7 +178,7 @@ The next step is to initialise the :class:`Solver <pytriqs.applications.impurit
|
|||||||
of two steps
|
of two steps
|
||||||
|
|
||||||
#. Calculating the multi-band interaction matrix, and setting up the
|
#. Calculating the multi-band interaction matrix, and setting up the
|
||||||
interaction hamiltonian
|
interaction Hamiltonian
|
||||||
#. Setting up the solver class
|
#. Setting up the solver class
|
||||||
|
|
||||||
The first step is done using methods of
|
The first step is done using methods of
|
||||||
@ -199,13 +199,13 @@ other choices (Slater interaction matrix for instance), and other
|
|||||||
parameters, we refer to the reference manual
|
parameters, we refer to the reference manual
|
||||||
of the :ref:`TRIQS <triqslibs:welcome>` library.
|
of the :ref:`TRIQS <triqslibs:welcome>` library.
|
||||||
|
|
||||||
Next, we construct the hamiltonian and the solver::
|
Next, we construct the Hamiltonian and the solver::
|
||||||
|
|
||||||
h_int = h_int_density(spin_names, orb_names, map_operator_structure=SK.sumk_to_solver[0], U=Umat, Uprime=Upmat)
|
h_int = h_int_density(spin_names, orb_names, map_operator_structure=SK.sumk_to_solver[0], U=Umat, Uprime=Upmat)
|
||||||
S = Solver(beta=beta, gf_struct=gf_struct)
|
S = Solver(beta=beta, gf_struct=gf_struct)
|
||||||
|
|
||||||
As you see, we take only density-density interactions into
|
As you see, we take only density-density interactions into
|
||||||
account. Other choices for the hamiltonian are
|
account. Other choices for the Hamiltonian are
|
||||||
|
|
||||||
* h_int_kanamori
|
* h_int_kanamori
|
||||||
* h_int_slater
|
* h_int_slater
|
||||||
|
@ -73,7 +73,7 @@ This program produces the following files:
|
|||||||
|
|
||||||
* :file:`Ce-gamma.ctqmcout` and :file:`Ce-gamma.symqmc` containing projector operators and symmetry operations for orthonormalized Wannier orbitals, respectively.
|
* :file:`Ce-gamma.ctqmcout` and :file:`Ce-gamma.symqmc` containing projector operators and symmetry operations for orthonormalized Wannier orbitals, respectively.
|
||||||
* :file:`Ce-gamma.parproj` and :file:`Ce-gamma.sympar` containing projector operators and symmetry operations for uncorrelated states, respectively. These files are needed for projected density-of-states or spectral-function calculations.
|
* :file:`Ce-gamma.parproj` and :file:`Ce-gamma.sympar` containing projector operators and symmetry operations for uncorrelated states, respectively. These files are needed for projected density-of-states or spectral-function calculations.
|
||||||
* :file:`Ce-gamma.oubwin` needed for the charge desity recalculation in the case of fully self-consistent DFT+DMFT run (see below).
|
* :file:`Ce-gamma.oubwin` needed for the charge density recalculation in the case of fully self-consistent DFT+DMFT run (see below).
|
||||||
|
|
||||||
Now we have all necessary input from :program:`Wien2k` for running DMFT calculations.
|
Now we have all necessary input from :program:`Wien2k` for running DMFT calculations.
|
||||||
|
|
||||||
@ -101,9 +101,9 @@ The Hubbard-I initialization `Solver` has also optional parameters one may use:
|
|||||||
|
|
||||||
* `n_msb`: the number of Matsubara frequencies used. The default is `n_msb=1025`.
|
* `n_msb`: the number of Matsubara frequencies used. The default is `n_msb=1025`.
|
||||||
* `use_spin_orbit`: if set 'True' the solver is run with spin-orbit coupling included. To perform actual DFT+DMFT calculations with spin-orbit one should also run :program:`Wien2k` and :program:`dmftproj` in spin-polarized mode and with spin-orbit included. By default, `use_spin_orbit=False`.
|
* `use_spin_orbit`: if set 'True' the solver is run with spin-orbit coupling included. To perform actual DFT+DMFT calculations with spin-orbit one should also run :program:`Wien2k` and :program:`dmftproj` in spin-polarized mode and with spin-orbit included. By default, `use_spin_orbit=False`.
|
||||||
* `Nmoments`: the number of moments used to describe high-ferquency tails of the Hubbard-I Green's function and self-energy. By default `Nmoments = 5`
|
* `Nmoments`: the number of moments used to describe high-frequency tails of the Hubbard-I Green's function and self-energy. By default `Nmoments = 5`
|
||||||
|
|
||||||
The `Solver.solve(U_int, J_hund)` statement has two necessary parameters, the Hubbard U parameter `U_int` and Hund's rule coupling `J_hund`. Notice that the solver constructs the full 4-index `U`-matrix by default, and the `U_int` parameter is in fact the Slatter `F0` integral. Other optional parameters are:
|
The `Solver.solve(U_int, J_hund)` statement has two necessary parameters, the Hubbard U parameter `U_int` and Hund's rule coupling `J_hund`. Notice that the solver constructs the full 4-index `U`-matrix by default, and the `U_int` parameter is in fact the Slater `F0` integral. Other optional parameters are:
|
||||||
|
|
||||||
* `T`: matrix that transforms the interaction matrix from complex spherical harmonics to a symmetry adapted basis. By default, the complex spherical harmonics basis is used and `T=None`.
|
* `T`: matrix that transforms the interaction matrix from complex spherical harmonics to a symmetry adapted basis. By default, the complex spherical harmonics basis is used and `T=None`.
|
||||||
* `verbosity`: tunes output from the solver. If `verbosity=0` only basic information is printed, if `verbosity=1` the ground state atomic occupancy and its energy are printed, if `verbosity=2` additional information is printed for all occupancies that were diagonalized. By default, `verbosity=0`.
|
* `verbosity`: tunes output from the solver. If `verbosity=0` only basic information is printed, if `verbosity=1` the ground state atomic occupancy and its energy are printed, if `verbosity=2` additional information is printed for all occupancies that were diagonalized. By default, `verbosity=0`.
|
||||||
|
Loading…
Reference in New Issue
Block a user