Fermion
Predefined local spaces for fermions.
Spinless fermion
FiniteMPS.U₁SpinlessFermion
— Module module U₁SpinlessFermion
Prepare some commonly used objects for U₁ spinless fermions.
Fields
pspace::VectorSpace
Local d = 2
Hilbert space.
Z::TensorMap
Rank-2
fermion parity operator Z = (-1)^n
.
n::TensorMap
Rank-2
particle number operator.
FdagF::NTuple{2, TensorMap}
Two rank-3
operators of hopping c^dag c
.
FFdag::NTuple{2, TensorMap}
Two rank-3
operators of hopping c c^dag
.
FiniteMPS.U1SpinlessFermion
— Module const U1SpinlessFermion = U₁SpinlessFermion
Spin-1/2 fermion
FiniteMPS.U₁SU₂Fermion
— Module module U₁SU₂Fermion
Prepare some commonly used objects for U₁×SU₂ fermions.
Nothing is exported, please call U₁SU₂Fermion.xxx
to use xxx
.
Fields
pspace::VectorSpace
Local d = 4
Hilbert space.
Z::TensorMap
Rank-2
fermion parity operator Z = (-1)^n
.
n::TensorMap
Rank-2
particle number operator n = n↑ + n↓
.
nd::TensorMap
Rank-2
double occupancy operator nd = n↑n↓
.
SS::NTuple{2, TensorMap}
Two rank-3
operators of Heisenberg S⋅S
interaction.
SSS::NTuple{3, TensorMap}
Three operators of chiral operator imag(S⋅(S×S))
. Rank = (3, 4, 3)
. SSS = imag(S⋅(S×S)) = -im * S⋅(S×S) –> S⋅(S×S) = im * SSS NOTICE: The chiral operator S⋅(S×S)
is a pure imaginary operator under the current basis. Thus define SSS
as the imaginary part of S⋅(S×S) to reduce the computational overhead.
FdagF::NTuple{2, TensorMap}
Two rank-3
operators of hopping c↑^dag c↑ + c↓^dag c↓
.
FFdag::NTuple{2, TensorMap}
Two rank-3
operators of hopping c↑ c↑^dag + c↓ c↓^dag
.
ΔₛdagΔₛ::NTuple{4, TensorMap}
Four operators of singlet pairing correlation Δₛ^dagΔₛ
, where Δₛ = (c↓c↑ - c↑c↓)/√2
. Rank = (3, 4, 4, 3)
.
ΔₜdagΔₜ::NTuple{4, TensorMap}
Four operators of triplet pairing correlation Δₜ^dag⋅Δₜ
, where Δₜ
is the triplet pairing operator that carries 2
charge and 1
spin quantum numbers. Rank = (3, 4, 4, 3)
.
Δₛ::NTuple{2, TensorMap}
Δₛdag::NTuple{2, TensorMap}
Singlet pairing operators Δₛ
and Δₛ^dag
. Rank = (4, 3)
. Note the first operator has nontrivial left bond index.
CpCm::NTuple{2, TensorMap}
Two rank-3
operators of C+C-
correlation where C+ = c↑^dag c↓^dag
and C- = C+^dag = c↓c↑
. Note both operators are bosonic.
FiniteMPS.U1SU2Fermion
— Module const U1SU2Fermion = U₁SU₂Fermion
FiniteMPS.ℤ₂SU₂Fermion
— Module module ℤ₂SU₂Fermion
Prepare some commonly used objects for ℤ₂×SU₂ fermions. Basis convention in (0, 0)
sector is {|0⟩, |↑↓⟩}
.
Each operator has the same name and behavior as U₁SU₂Fermion
, details please see U₁SU₂Fermion
.
FiniteMPS.Z2SU2Fermion
— Module const Z2SU2Fermion = ℤ₂SU₂Fermion
FiniteMPS.U₁U₁Fermion
— Module module U₁U₁Fermion
Prepare the local space of d = 4
spin-1/2 fermions with U₁
charge and U₁
spin symmetry.
Fields
pspace::VectorSpace
Local d = 4
Hilbert space.
Z::TensorMap
Rank-2
fermion parity operator Z = (-1)^n
.
n₊::TensorMap
n₋::TensorMap
n::TensorMap
Rank-2
particle number operators. ₊
and ₋
denote spin up and down as ↑
and ↓
cannot be used in variable names.
nd::TensorMap
Rank-2
double occupancy operator nd = n↑n↓
.
Sz::TensorMap
Rank-2
spin-z operator Sz = (n↑ - n↓)/2
.
S₊₋::NTuple{2, TensorMap}
S₋₊::NTuple{2, TensorMap}
Two rank-3
operators of S₊₋
and S₋₊
interaction. Note Heisenberg S⋅S = SzSz + (S₊₋ + S₋₊)/2
.
FdagF₊::NTuple{2, TensorMap}
FdagF₋::NTuple{2, TensorMap}
Two rank-3
operators of hopping c↑^dag c↑
and c↓^dag c↓
.
FFdag₊::NTuple{2, TensorMap}
FFdag₋::NTuple{2, TensorMap}
Two rank-3
operators of hopping c↑ c↑^dag
and c↓ c↓^dag
.
ΔdagΔ₊₊::NTuple{4, TensorMap}
ΔdagΔ₋₋::NTuple{4, TensorMap}
ΔdagΔ₊₋::NTuple{4, TensorMap}
Rank-4
operators of pairing correlation. Note ΔdagΔ₊₋
means c↑^dag c↓^dag c↓ c↑
.
EdagE₊::NTuple{4, TensorMap}
EdagE₋::NTuple{4, TensorMap}
Rank-4
operators of triplet exciton correlation. Note EdagE₊
means c↑^dag c↓ c↑ c↓^dag
so (i, j, i, j)
gives the correlation of the same pair.
FiniteMPS.U1U1Fermion
— Module const U1U1Fermion = U₁U₁Fermion
tJ fermion
Spin-1/2 fermion without double occupancy.
FiniteMPS.U₁SU₂tJFermion
— Module module U₁SU₂tJFermion
Prepare some commonly used objects for U₁×SU₂ tJ
fermions, i.e. local d = 3
Hilbert space without double occupancy.
Behaviors of all operators are the same as U₁SU₂Fermion
up to the projection, details please see U₁SU₂Fermion
.
FiniteMPS.U1SU2tJFermion
— Module const U1SU2tJFermion = U₁SU₂tJFermion
FiniteMPS.U₁U₁tJFermion
— Module module U₁U₁tJFermion
Prepare some commonly used objects for U₁×U₁ tJ
fermions, i.e. local d = 3
Hilbert space without double occupancy.
Behaviors of all operators are the same as U₁U₁Fermion
up to the projection, details please see U₁U₁Fermion
.
FiniteMPS.U1U1tJFermion
— Module const U1U1tJFermion = U₁U₁tJFermion
FiniteMPS.ℤ₂SU₂tJFermion
— Module module ℤ₂SU₂tJFermion
Prepare some commonly used objects for ℤ₂×SU₂ tJ
fermions, i.e. local d = 3
Hilbert space without double occupancy.
Behaviors of all operators are the same as ℤ₂SU₂Fermion
up to the projection, details please see ℤ₂SU₂Fermion
.
FiniteMPS.Z2SU2tJFermion
— Module const Z2SU2tJFermion = ℤ₂SU₂tJFermion