ATLAS Offline Software
ForwardDetectors
ForwardTracker
src
ForwardDetectors/ForwardTracker/src/Spacer.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
ForwardTracker/Spacer.h
"
6
#include "
ForwardTracker/Particle.h
"
7
8
#include <sstream>
9
10
namespace
ForwardTracker
{
11
12
Spacer::Spacer
(
double
front,
double
rear,
Side
side
):
13
m_label (
"Spacer"
),
14
m_side (
side
),
15
m_frontFace(front),
16
m_rearFace (rear),
17
m_position (0., 0., m_rearFace)
18
{}
19
20
Spacer::Spacer
(
const
IBeamElement::ConstPtr_t
&
previous
,
const
IBeamElement::ConstPtr_t
&
current
):
21
m_label (
"Spacer"
),
22
m_side (
current
->
side
()),
23
m_frontFace(
previous
->rearFace()),
24
m_rearFace (
current
->frontFace()),
25
m_position (
previous
->position().
x
(),
previous
->position().
y
(), m_rearFace)
26
{}
27
28
void
Spacer::track
(
IParticle
&
particle
)
const
{
29
30
particle
.setBeamCoordinateShift(
this
);
31
32
if
(
particle
.isOutOfAperture())
return
;
33
34
double
aside =
ForwardTrackerConstants::aside
[
m_side
];
35
Point
direction =
particle
.direction();
36
TransversePoint
displacement =
particle
.displacement();
37
38
displacement += std::fabs(
m_rearFace
-
particle
.z())*aside/direction[2]*direction.
transverse
();
// Linear drift
39
40
particle
.updatePositionFromDisplacement(displacement);
41
particle
.z() =
m_rearFace
;
42
43
if
(
particle
.displacement().mag2() >
ForwardTrackerConstants::beamPipeRadius2
)
particle
.setOutOfAperture(
true
);
44
}
45
46
std::string
Spacer::str
()
const
{
47
48
std::ostringstream
ost
;
49
50
ost
<<
"m_label "
<<
m_label
<<
"\n"
51
<<
"m_side "
<<
m_side
<<
"\n"
52
<<
"m_frontFace "
<<
m_frontFace
<<
"\n"
53
<<
"m_rearFace "
<<
m_rearFace
<<
"\n"
54
<<
"m_position "
<<
m_position
<<
"\n"
;
55
56
return
ost
.str();
57
}
58
}
59
fillPileUpNoiseLumi.current
current
Definition:
fillPileUpNoiseLumi.py:52
Trk::ParticleSwitcher::particle
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
Definition:
ParticleHypothesis.h:76
python.trigbs_prescaleL1.ost
ost
Definition:
trigbs_prescaleL1.py:104
ForwardTracker::Spacer::m_rearFace
double m_rearFace
Definition:
ForwardDetectors/ForwardTracker/ForwardTracker/Spacer.h:47
ForwardTracker::IBeamElement::ConstPtr_t
std::shared_ptr< const IBeamElement > ConstPtr_t
Definition:
ForwardTracker/ForwardTracker/IBeamElement.h:39
Particle.h
ForwardTracker::ForwardTrackerConstants::aside
static const double aside[2]
Definition:
ForwardTrackerConstants.h:20
ForwardTracker::Spacer::Spacer
Spacer(double front, double back, Side side)
Definition:
ForwardDetectors/ForwardTracker/src/Spacer.cxx:12
x
#define x
ForwardTracker::Point
Definition:
ForwardTracker/ForwardTracker/Point.h:15
TRT::Hit::side
@ side
Definition:
HitInfo.h:83
ForwardTracker::Spacer::m_frontFace
double m_frontFace
Definition:
ForwardDetectors/ForwardTracker/ForwardTracker/Spacer.h:46
ForwardTracker::Spacer::m_label
std::string m_label
Definition:
ForwardDetectors/ForwardTracker/ForwardTracker/Spacer.h:44
ForwardTracker::Spacer::m_side
Side m_side
Definition:
ForwardDetectors/ForwardTracker/ForwardTracker/Spacer.h:45
Side
Definition:
WaferTree.h:36
ForwardTracker::TransversePoint
Definition:
ForwardTracker/ForwardTracker/TransversePoint.h:13
ForwardTracker::Spacer::str
std::string str() const
Definition:
ForwardDetectors/ForwardTracker/src/Spacer.cxx:46
ForwardTracker::IParticle
Definition:
ForwardDetectors/ForwardTracker/ForwardTracker/IParticle.h:16
ForwardTracker::Point::transverse
TransversePoint transverse() const
Definition:
ForwardTracker/ForwardTracker/Point.h:28
y
#define y
ForwardTracker::Spacer::m_position
Point m_position
Definition:
ForwardDetectors/ForwardTracker/ForwardTracker/Spacer.h:48
Spacer.h
ForwardTracker::ForwardTrackerConstants::beamPipeRadius2
static const double beamPipeRadius2
Definition:
ForwardTrackerConstants.h:19
ForwardTracker
Definition:
ForwardTracker/ForwardTracker/Beamline.h:12
Trk::previous
@ previous
Definition:
BinningData.h:32
ForwardTracker::Spacer::track
void track(IParticle &) const
Definition:
ForwardDetectors/ForwardTracker/src/Spacer.cxx:28
Generated on Thu Jul 4 2024 21:27:15 for ATLAS Offline Software by
1.8.18