dmft.dimer

Dimer Bethe lattice

Non interacting dimer of a Bethe lattice Based on the work G. Moeller et all PRB 59, 10, 6846 (1999)

Functions

dmft.dimer.diag_loc_fermions(basis_fermions)

Rotate diagonal Fermion matrix operators from diagonal to local basis

dmft.dimer.dimer_dyson(g0iw_d, g0iw_o, siw_d, siw_o)

Returns Dressed Green Function from G0 and Sigma

dmft.dimer.ekin(giw_d, giw_o, w_n, tp, beta, t_sqr=0.25)

Calculates the total kinetic energy of the dimer Bethe lattice

\langle T \rangle = \frac{8}{\beta} \sum_{n>0}
\left( t_\perp(G_{12}(i\omega_n) -\frac{t_\perp}{(i\omega_n)^2})
    + t^2 ( G_{11}^2 - \frac{1}{(i\omega_n)^2}  + G_{12}^2 ) \right)
    - (t_\perp^2+t^2)\beta

Parameters:
  • giw_d (complex 1D ndarray) – Diagonal entry of Green’s function G_{11}
  • giw_o (complex 1D ndarray) – Off diagonal entry of Green’s function G_{12}
  • w_n (real 1D ndarray) – Positive Matsubara frequencies
  • tp (float) – Dimer hybridization strength
  • beta (float) – Inverse temperature
  • t_sqr (float) – t^2 squared hopping to lattice, represent they lattice hybridization as \Delta=t^2G

References

Kinetic Energy

See also

epot()

Examples using dmft.dimer.ekin

dmft.dimer.epot(giw_d, w_n, beta, M_3, e_kin, muN)

Calculates the total potential energy of the dimer

\langle V \rangle = \frac{4}{\beta} \sum_{n>0}
i\omega_n(G_{11}(i\omega_n) -\frac{1}{i\omega_n} - \frac{M_3}{(i\omega_n)^3})
- \frac{M_3\beta}{2}+ \frac{\mu}{2}\langle N \rangle - \frac{\langle T \rangle}{2}

Parameters:
  • giw_d (complex 1D ndarray) – Diagonal entry of Green’s function G_{11}
  • w_n (real 1D ndarray) – Positive Matsubara frequencies
  • beta (float) – Inverse temperature
  • M_3 (float) – Third Moment in tail expansion of G_{11}
  • e_kin (float) – Kinetic energy of the dimer \langle T \rangle
  • muN (float) – Chemical potential weighted by occupation \mu\langle N \rangle

References

Potential energy

See also

ekin()

Examples using dmft.dimer.epot

dmft.dimer.extract_flat_gf_iter(filename, u_int, last)

Returns a list with Green functions of last iterations

At each iteration there are 4 Green functions sym_up, sym_dw, asym_up, asym_dw. Each one of them is extracted individually and is an element of the list.

N.B. Because at half-filling there is particle-hole symmetry the sym=-conj(asym).

Parameters:
  • filename (str) – path to hdf5 file
  • u_int (float) – local interaction value
  • last (int) – counts the last iterations to extract
Returns:

ndarray of shape

Return type:

last x 4 x nfreq

Examples using dmft.dimer.extract_flat_gf_iter

dmft.dimer.get_sigmaiw(giw_d, giw_o, w_n, tp)

Return Sigma by dyson in paramagnetic case only 2 entries

dmft.dimer.gf_met(omega, mu, tp, t, tn)

Double semi-circular density of states to represent the non-interacting dimer

Examples using dmft.dimer.gf_met

dmft.dimer.hamiltonian(u_int, mu, tp, basis_fermions=None)

Generate an isolated bi-atomic Hamiltonian in particle-hole symmetry at mu=0. Include chemical potential for grand Canonical calculations

\mathcal{H} - \mu N =
-\frac{U}{2}(n_{a\uparrow} - n_{a\downarrow})^2
-\frac{U}{2}(n_{b\uparrow} - n_{b\downarrow})^2  +
t_\perp (a^\dagger_\uparrow b_\uparrow +
         b^\dagger_\uparrow a_\uparrow +
         a^\dagger_\downarrow b_\downarrow +
         b^\dagger_\downarrow a_\downarrow)
- \mu(n_{a\uparrow} + n_{a\downarrow})
- \mu(n_{b\uparrow} + n_{b\downarrow})

Parameters:
  • u_int (float) – local Coulomb interaction
  • mu (float) – chemical potential
  • tp (float) – hopping amplitude between atoms
  • basis_fermions (list) – 4 element list with sparse matrices representing fermion destruction operators default basis is [a_up, b_up, a_dw, b_dw]
Returns:

  • h_loc (scipy.sparse.csr.csr_matrix) – Hamiltonian
  • basis_fermions (list scipy.sparse.csr.csr_matrix) – fermion desctruction operators in sparse matrix form

Examples using dmft.dimer.hamiltonian

dmft.dimer.hamiltonian_diag(u_int, mu, tp, basis_fermions=None)

Generate an isolated bi-atomic Hamiltonian in particle-hole symmetry at mu=0. Include chemical potential for grand Canonical calculations

This in the diagonal basis [as_up, s_up, as_dw, s_dw]

See also

hamiltonian()

Examples using dmft.dimer.hamiltonian_diag

dmft.dimer.ipt_dmft_loop(BETA, u_int, tp, giw_d, giw_o, tau, w_n, conv=1e-12, t=0.5)

Self-consistently solve dimer DMFT problem with ipt solver

Parameters:
  • BETA (float - inverse temperature) –
  • u_int (float - onsite interaction) –
  • tp (float - dimer hybridization) –
  • giw_d (1D ndarray complex - diagonal Green function G_11) –
  • giw_o (1D ndarray complex - off-diagonal Green function G_12) –
  • tau (1D ndarray real - imaginary time array) –
  • w_n (1D ndarray real - matsubara frequency points) –
  • conv (float - convergence criteria) –
  • t (float - renormalized lattice hopping) –
Returns:

  • giw_d (1D ndarray complex - diagonal Green function G_11)
  • giw_o (1D ndarray complex - off-diagonal Green function G_12)
  • loops (int - iterations for converge)

Examples using dmft.dimer.mat_inv

dmft.dimer.mat_mul(a, b, c, d)

Multiplies two Matrices of the dimer Green’s Functions

dmft.dimer.opt_sig(lat_A1, lat_A2, nf, w, dosde)

Calculates the optical conductivity from lattice spectral functions

\sigma(w) = \int dE \rho(E) \Pi (E,w) / w

Parameters:
  • lat_A1 (2D ndarrays) – lattice Spectral functions A(E,w)
  • lat_A2 (2D ndarrays) – lattice Spectral functions A(E,w)
  • nf (1D ndarray) – fermi function
  • w (1D ndarray) – real frequency array
  • dosde (1D ndarray) – differentially weighted density of states dE ρ(E)
Returns:

  • Re σ(w) (1D ndarray)
  • Real part of optical conductivity. Posterior scaling required

See also

bubble()

dmft.dimer.optical_conductivity(beta, ss, sa, omega, tp, eps_k, eta=0.04, crop=True)

Calculate the contributions to the optical_conductivity in the dimer

Parameters:
  • beta (float - Inverse Temperature) –
  • ss (1D complex ndarray - SYM real-freq self-energy) –
  • sa (1D complex ndarray - ASYM real-freq self-energy) –
  • omega (1D float ndarray - real frequency grid (equispaced)) –
  • tp (float - Dimer Hybridization) –
  • eps_k (1D float ndarray - Energy level bandwidth (equispaced)) –
  • eta (float - broadening for A(eps_k, w)) –
  • crop (bool - Return only positive frequencies) –
Returns:

  • intra_band (Intra band Optical response)
  • inter_band (Inter band Optical response)

Examples using dmft.dimer.optical_conductivity

dmft.dimer.pade_diag(gf_aa, gf_ab, w_n, w_set, w)
Take diagonal and off diagonal Matsubara functions in the local

basis and return real axis functions in the symmetric and anti-symmetric basis. Such that

⎡ⅈ⋅ωₙ + μ - t⟂ 0 ⎤ ⎡Σ_AA + Σ_AB 0 ⎤
G^{-1} = ⎢ ⎥ - ⎢ ⎥
⎣ 0 ⅈ⋅ωₙ + μ + t⟂ ⎦ ⎣ 0 Σ_AA - Σ_AB⎦

The Symmetric sum (Anti-bonding) returned first, Asymmetric is returned second

Examples using dmft.dimer.pade_diag

dmft.dimer.self_consistency(omega, Gd, Gc, mu, tp, t2)

Sets the dimer Bethe lattice self consistent condition for the diagonal and out of diagonal block