TJ operators
TensorKitTensors.TJOperators.S_exchange
— FunctionS_exchange(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the spin exchange operator S⋅S.
TensorKitTensors.TJOperators.S_min
— FunctionS_min(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool=false)
Return the spin-minus operator.
TensorKitTensors.TJOperators.S_minplus
— FunctionS_minplus(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the two-body operator S⁻S⁺. The only nonzero matrix element corresponds to |↓↑⟩ <-- |↑↓⟩
.
TensorKitTensors.TJOperators.S_plus
— FunctionS_plus(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool=false)
Return the spin-plus operator.
TensorKitTensors.TJOperators.S_plusmin
— FunctionS_plusmin(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the two-body operator S⁺S⁻. The only nonzero matrix element corresponds to |↑↓⟩ <-- |↓↑⟩
.
TensorKitTensors.TJOperators.S_x
— FunctionS_x(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool=false)
Return the one-body spin-1/2 x-operator on the electrons.
TensorKitTensors.TJOperators.S_y
— FunctionS_y(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool=false)
Return the one-body spin-1/2 x-operator on the electrons (only defined for Trivial
symmetry).
TensorKitTensors.TJOperators.S_z
— FunctionS_z(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool=false)
Return the one-body spin-1/2 z-operator on the electrons.
TensorKitTensors.TJOperators.c_min_c_plus
— Functionc_min_c_plus(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the two-body operator that annihilates a particle at the first site and creates a particle at the second. This is the sum of u_min_u_plus
and d_min_d_plus
.
TensorKitTensors.TJOperators.c_num
— Functionc_num(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool=false)
Return the one-body operator that counts the number of particles.
TensorKitTensors.TJOperators.c_num_hole
— Functionc_num_hole(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool=false)
Return the one-body operator that counts the number of holes.
TensorKitTensors.TJOperators.c_plus_c_min
— Functionc_plus_c_min(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the two-body operator that creates a particle at the first site and annihilates a particle at the second. This is the sum of u_plus_u_min
and d_plus_d_min
.
TensorKitTensors.TJOperators.c_singlet
— Functionc_singlet(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the two-body singlet operator $(e_{1,↓} e_{2,↑} - e_{1,↓} e_{2,↑}) / sqrt(2)$.
TensorKitTensors.TJOperators.d_min_d_plus
— Functiond_min_d_plus(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the Hermitian conjugate of d_plus_d_min
, i.e. $(e†_{1,↓}, e_{2,↓})† = -e_{1,↓}, e†_{2,↓}$ (note the extra minus sign). It annihilates a spin-down electron at the first site and creates a spin-down electron at the second. The only nonzero matrix element corresponds to |0↓⟩ <-- |↓0⟩
.
TensorKitTensors.TJOperators.d_min_u_min
— Functiond_min_u_min(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the two-body operator $e_{1,↓} e_{2,↑}$ that annihilates a spin-down particle at the first site and a spin-up particle at the second site. The only nonzero matrix element corresponds to |00⟩ <-- |↓↑⟩
.
TensorKitTensors.TJOperators.d_num
— Functiond_num(particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool=false)
Return the one-body operator that counts the number of spin-down electrons.
TensorKitTensors.TJOperators.d_plus_d_min
— Functiond_plus_d_min(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the two-body operator $e†_{1,↓}, e_{2,↓}$ that creates a spin-down electron at the first site and annihilates a spin-down electron at the second. The only nonzero matrix element corresponds to |↓0⟩ <-- |0↓⟩
.
TensorKitTensors.TJOperators.tj_space
— Functiontj_space(particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the local hilbert space for a t-J-type model with the given particle and spin symmetries. The possible symmetries are
- Particle number:
Trivial
,U1Irrep
; - Spin:
Trivial
,U1Irrep
,SU2Irrep
.
Setting slave_fermion = true
switches to the slave-fermion basis.
- basis states for
slave_fermion = false
: |0⟩ = |vac⟩ (vacuum), |↑⟩ = (c↑)†|vac⟩, |↓⟩ = (c↓)†|vac⟩ - basis states for
slave_fermion = true
: (cσ = h† bσ; holon h is fermionic, spinon b_σ is bosonic): |0⟩ = h†|vac⟩, |↑⟩ = (b↑)†|vac⟩, |↓⟩ = (b↓)†|vac⟩
TensorKitTensors.TJOperators.u_min_d_min
— Functionu_min_d_min(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the two-body operator $e_{1,↑} e_{2,↓}$ that annihilates a spin-up particle at the first site and a spin-down particle at the second site. The only nonzero matrix element corresponds to |00⟩ <-- |↑↓⟩
.
TensorKitTensors.TJOperators.u_min_u_plus
— Functionu_min_u_plus(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the Hermitian conjugate of u_plus_u_min
, i.e. $(e†_{1,↑}, e_{2,↑})† = -e_{1,↑}, e†_{2,↑}$ (note the extra minus sign). It annihilates a spin-up electron at the first site and creates a spin-up electron at the second. The only nonzero matrix element corresponds to |0↑⟩ <-- |↑0⟩
.
TensorKitTensors.TJOperators.u_num
— Functionu_num(particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the one-body operator that counts the number of spin-up electrons.
TensorKitTensors.TJOperators.u_plus_u_min
— Functionu_plus_u_min(T, particle_symmetry::Type{<:Sector}, spin_symmetry::Type{<:Sector}; slave_fermion::Bool = false)
Return the two-body operator $e†_{1,↑}, e_{2,↑}$ that creates a spin-up electron at the first site and annihilates a spin-up electron at the second. The only nonzero matrix element corresponds to |↑0⟩ <-- |0↑⟩
.