mirror of
https://github.com/triqs/dft_tools
synced 2024-12-21 11:53:41 +01:00
small changes in doc
This commit is contained in:
parent
243c40899e
commit
17ab0227d1
@ -142,15 +142,15 @@ where `-qdmft` flag turns on LDA+DMFT calculations with :program:`Wien2k`. We us
|
||||
After calculations are done we may check the value of correlational ('Hubbard') energy correction to the total energy::
|
||||
|
||||
>grep HUBBARD Ce-gamma.scf|tail -n 1
|
||||
HUBBARD ENERGY(included in SUM OF EIGENVALUES): -0.012875
|
||||
HUBBARD ENERGY(included in SUM OF EIGENVALUES): -0.220501
|
||||
|
||||
and the band("kinetic") energy with DMFT correction::
|
||||
|
||||
>grep DMFT Ce-gamma.scf |tail -n 1
|
||||
KINETIC ENERGY with DMFT correction: -3.714346
|
||||
KINETIC ENERGY with DMFT correction: -5.337286
|
||||
|
||||
as well as the convergence in total energy::
|
||||
|
||||
|
||||
>grep :ENE Ce-gamma.scf |tail -n 5
|
||||
:ENE : ********** TOTAL ENERGY IN Ry = -17717.554865
|
||||
:ENE : ********** TOTAL ENERGY IN Ry = -17717.554577
|
||||
|
BIN
doc/Ce_DOS.png
BIN
doc/Ce_DOS.png
Binary file not shown.
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 6.3 KiB |
@ -62,8 +62,8 @@ They denerally should be reset for a given problem. Their meaning is as follows:
|
||||
|
||||
* `use_matrix`: If `True`, the interaction matrix is calculated from Slater integrals, which are calculated from `U_interact` and
|
||||
`J_hund`. Otherwise, a Kanamori representation is used. Attention: We define the intraorbital interaction as
|
||||
`U_interact`, the interorbital interaction for opposite spins as `U_interact-2*J_hund`, and interorbital for equal spins as
|
||||
`U_interact-3*J_hund`.
|
||||
`U_interact+2J_hund`, the interorbital interaction for opposite spins as `U_interact`, and interorbital for equal spins as
|
||||
`U_interact-J_hund`!
|
||||
* `T`: A matrix that transforms the interaction matrix from spherical harmonics, to a symmetry adapted basis. Only effective, if
|
||||
`use_matrix=True`.
|
||||
* `l`: Orbital quantum number. Again, only effective for Slater parametrisation.
|
||||
@ -80,8 +80,6 @@ They denerally should be reset for a given problem. Their meaning is as follows:
|
||||
Most of above parameters can be taken directly from the :class:`SumkLDA` class, without defining them by hand. We will see a specific example
|
||||
at the end of this tutorial.
|
||||
|
||||
After initialisation, several other CTQMC parameters can be set (see CTQMC doc).
|
||||
|
||||
|
||||
.. index:: LDA+DMFT loop, one-shot calculation
|
||||
|
||||
@ -99,7 +97,9 @@ set up the loop over DMFT iterations and the self-consistency condition::
|
||||
S.G <<= SK.extract_G_loc()[0] # extract the local Green function
|
||||
S.G0 <<= inverse(S.Sigma + inverse(S.G)) # finally get G0, the input for the Solver
|
||||
|
||||
S.Solve(U_interact = U, J_hund = J) # now solve the impurity problem
|
||||
S.solve(U_interact,J_hund,use_spinflip=False,use_matrix=True, # now solve the impurity problem
|
||||
l=2,T=None, dim_reps=None, irep=None, deg_orbs=[],n_cycles =10000,
|
||||
length_cycle=200,n_warmup_cycles=1000)
|
||||
|
||||
dm = S.G.density() # density matrix of the impurity problem
|
||||
SK.set_dc( dm, U_interact = U, J_hund = J, use_dc_formula = 0) # Set the double counting term
|
||||
|
@ -72,7 +72,7 @@ Most conveniently, it is stored as a real frequency :class:`BlockGf` object in t
|
||||
ar['SigmaReFreq'] = Sigma_real
|
||||
del ar
|
||||
|
||||
You may also store it in text files. If all blocks of your self energy are of dimension 1x1 you store them in `filename_(block)0.dat` files. Here `(block)` is a block name (`up`, `down`, or combined `ud`). In the case when you have matrix blocks, you store them in `(i)_(j).dat` files in the `filename_(block)` directory
|
||||
You may also store it in text files. If all blocks of your self energy are of dimension 1x1 you store them in `fname_(block)0.dat` files. Here `(block)` is a block name (`up`, `down`, or combined `ud`). In the case when you have matrix blocks, you store them in `(i)_(j).dat` files (where `(i)` and `(j)` are the orbital indices) in the `fname_(block)` directory
|
||||
|
||||
|
||||
This self energy is loaded and put into the :class:`SumkLDA` class by the function::
|
||||
@ -81,20 +81,21 @@ This self energy is loaded and put into the :class:`SumkLDA` class by the functi
|
||||
|
||||
where:
|
||||
|
||||
* `filename` is the file name of the hdf5 archive file or the `fname` pattern in text files names as described above.
|
||||
* `hdf=True` the real-axis self energy will be read from the hdf5 file, `hdf=False`: from the text files
|
||||
* `filename` is the name of the hdf5 archive file or the `fname` pattern in text files names as described above.
|
||||
* `hdf=True`: the real-axis self energy will be read from the hdf5 file, `hdf=False`: from the text files
|
||||
* `hdf_dataset` the name of dataset where the self energy is stored in the hdf5 file
|
||||
* `n_om` number of points in the real-axis mesh (used only if `hdf=False`)
|
||||
|
||||
|
||||
The chemical potential as well as the double
|
||||
counting correction was already read in the initialisation process.
|
||||
counting correction were already read in the initialisation process.
|
||||
|
||||
With this self energy, we can do now::
|
||||
|
||||
SK.dos_partial()
|
||||
SK.dos_partial(broadening=broadening)
|
||||
|
||||
This produces the momentum-integrated spectral functions (density of states, DOS), also orbitally resolved.
|
||||
The variable `broadening` is an additional Lorentzian broadening that is added to the resulting spectra.
|
||||
The output is printed into the files
|
||||
|
||||
* `DOScorr(sp).dat`: The total DOS. `(sp)` stands for `up`, `down`, or combined `ud`. The latter case
|
||||
@ -111,7 +112,7 @@ converter routines, see :ref:`interfacetowien`. The spectral function is calcula
|
||||
|
||||
SK.spaghettis(broadening)
|
||||
|
||||
The variable `broadening`1 is an additional Lorentzian broadening that is added to the resulting spectra. The output is
|
||||
The output is
|
||||
written as the 3-column files ``Akw(sp).dat``, where `(sp)` has the same meaning as above. The output format is
|
||||
`k`, :math:`\omega`, `value`. Optional parameters are
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user