Grids
Grids on imaginary axis.
In the ACTest toolkit, the output correlators are defined on grid
, while the spectral functions are defined on mesh
. The ACTest toolkit supports both imaginary time and Matsubara frequency grids. Note that for Matsubara frequency grid, the bosonic and fermionic grids are different.
Contents
Index
ACTest.AbstractGrid
ACTest.BosonicImaginaryTimeGrid
ACTest.BosonicImaginaryTimeGrid
ACTest.BosonicMatsubaraGrid
ACTest.BosonicMatsubaraGrid
ACTest.FermionicImaginaryTimeGrid
ACTest.FermionicImaginaryTimeGrid
ACTest.FermionicMatsubaraGrid
ACTest.FermionicMatsubaraGrid
ACTest.rebuild!
Base.eachindex
Base.eachindex
Base.eachindex
Base.eachindex
Base.firstindex
Base.firstindex
Base.firstindex
Base.firstindex
Base.getindex
Base.getindex
Base.getindex
Base.getindex
Base.getindex
Base.getindex
Base.getindex
Base.getindex
Base.iterate
Base.iterate
Base.iterate
Base.iterate
Base.iterate
Base.iterate
Base.iterate
Base.iterate
Base.lastindex
Base.lastindex
Base.lastindex
Base.lastindex
Base.length
Base.length
Base.length
Base.length
Base.resize!
Base.reverse!
Types
ACTest.AbstractGrid
— TypeAbstractGrid
An abstract type representing the imaginary axis. It is used to build the internal type system.
ACTest.FermionicImaginaryTimeGrid
— TypeFermionicImaginaryTimeGrid
Mutable struct. It represents the fermionic imaginary time grid.
Members
- ntime -> Number of time slices.
- β -> Inverse temperature.
- τ -> Vector of grid points, τᵢ.
See also: FermionicMatsubaraGrid
.
ACTest.FermionicMatsubaraGrid
— TypeFermionicMatsubaraGrid
Mutable struct. It represents the fermionic Matsubara frequency grid.
Members
- nfreq -> Number of Matsubara frequency points.
- β -> Inverse temperature.
- ω -> Vector of grid points, iωₙ.
See also: FermionicImaginaryTimeGrid
.
ACTest.BosonicImaginaryTimeGrid
— TypeBosonicImaginaryTimeGrid
Mutable struct. It represents the bosonic imaginary time grid.
Members
- ntime -> Number of time slices.
- β -> Inverse temperature.
- τ -> Vector of grid points, τᵢ.
See also: BosonicMatsubaraGrid
.
ACTest.BosonicMatsubaraGrid
— TypeBosonicMatsubaraGrid
Mutable struct. It represents the bosonic Matsubara frequency grid.
Members
- nfreq -> Number of Matsubara frequency points.
- β -> Inverse temperature.
- ω -> Vector of grid points, iωₙ.
See also: BosonicImaginaryTimeGrid
.
Constructors
ACTest.FermionicImaginaryTimeGrid
— MethodFermionicImaginaryTimeGrid(ntime::I64, β::F64)
A constructor for the FermionicImaginaryTimeGrid struct, which is defined in src/types.jl
.
Arguments
- ntime -> Number of time slices in imaginary axis.
- β -> Inverse temperature.
Returns
- grid -> A FermionicImaginaryTimeGrid struct.
See also: FermionicImaginaryTimeGrid
.
ACTest.FermionicMatsubaraGrid
— MethodFermionicMatsubaraGrid(nfreq::I64, β::F64)
A constructor for the FermionicMatsubaraGrid struct, which is defined in src/types.jl
. The Matsubara grid is evaluated as ωₙ = (2n - 1) π / β.
Arguments
- nfreq -> Number of Matsubara frequencies.
- β -> Inverse temperature.
Returns
- grid -> A FermionicMatsubaraGrid struct.
See also: FermionicMatsubaraGrid
.
ACTest.BosonicImaginaryTimeGrid
— MethodBosonicImaginaryTimeGrid(ntime::I64, β::F64)
A constructor for the BosonicImaginaryTimeGrid struct, which is defined in src/types.jl
.
Arguments
- ntime -> Number of time slices in imaginary axis.
- β -> Inverse temperature.
Returns
- grid -> A BosonicImaginaryTimeGrid struct.
See also: BosonicImaginaryTimeGrid
.
ACTest.BosonicMatsubaraGrid
— MethodBosonicMatsubaraGrid(nfreq::I64, β::F64)
A constructor for the BosonicMatsubaraGrid struct, which is defined in src/types.jl
. The Matsubara grid is evaluated as ωₙ = (2n - 2) π / β.
Arguments
- nfreq -> Number of Matsubara frequencies.
- β -> Inverse temperature.
Returns
- grid -> A BosonicMatsubaraGrid struct.
See also: BosonicMatsubaraGrid
.
Base.* Functions
Base.length
— MethodBase.length(fg::FermionicImaginaryTimeGrid)
Return number of grid points in a FermionicImaginaryTimeGrid struct.
See also: FermionicImaginaryTimeGrid
.
Base.length
— MethodBase.length(fg::FermionicMatsubaraGrid)
Return number of grid points in a FermionicMatsubaraGrid struct.
See also: FermionicMatsubaraGrid
.
Base.length
— MethodBase.length(bg::BosonicImaginaryTimeGrid)
Return number of grid points in a BosonicImaginaryTimeGrid struct.
See also: BosonicImaginaryTimeGrid
.
Base.length
— MethodBase.length(bg::BosonicMatsubaraGrid)
Return number of grid points in a BosonicMatsubaraGrid struct.
See also: BosonicMatsubaraGrid
.
Base.iterate
— MethodBase.iterate(fg::FermionicImaginaryTimeGrid)
Advance the iterator of a FermionicImaginaryTimeGrid struct to obtain the next grid point.
See also: FermionicImaginaryTimeGrid
.
Base.iterate
— MethodBase.iterate(fg::FermionicMatsubaraGrid)
Advance the iterator of a FermionicMatsubaraGrid struct to obtain the next grid point.
See also: FermionicMatsubaraGrid
.
Base.iterate
— MethodBase.iterate(bg::BosonicImaginaryTimeGrid)
Advance the iterator of a BosonicImaginaryTimeGrid struct to obtain the next grid point.
See also: BosonicImaginaryTimeGrid
.
Base.iterate
— MethodBase.iterate(bg::BosonicMatsubaraGrid)
Advance the iterator of a BosonicMatsubaraGrid struct to obtain the next grid point.
See also: BosonicMatsubaraGrid
.
Base.iterate
— MethodBase.iterate(fg::FermionicImaginaryTimeGrid, i::I64)
This is the key method that allows a FermionicImaginaryTimeGrid struct to be iterated, yielding a sequences of grid points.
See also: FermionicImaginaryTimeGrid
.
Base.iterate
— MethodBase.iterate(fg::FermionicMatsubaraGrid, i::I64)
Create an iterable object for visiting each index of a FermionicMatsubaraGrid struct.
See also: FermionicMatsubaraGrid
.
Base.iterate
— MethodBase.iterate(bg::BosonicImaginaryTimeGrid, i::I64)
Create an iterable object for visiting each index of a BosonicImaginaryTimeGrid struct.
See also: BosonicImaginaryTimeGrid
.
Base.iterate
— MethodBase.iterate(bg::BosonicMatsubaraGrid, i::I64)
Create an iterable object for visiting each index of a BosonicMatsubaraGrid struct.
See also: BosonicMatsubaraGrid
.
Base.eachindex
— MethodBase.eachindex(fg::FermionicImaginaryTimeGrid)
Create an iterable object for visiting each index of a FermionicImaginaryTimeGrid struct.
See also: FermionicImaginaryTimeGrid
.
Base.eachindex
— MethodBase.eachindex(fg::FermionicMatsubaraGrid)
Create an iterable object for visiting each index of a FermionicMatsubaraGrid struct.
See also: FermionicMatsubaraGrid
.
Base.eachindex
— MethodBase.eachindex(bg::BosonicImaginaryTimeGrid)
Create an iterable object for visiting each index of a BosonicImaginaryTimeGrid struct.
See also: BosonicImaginaryTimeGrid
.
Base.eachindex
— MethodBase.eachindex(bg::BosonicMatsubaraGrid)
Create an iterable object for visiting each index of a BosonicMatsubaraGrid struct.
See also: BosonicMatsubaraGrid
.
Base.firstindex
— MethodBase.firstindex(fg::FermionicImaginaryTimeGrid)
Return the first index of a FermionicImaginaryTimeGrid struct.
See also: FermionicImaginaryTimeGrid
.
Base.firstindex
— MethodBase.firstindex(fg::FermionicMatsubaraGrid)
Return the first index of a FermionicMatsubaraGrid struct.
See also: FermionicMatsubaraGrid
.
Base.firstindex
— MethodBase.firstindex(bg::BosonicImaginaryTimeGrid)
Return the first index of a BosonicImaginaryTimeGrid struct.
See also: BosonicImaginaryTimeGrid
.
Base.firstindex
— MethodBase.firstindex(bg::BosonicMatsubaraGrid)
Return the first index of a BosonicMatsubaraGrid struct.
See also: BosonicMatsubaraGrid
.
Base.lastindex
— MethodBase.lastindex(fg::FermionicImaginaryTimeGrid)
Return the last index of a FermionicImaginaryTimeGrid struct.
See also: FermionicImaginaryTimeGrid
.
Base.lastindex
— MethodBase.lastindex(fg::FermionicMatsubaraGrid)
Return the last index of a FermionicMatsubaraGrid struct.
See also: FermionicMatsubaraGrid
.
Base.lastindex
— MethodBase.lastindex(bg::BosonicImaginaryTimeGrid)
Return the last index of a BosonicImaginaryTimeGrid struct.
See also: BosonicImaginaryTimeGrid
.
Base.lastindex
— MethodBase.lastindex(bg::BosonicMatsubaraGrid)
Return the last index of a BosonicMatsubaraGrid struct.
See also: BosonicMatsubaraGrid
.
Base.getindex
— MethodBase.getindex(fg::FermionicImaginaryTimeGrid, ind::I64)
Retrieve the value(s) stored at the given key or index within a FermionicImaginaryTimeGrid struct.
See also: FermionicImaginaryTimeGrid
.
Base.getindex
— MethodBase.getindex(fg::FermionicMatsubaraGrid, ind::I64)
Retrieve the value(s) stored at the given key or index within a FermionicMatsubaraGrid struct.
See also: FermionicMatsubaraGrid
.
Base.getindex
— MethodBase.getindex(bg::BosonicImaginaryTimeGrid, ind::I64)
Retrieve the value(s) stored at the given key or index within a BosonicImaginaryTimeGrid struct.
See also: BosonicImaginaryTimeGrid
.
Base.getindex
— MethodBase.getindex(bg::BosonicMatsubaraGrid, ind::I64)
Retrieve the value(s) stored at the given key or index within a BosonicMatsubaraGrid struct.
See also: BosonicMatsubaraGrid
.
Base.getindex
— MethodBase.getindex(fg::FermionicImaginaryTimeGrid, I::UnitRange{I64})
Return a subset of a FermionicImaginaryTimeGrid struct as specified by I
.
See also: FermionicImaginaryTimeGrid
.
Base.getindex
— MethodBase.getindex(fg::FermionicMatsubaraGrid, I::UnitRange{I64})
Return a subset of a FermionicMatsubaraGrid struct as specified by I
.
See also: FermionicMatsubaraGrid
.
Base.getindex
— MethodBase.getindex(bg::BosonicImaginaryTimeGrid, I::UnitRange{I64})
Return a subset of a BosonicImaginaryTimeGrid struct as specified by I
.
See also: BosonicImaginaryTimeGrid
.
Base.getindex
— MethodBase.getindex(bg::BosonicMatsubaraGrid, I::UnitRange{I64})
Return a subset of a BosonicMatsubaraGrid struct as specified by I
.
See also: BosonicMatsubaraGrid
.
Utilities
ACTest.rebuild!
— Functionrebuild!(fg::FermionicImaginaryTimeGrid, ntime::I64, β::F64)
Rebuild the FermionicImaginaryTimeGrid struct via new ntime
and β
parameters.
Arguments
- fg -> A FermionicImaginaryTimeGrid struct.
- ntime -> Number of time slices.
- β -> Inverse temperature.
Returns
N/A
See also: FermionicImaginaryTimeGrid
.
rebuild!(fg::FermionicMatsubaraGrid, nfreq::I64, β::F64)
Rebuild the FermionicMatsubaraGrid struct via new nfreq
and β
parameters.
Arguments
- fg -> A FermionicMatsubaraGrid struct.
- nfreq -> Number of Matsubara frequencies.
- β -> Inverse temperature.
Returns
N/A
See also: FermionicMatsubaraGrid
.
rebuild!(bg::BosonicImaginaryTimeGrid, ntime::I64, β::F64)
Rebuild the BosonicImaginaryTimeGrid struct via new ntime
and β
parameters.
Arguments
- bg -> A BosonicImaginaryTimeGrid struct.
- ntime -> Number of time slices.
- β -> Inverse temperature.
Returns
N/A
See also: BosonicImaginaryTimeGrid
.
rebuild!(bg::BosonicMatsubaraGrid, nfreq::I64, β::F64)
Rebuild the BosonicMatsubaraGrid struct via new nfreq
and β
parameters.
Arguments
- bg -> A BosonicMatsubaraGrid struct.
- nfreq -> Number of Matsubara frequencies.
- β -> Inverse temperature.
Returns
N/A
See also: BosonicMatsubaraGrid
.
Base.resize!
— FunctionBase.resize!(fg::FermionicMatsubaraGrid, nfreq::I64)
Reduce the size of the fermionic Matsubara grid. Note that nfreq
should be smaller than or equal to fg.nfreq
. This function is called by the NevanAC solver only.
Arguments
- fg -> A FermionicMatsubaraGrid struct.
- nfreq -> Number of Matsubara frequencies.
Returns
N/A
See also: FermionicMatsubaraGrid
.
Base.resize!(bg::BosonicMatsubaraGrid, nfreq::I64)
Reduce the size of the bosonic Matsubara grid. Note that nfreq
should be smaller than or equal to bg.nfreq
. This function is called by the NevanAC solver only.
Arguments
- bg -> A BosonicMatsubaraGrid struct.
- nfreq -> Number of Matsubara frequencies.
Returns
N/A
See also: BosonicMatsubaraGrid
.
Base.reverse!
— FunctionBase.reverse!(fg::FermionicMatsubaraGrid)
Reverse the fermionic Matsubara grid. This function is called by the NevanAC
solver only.
See also: FermionicMatsubaraGrid
.
Base.reverse!(bg::BosonicMatsubaraGrid)
Reverse the bosonic Matsubara grid. This function is called by the NevanAC
solver only.
See also: BosonicMatsubaraGrid
.