@@ -28,21 +28,15 @@ struct BraidingTensor{T,S} <: AbstractTensorMap{T,S,2,2}
2828 # partial construction: only construct rowr and colr when needed
2929 end
3030end
31- function BraidingTensor {T} (V1:: S , V2:: S , adjoint:: Bool = false ) where {T,S <: IndexSpace }
32- return BraidingTensor {T,S} (V1, V2, adjoint)
31+ function BraidingTensor {T} (V1:: IndexSpace , V2:: IndexSpace , adjoint:: Bool = false ) where {T}
32+ return BraidingTensor {T,S} (promote ( V1, V2) ... , adjoint)
3333end
3434function BraidingTensor {T} (V1:: IndexSpace , V2:: IndexSpace , adjoint:: Bool = false ) where {T}
3535 return BraidingTensor {T} (promote (V1, V2)... , adjoint)
3636end
37- function BraidingTensor (V1:: S , V2:: S , adjoint:: Bool = false ) where {S<: IndexSpace }
38- if BraidingStyle (sectortype (S)) isa SymmetricBraiding
39- return BraidingTensor {Float64,S} (V1, V2, adjoint)
40- else
41- return BraidingTensor {ComplexF64,S} (V1, V2, adjoint)
42- end
43- end
4437function BraidingTensor (V1:: IndexSpace , V2:: IndexSpace , adjoint:: Bool = false )
45- return BraidingTensor (promote (V1, V2)... , adjoint)
38+ T = BraidingStyle (sectortype (S)) isa SymmetricBraiding ? Float64 : ComplexF64
39+ return BraidingTensor {T} (V1, V2, adjoint)
4640end
4741function BraidingTensor (V:: HomSpace , adjoint:: Bool = false )
4842 domain (V) == reverse (codomain (V)) ||
0 commit comments