@@ -5,7 +5,7 @@ import InfiniteLinearAlgebra: qltail, toeptail, tailiterate, tailiterate!, tail_
5
5
rightasymptotics, QLHessenberg, ConstRows, PertConstRows, chop, chop!,
6
6
BandedToeplitzLayout, PertToeplitzLayout, TridiagonalToeplitzLayout, BidiagonalToeplitzLayout
7
7
import Base: BroadcastStyle
8
- import BlockArrays: _BlockArray
8
+ import BlockArrays: _BlockArray, blockcolsupport
9
9
import BlockBandedMatrices: isblockbanded, _BlockBandedMatrix
10
10
import MatrixFactorizations: QLPackedQ
11
11
import BandedMatrices: bandeddata, _BandedMatrix, BandedStyle
@@ -100,6 +100,24 @@ include("test_infbanded.jl")
100
100
@test B[Block .(1 : 10 ), Block .(1 : 10 )] isa BlockSkylineMatrix
101
101
end
102
102
103
+ @testset " DiagTrav" begin
104
+ C = zeros (∞,∞);
105
+ C[1 : 3 ,1 : 4 ] .= [1 2 3 4 ; 5 6 7 8 ; 9 10 11 12 ]
106
+ A = DiagTrav (C)
107
+ @test blockcolsupport (A) == Block .(1 : 6 )
108
+ @test A[Block .(1 : 7 )] == [1 ; 5 ; 2 ; 9 ; 6 ; 3 ; 0 ; 10 ; 7 ; 4 ; 0 ; 0 ; 11 ; 8 ; 0 ; 0 ; 0 ; 0 ; 12 ; zeros (9 )]
109
+
110
+ C = zeros (∞,4 );
111
+ C[1 : 3 ,1 : 4 ] .= [1 2 3 4 ; 5 6 7 8 ; 9 10 11 12 ]
112
+ A = DiagTrav (C)
113
+ @test A[Block .(1 : 7 )] == [1 ; 5 ; 2 ; 9 ; 6 ; 3 ; 0 ; 10 ; 7 ; 4 ; 0 ; 0 ; 11 ; 8 ; 0 ; 0 ; 0 ; 12 ; zeros (4 )]
114
+
115
+ C = zeros (3 ,∞);
116
+ C[1 : 3 ,1 : 4 ] .= [1 2 3 4 ; 5 6 7 8 ; 9 10 11 12 ]
117
+ A = DiagTrav (C)
118
+ @test A[Block .(1 : 7 )] == [1 ; 5 ; 2 ; 9 ; 6 ; 3 ; 10 ; 7 ; 4 ; 11 ; 8 ; 0 ; 12 ; zeros (5 )]
119
+ end
120
+
103
121
@testset " KronTrav" begin
104
122
Δ = BandedMatrix (1 => Ones (∞), - 1 => Ones (∞)) / 2
105
123
A = KronTrav (Δ - 2 I, Eye (∞))
0 commit comments