Skip to content

Commit f622982

Browse files
Copilotlkdvos
andcommitted
Rename isisometry to isisometric throughout codebase
Co-authored-by: lkdvos <37111893+lkdvos@users.noreply.github.com>
1 parent c53f309 commit f622982

13 files changed

Lines changed: 74 additions & 74 deletions

File tree

ext/MatrixAlgebraKitChainRulesCoreExt.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ MatrixAlgebraKit.iszerotangent(::AbstractZero) = true
1414
@non_differentiable MatrixAlgebraKit.select_algorithm(args...)
1515
@non_differentiable MatrixAlgebraKit.initialize_output(args...)
1616
@non_differentiable MatrixAlgebraKit.check_input(args...)
17-
@non_differentiable MatrixAlgebraKit.isisometry(args...)
17+
@non_differentiable MatrixAlgebraKit.isisometric(args...)
1818
@non_differentiable MatrixAlgebraKit.isunitary(args...)
1919

2020
function ChainRulesCore.rrule(::typeof(copy_input), f, A)

src/MatrixAlgebraKit.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ using LinearAlgebra: Diagonal, diag, diagind, isdiag
99
using LinearAlgebra: UpperTriangular, LowerTriangular
1010
using LinearAlgebra: BlasFloat, BlasReal, BlasComplex, BlasInt
1111

12-
export isisometry, isunitary, ishermitian, isantihermitian
12+
export isisometric, isunitary, ishermitian, isantihermitian
1313

1414
export project_hermitian, project_antihermitian, project_isometric
1515
export project_hermitian!, project_antihermitian!, project_isometric!

src/common/matrixproperties.jl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
"""
2-
isisometry(A; side=:left, isapprox_kwargs...) -> Bool
2+
isisometric(A; side=:left, isapprox_kwargs...) -> Bool
33
44
Test whether a linear map is an isometry, where the type of isometry is controlled by `kind`:
55
@@ -12,7 +12,7 @@ New specializations should overload [`is_left_isometry`](@ref) and [`is_right_is
1212
1313
See also [`isunitary`](@ref).
1414
"""
15-
function isisometry(A; side::Symbol = :left, isapprox_kwargs...)
15+
function isisometric(A; side::Symbol = :left, isapprox_kwargs...)
1616
side === :left && return is_left_isometry(A; isapprox_kwargs...)
1717
side === :right && return is_right_isometry(A; isapprox_kwargs...)
1818

@@ -25,7 +25,7 @@ end
2525
Test whether a linear map is unitary, i.e. `A * A' ≈ I ≈ A' * A`.
2626
The `isapprox_kwargs` are passed on to `isapprox` to control the tolerances.
2727
28-
See also [`isisometry`](@ref).
28+
See also [`isisometric`](@ref).
2929
"""
3030
function isunitary(A; isapprox_kwargs...)
3131
return is_left_isometry(A; isapprox_kwargs...) &&
@@ -42,7 +42,7 @@ end
4242
Test whether a linear map is a left isometry, i.e. `A' * A ≈ I`.
4343
The `isapprox_kwargs` can be used to control the tolerances of the equality.
4444
45-
See also [`isisometry`](@ref) and [`is_right_isometry`](@ref).
45+
See also [`isisometric`](@ref) and [`is_right_isometry`](@ref).
4646
""" is_left_isometry
4747

4848
function is_left_isometry(A::AbstractMatrix; atol::Real = 0, rtol::Real = defaulttol(A), norm = LinearAlgebra.norm)
@@ -58,7 +58,7 @@ end
5858
Test whether a linear map is a right isometry, i.e. `A * A' ≈ I`.
5959
The `isapprox_kwargs` can be used to control the tolerances of the equality.
6060
61-
See also [`isisometry`](@ref) and [`is_left_isometry`](@ref).
61+
See also [`isisometric`](@ref) and [`is_left_isometry`](@ref).
6262
""" is_right_isometry
6363

6464
function is_right_isometry(A::AbstractMatrix; atol::Real = 0, rtol::Real = defaulttol(A), norm = LinearAlgebra.norm)

test/amd/eigh.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,14 +48,14 @@ end
4848
4949
D1, V1 = @constinferred eigh_trunc(A; alg, trunc=truncrank(r))
5050
@test length(diagview(D1)) == r
51-
@test isisometry(V1)
51+
@test isisometric(V1)
5252
@test A * V1 ≈ V1 * D1
5353
@test LinearAlgebra.opnorm(A - V1 * D1 * V1') ≈ D₀[r + 1]
5454
5555
trunc = trunctol(; atol=s * D₀[r + 1])
5656
D2, V2 = @constinferred eigh_trunc(A; alg, trunc)
5757
@test length(diagview(D2)) == r
58-
@test isisometry(V2)
58+
@test isisometric(V2)
5959
@test A * V2 ≈ V2 * D2
6060
6161
# test for same subspace

test/cuda/eigh.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,14 +43,14 @@ end
4343
4444
D1, V1 = @constinferred eigh_trunc(A; alg, trunc=truncrank(r))
4545
@test length(diagview(D1)) == r
46-
@test isisometry(V1)
46+
@test isisometric(V1)
4747
@test A * V1 ≈ V1 * D1
4848
@test LinearAlgebra.opnorm(A - V1 * D1 * V1') ≈ D₀[r + 1]
4949
5050
trunc = trunctol(; atol = s * D₀[r + 1])
5151
D2, V2 = @constinferred eigh_trunc(A; alg, trunc)
5252
@test length(diagview(D2)) == r
53-
@test isisometry(V2)
53+
@test isisometric(V2)
5454
@test A * V2 ≈ V2 * D2
5555
5656
# test for same subspace

test/eigh.jl

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,14 +52,14 @@ end
5252

5353
D1, V1 = @constinferred eigh_trunc(A; alg, trunc = truncrank(r))
5454
@test length(diagview(D1)) == r
55-
@test isisometry(V1)
55+
@test isisometric(V1)
5656
@test A * V1 V1 * D1
5757
@test LinearAlgebra.opnorm(A - V1 * D1 * V1') D₀[r + 1]
5858

5959
trunc = trunctol(; atol = s * D₀[r + 1])
6060
D2, V2 = @constinferred eigh_trunc(A; alg, trunc)
6161
@test length(diagview(D2)) == r
62-
@test isisometry(V2)
62+
@test isisometric(V2)
6363
@test A * V2 V2 * D2
6464

6565
s = 1 - sqrt(eps(real(T)))

test/lq.jl

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,11 @@ eltypes = (Float32, Float64, ComplexF32, ComplexF64)
1717
@test L isa Matrix{T} && size(L) == (m, minmn)
1818
@test Q isa Matrix{T} && size(Q) == (minmn, n)
1919
@test L * Q A
20-
@test isisometry(Q; side = :right)
20+
@test isisometric(Q; side = :right)
2121
Nᴴ = @constinferred lq_null(A)
2222
@test Nᴴ isa Matrix{T} && size(Nᴴ) == (n - minmn, n)
2323
@test maximum(abs, A * Nᴴ') < eps(real(T))^(2 / 3)
24-
@test isisometry(Nᴴ; side = :right)
24+
@test isisometric(Nᴴ; side = :right)
2525

2626
Ac = similar(A)
2727
L2, Q2 = @constinferred lq_compact!(copy!(Ac, A), (L, Q))
@@ -51,12 +51,12 @@ eltypes = (Float32, Float64, ComplexF32, ComplexF64)
5151
# unblocked algorithm
5252
lq_compact!(copy!(Ac, A), (L, Q); blocksize = 1)
5353
@test L * Q A
54-
@test isisometry(Q; side = :right)
54+
@test isisometric(Q; side = :right)
5555
lq_compact!(copy!(Ac, A), (noL, Q2); blocksize = 1)
5656
@test Q == Q2
5757
lq_null!(copy!(Ac, A), Nᴴ; blocksize = 1)
5858
@test maximum(abs, A * Nᴴ') < eps(real(T))^(2 / 3)
59-
@test isisometry(Nᴴ; side = :right)
59+
@test isisometric(Nᴴ; side = :right)
6060
if m <= n
6161
lq_compact!(copy!(Q2, A), (noL, Q2); blocksize = 1) # in-place Q
6262
@test Q Q2
@@ -66,12 +66,12 @@ eltypes = (Float32, Float64, ComplexF32, ComplexF64)
6666
end
6767
lq_compact!(copy!(Ac, A), (L, Q); blocksize = 8)
6868
@test L * Q A
69-
@test isisometry(Q; side = :right)
69+
@test isisometric(Q; side = :right)
7070
lq_compact!(copy!(Ac, A), (noL, Q2); blocksize = 8)
7171
@test Q == Q2
7272
lq_null!(copy!(Ac, A), Nᴴ; blocksize = 8)
7373
@test maximum(abs, A * Nᴴ') < eps(real(T))^(2 / 3)
74-
@test isisometry(Nᴴ; side = :right)
74+
@test isisometric(Nᴴ; side = :right)
7575
@test Nᴴ * Nᴴ' I
7676

7777
qr_alg = LAPACK_HouseholderQR(; blocksize = 1)
@@ -91,15 +91,15 @@ eltypes = (Float32, Float64, ComplexF32, ComplexF64)
9191
# positive
9292
lq_compact!(copy!(Ac, A), (L, Q); positive = true)
9393
@test L * Q A
94-
@test isisometry(Q; side = :right)
94+
@test isisometric(Q; side = :right)
9595
@test all(>=(zero(real(T))), real(diag(L)))
9696
lq_compact!(copy!(Ac, A), (noL, Q2); positive = true)
9797
@test Q == Q2
9898

9999
# positive and blocksize 1
100100
lq_compact!(copy!(Ac, A), (L, Q); positive = true, blocksize = 1)
101101
@test L * Q A
102-
@test isisometry(Q; side = :right)
102+
@test isisometric(Q; side = :right)
103103
@test all(>=(zero(real(T))), real(diag(L)))
104104
lq_compact!(copy!(Ac, A), (noL, Q2); positive = true, blocksize = 1)
105105
@test Q == Q2

test/orthnull.jl

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,9 @@ end
6868
@test C isa Matrix{T} && size(C) == (minmn, n)
6969
@test N isa Matrix{T} && size(N) == (m, m - minmn)
7070
@test V * C A
71-
@test isisometry(V)
71+
@test isisometric(V)
7272
@test LinearAlgebra.norm(A' * N) 0 atol = MatrixAlgebraKit.defaulttol(T)
73-
@test isisometry(N)
73+
@test isisometric(N)
7474
@test V * V' + N * N' I
7575

7676
M = LinearMap(A)
@@ -85,9 +85,9 @@ end
8585
@test C isa Matrix{T} && size(C) == (minmn, n)
8686
@test N isa Matrix{T} && size(N) == (m, nullity)
8787
@test V * C A
88-
@test isisometry(V)
88+
@test isisometric(V)
8989
@test LinearAlgebra.norm(A' * N) 0 atol = MatrixAlgebraKit.defaulttol(T)
90-
@test isisometry(N)
90+
@test isisometric(N)
9191
end
9292

9393
for alg_qr in ((; positive = true), (; positive = false), LAPACK_HouseholderQR())
@@ -97,9 +97,9 @@ end
9797
@test C isa Matrix{T} && size(C) == (minmn, n)
9898
@test N isa Matrix{T} && size(N) == (m, m - minmn)
9999
@test V * C A
100-
@test isisometry(V)
100+
@test isisometric(V)
101101
@test LinearAlgebra.norm(A' * N) 0 atol = MatrixAlgebraKit.defaulttol(T)
102-
@test isisometry(N)
102+
@test isisometric(N)
103103
@test V * V' + N * N' I
104104
end
105105

@@ -110,9 +110,9 @@ end
110110
@test C2 === C
111111
@test N2 === N
112112
@test V2 * C2 A
113-
@test isisometry(V2)
113+
@test isisometric(V2)
114114
@test LinearAlgebra.norm(A' * N2) 0 atol = MatrixAlgebraKit.defaulttol(T)
115-
@test isisometry(N2)
115+
@test isisometric(N2)
116116
@test V2 * V2' + N2 * N2' I
117117

118118
atol = eps(real(T))
@@ -122,9 +122,9 @@ end
122122
@test C2 !== C
123123
@test N2 !== C
124124
@test V2 * C2 A
125-
@test isisometry(V2)
125+
@test isisometric(V2)
126126
@test LinearAlgebra.norm(A' * N2) 0 atol = MatrixAlgebraKit.defaulttol(T)
127-
@test isisometry(N2)
127+
@test isisometric(N2)
128128
@test V2 * V2' + N2 * N2' I
129129

130130
rtol = eps(real(T))
@@ -138,9 +138,9 @@ end
138138
@test C2 !== C
139139
@test N2 !== C
140140
@test V2 * C2 A
141-
@test isisometry(V2)
141+
@test isisometric(V2)
142142
@test LinearAlgebra.norm(A' * N2) 0 atol = MatrixAlgebraKit.defaulttol(T)
143-
@test isisometry(N2)
143+
@test isisometric(N2)
144144
@test V2 * V2' + N2 * N2' I
145145
end
146146

@@ -150,12 +150,12 @@ end
150150
@test V2 === V
151151
@test C2 === C
152152
@test V2 * C2 A
153-
@test isisometry(V2)
153+
@test isisometric(V2)
154154
if kind != :polar
155155
N2 = @constinferred left_null!(copy!(Ac, A), N; kind = kind)
156156
@test N2 === N
157157
@test LinearAlgebra.norm(A' * N2) 0 atol = MatrixAlgebraKit.defaulttol(T)
158-
@test isisometry(N2)
158+
@test isisometric(N2)
159159
@test V2 * V2' + N2 * N2' I
160160
end
161161

@@ -178,9 +178,9 @@ end
178178
@test C2 !== C
179179
@test N2 !== C
180180
@test V2 * C2 A
181-
@test isisometry(V2)
181+
@test isisometric(V2)
182182
@test LinearAlgebra.norm(A' * N2) 0 atol = MatrixAlgebraKit.defaulttol(T)
183-
@test isisometry(N2)
183+
@test isisometric(N2)
184184
@test V2 * V2' + N2 * N2' I
185185
else
186186
@test_throws ArgumentError left_orth!(copy!(Ac, A), (V, C); kind, trunc = (; atol))
@@ -204,9 +204,9 @@ end
204204
@test Vᴴ isa Matrix{T} && size(Vᴴ) == (minmn, n)
205205
@test Nᴴ isa Matrix{T} && size(Nᴴ) == (n - minmn, n)
206206
@test C * Vᴴ A
207-
@test isisometry(Vᴴ; side = :right)
207+
@test isisometric(Vᴴ; side = :right)
208208
@test LinearAlgebra.norm(A * adjoint(Nᴴ)) 0 atol = MatrixAlgebraKit.defaulttol(T)
209-
@test isisometry(Nᴴ; side = :right)
209+
@test isisometric(Nᴴ; side = :right)
210210
@test Vᴴ' * Vᴴ + Nᴴ' * Nᴴ I
211211

212212
M = LinearMap(A)
@@ -220,9 +220,9 @@ end
220220
@test Vᴴ2 === Vᴴ
221221
@test Nᴴ2 === Nᴴ
222222
@test C2 * Vᴴ2 A
223-
@test isisometry(Vᴴ2; side = :right)
223+
@test isisometric(Vᴴ2; side = :right)
224224
@test LinearAlgebra.norm(A * adjoint(Nᴴ2)) 0 atol = MatrixAlgebraKit.defaulttol(T)
225-
@test isisometry(Nᴴ; side = :right)
225+
@test isisometric(Nᴴ; side = :right)
226226
@test Vᴴ2' * Vᴴ2 + Nᴴ2' * Nᴴ2 I
227227

228228
atol = eps(real(T))
@@ -232,9 +232,9 @@ end
232232
@test Vᴴ2 !== Vᴴ
233233
@test Nᴴ2 !== Nᴴ
234234
@test C2 * Vᴴ2 A
235-
@test isisometry(Vᴴ2; side = :right)
235+
@test isisometric(Vᴴ2; side = :right)
236236
@test LinearAlgebra.norm(A * adjoint(Nᴴ2)) 0 atol = MatrixAlgebraKit.defaulttol(T)
237-
@test isisometry(Nᴴ; side = :right)
237+
@test isisometric(Nᴴ; side = :right)
238238
@test Vᴴ2' * Vᴴ2 + Nᴴ2' * Nᴴ2 I
239239

240240
rtol = eps(real(T))
@@ -244,9 +244,9 @@ end
244244
@test Vᴴ2 !== Vᴴ
245245
@test Nᴴ2 !== Nᴴ
246246
@test C2 * Vᴴ2 A
247-
@test isisometry(Vᴴ2; side = :right)
247+
@test isisometric(Vᴴ2; side = :right)
248248
@test LinearAlgebra.norm(A * adjoint(Nᴴ2)) 0 atol = MatrixAlgebraKit.defaulttol(T)
249-
@test isisometry(Nᴴ2; side = :right)
249+
@test isisometric(Nᴴ2; side = :right)
250250
@test Vᴴ2' * Vᴴ2 + Nᴴ2' * Nᴴ2 I
251251

252252
for kind in (:lq, :polar, :svd)
@@ -255,12 +255,12 @@ end
255255
@test C2 === C
256256
@test Vᴴ2 === Vᴴ
257257
@test C2 * Vᴴ2 A
258-
@test isisometry(Vᴴ2; side = :right)
258+
@test isisometric(Vᴴ2; side = :right)
259259
if kind != :polar
260260
Nᴴ2 = @constinferred right_null!(copy!(Ac, A), Nᴴ; kind)
261261
@test Nᴴ2 === Nᴴ
262262
@test LinearAlgebra.norm(A * adjoint(Nᴴ2)) 0 atol = MatrixAlgebraKit.defaulttol(T)
263-
@test isisometry(Nᴴ2; side = :right)
263+
@test isisometric(Nᴴ2; side = :right)
264264
@test Vᴴ2' * Vᴴ2 + Nᴴ2' * Nᴴ2 I
265265
end
266266

@@ -271,9 +271,9 @@ end
271271
@test Vᴴ2 !== Vᴴ
272272
@test Nᴴ2 !== Nᴴ
273273
@test C2 * Vᴴ2 A
274-
@test isisometry(Vᴴ2; side = :right)
274+
@test isisometric(Vᴴ2; side = :right)
275275
@test LinearAlgebra.norm(A * adjoint(Nᴴ2)) 0 atol = MatrixAlgebraKit.defaulttol(T)
276-
@test isisometry(Nᴴ2; side = :right)
276+
@test isisometric(Nᴴ2; side = :right)
277277
@test Vᴴ2' * Vᴴ2 + Nᴴ2' * Nᴴ2 I
278278

279279
C2, Vᴴ2 = @constinferred right_orth!(copy!(Ac, A), (C, Vᴴ); kind, trunc = (; rtol))
@@ -282,9 +282,9 @@ end
282282
@test Vᴴ2 !== Vᴴ
283283
@test Nᴴ2 !== Nᴴ
284284
@test C2 * Vᴴ2 A
285-
@test isisometry(Vᴴ2; side = :right)
285+
@test isisometric(Vᴴ2; side = :right)
286286
@test LinearAlgebra.norm(A * adjoint(Nᴴ2)) 0 atol = MatrixAlgebraKit.defaulttol(T)
287-
@test isisometry(Nᴴ2; side = :right)
287+
@test isisometric(Nᴴ2; side = :right)
288288
@test Vᴴ2' * Vᴴ2 + Nᴴ2' * Nᴴ2 I
289289
else
290290
@test_throws ArgumentError right_orth!(copy!(Ac, A), (C, Vᴴ); kind, trunc = (; atol))

0 commit comments

Comments
 (0)