mirror of
https://github.com/triqs/dft_tools
synced 2024-12-21 20:03:41 +01:00
cleaned Kanamori interactions and double counting, updated doc accordingly
This commit is contained in:
parent
27dd24c490
commit
243c40899e
@ -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+2J_hund`, the interorbital interaction for opposite spins as `U_interact`, and interorbital for equal spins as
|
||||
`U_interact-J_hund`!
|
||||
`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`.
|
||||
* `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.
|
||||
|
@ -16,7 +16,7 @@ First, we load the necessary modules::
|
||||
Then we define some parameters::
|
||||
|
||||
lda_filename='srvo3'
|
||||
U = 2.7
|
||||
U = 4.0
|
||||
J = 0.65
|
||||
beta = 40
|
||||
loops = 10 # Number of DMFT sc-loops
|
||||
@ -24,7 +24,7 @@ Then we define some parameters::
|
||||
Delta_mix = 1.0 # Mixing factor of Delta as input for the AIM
|
||||
dc_type = 1 # DC type: 0 FLL, 1 Held, 2 AMF
|
||||
use_blocks = True # use bloc structure from LDA input
|
||||
use_matrix = False # True: Slater parameters, False: Kanamori parameters U+2J, U, U-J
|
||||
use_matrix = False # True: Slater parameters, False: Kanamori parameters U, U-2J, U-3J
|
||||
use_spinflip = False # use the full rotational invariant interaction?
|
||||
prec_mu = 0.0001
|
||||
qmc_cycles = 20000
|
||||
|
@ -710,10 +710,12 @@ class SumkLDA:
|
||||
self.dc_energ[icrsh] -= J_hund / 2.0 * (Ncr[bl]) * (Ncr[bl]-1.0)
|
||||
mpi.report("DC for shell %(icrsh)i and block %(bl)s = %(Uav)f"%locals())
|
||||
elif (use_dc_formula==1):
|
||||
self.dc_energ[icrsh] = (U_interact + J_hund * (2.0-(M-1)) / (2*M-1) ) / 2.0 * Ncrtot * (Ncrtot-1.0)
|
||||
self.dc_energ[icrsh] = (U_interact + (M-1)*(U_interact-2.0*J_hund) + (M-1)*(U_interact-3.0*J_hund))/(2*M-1) / 2.0 * Ncrtot * (Ncrtot-1.0)
|
||||
#self.dc_energ[icrsh] = (U_interact + J_hund * (2.0-(M-1)) / (2*M-1) ) / 2.0 * Ncrtot * (Ncrtot-1.0)
|
||||
for bl in a_list:
|
||||
# Held's formula, with U_interact the interorbital onsite interaction
|
||||
Uav = (U_interact + J_hund * (2.0-(M-1)) / (2*M-1) ) * (Ncrtot-0.5)
|
||||
Uav =(U_interact + (M-1)*(U_interact-2.0*J_hund) + (M-1)*(U_interact-3.0*J_hund))/(2*M-1) * (Ncrtot-0.5)
|
||||
#Uav = (U_interact + J_hund * (2.0-(M-1)) / (2*M-1) ) * (Ncrtot-0.5)
|
||||
self.dc_imp[icrsh][bl] *= Uav
|
||||
mpi.report("DC for shell %(icrsh)i and block %(bl)s = %(Uav)f"%locals())
|
||||
elif (use_dc_formula==2):
|
||||
|
@ -37,7 +37,7 @@ useMatrix = False # True: Slater parameters, False: Kanamori para
|
||||
use_spinflip = False # use the full rotational invariant interaction?
|
||||
#=====================================================
|
||||
|
||||
U=U-2*J
|
||||
#U=U-2*J
|
||||
|
||||
HDFfilename = LDAFilename+'.h5'
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user