@@ -82,8 +82,20 @@ using StaticArrays, Test, LinearAlgebra
8282 E = eigen (Symmetric (A, uplo))
8383 @test eigvecs (E) * SDiagonal (eigvals (E)) * eigvecs (E)' ≈ A
8484 end
85+
86+ m1_a = randn (2 ,2 )
87+ m1_a = m1_a* m1_a'
88+ m1 = SMatrix {2,2} (m1_a)
89+ m2_a = randn (2 ,2 )
90+ m2_a = m2_a* m2_a'
91+ m2 = SMatrix {2,2} (m2_a)
92+ @test (@inferred_maybe_allow SVector{2 ,ComplexF64} eigvals (m1, m2)) ≈ eigvals (m1_a, m2_a)
93+ @test (@inferred_maybe_allow SVector{2 ,ComplexF64} eigvals (Symmetric (m1), Symmetric (m2))) ≈ eigvals (Symmetric (m1_a), Symmetric (m2_a))
8594 end
8695
96+ @test_throws DimensionMismatch eigvals (SA[1 2 3 ; 4 5 6 ], SA[1 2 3 ; 4 5 5 ])
97+ @test_throws DimensionMismatch eigvals (SA[1 2 ; 4 5 ], SA[1 2 3 ; 4 5 5 ; 3 4 5 ])
98+
8799 @testset " 3×3" for i = 1 : 100
88100 m_a = randn (3 ,3 )
89101 m_a = m_a* m_a'
@@ -112,6 +124,14 @@ using StaticArrays, Test, LinearAlgebra
112124 @test vals:: SVector ≈ sort (m_d)
113125 @test eigvals (m) ≈ sort (m_d)
114126 @test eigvals (Hermitian (m)) ≈ sort (m_d)
127+
128+ m1_a = randn (3 ,3 )
129+ m1_a = m1_a* m1_a'
130+ m1 = SMatrix {3,3} (m1_a)
131+ m2_a = randn (3 ,3 )
132+ m2_a = m2_a* m2_a'
133+ m2 = SMatrix {3,3} (m2_a)
134+ @test (@inferred_maybe_allow SVector{3 ,ComplexF64} eigvals (m1, m2)) ≈ eigvals (m1_a, m2_a)
115135 end
116136
117137 @testset " 3x3 degenerate cases" begin
0 commit comments