Skip to content

Commit e49062d

Browse files
committed
update frobeniusschur
1 parent 792d28f commit e49062d

3 files changed

Lines changed: 15 additions & 14 deletions

File tree

src/TensorKit.jl

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,8 @@ export infimum, supremum, isisomorphic, ismonomorphic, isepimorphic
4141

4242
# methods for sectors and properties thereof
4343
export sectortype, sectors, hassector, Nsymbol, Fsymbol, Rsymbol, Bsymbol,
44-
frobeniusschur, twist, otimes, sectorscalartype, deligneproduct
44+
frobeniusschur, frobenius_schur_phase, frobenius_schur_indicator,
45+
twist, otimes, sectorscalartype, deligneproduct
4546
export fusiontrees, braid, permute, transpose
4647
export ZNSpace, SU2Irrep, U1Irrep, CU1Irrep
4748
# other fusion tree manipulations, should not be exported:

src/fusiontrees/manipulations.jl

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,7 @@ function flip(f₁::FusionTree{I, N₁}, f₂::FusionTree{I, N₂}, i::Int; inv:
246246
@assert 0 < i N₁ + N₂
247247
if i N₁
248248
a = f₁.uncoupled[i]
249-
χₐ = frobeniusschur(a)
249+
χₐ = frobenius_schur_phase(a)
250250
θₐ = twist(a)
251251
if !inv
252252
factor = f₁.isdual[i] ? χₐ * θₐ : one(θₐ)
@@ -259,7 +259,7 @@ function flip(f₁::FusionTree{I, N₁}, f₂::FusionTree{I, N₂}, i::Int; inv:
259259
else
260260
i -= N₁
261261
a = f₂.uncoupled[i]
262-
χₐ = frobeniusschur(a)
262+
χₐ = frobenius_schur_phase(a)
263263
θₐ = twist(a)
264264
if !inv
265265
factor = f₂.isdual[i] ? χₐ * one(θₐ) : θₐ
@@ -302,7 +302,7 @@ function bendright(f₁::FusionTree{I, N₁}, f₂::FusionTree{I, N₂}) where {
302302

303303
coeff₀ = sqrtdim(c) * invsqrtdim(a)
304304
if f₁.isdual[N₁]
305-
coeff₀ *= conj(frobeniusschur(dual(b)))
305+
coeff₀ *= conj(frobenius_schur_phase(dual(b)))
306306
end
307307
if FusionStyle(I) isa MultiplicityFreeFusion
308308
coeff = coeff₀ * Bsymbol(a, b, c)
@@ -343,7 +343,7 @@ function foldright(f₁::FusionTree{I, N₁}, f₂::FusionTree{I, N₂}) where {
343343
isduala = f₁.isdual[1]
344344
factor = sqrtdim(a)
345345
if !isduala
346-
factor *= conj(frobeniusschur(a))
346+
factor *= conj(frobenius_schur_phase(a))
347347
end
348348
c1 = dual(a)
349349
c2 = f₁.coupled
@@ -767,7 +767,7 @@ function elementary_trace(f::FusionTree{I, N}, i) where {I <: Sector, N}
767767
end
768768
end
769769
if f.isdual[i]
770-
coeff *= frobeniusschur(b)
770+
coeff *= frobenius_schur_phase(b)
771771
end
772772
push!(newtrees, f′ => coeff)
773773
return newtrees
@@ -777,7 +777,7 @@ function elementary_trace(f::FusionTree{I, N}, i) where {I <: Sector, N}
777777
f′ = FusionTree{I}((), unit, (), (), ())
778778
coeff = sqrtdim(b)
779779
if !(f.isdual[N])
780-
coeff *= conj(frobeniusschur(b))
780+
coeff *= conj(frobenius_schur_phase(b))
781781
end
782782
push!(newtrees, f′ => coeff)
783783
return newtrees
@@ -798,7 +798,7 @@ function elementary_trace(f::FusionTree{I, N}, i) where {I <: Sector, N}
798798
f′ = FusionTree(uncoupled′, unit, isdual′, inner′, vertices′)
799799
coeff *= sqrtdim(b)
800800
if !(f.isdual[N])
801-
coeff *= conj(frobeniusschur(b))
801+
coeff *= conj(frobenius_schur_phase(b))
802802
end
803803
newtrees[f′] = get(newtrees, f′, zero(coeff)) + coeff
804804
end

src/tensors/braidingtensor.jl

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -385,10 +385,10 @@ end
385385
# f₁′′.innerlines[1] == u || continue
386386
# coeff = coeff′ * coeff′′ * sqrtdim(a) * sqrtdim(b)
387387
# if f₁′′.isdual[1]
388-
# coeff *= frobeniusschur(a)
388+
# coeff *= frobenius_schur_phase(a)
389389
# end
390390
# if f₁′′.isdual[3]
391-
# coeff *= frobeniusschur(b)
391+
# coeff *= frobenius_schur_phase(b)
392392
# end
393393
# f12 = (f₀, f₂′)
394394
# if @isdefined newtrees
@@ -453,10 +453,10 @@ end
453453
# f₂′′.innerlines[1] == u || continue
454454
# coeff = coeff′ * conj(coeff′′ * sqrtdim(a) * sqrtdim(b))
455455
# if f₂′′.isdual[1]
456-
# coeff *= conj(frobeniusschur(a))
456+
# coeff *= conj(frobenius_schur_phase(a))
457457
# end
458458
# if f₂′′.isdual[3]
459-
# coeff *= conj(frobeniusschur(b))
459+
# coeff *= conj(frobenius_schur_phase(b))
460460
# end
461461
# f12 = (f₁′, f₀)
462462
# if @isdefined newtrees
@@ -517,7 +517,7 @@ end
517517
# f₁′′.innerlines[1] == u || continue
518518
# coeff = coeff′ * coeff′′ * sqrtdim(a)
519519
# if f₁′′.isdual[1]
520-
# coeff *= frobeniusschur(a)
520+
# coeff *= frobenius_schur_phase(a)
521521
# end
522522
# f₁′′′ = FusionTree{I}((b,), b, (f₁′′.isdual[3],), (), ())
523523
# f12 = (f₁′′′, f₂′)
@@ -579,7 +579,7 @@ end
579579
# f₂′′.innerlines[1] == u || continue
580580
# coeff = coeff′ * conj(coeff′′ * sqrtdim(a))
581581
# if f₂′′.isdual[1]
582-
# coeff *= conj(frobeniusschur(a))
582+
# coeff *= conj(frobenius_schur_phase(a))
583583
# end
584584
# f₂′′′ = FusionTree{I}((b,), b, (f₂′′.isdual[3],), (), ())
585585
# f12 = (f₁′, f₂′′′)

0 commit comments

Comments
 (0)