|
66 | 66 | @test isisometry(V) |
67 | 67 | @test LinearAlgebra.norm(A' * N) ≈ 0 atol = MatrixAlgebraKit.defaulttol(T) |
68 | 68 | @test isisometry(N) |
69 | | - @test V * V' + N * N' ≈ I |
| 69 | + @test V * V' + N * N' ≈ I atol = 100 * MatrixAlgebraKit.defaulttol(T) |
70 | 70 |
|
71 | 71 | M = LinearMap(A) |
72 | 72 | VM, CM = @constinferred left_orth(M; kind=:svd) |
|
96 | 96 | @test isisometry(V) |
97 | 97 | @test LinearAlgebra.norm(A' * N) ≈ 0 atol = MatrixAlgebraKit.defaulttol(T) |
98 | 98 | @test isisometry(N) |
99 | | - @test V * V' + N * N' ≈ I |
| 99 | + @test V * V' + N * N' ≈ I atol = MatrixAlgebraKit.defaulttol(T) |
100 | 100 | end |
101 | 101 |
|
102 | 102 | Ac = similar(A) |
|
109 | 109 | @test isisometry(V2) |
110 | 110 | @test LinearAlgebra.norm(A' * N2) ≈ 0 atol = MatrixAlgebraKit.defaulttol(T) |
111 | 111 | @test isisometry(N2) |
112 | | - @test V2 * V2' + N2 * N2' ≈ I |
| 112 | + @test V2 * V2' + N2 * N2' ≈ I atol = MatrixAlgebraKit.defaulttol(T) |
113 | 113 |
|
114 | 114 | atol = eps(real(T)) |
115 | 115 | #V2, C2 = @constinferred left_orth!(copy!(Ac, A), (V, C); trunc=(; atol=atol)) |
|
150 | 150 | @test N2 === N |
151 | 151 | @test LinearAlgebra.norm(A' * N2) ≈ 0 atol = MatrixAlgebraKit.defaulttol(T) |
152 | 152 | @test isisometry(N2) |
153 | | - @test V2 * V2' + N2 * N2' ≈ I |
| 153 | + @test V2 * V2' + N2 * N2' ≈ I atol = MatrixAlgebraKit.defaulttol(T) |
154 | 154 | end |
155 | 155 |
|
156 | 156 | # with kind and tol kwargs |
|
165 | 165 | #@test V2 * C2 ≈ A |
166 | 166 | #@test V2' * V2 ≈ I |
167 | 167 | @test LinearAlgebra.norm(A' * N2) ≈ 0 atol = MatrixAlgebraKit.defaulttol(T) |
168 | | - @test N2' * N2 ≈ I |
| 168 | + @test isisometry(N2) |
169 | 169 | #@test V2 * V2' + N2 * N2' ≈ I |
170 | 170 |
|
171 | 171 | #V2, C2 = @constinferred left_orth!(copy!(Ac, A), (V, C); kind=kind, |
|
210 | 210 | @test isisometry(Vᴴ; side=:right) |
211 | 211 | @test LinearAlgebra.norm(A * adjoint(Nᴴ)) ≈ 0 atol = MatrixAlgebraKit.defaulttol(T) |
212 | 212 | @test isisometry(Nᴴ; side=:right) |
213 | | - @test Vᴴ' * Vᴴ + Nᴴ' * Nᴴ ≈ I |
| 213 | + @test Vᴴ' * Vᴴ + Nᴴ' * Nᴴ ≈ I atol = MatrixAlgebraKit.defaulttol(T) |
214 | 214 |
|
215 | 215 | M = LinearMap(A) |
216 | 216 | CM, VMᴴ = @constinferred right_orth(M; kind=:svd) |
@@ -259,15 +259,14 @@ end |
259 | 259 | C2, Vᴴ2 = @constinferred right_orth!(copy!(Ac, A), (C, Vᴴ); kind=kind) |
260 | 260 | @test C2 === C |
261 | 261 | @test Vᴴ2 === Vᴴ |
262 | | - A2 = C2 * Vᴴ2 |
263 | | - @test A2 ≈ A |
| 262 | + @test C2 * Vᴴ2 ≈ A |
264 | 263 | @test isisometry(Vᴴ2; side=:right) |
265 | 264 | if kind != :polar |
266 | 265 | Nᴴ2 = @constinferred right_null!(copy!(Ac, A), Nᴴ; kind=kind) |
267 | 266 | @test Nᴴ2 === Nᴴ |
268 | 267 | @test LinearAlgebra.norm(A * adjoint(Nᴴ2)) ≈ 0 atol = MatrixAlgebraKit.defaulttol(T) |
269 | 268 | @test isisometry(Nᴴ2; side=:right) |
270 | | - @test Vᴴ2' * Vᴴ2 + Nᴴ2' * Nᴴ2 ≈ I |
| 269 | + @test Vᴴ2' * Vᴴ2 + Nᴴ2' * Nᴴ2 ≈ I atol = 100 * MatrixAlgebraKit.defaulttol(T) |
271 | 270 | end |
272 | 271 |
|
273 | 272 | if kind == :svd |
|
0 commit comments