-
Notifications
You must be signed in to change notification settings - Fork 18
Open
Description
We (with @pbrehmer @leburgel) found that the sub-lattice rotated J1-J2 Hamiltonian with U(1) spin symmetry evaluates without error. It turns out that in MPSKitModels S_xx, S_yy both evaluates with U1Irrep. But upon a closer look, the results do not look right. For example, compare the Trivial and U1Irrep version of S_xx:
julia> using Pkg, TensorKit, MPSKitModels
julia> Pkg.status("MPSKitModels")
Status `~/.julia/environments/v1.11/Project.toml`
[ca635005] MPSKitModels v0.4.3
julia> Pkg.status("TensorKit")
Status `~/.julia/environments/v1.11/Project.toml`
⌃ [07d1fe3e] TensorKit v0.14.9
Info Packages marked with ⌃ have new versions available and may be upgradable.
julia> S_xx(Trivial)
TensorMap((ℂ^2 ⊗ ℂ^2) ← (ℂ^2 ⊗ ℂ^2)):
[:, :, 1, 1] =
0.0 + 0.0im 0.0 + 0.0im
0.0 + 0.0im 0.25 + 0.0im
[:, :, 2, 1] =
0.0 + 0.0im 0.25 + 0.0im
0.0 + 0.0im 0.0 + 0.0im
[:, :, 1, 2] =
0.0 + 0.0im 0.0 + 0.0im
0.25 + 0.0im 0.0 + 0.0im
[:, :, 2, 2] =
0.25 + 0.0im 0.0 + 0.0im
0.0 + 0.0im 0.0 + 0.0im
julia> S_xx(U1Irrep)
TensorMap((Rep[U₁](1/2=>1, -1/2=>1) ⊗ Rep[U₁](1/2=>1, -1/2=>1)) ← (Rep[U₁](1/2=>1, -1/2=>1) ⊗ Rep[U₁](1/2=>1, -1/2=>1))):
* Data for sector (Irrep[U₁](-1/2), Irrep[U₁](1/2)) ← (Irrep[U₁](-1/2), Irrep[U₁](1/2)):
[:, :, 1, 1] =
0.0 + 0.0im
* Data for sector (Irrep[U₁](1/2), Irrep[U₁](-1/2)) ← (Irrep[U₁](-1/2), Irrep[U₁](1/2)):
[:, :, 1, 1] =
0.25 + 0.0im
* Data for sector (Irrep[U₁](-1/2), Irrep[U₁](1/2)) ← (Irrep[U₁](1/2), Irrep[U₁](-1/2)):
[:, :, 1, 1] =
0.25 + 0.0im
* Data for sector (Irrep[U₁](1/2), Irrep[U₁](-1/2)) ← (Irrep[U₁](1/2), Irrep[U₁](-1/2)):
[:, :, 1, 1] =
0.0 + 0.0im
* Data for sector (Irrep[U₁](1/2), Irrep[U₁](1/2)) ← (Irrep[U₁](1/2), Irrep[U₁](1/2)):
[:, :, 1, 1] =
0.0 + 0.0im
* Data for sector (Irrep[U₁](-1/2), Irrep[U₁](-1/2)) ← (Irrep[U₁](-1/2), Irrep[U₁](-1/2)):
[:, :, 1, 1] =
0.0 + 0.0imIn the Trivial version, there are 4 nonzero elements, corresponding to
[2, 2, 1, 1]: |↓↓⟩ ← |↑↑⟩
[1, 2, 2, 1]: |↑↓⟩ ← |↓↑⟩
[2, 1, 1, 2]: |↓↑⟩ ← |↑↓⟩
[1, 1, 2, 2]: |↑↑⟩ ← |↓↓⟩
But the U1Irrep version of S_xx appears to be obtained by projecting out the part that does not preserve z-components of the total spin, removing the elements corresponding to |↓↓⟩ ← |↑↑⟩ and |↑↑⟩ ← |↓↓⟩, with only 2 nonzero elements left. @lkdvos Is this an error when generating 2-spin functions, or an intended design?
Metadata
Metadata
Assignees
Labels
No labels