diff options
author | Theo Fletcher <theo_fletcher@live.co.uk> | 2021-04-26 16:52:44 +0100 |
---|---|---|
committer | TheoFletcher <theo_fletcher@live.co.uk> | 2021-04-26 19:00:51 +0000 |
commit | 2ced0cc233fff6ef16c4d098b03aeeb69ff7c509 (patch) | |
tree | bf9cda90f5f9b531e2462d9b835571293af1101a | |
parent | d87648a6bea315645b893c3815ca8c6bb00ec5d2 (diff) |
Added complex matrix unit tests for SelfAdjointEigenSolve
-rw-r--r-- | test/eigensolver_selfadjoint.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/test/eigensolver_selfadjoint.cpp b/test/eigensolver_selfadjoint.cpp index 65b80c3fb..0fb2f4da7 100644 --- a/test/eigensolver_selfadjoint.cpp +++ b/test/eigensolver_selfadjoint.cpp @@ -234,15 +234,21 @@ EIGEN_DECLARE_TEST(eigensolver_selfadjoint) { int s = 0; for(int i = 0; i < g_repeat; i++) { + // trivial test for 1x1 matrices: CALL_SUBTEST_1( selfadjointeigensolver(Matrix<float, 1, 1>())); CALL_SUBTEST_1( selfadjointeigensolver(Matrix<double, 1, 1>())); + CALL_SUBTEST_1( selfadjointeigensolver(Matrix<std::complex<double>, 1, 1>())); + // very important to test 3x3 and 2x2 matrices since we provide special paths for them CALL_SUBTEST_12( selfadjointeigensolver(Matrix2f()) ); CALL_SUBTEST_12( selfadjointeigensolver(Matrix2d()) ); + CALL_SUBTEST_12( selfadjointeigensolver(Matrix2cd()) ); CALL_SUBTEST_13( selfadjointeigensolver(Matrix3f()) ); CALL_SUBTEST_13( selfadjointeigensolver(Matrix3d()) ); + CALL_SUBTEST_13( selfadjointeigensolver(Matrix3cd()) ); CALL_SUBTEST_2( selfadjointeigensolver(Matrix4d()) ); + CALL_SUBTEST_2( selfadjointeigensolver(Matrix4cd()) ); s = internal::random<int>(1,EIGEN_TEST_MAX_SIZE/4); CALL_SUBTEST_3( selfadjointeigensolver(MatrixXf(s,s)) ); @@ -254,6 +260,8 @@ EIGEN_DECLARE_TEST(eigensolver_selfadjoint) // some trivial but implementation-wise tricky cases CALL_SUBTEST_4( selfadjointeigensolver(MatrixXd(1,1)) ); CALL_SUBTEST_4( selfadjointeigensolver(MatrixXd(2,2)) ); + CALL_SUBTEST_5( selfadjointeigensolver(MatrixXcd(1,1)) ); + CALL_SUBTEST_5( selfadjointeigensolver(MatrixXcd(2,2)) ); CALL_SUBTEST_6( selfadjointeigensolver(Matrix<double,1,1>()) ); CALL_SUBTEST_7( selfadjointeigensolver(Matrix<double,2,2>()) ); } |