ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkDetDescr
TrkDistortedSurfaces
src
SaggedLineSurface.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// SaggedLineSurface.cxx, (c) ATLAS Detector software
8
9
// Trk
10
#include "
TrkDistortedSurfaces/SaggedLineSurface.h
"
11
#include "
TrkSurfaces/CylinderBounds.h
"
12
13
// From Dan Levin: MDT
14
// linear density of wire: lambda=wireLinearDensity=19.3 [gm/cm^3] * PI*
15
//(25 *10^-4 )^2 [cm^2] = 378.954 microgram/cm
16
// From Dan Levin: MDT
17
// wireTen=350 for most chambers, 285 gm for some NIKHEF chambers (BOL),
18
19
Trk::SaggedLineSurface::SaggedLineSurface
() :
20
Trk
::
StraightLineSurface
(),
21
m_saggingDescriptor
(nullptr),
22
m_saggedLineDirection
{}
23
{}
24
25
Trk::SaggedLineSurface::SaggedLineSurface
(
26
const
Amg::Transform3D
& htrans,
27
double
radius,
28
double
halez,
29
Trk::LineSaggingDescriptor
* lsd)
30
:
Trk
::
StraightLineSurface
(htrans, radius, halez)
31
,
m_saggingDescriptor
(lsd)
32
,
m_saggedLineDirection
{}
33
{}
34
35
Trk::SaggedLineSurface::SaggedLineSurface
(
const
Amg::Transform3D
& htrans)
36
:
Trk
::
StraightLineSurface
(htrans)
37
,
m_saggingDescriptor
(nullptr)
38
,
m_saggedLineDirection
{}
39
{}
40
41
Trk::SaggedLineSurface::SaggedLineSurface
(
42
const
Trk::TrkDetElementBase
& detelement,
43
const
Identifier
&
id
)
44
:
Trk
::
StraightLineSurface
(detelement, id)
45
,
m_saggingDescriptor
()
46
,
m_saggedLineDirection
{}
47
{}
48
49
Trk::SaggedLineSurface::SaggedLineSurface
(
const
Trk::TrkDetElementBase
& detelement,
const
Identifier
&
id
,
50
double
wireLength,
double
wireTension,
double
linearDensity) :
51
Trk
::
StraightLineSurface
(detelement,id),
52
m_saggingDescriptor
(new
Trk
::
LineSaggingDescriptor
(wireLength, wireTension, linearDensity)),
m_saggedLineDirection
{}
53
{
54
55
}
56
57
Trk::SaggedLineSurface::SaggedLineSurface
(
const
Trk::SaggedLineSurface
& sls) :
58
Trk
::
StraightLineSurface
(sls),
59
m_saggingDescriptor
(new
Trk
::
LineSaggingDescriptor
(sls.
distortionDescriptor
())),
60
m_saggedLineDirection
{}
61
{}
62
63
Trk::SaggedLineSurface::~SaggedLineSurface
()
64
{
65
delete
m_saggingDescriptor
;
66
}
67
68
Trk::SaggedLineSurface
&
Trk::SaggedLineSurface::operator=
(
const
Trk::SaggedLineSurface
& sls)
69
{
70
if
(
this
!= &sls ) {
71
Trk::StraightLineSurface::operator=
(sls);
72
delete
m_saggingDescriptor
;
73
m_saggedLineDirection
=sls.
m_saggedLineDirection
;
74
m_saggingDescriptor
=
new
Trk::LineSaggingDescriptor
(sls.
distortionDescriptor
());
75
}
76
return
*
this
;
77
}
78
CylinderBounds.h
SaggedLineSurface.h
Trk::LineSaggingDescriptor
Fill in documentation.
Definition
LineSaggingDescriptor.h:31
Trk::SaggedLineSurface
The distorted surface itself is the nominal surface.
Definition
SaggedLineSurface.h:33
Trk::SaggedLineSurface::SaggedLineSurface
SaggedLineSurface()
Default Constructor - needed for pool and inherited classes.
Definition
SaggedLineSurface.cxx:19
Trk::SaggedLineSurface::m_saggingDescriptor
LineSaggingDescriptor * m_saggingDescriptor
the distortion descriptor
Definition
SaggedLineSurface.h:72
Trk::SaggedLineSurface::distortionDescriptor
const LineSaggingDescriptor & distortionDescriptor() const
Get the Distortion descriptor.
Definition
SaggedLineSurface.h:81
Trk::SaggedLineSurface::operator=
Trk::SaggedLineSurface & operator=(const Trk::SaggedLineSurface &sls)
Definition
SaggedLineSurface.cxx:68
Trk::SaggedLineSurface::m_saggedLineDirection
CxxUtils::CachedValue< Amg::Vector3D > m_saggedLineDirection
nominal end position
Definition
SaggedLineSurface.h:73
Trk::SaggedLineSurface::~SaggedLineSurface
virtual ~SaggedLineSurface()
Destructor.
Definition
SaggedLineSurface.cxx:63
Trk::StraightLineSurface::operator=
StraightLineSurface & operator=(const StraightLineSurface &slsf)
Assignment operator.
Definition
StraightLineSurface.cxx:76
Trk::StraightLineSurface::StraightLineSurface
StraightLineSurface()
Default Constructor - needed for persistency.
Definition
StraightLineSurface.cxx:25
Trk::TrkDetElementBase
This is the base class for all tracking detector elements with read-out relevant information.
Definition
TrkDetElementBase.h:52
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition
GeoPrimitives.h:46
Identifier
Definition
IdentifierFieldParser.cxx:14
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
Generated on
for ATLAS Offline Software by
1.17.0