17 #include <TMatrixDSym.h>
19 #include <gtest/gtest.h>
21 TEST(TrackFindingCDCTest, root_TMatrixD)
23 TMatrixD jacobian(2, 2);
31 TMatrixD covariance(2, 2);
40 left.Mult(jacobian, covariance);
42 TMatrixD result(2, 2);
43 result.MultT(left, jacobian);
45 EXPECT_EQ(0, result(0, 0));
46 EXPECT_EQ(-1, result(0, 1));
47 EXPECT_EQ(-1, result(1, 0));
48 EXPECT_EQ(1, result(1, 1));
52 TEST(TrackFindingCDCTest, root_TMatrixDSym_Similarity_differing_rows_columns)
63 EXPECT_EQ(2, cov2.GetNrows());
64 EXPECT_EQ(2, cov2.GetNcols());
67 TMatrixD jacobianInflate(3, 2);
68 jacobianInflate.Zero();
70 jacobianInflate(0, 0) = 1;
71 jacobianInflate(1, 1) = 1;
72 jacobianInflate(2, 0) = 1;
73 jacobianInflate(2, 1) = 1;
76 cov2.Similarity(jacobianInflate);
78 EXPECT_EQ(3, cov2.GetNrows());
79 EXPECT_EQ(3, cov2.GetNcols());
81 EXPECT_EQ(1, cov2(0, 0));
82 EXPECT_EQ(0, cov2(0, 1));
83 EXPECT_EQ(1, cov2(0, 2));
85 EXPECT_EQ(0, cov2(1, 0));
86 EXPECT_EQ(1, cov2(1, 1));
87 EXPECT_EQ(1, cov2(1, 2));
89 EXPECT_EQ(1, cov2(2, 0));
90 EXPECT_EQ(1, cov2(2, 1));
91 EXPECT_EQ(2, cov2(2, 2));