Interaction
ElectronGas.Interaction.KO
— Methodfunction KO(q, n, param; pifunc = Polarization0_ZeroTemp, landaufunc = landauParameterTakada, Vinv_Bare = coulombinv, regular = false, kwargs...)
Dynamic part of KO interaction. Returns the spin symmetric part and asymmetric part separately.
#Arguments:
- q: momentum
- n: matsubara frequency given in integer s.t. ωn=2πTn
- param: other system parameters
- pifunc: caller to the polarization function
- landaufunc: caller to the Landau parameter (exchange-correlation kernel)
- Vinv_Bare: caller to the bare Coulomb interaction
- regular: regularized RPA or not
Return:
If set to be regularized, it returns the dynamic part of effective interaction divided by $v_q - f_q$
\[ \frac{(v_q^{\pm} - f_q^{\pm}) Π_0} {1 - (v_q^{\pm} - f_q^{\pm}) Π_0}.\]
otherwise, return
\[ \frac{(v_q^{\pm} - f_q^{\pm})^2 Π_0} {1 - (v_q^{\pm} - f_q^{\pm}) Π_0}.\]
ElectronGas.Interaction.KO_total
— Methodfunction KO_total(q, n, param; pifunc = Polarization0_ZeroTemp, landaufunc = landauParameterTakada, Vinv_Bare = coulombinv, counter_term = counterterm, kwargs...)
Dynamic part of KO interaction. Returns the spin symmetric part and asymmetric part separately.
#Arguments:
- q: momentum
- n: matsubara frequency given in integer s.t. ωn=2πTn
- param: other system parameters
- pifunc: caller to the polarization function
- landaufunc: caller to the Landau parameter (exchange-correlation kernel)
- Vinv_Bare: caller to the bare Coulomb interaction
- counter_term: counterterm, by default, it is the landaufunc
Return:
Return the total effective interaction
\[ W^{\pm} = \frac{(v_q^{\pm} - f_q^{\pm}) Π_0} {1 - (v_q^{\pm} - f_q^{\pm}) Π_0} + C_q^{\pm}.\]
which reduces to the convential KO interaction if $C_q^{\pm} \equiv f_q^{\pm}$
ElectronGas.Interaction.RPA
— Methodfunction RPA(q, n, param; pifunc = Polarization0_ZeroTemp, Vinv_Bare = coulombinv, regular = false)
Dynamic part of RPA interaction.
#Arguments:
- q: momentum
- n: matsubara frequency given in integer s.t. ωn=2πTn
- param: other system parameters
- pifunc: caller to the polarization function
- Vinv_Bare: caller to the bare Coulomb interaction
- regular: regularized RPA or not
Return:
If set to be regularized, it returns the dynamic part of effective interaction divided by $v_q - f_q$
\[ \frac{v_q^{\pm} Π_0} {1 - v_q^{\pm} Π_0}.\]
otherwise, return
\[ \frac{(v_q^{\pm})^2 Π_0} {1 - v_q^{\pm} Π_0}.\]
ElectronGas.Interaction.bubbledyson
— Methodfunction bubbledyson(Vinv::Float64, F::Float64, Π::Float64)
Return (V - F)^2 Π / (1 - (V - F)Π), which is the dynamic part of effective interaction.
#Arguments:
- Vinv: inverse bare interaction
- F: Landau parameter
- Π: polarization
ElectronGas.Interaction.bubbledysonreg
— Methodfunction bubbledysonreg(Vinv::Float64, F::Float64, Π::Float64)
Return (V - F) Π / (1 - (V - F)Π), which is the dynamic part of effective interaction divided by (V - F).
#Arguments:
- Vinv: inverse bare interaction
- F: Landau parameter
- Π: polarization
ElectronGas.Interaction.coulomb
— Methodfunction coulomb(q,param)
Bare interaction in momentum space. Coulomb interaction if Λs=0, Yukawa otherwise.
#Arguments:
- q: momentum
- param: other system parameters
ElectronGas.Interaction.coulomb_2d
— Methodfunction coulomb_2d(q,param)
Bare interaction in 2D momentum space. Coulomb interaction if Λs=0, Yukawa otherwise.
#Arguments:
- q: momentum
- param: other system parameters
ElectronGas.Interaction.coulombinv
— Methodfunction coulombinv(q,param)
Inverse of bare interaction in 3D momentum space. Coulomb interaction if Λs=0, Yukawa otherwise.
#Arguments:
- q: momentum
- param: other system parameters
ElectronGas.Interaction.coulombinv_2d
— Methodfunction coulombinv_2d(q,param)
Inverse of bare interaction in 2D momentum space. Coulomb interaction if Λs=0, Yukawa otherwise.
#Arguments:
- q: momentum
- param: other system parameters
ElectronGas.Interaction.landauParameterMoroni
— Methodfunction landauParameterMoroni(q, n, param)
Analytic expression of G+ factor from diffusion Monte Carlo.(doi:10.1103/PhysRevB.57.14569). Return Landau parameter F+=(G+)*V
#Arguments:
- q: momentum
- n: matsubara frequency given in integer s.t. ωn=2πTn
- param: other system parameters
ElectronGas.Interaction.landauParameterTakada
— Methodfunction landauParameterTakada(q, n, param)
G factor with Takada's anzats. See Takada(doi:10.1103/PhysRevB.47.5202)(Eq.2.13-2.16). Now Landau parameter F. F(+-)=G(+-)*V
#Arguments:
- q: momentum
- n: matsubara frequency given in integer s.t. ωn=2πTn
- param: other system parameters