15 #include <gtest/gtest.h>
18 #include <Eigen/Dense>
150 TEST(TrackFindingCDCTest, Eigen_fullPivLu_inverse)
152 Eigen::Matrix<double, 2, 2> weight;
158 Eigen::Matrix<double, 2, 2> cov = weight.fullPivLu().inverse();
160 EXPECT_NEAR(1.0 / 2.0, cov(0, 0), 10e-7);
161 EXPECT_NEAR(0.0, cov(0, 1), 10e-7);
162 EXPECT_NEAR(0.0, cov(1, 0), 10e-7);
163 EXPECT_NEAR(0.0, cov(1, 1), 10e-7);
201 TEST(TrackFindingCDCTest, Eigen_colPivHouseholderQr_inverse)
203 Eigen::Matrix<double, 2, 2> weight;
209 Eigen::Matrix<double, 2, 2> cov = weight.colPivHouseholderQr().inverse();
211 EXPECT_NEAR(1.0 / 2.0, cov(0, 0), 10e-7);
212 EXPECT_NEAR(0.0, cov(0, 1), 10e-7);
213 EXPECT_NEAR(0.0, cov(1, 0), 10e-7);
214 EXPECT_NEAR(0.0, cov(1, 1), 10e-7);
217 TEST(TrackFindingCDCTest, Eigen_fullPivHouseholderQr_inverse)
219 Eigen::Matrix<double, 2, 2> weight;
225 Eigen::Matrix<double, 2, 2> cov = weight.fullPivHouseholderQr().inverse();
227 EXPECT_NEAR(1.0 / 2.0, cov(0, 0), 10e-7);
228 EXPECT_NEAR(0.0, cov(0, 1), 10e-7);
229 EXPECT_NEAR(0.0, cov(1, 0), 10e-7);
230 EXPECT_NEAR(0.0, cov(1, 1), 10e-7);