MatsubaraFrequency
A MatsubaraFrequency{PT}
of particle type PT
at temperature $T$ and with Matsubara index $n$ can be generated using
T = 1.0
n = 5
v = MatsubaraFrequency(T, n, Fermion) # v = \pi T (2 n + 1)
w = MatsubaraFrequency(T, n, Boson) # w = \pi T (2 n )
Matsubara frequencies can be added, subtracted and their sign can be reversed, producing a new instance of MatsubaraFrequency
, potentially of different particle type.
v1 = v + v # typeof(v1) = MatsubaraFrequency{Boson}
v2 = w - v # typeof(v2) = MatsubaraFrequency{Fermion}
v3 = -v # typeof(v3) = MatsubaraFrequency{Fermion}
Types
MatsubaraFunctions.AbstractParticle
— Typeabstract type AbstractParticle
MatsubaraFunctions.Fermion
— Typestruct Fermion <: AbstractParticle
MatsubaraFunctions.Boson
— Typestruct Boson <: AbstractParticle
MatsubaraFunctions.AbstractMatsubaraFrequency
— Typeabstract type AbstractMatsubaraFrequency
MatsubaraFunctions.MatsubaraFrequency
— Typestruct MatsubaraFrequency{PT <: AbstractParticle} <: AbstractMatsubaraFrequency
MatsubaraFrequency type with fields:
T :: Float64
: temperatureval :: Float64
: position on the imaginary axisidx :: Int64
: Matsubara index
Functions
MatsubaraFunctions.temperature
— Functionfunction temperature(
w :: MatsubaraFrequency
) :: Float64
Returns w.T
function temperature(
grid :: AbstractMatsubaraGrid
) :: Float64
Returns grid.T
function temperature(
f :: MatsubaraFunction
) :: Float64
Returns temperature for which f.grids
are defined
MatsubaraFunctions.value
— Functionfunction value(
w :: MatsubaraFrequency
) :: Float64
Returns w.val
MatsubaraFunctions.index
— Functionfunction index(
w :: MatsubaraFrequency
) :: Int64
Returns w.idx
function index(
x :: MatsubaraIndex
) :: Int64
Returns x.idx