ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonCalib
MdtCalib
MdtCalibFitters
MdtCalibFitters
MuCCaFitter.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// MuCCaFitter.h
7
// Header file for class MuCCaFitter
9
// (c) ATLAS Detector software
11
//
13
14
#ifndef MuCCaFITTER_H
15
#define MuCCaFITTER_H
16
17
#include <vector>
18
19
#include "
MdtCalibInterfaces/IMdtSegmentFitter.h
"
20
#include "
MuonCalibEventBase/MuonCalibSegment.h
"
21
22
namespace
MuonCalib
{
23
29
class
MuCCaFitter
:
public
IMdtSegmentFitter
{
30
public
:
32
bool
fit
(
MuonCalibSegment
& seg)
const
;
33
40
bool
fit
(
MuonCalibSegment
& seg,
HitSelection
selection
)
const
;
41
43
void
printLevel
(
int
level);
44
45
private
:
46
bool
m_debug
;
47
52
// double getY( const Amg::Vector3D& p ) const { return p.y(); }
53
// double getX( const Amg::Vector3D& p ) const { return p.x(); }
54
// double getZ( const Amg::Vector3D& p ) const { return p.z(); }
55
// Amg::Vector3D getVec( double x, double y, double z) const { return Amg::Vector3D( x, y, z ); }
56
double
getY
(
const
Amg::Vector3D
& p)
const
{
return
p.z(); }
57
double
getX
(
const
Amg::Vector3D
& p)
const
{
return
p.x(); }
58
double
getZ
(
const
Amg::Vector3D
& p)
const
{
return
p.y(); }
59
Amg::Vector3D
getVec
(
double
x
,
double
y
,
double
z
)
const
{
return
Amg::Vector3D
(
x
,
z
,
y
); }
60
};
61
67
class
MuCCaFitterImplementation
{
68
public
:
69
void
Computelin
(
double
x1,
double
y1,
double
r1,
double
x2,
double
y2,
double
r2);
70
void
Computelinparnew
(
double
x1,
double
y1,
double
r1,
double
x2,
double
y2,
double
r2);
71
void
computehitsfromcircles
(
double
x0,
double
y0,
double
r0,
double
x1,
double
y1,
double
r1,
double
a
,
double
b);
72
// void Computehitpsemes(int nhit,double *xcirc, double *ycirc,
73
// double *rcirc, double a, double b);
74
void
Computehitpsemes
(
int
nhit,
const
std::vector<double>& xcirc,
const
std::vector<double>& ycirc,
const
std::vector<double>& rcirc,
double
a
,
75
double
b);
76
// void Computeparam3(int number_of_hits,double x[100],double y[100],
77
// double r[100],double sr[100]);
78
void
Computeparam3
(
int
number_of_hits,
const
std::vector<double>&
x
,
const
std::vector<double>&
y
,
const
std::vector<double>&
r
,
const
std::vector<double>& sr);
79
double
get_a
();
80
double
get_b
();
81
double
get_da
();
82
double
get_db
();
83
double
get_corrab
();
84
double
get_chi2f
();
85
86
private
:
88
double
m_angularcoefficient
[4];
89
double
m_bfpar
[4];
91
double
m_xout0
;
92
double
m_yout0
;
93
double
m_xout1
;
94
double
m_yout1
;
96
double
m_xpoint
[100];
97
double
m_ypoint
[100];
99
double
m_aoutn
;
100
double
m_sig2a
;
101
double
m_bout
;
102
double
m_sig2b
;
103
double
m_corrab
;
104
double
m_chi2f
;
105
};
106
107
}
// namespace MuonCalib
108
#endif
IMdtSegmentFitter.h
a
static Double_t a
Definition
LArPhysWaveHECTool.cxx:38
MuonCalibSegment.h
y
#define y
x
#define x
z
#define z
MuonCalib::IMdtSegmentFitter
Interface for MdtSegment fitters.
Definition
IMdtSegmentFitter.h:30
MuonCalib::IMdtSegmentFitter::HitSelection
std::vector< unsigned int > HitSelection
Definition
IMdtSegmentFitter.h:32
MuonCalib::MuCCaFitterImplementation
The straight line fitter for drift circles used by Calib.
Definition
MuCCaFitter.h:67
MuonCalib::MuCCaFitterImplementation::Computeparam3
void Computeparam3(int number_of_hits, const std::vector< double > &x, const std::vector< double > &y, const std::vector< double > &r, const std::vector< double > &sr)
Definition
MuCCaFitter.cxx:155
MuonCalib::MuCCaFitterImplementation::Computelinparnew
void Computelinparnew(double x1, double y1, double r1, double x2, double y2, double r2)
Definition
MuCCaFitter.cxx:278
MuonCalib::MuCCaFitterImplementation::m_ypoint
double m_ypoint[100]
Definition
MuCCaFitter.h:97
MuonCalib::MuCCaFitterImplementation::m_bout
double m_bout
track constant term
Definition
MuCCaFitter.h:101
MuonCalib::MuCCaFitterImplementation::m_xout1
double m_xout1
Definition
MuCCaFitter.h:93
MuonCalib::MuCCaFitterImplementation::m_angularcoefficient
double m_angularcoefficient[4]
parameters of the 4 tangent lines from first and last hit
Definition
MuCCaFitter.h:88
MuonCalib::MuCCaFitterImplementation::get_chi2f
double get_chi2f()
Definition
MuCCaFitter.cxx:276
MuonCalib::MuCCaFitterImplementation::get_da
double get_da()
Definition
MuCCaFitter.cxx:273
MuonCalib::MuCCaFitterImplementation::computehitsfromcircles
void computehitsfromcircles(double x0, double y0, double r0, double x1, double y1, double r1, double a, double b)
Definition
MuCCaFitter.cxx:495
MuonCalib::MuCCaFitterImplementation::m_bfpar
double m_bfpar[4]
Definition
MuCCaFitter.h:89
MuonCalib::MuCCaFitterImplementation::get_a
double get_a()
Definition
MuCCaFitter.cxx:271
MuonCalib::MuCCaFitterImplementation::m_yout1
double m_yout1
Definition
MuCCaFitter.h:94
MuonCalib::MuCCaFitterImplementation::m_xpoint
double m_xpoint[100]
track points
Definition
MuCCaFitter.h:96
MuonCalib::MuCCaFitterImplementation::get_db
double get_db()
Definition
MuCCaFitter.cxx:274
MuonCalib::MuCCaFitterImplementation::m_xout0
double m_xout0
track points from 2 circles
Definition
MuCCaFitter.h:91
MuonCalib::MuCCaFitterImplementation::Computelin
void Computelin(double x1, double y1, double r1, double x2, double y2, double r2)
Definition
MuCCaFitter.cxx:375
MuonCalib::MuCCaFitterImplementation::get_b
double get_b()
Definition
MuCCaFitter.cxx:272
MuonCalib::MuCCaFitterImplementation::m_sig2b
double m_sig2b
error on track constant term
Definition
MuCCaFitter.h:102
MuonCalib::MuCCaFitterImplementation::m_sig2a
double m_sig2a
track slope's variance
Definition
MuCCaFitter.h:100
MuonCalib::MuCCaFitterImplementation::get_corrab
double get_corrab()
Definition
MuCCaFitter.cxx:275
MuonCalib::MuCCaFitterImplementation::m_corrab
double m_corrab
correlation term
Definition
MuCCaFitter.h:103
MuonCalib::MuCCaFitterImplementation::m_yout0
double m_yout0
Definition
MuCCaFitter.h:92
MuonCalib::MuCCaFitterImplementation::m_aoutn
double m_aoutn
results
Definition
MuCCaFitter.h:99
MuonCalib::MuCCaFitterImplementation::Computehitpsemes
void Computehitpsemes(int nhit, const std::vector< double > &xcirc, const std::vector< double > &ycirc, const std::vector< double > &rcirc, double a, double b)
Definition
MuCCaFitter.cxx:467
MuonCalib::MuCCaFitterImplementation::m_chi2f
double m_chi2f
chisquared
Definition
MuCCaFitter.h:104
MuonCalib::MuCCaFitter
Interface to the straight line fitter for drift circles used by Calib.
Definition
MuCCaFitter.h:29
MuonCalib::MuCCaFitter::fit
bool fit(MuonCalibSegment &seg) const
fit using all hits
Definition
MuCCaFitter.cxx:18
MuonCalib::MuCCaFitter::printLevel
void printLevel(int level)
set print level
Definition
MuCCaFitter.cxx:14
MuonCalib::MuCCaFitter::getVec
Amg::Vector3D getVec(double x, double y, double z) const
Definition
MuCCaFitter.h:59
MuonCalib::MuCCaFitter::m_debug
bool m_debug
Definition
MuCCaFitter.h:46
MuonCalib::MuCCaFitter::getZ
double getZ(const Amg::Vector3D &p) const
Definition
MuCCaFitter.h:58
MuonCalib::MuCCaFitter::getY
double getY(const Amg::Vector3D &p) const
these methods are needed to change the reference frame between the local one of the hit and one used ...
Definition
MuCCaFitter.h:56
MuonCalib::MuCCaFitter::getX
double getX(const Amg::Vector3D &p) const
Definition
MuCCaFitter.h:57
MuonCalib::MuonCalibSegment
A MuonCalibSegment is a reconstructed three dimensional track segment in the MuonSpectrometer.
Definition
MuonCalibSegment.h:39
selection
const std::string selection
Definition
fbtTestBasics.cxx:75
r
int r
Definition
globals.cxx:22
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
MuonCalib
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.
Definition
CscCalcPed.cxx:21
Generated on
for ATLAS Offline Software by
1.17.0