9 #include <boost/test/unit_test.hpp>
25 using namespace Acts::UnitLiterals;
26 using AnyCurvilinearTrackParameters =
33 template <
typename charge_t>
35 double phi,
double theta,
double p,
double q,
37 const auto qOverP = (q != 0) ? (q / p) : (1 /
p);
38 const auto pos = pos4.segment<3>(
ePos0);
58 BOOST_CHECK_EQUAL(params.
charge(), q);
68 BOOST_AUTO_TEST_SUITE(EventDataCurvilinearTrackParameters)
72 posSymmetric* posSymmetric* posSymmetric* ts* phis* thetas*
ps,
x,
y,
z,
73 time, phiInput, theta, p) {
75 const auto phi = ((0 <
theta) and (theta <
M_PI)) ? phiInput : 0.0;
80 checkParameters(params, phi, theta, p, 0_e, pos4, dir);
85 BOOST_CHECK(params.covariance());
86 BOOST_CHECK_EQUAL(params.covariance().value(),
cov);
91 posSymmetric* posSymmetric* posSymmetric* ts* phis* thetas*
ps* qsNonZero,
92 x,
y,
z,
time, phiInput, theta, p, q) {
94 const auto phi = ((0 <
theta) and (theta <
M_PI)) ? phiInput : 0.0;
99 checkParameters(params, phi, theta, p, q, pos4, dir);
104 BOOST_CHECK(params.covariance());
105 BOOST_CHECK_EQUAL(params.covariance().value(),
cov);
110 posSymmetric* posSymmetric* posSymmetric* ts* phis* thetas*
ps* qsAny,
x,
y,
111 z,
time, phiInput, theta, p, q) {
113 const auto phi = ((0 <
theta) and (theta <
M_PI)) ? phiInput : 0.0;
117 AnyCurvilinearTrackParameters params(pos4, dir, p, q);
118 checkParameters(params, phi, theta, p, q, pos4, dir);
119 BOOST_CHECK(not params.covariance());
122 params = AnyCurvilinearTrackParameters(pos4, dir, p, q,
cov);
123 BOOST_CHECK(params.covariance());
124 BOOST_CHECK_EQUAL(params.covariance().value(),
cov);
127 BOOST_AUTO_TEST_SUITE_END()