@@ -176,51 +176,51 @@ herm(a) = parent(hermitianpart(a))
176176 end
177177 end
178178
179- # # # svd_trunc
180- # # for elt in (Float32, ComplexF32)
181- # # a = Eye{elt}(3) ⊗ randn(elt, 3, 3)
182- # # # TODO : Type inference is broken for `svd_trunc`,
183- # # # look into fixing it.
184- # # # u, s, v = @constinferred svd_trunc(a; trunc=(; maxrank=7))
185- # # u, s, v = svd_trunc(a; trunc=(; maxrank=7))
186- # # @test eltype(u) === elt
187- # # @test eltype(s) === real(elt)
188- # # @test eltype(v) === elt
189- # # u′, s′, v′ = svd_trunc(Matrix(a); trunc=(; maxrank=6))
190- # # @test Matrix(u * s * v) ≈ u′ * s′ * v′
191- # # @test arguments(u, 1) isa Eye{elt}
192- # # @test arguments(s, 1) isa Eye{real(elt)}
193- # # @test arguments(v, 1) isa Eye{elt}
194- # # @test size(u) == (9, 6)
195- # # @test size(s) == (6, 6)
196- # # @test size(v) == (6, 9)
197- # # end
179+ # svd_trunc
180+ for elt in (Float32, ComplexF32)
181+ a = Eye {elt} (3 , 3 ) ⊗ randn (elt, 3 , 3 )
182+ # TODO : Type inference is broken for `svd_trunc`,
183+ # look into fixing it.
184+ # u, s, v = @constinferred svd_trunc(a; trunc=(; maxrank=7))
185+ u, s, v = svd_trunc (a; trunc= (; maxrank= 7 ))
186+ @test eltype (u) === elt
187+ @test eltype (s) === real (elt)
188+ @test eltype (v) === elt
189+ u′, s′, v′ = svd_trunc (Matrix (a); trunc= (; maxrank= 6 ))
190+ @test Matrix (u * s * v) ≈ u′ * s′ * v′
191+ @test arguments (u, 1 ) isa Eye{elt}
192+ @test arguments (s, 1 ) isa Eye{real (elt)}
193+ @test arguments (v, 1 ) isa Eye{elt}
194+ @test size (u) == (9 , 6 )
195+ @test size (s) == (6 , 6 )
196+ @test size (v) == (6 , 9 )
197+ end
198198
199- # # for elt in (Float32, ComplexF32)
200- # # a = randn(elt, 3, 3) ⊗ Eye{elt}(3)
201- # # # TODO : Type inference is broken for `svd_trunc`,
202- # # # look into fixing it.
203- # # # u, s, v = @constinferred svd_trunc(a; trunc=(; maxrank=7))
204- # # u, s, v = svd_trunc(a; trunc=(; maxrank=7))
205- # # @test eltype(u) === elt
206- # # @test eltype(s) === real(elt)
207- # # @test eltype(v) === elt
208- # # u′, s′, v′ = svd_trunc(Matrix(a); trunc=(; maxrank=6))
209- # # @test Matrix(u * s * v) ≈ u′ * s′ * v′
210- # # @test arguments(u, 2) isa Eye{elt}
211- # # @test arguments(s, 2) isa Eye{real(elt)}
212- # # @test arguments(v, 2) isa Eye{elt}
213- # # @test size(u) == (9, 6)
214- # # @test size(s) == (6, 6)
215- # # @test size(v) == (6, 9)
216- # # end
199+ for elt in (Float32, ComplexF32)
200+ a = randn (elt, 3 , 3 ) ⊗ Eye {elt} (3 , 3 )
201+ # TODO : Type inference is broken for `svd_trunc`,
202+ # look into fixing it.
203+ # u, s, v = @constinferred svd_trunc(a; trunc=(; maxrank=7))
204+ u, s, v = svd_trunc (a; trunc= (; maxrank= 7 ))
205+ @test eltype (u) === elt
206+ @test eltype (s) === real (elt)
207+ @test eltype (v) === elt
208+ u′, s′, v′ = svd_trunc (Matrix (a); trunc= (; maxrank= 6 ))
209+ @test Matrix (u * s * v) ≈ u′ * s′ * v′
210+ @test arguments (u, 2 ) isa Eye{elt}
211+ @test arguments (s, 2 ) isa Eye{real (elt)}
212+ @test arguments (v, 2 ) isa Eye{elt}
213+ @test size (u) == (9 , 6 )
214+ @test size (s) == (6 , 6 )
215+ @test size (v) == (6 , 9 )
216+ end
217217
218- # # a = Eye(3) ⊗ Eye(3)
219- # # @test_throws ArgumentError svd_trunc(a)
218+ a = Eye (3 , 3 ) ⊗ Eye (3 , 3 )
219+ @test_throws ArgumentError svd_trunc (a)
220220
221221 # svd_vals
222222 for elt in (Float32, ComplexF32)
223- a = Eye {elt} (3 ) ⊗ randn (elt, 3 , 3 )
223+ a = Eye {elt} (3 , 3 ) ⊗ randn (elt, 3 , 3 )
224224 d = @constinferred svd_vals (a)
225225 d′ = svd_vals (Matrix (a))
226226 @test sort (Vector (d); by= abs) ≈ sort (d′; by= abs)
@@ -246,12 +246,12 @@ herm(a) = parent(hermitianpart(a))
246246 end
247247
248248 # # # left_null
249- # # a = Eye(3) ⊗ randn(3, 3)
249+ # # a = Eye(3, 3 ) ⊗ randn(3, 3)
250250 # # n = @constinferred left_null(a)
251251 # # @test norm(n' * a) ≈ 0
252252 # # @test arguments(n, 1) isa Eye
253253
254- # # a = randn(3, 3) ⊗ Eye(3)
254+ # # a = randn(3, 3) ⊗ Eye(3, 3 )
255255 # # n = @constinferred left_null(a)
256256 # # @test norm(n' * a) ≈ 0
257257 # # @test arguments(n, 2) isa Eye
0 commit comments