Single-particle Green's functions
computegf()
KeldyshED.computegf
— Methodcomputegf(
ed::EDCore,
t1::Keldysh.BranchPoint,
t2::Keldysh.BranchPoint,
c_index::Vector{Union{Int64, String}},
cdag_index::Vector{Union{Int64, String}},
β::Float64
) -> ComplexF64
Compute single-particle Keldysh Green's function
\[G_{ij}(t_1, t_2) = -i \mathrm{Tr}[\hat\rho \mathbb{T}_\mathcal{C} c_i(t_1) c^\dagger_j(t_2)], \quad \hat\rho = \frac{e^{-\beta\hat H}}{\mathrm{Tr}[e^{-\beta\hat H}]}\]
at given contour times $t_1$, $t_2$ for given compound indices of creation/annihilation operators $i$ and $j$.
Arguments
ed
: Exact Diagonalization object.t1
: Contour time $t_1$.t2
: Contour time $t_2$.c_index
: Compound index $i$.cdag_index
: Compound index $j$.β
: Inverse temperature $\beta$.
KeldyshED.computegf
— Methodcomputegf(
ed::EDCore,
t1::Keldysh.BranchPoint,
t2::Keldysh.BranchPoint,
c_index::Vector{Union{Int64, String}},
cdag_index::Vector{Union{Int64, String}};
en,
ρ
)
Compute single-particle Keldysh Green's function
\[G_{ij}(t_1, t_2) = -i \mathrm{Tr}[\hat\rho \mathbb{T}_\mathcal{C} c_i(t_1) c^\dagger_j(t_2)]\]
at given contour times $t_1$, $t_2$ for given compound indices of creation/annihilation operators $i$ and $j$. This method is useful if the density matrix $\hat\rho$ has already been computed.
Arguments
ed
: Exact Diagonalization object.t1
: Contour time $t_1$.t2
: Contour time $t_2$.c_index
: Compound index $i$.cdag_index
: Compound index $j$.en
: Energy levels of the system as returned byenergies()
.ρ
Density matrix $\hat\rho$ as returned bydensity_matrix()
.
KeldyshED.computegf
— Methodcomputegf(
ed::EDCore,
grid::Keldysh.FullTimeGrid,
c_index::Vector{Union{Int64, String}},
cdag_index::Vector{Union{Int64, String}};
gf_filler
) -> Keldysh.TimeInvariantFullTimeGF{ComplexF64, true}
Compute single-particle Keldysh Green's function
\[G_{ij}(t_1, t_2) = -i \mathrm{Tr}[\hat\rho \mathbb{T}_\mathcal{C} c_i(t_1) c^\dagger_j(t_2)]\]
on a 3-branch Konstantinov-Perel' contour for given compound indices of creation/annihilation operators $i$ and $j$.
Arguments
ed
: Exact Diagonalization object.grid
: Time grid on the 3-branch contour.c_index
: Compound index $i$.cdag_index
: Compound index $j$.gf_filler
:Algorithm selector
for GF computation.
KeldyshED.computegf
— Methodcomputegf(
ed::EDCore,
grid::Keldysh.KeldyshTimeGrid,
c_index::Vector{Union{Int64, String}},
cdag_index::Vector{Union{Int64, String}},
β::Float64;
gf_filler
) -> Keldysh.TimeInvariantKeldyshTimeGF{ComplexF64, true}
Compute single-particle Keldysh Green's function
\[G_{ij}(t_1, t_2) = -i \mathrm{Tr}[\hat\rho \mathbb{T}_\mathcal{C} c_i(t_1) c^\dagger_j(t_2)], \quad \hat\rho = \frac{e^{-\beta\hat H}}{\mathrm{Tr}[e^{-\beta\hat H}]}\]
on a 2-branch Keldysh contour for given compound indices of creation/annihilation operators $i$ and $j$ with a decoupled initial thermal state at inverse temperature $\beta$.
Arguments
ed
: Exact Diagonalization object.grid
: Time grid on the 2-branch contour.c_index
: Compound index $i$.cdag_index
: Compound index $j$.β
: Inverse temperature $\beta$.gf_filler
:Algorithm selector
for GF computation.
KeldyshED.computegf
— Methodcomputegf(
ed::EDCore,
grid::Keldysh.ImaginaryTimeGrid,
c_index::Vector{Union{Int64, String}},
cdag_index::Vector{Union{Int64, String}};
gf_filler
) -> Keldysh.ImaginaryTimeGF{ComplexF64, true}
Compute single-particle Keldysh Green's function
\[G_{ij}(t_1, t_2) = -i \mathrm{Tr}[\hat\rho \mathbb{T}_\mathcal{C} c_i(t_1) c^\dagger_j(t_2)]\]
on the imaginary time segment $[0;-i\beta]$ for given compound indices of creation/annihilation operators $i$ and $j$.
Arguments
ed
: Exact Diagonalization object.grid
: Time grid on the imaginary time segment.c_index
: Compound index $i$.cdag_index
: Compound index $j$.gf_filler
:Algorithm selector
for GF computation.
KeldyshED.computegf
— Methodcomputegf(
ed::EDCore,
grid::Keldysh.FullTimeGrid,
c_cdag_index_pairs::Vector{Tuple{Vector{Union{Int64, String}}, Vector{Union{Int64, String}}}};
gf_filler
) -> Vector{Keldysh.TimeInvariantFullTimeGF{ComplexF64, true}}
Compute multiple single-particle Keldysh Green's functions
\[G_{ij}(t_1, t_2) = -i \mathrm{Tr}[\hat\rho \mathbb{T}_\mathcal{C} c_i(t_1) c^\dagger_j(t_2)]\]
on a 3-branch Konstantinov-Perel' contour for given compound indices of creation/annihilation operators $i$ and $j$.
Arguments
ed
: Exact Diagonalization object.grid
: Time grid on the 3-branch contour.c_cdag_index_pairs
: List of compound index pairs $(i, j)$.gf_filler
:Algorithm selector
for GF computation.
KeldyshED.computegf
— Methodcomputegf(
ed::EDCore,
grid::Keldysh.KeldyshTimeGrid,
c_cdag_index_pairs::Vector{Tuple{Vector{Union{Int64, String}}, Vector{Union{Int64, String}}}},
β::Float64;
gf_filler
) -> Vector{Keldysh.TimeInvariantKeldyshTimeGF{ComplexF64, true}}
Compute multiple single-particle Keldysh Green's functions
\[G_{ij}(t_1, t_2) = -i \mathrm{Tr}[\hat\rho \mathbb{T}_\mathcal{C} c_i(t_1) c^\dagger_j(t_2)], \quad \hat\rho = \frac{e^{-\beta\hat H}}{\mathrm{Tr}[e^{-\beta\hat H}]}\]
on a 2-branch Keldysh contour for given compound indices of creation/annihilation operators $i$ and $j$ with a decoupled initial thermal state at inverse temperature $\beta$.
Arguments
ed
: Exact Diagonalization object.grid
: Time grid on the 2-branch contour.c_cdag_index_pairs
: List of compound index pairs $(i, j)$.β
: Inverse temperature $\beta$.gf_filler
:Algorithm selector
for GF computation.
KeldyshED.computegf
— Methodcomputegf(
ed::EDCore,
grid::Keldysh.ImaginaryTimeGrid,
c_cdag_index_pairs::Vector{Tuple{Vector{Union{Int64, String}}, Vector{Union{Int64, String}}}};
gf_filler
) -> Vector{Keldysh.ImaginaryTimeGF{ComplexF64, true}}
Compute multiple single-particle Keldysh Green's functions
\[G_{ij}(t_1, t_2) = -i \mathrm{Tr}[\hat\rho \mathbb{T}_\mathcal{C} c_i(t_1) c^\dagger_j(t_2)]\]
on the imaginary time segment $[0;-i\beta]$ for given compound indices of creation/annihilation operators $i$ and $j$.
Arguments
ed
: Exact Diagonalization object.grid
: Time grid on the imaginary time segment.c_cdag_index_pairs
: List of compound index pairs $(i, j)$.gf_filler
:Algorithm selector
for GF computation.
KeldyshED.computegf
— Methodcomputegf(
ed::EDCore,
grid::Keldysh.FullTimeGrid,
c_indices::Vector{Vector{Union{Int64, String}}},
cdag_indices::Vector{Vector{Union{Int64, String}}};
gf_filler
) -> Keldysh.TimeInvariantFullTimeGF{ComplexF64, false}
Compute a matrix-valued single-particle Keldysh Green's function
\[G_{ij}(t_1, t_2) = -i \mathrm{Tr}[\hat\rho \mathbb{T}_\mathcal{C} c_i(t_1) c^\dagger_j(t_2)]\]
on a 3-branch Konstantinov-Perel' contour for all possible pairs of compound indices $(i, j)$ given a list of $i$ and a list of $j$ (the lists must have equal length).
Arguments
ed
: Exact Diagonalization object.grid
: Time grid on the 3-branch contour.c_indices
: List of compound indices $i$.cdag_indices
: List of compound indices $j$.gf_filler
:Algorithm selector
for GF computation.
KeldyshED.computegf
— Methodcomputegf(
ed::EDCore,
grid::Keldysh.KeldyshTimeGrid,
c_indices::Vector{Vector{Union{Int64, String}}},
cdag_indices::Vector{Vector{Union{Int64, String}}},
β::Float64;
gf_filler
) -> Keldysh.TimeInvariantKeldyshTimeGF{ComplexF64, false}
Compute a matrix-valued single-particle Keldysh Green's function
\[G_{ij}(t_1, t_2) = -i \mathrm{Tr}[\hat\rho \mathbb{T}_\mathcal{C} c_i(t_1) c^\dagger_j(t_2)], \quad \hat\rho = \frac{e^{-\beta\hat H}}{\mathrm{Tr}[e^{-\beta\hat H}]}\]
on a 2-branch Keldysh contour for all possible pairs of compound indices $(i, j)$ given a list of $i$ and a list of $j$ (the lists must have equal length).
Arguments
ed
: Exact Diagonalization object.grid
: Time grid on the 2-branch contour.c_indices
: List of compound indices $i$.cdag_indices
: List of compound indices $j$.β
: Inverse temperature $\beta$.gf_filler
:Algorithm selector
for GF computation.
KeldyshED.computegf
— Methodcomputegf(
ed::EDCore,
grid::Keldysh.ImaginaryTimeGrid,
c_indices::Vector{Vector{Union{Int64, String}}},
cdag_indices::Vector{Vector{Union{Int64, String}}};
gf_filler
) -> Keldysh.ImaginaryTimeGF{ComplexF64, false}
Compute a matrix-valued single-particle Keldysh Green's function
\[G_{ij}(t_1, t_2) = -i \mathrm{Tr}[\hat\rho \mathbb{T}_\mathcal{C} c_i(t_1) c^\dagger_j(t_2)]\]
on the imaginary time segment $[0;-i\beta]$ for all possible pairs of compound indices $(i, j)$ given a list of $i$ and a list of $j$ (the lists must have equal length).
Arguments
ed
: Exact Diagonalization object.grid
: Time grid on the imaginary time segment.c_indices
: List of compound indices $i$.cdag_indices
: List of compound indices $j$.gf_filler
:Algorithm selector
for GF computation.
Auxiliary types
KeldyshED.AbstractGFFiller
— TypeAbstract supertype for GF filler types.
KeldyshED.SerialGFFiller
— TypeAn argument of this type instructs Green's function computation routines to use a serial (non-parallelized) algorithm.
KeldyshED.DistributedGFFiller
— TypeAn argument of this type instructs Green's function computation routines to use Distributed.@distributed
to speed up calculation.