A fast
approach to solve a general impurity problem is the slave–boson method [1,2,3].
At the mean field level, it gives the results similar to the famous Gutzwiller
approximation [4]. However, it is improvable by performing fluctuations around
the saddle point. This approach is accurate as it has been shown recently to
give the exact critical value of in the large
degeneracy limit at half–filling [5].
The main idea
is to rewrite atomic states consisting of electrons
,
with
help of a set of slave–bosons
. In the following, we
assume
symmetric case, i.e., equivalence between different states
for
fixed
. Formulae corresponding to a more general crystal–field case are
given in Appendix B. The creation operator of a physical electron is expressed
via slave particles in the standard manner [2]. In order to recover the correct
non–interacting limit at the mean–field level, the Bose fields
can
be considered as classical values found from minimizing a Lagrangian
corresponding
to the Anderson impurity Hamiltonian. Two Lagrange multipliers
and
should be introduced in this way, which correspond to the following
two constrains:
(1)
(2)
The numbers are
similar to the probabilities
to find an atom in
configuration with
electrons in the
definition of the atomic Green function:
(3)
where energy
levels are and combinatorial
factor
arrives due to equivalence of all states with
electrons
in
.
We thus see
the physical meaning of the first constrain which is the sum of probabilities
to find atom in any state is equal to one, and the second constrain gives the
mean number of electrons coinciding with that found from . A
combinatorial factor
arrives due to assumed
equivalence of all states with
electrons.
Minimization
of with respect to
leads us to the
following set of equations to determine the quantities
:
(4)
where ,
determines the mass renormalization, and the coefficients
,
are
normalization constants as in Refs. [1,2].
is the total
energy of the atom with
electrons in
approximation.
Eq. (4), along
with the constrains (1), (2) constitute a set of non–linear equations which
have to be solved iteratively. In practice, we consider Eq. (4) as an eigenvalue
problem with being the eigenvalue
and
being the eigenvectors of the matrix. The physical root corresponds
to the lowest eigenvalue of
which gives a set of
determining
the mass renormalization
Since the matrix to be
diagonalized depends non–linearly on
via the parameters
and
and also on
, the solution of the
whole problem assumes the self–consistency: i) we build an initial
approximation to
(for example the
Hartree–Fock solution) and fix some
, ii) we solve eigenvalue
problem and find new normalized
, iii) we mix new
with
the old ones using the Broyden method [6] and build new
and
. Steps ii) and iii) are repeated until the self–consistency with
respect to
is reached. During the iterations we also vary
to
obey the constrains. The described procedure provides a stable computational
algorithm for solving AIM and gives us an access to the low–frequency Green’s
function and the self–energy of the problem via knowledge of the slope of
and
the value
at zero frequency.
The described slave–boson method gives the following expression for the self–energy:
(5)
The impurity
Green function in this limit is given
by the expression
(6)
Density–density
correlation function for local states with
electrons
is proportional to the number of pairs formed by
particles
.
Since the probability for
electrons to be
occupied is given by:
, the physical
density–density correlator can be deduced from:
. Similarly,
the triple occupancy can be calculated from
.
If we consider
the two–band Hubbard model in orbitally degenerate
case. Hybridization
satisfies the DMFT
self–consistency condition of the Hubbard model on a Bethe lattice
(7)
The Coulomb
interaction is chosen to be which is sufficiently
large to open the Mott gap at integer fillings.
[1] G. Kotliar and A. E. Ruckenstein, Phys. Rev. Lett. 57, 1362 (1986).
[2] R. Fresard and G. Kotliar, Phys. Rev. B. 56, 12909 (1997).
[3] H. Hasegawa, Phys. Rev. B 56, 1196 (1997).
[4] M. Gutzwiller, Phys. Rev. 134, A923 (1964).
[5] S. Florens, A. Georges, G. Kotliar, and O. Parcollet, Phys. Rev. B 66, 205102 (2002).
[6] See, e.g., D. D. Johnson, Phys. Rev. B 38, 12807 (1988).
· compile program typing "make" at the source files location. Makefile was tested on Linux OS using PGI compiler. Please adjust it depending on operating system and compiler used.
· Edit “input" file which has the following structure:
1 |
IMOD |
0.0 |
EF |
2.0 |
U |
0.016 |
TEMP |
4 |
NDEG |
500 |
NMSB |
500 |
OMAX |
500 |
NOMG |
50 |
WEND |
F |
COMPUTE_REAL |
where IMOD = 1 is the Hubbard Model, IMOD=3 the Anderson impurity model, EF is the impurity level, U is value of Coulomb repulsion, TEMP is temperature to be used used to create for Matsubara points grid, NDEG is the degeneracy, NMSB is the number of Matsubara point, OMAX is the imaginary frequency cutoff, NOMG is the number is real frequency points, WEND is the real frequency cutoff, COMPUTE_REAL is flag once is “True" tell program to produce the self-consistent solution (last iteration) on real axis.
1. Program’s input consists from one more file (provided the Anderson impurity model item is chosen in “input" file):
“delta.dat" containing the hybridization function.
The structure is the following:
Column # |
Value |
1 |
Frequency |
2 |
Re Delta |
3 |
Im Delta |
2. Run the program executable (“main" is the default name).
3. Program’s output consists from the following files:
1) “gfsig_iw.dat" containing Green’s function (GF) and the self-energy (SE) on Matsubara axis
2) “gfsig_re.dat" containing Green’s function (GF) and the self-energy (SE) on real axis provided flag "COMPUTE_REAL" is “TRUE".
They have the same structure:
Column # |
Value |
1 |
Frequency |
2 |
Re GF |
3 |
Im GF |
4 |
Re SE |
5 |
Im SE |
3) “grid_re.dat" containing real frequency grid for the hybridization function (delta).
4) “grid_im.dat" containing Matsubara frequency grid for the hybridization function (delta).
Both files have the same structure:
Column # |
Value |
1 |
Frequency |
Makefile |
main make file |
dmf_cmpdiag.f |
The solution of the generalized eigenvalue problem |
imp_sunhub.f |
Solves Anderson impurity model, returns GF and SE. |
imp_sunmas.f |
Computes effective mass renormalization. |
lib_broy6.f |
Broyden mixing. |
lib_cinv.f |
Finds inverse of square matrix. |
lib_csplines.f |
Splines complex function from one to another grid. |
lib_deriv1.f |
Calculates radial derivative. |
lib_morefun.f |
Calculations of a few auxiliary functions |
lib_pade.f |
Realization of Páde procedure. |
lib_splin3.f |
Computed a natural spline approximation of third order. |
mod_common.f |
File containing common modules used across the program. |
mod_dimart.f |
File containing common modules used across the program. |
mod_init.f |
File containing common modules used across the program. |
sun.f |
Main program. |