forked from AliceO2Group/AliceO2
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtestLTOFIntegration.cxx
More file actions
53 lines (49 loc) · 1.75 KB
/
testLTOFIntegration.cxx
File metadata and controls
53 lines (49 loc) · 1.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
// All rights not expressly granted are reserved.
//
// This software is distributed under the terms of the GNU General Public
// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
//
// In applying this license CERN does not waive the privileges and immunities
// granted to it by virtue of its status as an Intergovernmental Organization
// or submit itself to any jurisdiction.
#define BOOST_TEST_MODULE Test TrackLTIntegral class
#define BOOST_TEST_MAIN
#define BOOST_TEST_DYN_LINK
#include <boost/test/unit_test.hpp>
#include "ReconstructionDataFormats/Track.h"
#include "ReconstructionDataFormats/TrackLTIntegral.h"
#include "ReconstructionDataFormats/PID.h"
#include "CommonConstants/PhysicsConstants.h"
namespace o2
{
// L,ToF container update test
BOOST_AUTO_TEST_CASE(TrackLTIntegral)
{
o2::track::TrackPar trc;
trc.setQ2Pt(2);
trc.setSnp(0.1);
auto trc1 = trc;
trc1.setTgl(0.5);
o2::track::TrackLTIntegral lt, lt1;
const int nStep = 100;
const float dx2x0 = 0.01f;
for (int i = 0; i < nStep; i++) {
lt.addStep(1., trc.getQ2P2());
lt1.addStep(1., trc1.getQ2P2());
lt1.addX2X0(dx2x0);
}
trc.printParam();
lt.print();
trc1.printParam();
lt1.print();
float tc = lt.getL() * 1000.f / o2::constants::physics::LightSpeedCm2NS; // fastest time
printf("TOF @ speed of light: %7.1f ps\n", tc);
for (int i = 1; i < lt.getNTOFs(); i++) {
BOOST_CHECK(tc < lt.getTOF(i)); // nothing is faster than the light
BOOST_CHECK(lt1.getTOF(i) < lt.getTOF(i)); // higher P track is faster
}
BOOST_CHECK_CLOSE(lt1.getX2X0(), nStep * dx2x0, 1e-4);
}
} // namespace o2