ATLAS Offline Software
Loading...
Searching...
No Matches
MuonHoughTransformer_rz.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef MUONHOUGHPATTERNEVENT_MUONHOUGHTRANSFORMER_RZ_H
6#define MUONHOUGHPATTERNEVENT_MUONHOUGHTRANSFORMER_RZ_H
7
9
11public:
12 MuonHoughTransformer_rz(int nbins, int nbins_angle, double detectorsize, double detectorsize_angle, double threshold_histo,
13 int number_of_sectors = 1);
14 virtual ~MuonHoughTransformer_rz() = default;
15
16 virtual void fillHit(const std::shared_ptr<MuonHoughHit>& hit, double weight = 1.) override final;
17 virtual int fillHisto(double rz0, double theta, double weight, int sector) override final;
18
19 static double calculateAngle(double hitx, double hity, double hitz, double z0); // in rad
20
21 virtual float weightHoughTransform(double r0) const override final;
22 float weightHoughTransform(double r0, double angle) const;
23
24 int sector(const std::shared_ptr<MuonHoughHit>& hit) const override final; // 0..15 same as atlas sector 1..16 // returns 0 if number_of_sectors == 0
25
28 double residu_mm, double residu_grad, int sector) const override final;
29
30 const bool m_use_residu_grad; // 0 is advisable //only used for rz
31};
32
33inline int MuonHoughTransformer_rz::sector(const std::shared_ptr<MuonHoughHit>& hit) const { return hit->phiSector(); }
34
35#endif // MUONHOUGHPATTERNEVENT_MUONHOUGHTRANSFORMER_RZ_H
Scalar theta() const
theta method
#define protected
double angle(const GeoTrf::Vector2D &a, const GeoTrf::Vector2D &b)
static double calculateAngle(double hitx, double hity, double hitz, double z0)
virtual int fillHisto(double rz0, double theta, double weight, int sector) override final
fill histogram with certain coordinate
virtual ~MuonHoughTransformer_rz()=default
MuonHoughTransformer_rz(int nbins, int nbins_angle, double detectorsize, double detectorsize_angle, double threshold_histo, int number_of_sectors=1)
virtual float weightHoughTransform(double r0) const override final
weight houghtransform, give more importance to houghtransforms close to origin
std::unique_ptr< MuonHoughPattern > hookAssociateHitsToMaximum(const MuonHoughHitContainer &event, std::pair< double, double > coordsmaximum, double residu_mm, double residu_grad, int sector) const override final
pure virtual method for derived class implementation of associateHitsToMaximum method
virtual void fillHit(const std::shared_ptr< MuonHoughHit > &hit, double weight=1.) override final
fill histograms with hit
int sector(const std::shared_ptr< MuonHoughHit > &hit) const override final
returns sector for coords
MuonHoughTransformer(const std::string &tr_name, int nbins, int nbins_angle, double detectorsize, double detectorsize_angle, double threshold_histo, int number_of_sectors=1)
constructor, input values are those of histograms
STL class.
STL class.
STL namespace.