Skip to content

Commit 874ddb3

Browse files
committed
Fix for rectangular matrices
1 parent ad98095 commit 874ddb3

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

src/banded/BandedMatrix.jl

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -264,23 +264,23 @@ BandedMatrix(A::AbstractMatrix) = _BandedMatrix(MemoryLayout(A), A)
264264
## specialised
265265
# use bandeddata if possible
266266
_BandedMatrix(::BandedColumns, A::AbstractMatrix) = _BandedMatrix(copy(bandeddata(A)), axes(A,1), bandwidths(A)...)
267-
function _BandedMatrix(::BandedRows, A::AbstractMatrix)
267+
function _BandedMatrix(::BandedMatrices.BandedRows, A::AbstractMatrix)
268268
bdata = bandedrowsdata(A)
269269
u, ℓ = bandwidths(A)
270270
m, n = size(A)
271-
data_new = similar(bdata, eltype(bdata), size(bdata, 2), size(A, 2))
271+
data_new = similar(bdata, eltype(bdata), + u + 1, n)
272272
for i in 1:(ℓ+u+1)
273-
d = u + 1 - i
273+
d = u + 1 - i
274274
row_new =+ 1 + d
275-
k_start = max(1, 1 - d)
276-
k_end = min(m, n - d)
275+
k_start = max(1, 1 - d)
276+
k_end = min(n, m - d)
277277
if k_start k_end
278278
col_start_A = k_start + d
279279
col_end_A = k_end + d
280280
copyto!(view(data_new, row_new, k_start:k_end), view(bdata, col_start_A:col_end_A, i))
281281
end
282282
end
283-
return _BandedMatrix(data_new, axes(A, 2), u, ℓ)
283+
return _BandedMatrix(data_new, axes(A, 1), u, ℓ)
284284
end
285285
function _BandedMatrix(::DiagonalLayout, A::AbstractMatrix{T}) where T
286286
m,n = size(A)

0 commit comments

Comments
 (0)