Define integration weights for the KadanoffBaym library.

Data Types

KadanoffBaym.AbstractWeightsType
AbstractWeights

Abstract weights for numerical interpolation, differentiation, and integration. The purpose of this abstract type is to construct the type system.

KadanoffBaym.calc_gregory_weightsFunction
calc_gregory_weights(k::I64, n::I64)

Try to calculate the integration weights based on Gregory quadrature rule for 𝑘-order and 𝑛 + 1 nodes. This function only works for 𝑛 > 𝑘. It just returns a vector with 𝑛 + 1 elements (They are all Rational numbers).

References :

See Remarks.

KadanoffBaym.calc_boundary_convolutionFunction
calc_boundary_convolution(k::I64, Wi::Matrix{F64})

Calculate integration weights for boundary convolution.

References :

See [NESSi] Eq.~(104).

KadanoffBaym.trapezoidFunction
trapezoid(n::I64)

Return integration weights based on the trapezoid rule. Note that the return value of this function is a Rational number.

References :

See [REVIEW] Eq.~(A9).

KadanoffBaym.ΛFunction
Λ(k::I64)

Try to calculate the Laplace coefficients Λ. This a recursive function. Note that the return value is a Rational number.

References :

See [MABOOK] Eqs.~(8.4.37), (8.4.50), and (8.4.54).

KadanoffBaym.γⱼFunction
γⱼ(k::I64)

Try to calculate the 𝑘th order coefficients γⱼ, where 𝑗 ∈ [0,𝑘].

References :

See [QUADRATURE] Eqs.~(2.5) and (2.6).

KadanoffBaym.𝐑Function
𝐑(m::I64, a::I64, b::I64)

Try to calculate integration ∫^{m}{0} dx (m-x)ᵃxᵇ. We note that this integration appears in [NESSi] Eq.~(104). This function is called by `calcboundary_convolution()` internally. It should not be exported.

References :

See [NESSi] Eq.~(104).

KadanoffBaym.ΓFunction
Γ(n::I64)

Try to calculate Γ function. This function should not be exported. Note that the function name for the calculation of Γ function is :tgamma, instead of :gamma. This is quite strange.

References :

See [MATABLE] Section 6.21.