@@ -120,14 +120,16 @@ end
120120
121121# initialize with already computed data_matrix
122122function fusiontensor (
123- mat:: AbstractBlockSparseMatrix ,
123+ mat:: AbstractMatrix ,
124124 codomain_legs:: Tuple{Vararg{AbstractGradedUnitRange}} ,
125125 domain_legs:: Tuple{Vararg{AbstractGradedUnitRange}} ,
126126)
127127 # init with empty data_matrix to construct trees_block_mapping
128128 ft = FusionTensor (eltype (mat), codomain_legs, domain_legs)
129+ @assert space_isequal (matrix_row_axis (ft), axes (mat, 1 ))
130+ @assert space_isequal (matrix_column_axis (ft), axes (mat, 2 ))
129131 for b in eachblockstoredindex (mat)
130- @assert b in eachblockstoredindex (data_matrix (ft))
132+ @assert b in eachblockstoredindex (data_matrix (ft)) # check matrix block is allowed
131133 data_matrix (ft)[b] = mat[b]
132134 end
133135 return ft
@@ -170,7 +172,7 @@ function initialize_data_matrix(
170172 return mat
171173end
172174
173- function initialize_allowed_sectors! (mat:: AbstractBlockMatrix )
175+ function initialize_allowed_sectors! (mat:: AbstractMatrix )
174176 row_sectors = blocklabels (axes (mat, 1 ))
175177 col_sectors = blocklabels (dual (axes (mat, 2 )))
176178 row_block_indices = findall (in (col_sectors), row_sectors)
0 commit comments