ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonAlignment
MuonAlignError
MuonAlignErrorBase
src
AlignmentRotationDeviation.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
MuonAlignErrorBase/AlignmentRotationDeviation.h
"
6
7
#include <iostream>
8
#include <utility>
9
10
using namespace
MuonAlign
;
11
12
AlignmentRotationDeviation::AlignmentRotationDeviation
(
Amg::Vector3D
center,
Amg::Vector3D
axis,
double
sigma,
13
const
std::vector<const Trk::RIO_OnTrack*>& hits) :
14
AlignmentDeviation
(hits, 0, false),
15
m_center
(
std
::move(center)),
m_axis
(
std
::move(axis)),
m_sigma
(sigma)
16
{
17
}
18
19
int
AlignmentRotationDeviation::nPar
()
const
{
return
1; }
20
21
double
AlignmentRotationDeviation::getCovariance
(
int
,
int
)
const
{
return
m_sigma
*
m_sigma
; }
22
23
Amg::Transform3D
AlignmentRotationDeviation::getTransform
(
const
std::vector<double>& parameters)
const
{
24
Amg::Translation3D
transl1(-
m_center
);
25
Amg::Translation3D
transl2(
m_center
);
26
Amg::AngleAxis3D
angleaxis = Eigen::AngleAxis<double>(parameters[0],
m_axis
);
27
Amg::Transform3D
t = transl2 * angleaxis * transl1;
28
29
return
t;
30
}
31
32
void
AlignmentRotationDeviation::print
(std::ostream& out)
const
{
33
out <<
"A rotation around center = ("
<<
m_center
.x() <<
", "
<<
m_center
.y() <<
", "
<<
m_center
.z() <<
") and axis = ("
<<
m_axis
.x()
34
<<
", "
<<
m_axis
.y() <<
", "
<<
m_axis
.z() <<
") with sigma="
<<
m_sigma
<<
" mrad applied to "
<<
m_hits
.size() <<
" hits"
35
<< std::endl;
36
}
AlignmentRotationDeviation.h
MuonAlign::AlignmentRotationDeviation::print
virtual void print(std::ostream &out) const
Verbose.
Definition
AlignmentRotationDeviation.cxx:32
MuonAlign::AlignmentRotationDeviation::AlignmentRotationDeviation
AlignmentRotationDeviation(Amg::Vector3D center, Amg::Vector3D axis, double sigma, const std::vector< const Trk::RIO_OnTrack * > &hits)
Definition
AlignmentRotationDeviation.cxx:12
MuonAlign::AlignmentRotationDeviation::m_axis
Amg::Vector3D m_axis
Definition
AlignmentRotationDeviation.h:57
MuonAlign::AlignmentRotationDeviation::m_sigma
double m_sigma
Definition
AlignmentRotationDeviation.h:58
MuonAlign::AlignmentRotationDeviation::m_center
Amg::Vector3D m_center
Definition
AlignmentRotationDeviation.h:56
MuonAlign::AlignmentRotationDeviation::nPar
virtual int nPar() const
The number of free parameters.
Definition
AlignmentRotationDeviation.cxx:19
MuonAlign::AlignmentRotationDeviation::getCovariance
virtual double getCovariance(int ipar, int jpar) const
The error matrix on the free parameters.
Definition
AlignmentRotationDeviation.cxx:21
MuonAlign::AlignmentRotationDeviation::getTransform
virtual Amg::Transform3D getTransform(const std::vector< double > ¶meters) const
Return a Transform in the global coordinate system, given a list of parameters.
Definition
AlignmentRotationDeviation.cxx:23
Trk::AlignmentDeviation::AlignmentDeviation
AlignmentDeviation(const std::vector< const Trk::RIO_OnTrack * > &hits, std::size_t hitshash, bool hitshashdone)
Definition
AlignmentDeviation.h:77
Trk::AlignmentDeviation::m_hits
std::vector< const Trk::RIO_OnTrack * > m_hits
Definition
AlignmentDeviation.h:71
Amg::AngleAxis3D
Eigen::AngleAxisd AngleAxis3D
Definition
GeoPrimitives.h:45
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition
GeoPrimitives.h:46
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
Amg::Translation3D
Eigen::Translation< double, 3 > Translation3D
Definition
GeoPrimitives.h:44
MuonAlign
Definition
AlignmentRotationDeviation.h:10
std
STL namespace.
Generated on
for ATLAS Offline Software by
1.17.0