diff --git a/src/sectors.jl b/src/sectors.jl index b0c10a3..814336e 100644 --- a/src/sectors.jl +++ b/src/sectors.jl @@ -417,7 +417,7 @@ context of line bending. """ function frobenius_schur_indicator(a::Sector) ν = frobenius_schur_phase(a) - return a == conj(a) ? zero(ν) : ν + return a == conj(a) ? ν : zero(ν) end # Not necessary diff --git a/test/runtests.jl b/test/runtests.jl index 14ea961..997cb4e 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -90,6 +90,26 @@ end @test size(Rsymbol(a, b, c)) == (0, 0) end +@testset "Frobenius-Schur" begin + @test frobenius_schur_phase(SU2Irrep(0)) == 1.0 + @test frobenius_schur_phase(SU2Irrep(1 // 2)) == -1.0 + @test frobenius_schur_phase(Z2Irrep(0)) == 1.0 + @test frobenius_schur_phase(Z2Irrep(1)) == 1.0 + @test frobenius_schur_phase(Z3Irrep(0)) == 1.0 + @test frobenius_schur_phase(Z3Irrep(1)) == 1.0 + @test frobenius_schur_phase(U1Irrep(0)) == 1.0 + @test frobenius_schur_phase(U1Irrep(1)) == 1.0 + + @test frobenius_schur_indicator(SU2Irrep(0)) == 1.0 + @test frobenius_schur_indicator(SU2Irrep(1 // 2)) == -1.0 + @test frobenius_schur_indicator(Z2Irrep(0)) == 1.0 + @test frobenius_schur_indicator(Z2Irrep(1)) == 1.0 + @test frobenius_schur_indicator(Z3Irrep(0)) == 1.0 + @test frobenius_schur_indicator(Z3Irrep(1)) == 0.0 + @test frobenius_schur_indicator(U1Irrep(0)) == 1.0 + @test frobenius_schur_indicator(U1Irrep(1)) == 0.0 +end + @testset "SectorProduct printing" begin a = SU2Irrep(1) @test repr(a ⊗ a) == "Irrep[SU₂](1) ⊗ Irrep[SU₂](1)"