Skip to content

Commit 394b01e

Browse files
committed
Update test_infql.jl
1 parent 1acc2dd commit 394b01e

File tree

1 file changed

+26
-26
lines changed

1 file changed

+26
-26
lines changed

test/test_infql.jl

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,9 @@
1-
using InfiniteLinearAlgebra, BandedMatrices, LazyArrays, FillArrays, LinearAlgebra, Test
1+
using InfiniteLinearAlgebra, InfiniteArrays, BandedMatrices, LazyArrays, FillArrays, LinearAlgebra, Test
22
import InfiniteLinearAlgebra: LowerHessenbergQ, tail_de, toeptail, InfToeplitz, PertToeplitz
33
import BandedMatrices: _BandedMatrix
44

55
@testset "Inf QL" begin
66
@testset "Toeplitz QLHessenberg" begin
7-
@testset "Derivation" begin
8-
A = BandedMatrix(-1 => Fill(2,∞), 0 => Fill(5,∞), 1 => Fill(0.5,∞))
9-
a = reverse(A.data.args[1])
10-
d,e = tail_de(a)
11-
X = [transpose(a); 0 d e]
12-
Q = LowerHessenbergQ(Fill(ql!(X).Q,∞))
13-
L = _BandedMatrix(Hcat([e; X[2,2]; X[2,1]], X[2,end:-1:1] * Ones{Float64}(1,∞)), ℵ₀, 2, 0)
14-
Qn,Ln = ql(A[1:1000,1:1000])
15-
@test Q[1:10,1:10] Qn[1:10,1:10]
16-
@test Q'A isa MulMatrix
17-
@test Array((Q'A)[1:10,1:10]) [(Q'A)[k,j] for k=1:10,j=1:10]
18-
@test (Q'A)[1:10,1:10] Ln[1:10,1:10] L[1:10,1:10]
19-
20-
A = BandedMatrix(-1 => Fill(2,∞), 0 => Fill(5+im,∞), 1 => Fill(0.5,∞))
21-
a = reverse(A.data.args[1])
22-
d,e = tail_de(a)
23-
X = [transpose(a); 0 d e]
24-
q = ql!(X).Q
25-
Q = LowerHessenbergQ(Fill(q,∞))
26-
L = _BandedMatrix(Hcat([e; X[2,2]; X[2,1]], X[2,end:-1:1] * Ones{Float64}(1,∞)), ℵ₀, 2, 0)
27-
Qn,Ln = ql(A[1:1000,1:1000])
28-
@test Q[1:10,1:10] Qn[1:10,1:10] * diagm(0 => [1; -Ones(9)] )
29-
@test (Q'A)[1:10,1:10] diagm(0 => [1; -Ones(9)] ) * Ln[1:10,1:10] L[1:10,1:10]
30-
end
31-
327
@testset "Tridiagonal Toeplitz" begin
338
for (Z,A,B) in ((2.0,5.1,0.5), (2.0,2.2,0.5), (2.0,-2.2,0.5), (2.0,-5.1,0.5),
349
(0.5,5.1,2.0), (0.5,-5.1,2.0))
@@ -179,4 +154,29 @@ import BandedMatrices: _BandedMatrix
179154
u = F \ b
180155
@test (A*u)[1:10] [1; zeros(9)]
181156
end
157+
158+
@testset "Derivation" begin
159+
A = BandedMatrix(-1 => Fill(2,∞), 0 => Fill(5,∞), 1 => Fill(0.5,∞))
160+
a = reverse(A.data.args[1])
161+
d,e = tail_de(a)
162+
X = [transpose(a); 0 d e]
163+
Q = LowerHessenbergQ(Fill(ql!(X).Q,∞))
164+
L = _BandedMatrix(Hcat([e; X[2,2]; X[2,1]], X[2,end:-1:1] * Ones{Float64}(1,∞)), ℵ₀, 2, 0)
165+
Qn,Ln = ql(A[1:1000,1:1000])
166+
@test Q[1:10,1:10] Qn[1:10,1:10]
167+
@test Q'A isa MulMatrix
168+
@test Array((Q'A)[1:10,1:10]) [(Q'A)[k,j] for k=1:10,j=1:10]
169+
@test (Q'A)[1:10,1:10] Ln[1:10,1:10] L[1:10,1:10]
170+
171+
A = BandedMatrix(-1 => Fill(2,∞), 0 => Fill(5+im,∞), 1 => Fill(0.5,∞))
172+
a = reverse(A.data.args[1])
173+
d,e = tail_de(a)
174+
X = [transpose(a); 0 d e]
175+
q = ql!(X).Q
176+
Q = LowerHessenbergQ(Fill(q,∞))
177+
L = _BandedMatrix(Hcat([e; X[2,2]; X[2,1]], X[2,end:-1:1] * Ones{Float64}(1,∞)), ℵ₀, 2, 0)
178+
Qn,Ln = ql(A[1:1000,1:1000])
179+
@test Q[1:10,1:10] Qn[1:10,1:10] * diagm(0 => [1; -Ones(9)] )
180+
@test (Q'A)[1:10,1:10] diagm(0 => [1; -Ones(9)] ) * Ln[1:10,1:10] L[1:10,1:10]
181+
end
182182
end

0 commit comments

Comments
 (0)