@@ -12,10 +12,10 @@ using Test
12
12
@test ones (0 ,0 )* ones (0 ,4 ) == zeros (0 ,4 )
13
13
@test ones (3 ,0 )* ones (0 ,0 ) == zeros (3 ,0 )
14
14
@test ones (0 ,0 )* ones (0 ,0 ) == zeros (0 ,0 )
15
- @test Array {Float64} (5 , 0 ) |> t -> t' t == zeros (0 ,0 )
16
- @test Array {Float64} (5 , 0 ) |> t -> t* t' == zeros (5 ,5 )
17
- @test Array {Complex128} (5 , 0 ) |> t -> t' t == zeros (0 ,0 )
18
- @test Array {Complex128} (5 , 0 ) |> t -> t* t' == zeros (5 ,5 )
15
+ @test Matrix {Float64} (uninitialized, 5 , 0 ) |> t -> t' t == zeros (0 ,0 )
16
+ @test Matrix {Float64} (uninitialized, 5 , 0 ) |> t -> t* t' == zeros (5 ,5 )
17
+ @test Matrix {Complex128} (uninitialized, 5 , 0 ) |> t -> t' t == zeros (0 ,0 )
18
+ @test Matrix {Complex128} (uninitialized, 5 , 0 ) |> t -> t* t' == zeros (5 ,5 )
19
19
end
20
20
@testset " 2x2 matmul" begin
21
21
AA = [1 2 ; 3 4 ]
89
89
end
90
90
AA = rand (1 : 20 , 5 , 5 ) .- 10
91
91
BB = rand (1 : 20 , 5 , 5 ) .- 10
92
- CC = Array {Int} (size (AA, 1 ), size (BB, 2 ))
92
+ CC = Matrix {Int} (uninitialized, size (AA, 1 ), size (BB, 2 ))
93
93
for A in (copy (AA), view (AA, 1 : 5 , 1 : 5 )), B in (copy (BB), view (BB, 1 : 5 , 1 : 5 )), C in (copy (CC), view (CC, 1 : 5 , 1 : 5 ))
94
94
@test At_mul_B (A, B) == A' * B
95
95
@test A_mul_Bt (A, B) == A* B'
105
105
@test_throws DimensionMismatch Base. LinAlg. Ac_mul_Bt! (C,ones (Int,4 ,4 ),B)
106
106
end
107
107
vv = [1 ,2 ]
108
- CC = Array {Int} (2 , 2 )
108
+ CC = Matrix {Int} (uninitialized, 2 , 2 )
109
109
for v in (copy (vv), view (vv, 1 : 2 )), C in (copy (CC), view (CC, 1 : 2 , 1 : 2 ))
110
110
@test @inferred (A_mul_Bc! (C, v, v)) == [1 2 ; 2 4 ]
111
111
end
@@ -119,12 +119,12 @@ end
119
119
@test_throws DimensionMismatch Base. LinAlg. generic_matvecmul! (B,' N' ,A,zeros (6 ))
120
120
end
121
121
vv = [1 ,2 ,3 ]
122
- CC = Array {Int} (3 , 3 )
122
+ CC = Matrix {Int} (uninitialized, 3 , 3 )
123
123
for v in (copy (vv), view (vv, 1 : 3 )), C in (copy (CC), view (CC, 1 : 3 , 1 : 3 ))
124
124
@test A_mul_Bt! (C, v, v) == v* v'
125
125
end
126
126
vvf = map (Float64,vv)
127
- CC = Array {Float64} (3 , 3 )
127
+ CC = Matrix {Float64} (uninitialized, 3 , 3 )
128
128
for vf in (copy (vvf), view (vvf, 1 : 3 )), C in (copy (CC), view (CC, 1 : 3 , 1 : 3 ))
129
129
@test A_mul_Bt! (C, vf, vf) == vf* vf'
130
130
end
@@ -247,12 +247,12 @@ vecdot_(x,y) = invoke(vecdot, Tuple{Any,Any}, x,y)
247
247
end
248
248
249
249
@testset " Issue 11978" begin
250
- A = Array {Matrix{Float64}} (2 , 2 )
250
+ A = Matrix {Matrix{Float64}} (uninitialized, 2 , 2 )
251
251
A[1 ,1 ] = Matrix (1.0 I, 3 , 3 )
252
252
A[2 ,2 ] = Matrix (1.0 I, 2 , 2 )
253
253
A[1 ,2 ] = Matrix (1.0 I, 3 , 2 )
254
254
A[2 ,1 ] = Matrix (1.0 I, 2 , 3 )
255
- b = Array {Vector{Float64}} (2 )
255
+ b = Vector {Vector{Float64}} (uninitialized, 2 )
256
256
b[1 ] = ones (3 )
257
257
b[2 ] = ones (2 )
258
258
@test A* b == Vector{Float64}[[2 ,2 ,1 ], [2 ,2 ]]
@@ -266,10 +266,12 @@ end
266
266
@test Base. LinAlg. gemv! (ones (elty,0 ),' N' ,rand (elty,0 ,0 ),rand (elty,0 )) == ones (elty,0 )
267
267
@test Base. LinAlg. gemv! (ones (elty,10 ), ' N' ,ones (elty,10 ,0 ),ones (elty,0 )) == zeros (elty,10 )
268
268
269
- I10 = Matrix {elty} (I, 10 , 10 )
270
- @test Base. LinAlg. gemm_wrapper (' N' ,' N' , I10, I10) == I10
271
- @test_throws DimensionMismatch Base. LinAlg. gemm_wrapper! (I10,' N' ,' N' , Matrix {elty} (I, 10 , 11 ), I10)
272
- @test_throws DimensionMismatch Base. LinAlg. gemm_wrapper! (I10,' N' ,' N' , Matrix {elty} (0 , 0 ), Matrix {elty} (0 , 0 ))
269
+ I0x0 = Matrix {elty} (I, 0 , 0 )
270
+ I10x10 = Matrix {elty} (I, 10 , 10 )
271
+ I10x11 = Matrix {elty} (I, 10 , 11 )
272
+ @test Base. LinAlg. gemm_wrapper (' N' ,' N' , I10x10, I10x10) == I10x10
273
+ @test_throws DimensionMismatch Base. LinAlg. gemm_wrapper! (I10x10,' N' ,' N' , I10x11, I10x10)
274
+ @test_throws DimensionMismatch Base. LinAlg. gemm_wrapper! (I10x10,' N' ,' N' , I0x0, I0x0)
273
275
274
276
A = rand (elty,3 ,3 )
275
277
@test Base. LinAlg. matmul3x3 (' T' ,' N' ,A, Matrix {elty} (I, 3 , 3 )) == A.'
0 commit comments