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

Types

ACTest.AbstractGridType
AbstractGrid

An abstract type representing the imaginary axis. It is used to build the internal type system.

ACTest.FermionicMatsubaraGridType
FermionicMatsubaraGrid

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.BosonicImaginaryTimeGridType
BosonicImaginaryTimeGrid

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.BosonicMatsubaraGridType
BosonicMatsubaraGrid

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.FermionicImaginaryTimeGridMethod
FermionicImaginaryTimeGrid(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.FermionicMatsubaraGridMethod
FermionicMatsubaraGrid(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.BosonicImaginaryTimeGridMethod
BosonicImaginaryTimeGrid(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.BosonicMatsubaraGridMethod
BosonicMatsubaraGrid(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.iterateMethod
Base.iterate(fg::FermionicImaginaryTimeGrid)

Advance the iterator of a FermionicImaginaryTimeGrid struct to obtain the next grid point.

See also: FermionicImaginaryTimeGrid.

Base.iterateMethod
Base.iterate(fg::FermionicMatsubaraGrid)

Advance the iterator of a FermionicMatsubaraGrid struct to obtain the next grid point.

See also: FermionicMatsubaraGrid.

Base.iterateMethod
Base.iterate(bg::BosonicImaginaryTimeGrid)

Advance the iterator of a BosonicImaginaryTimeGrid struct to obtain the next grid point.

See also: BosonicImaginaryTimeGrid.

Base.iterateMethod
Base.iterate(bg::BosonicMatsubaraGrid)

Advance the iterator of a BosonicMatsubaraGrid struct to obtain the next grid point.

See also: BosonicMatsubaraGrid.

Base.iterateMethod
Base.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.iterateMethod
Base.iterate(fg::FermionicMatsubaraGrid, i::I64)

Create an iterable object for visiting each index of a FermionicMatsubaraGrid struct.

See also: FermionicMatsubaraGrid.

Base.iterateMethod
Base.iterate(bg::BosonicImaginaryTimeGrid, i::I64)

Create an iterable object for visiting each index of a BosonicImaginaryTimeGrid struct.

See also: BosonicImaginaryTimeGrid.

Base.iterateMethod
Base.iterate(bg::BosonicMatsubaraGrid, i::I64)

Create an iterable object for visiting each index of a BosonicMatsubaraGrid struct.

See also: BosonicMatsubaraGrid.

Base.eachindexMethod
Base.eachindex(fg::FermionicMatsubaraGrid)

Create an iterable object for visiting each index of a FermionicMatsubaraGrid struct.

See also: FermionicMatsubaraGrid.

Base.eachindexMethod
Base.eachindex(bg::BosonicImaginaryTimeGrid)

Create an iterable object for visiting each index of a BosonicImaginaryTimeGrid struct.

See also: BosonicImaginaryTimeGrid.

Base.eachindexMethod
Base.eachindex(bg::BosonicMatsubaraGrid)

Create an iterable object for visiting each index of a BosonicMatsubaraGrid struct.

See also: BosonicMatsubaraGrid.

Base.getindexMethod
Base.getindex(fg::FermionicImaginaryTimeGrid, ind::I64)

Retrieve the value(s) stored at the given key or index within a FermionicImaginaryTimeGrid struct.

See also: FermionicImaginaryTimeGrid.

Base.getindexMethod
Base.getindex(fg::FermionicMatsubaraGrid, ind::I64)

Retrieve the value(s) stored at the given key or index within a FermionicMatsubaraGrid struct.

See also: FermionicMatsubaraGrid.

Base.getindexMethod
Base.getindex(bg::BosonicImaginaryTimeGrid, ind::I64)

Retrieve the value(s) stored at the given key or index within a BosonicImaginaryTimeGrid struct.

See also: BosonicImaginaryTimeGrid.

Base.getindexMethod
Base.getindex(bg::BosonicMatsubaraGrid, ind::I64)

Retrieve the value(s) stored at the given key or index within a BosonicMatsubaraGrid struct.

See also: BosonicMatsubaraGrid.

Base.getindexMethod
Base.getindex(fg::FermionicImaginaryTimeGrid, I::UnitRange{I64})

Return a subset of a FermionicImaginaryTimeGrid struct as specified by I.

See also: FermionicImaginaryTimeGrid.

Base.getindexMethod
Base.getindex(fg::FermionicMatsubaraGrid, I::UnitRange{I64})

Return a subset of a FermionicMatsubaraGrid struct as specified by I.

See also: FermionicMatsubaraGrid.

Base.getindexMethod
Base.getindex(bg::BosonicImaginaryTimeGrid, I::UnitRange{I64})

Return a subset of a BosonicImaginaryTimeGrid struct as specified by I.

See also: BosonicImaginaryTimeGrid.

Base.getindexMethod
Base.getindex(bg::BosonicMatsubaraGrid, I::UnitRange{I64})

Return a subset of a BosonicMatsubaraGrid struct as specified by I.

See also: BosonicMatsubaraGrid.

Utilities

ACTest.rebuild!Function
rebuild!(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!Function
Base.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!Function
Base.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.