Belle II Software  release-05-01-25
ARICHReconstructionPar.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2010 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Luka Santelj *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <TObject.h>
14 #include <vector>
15 #include <TF1.h>
16 
17 namespace Belle2 {
22 
26  class ARICHReconstructionPar : public TObject {
27 
28  public:
29 
32 
35 
40  void setBackgroundPDF(TF1* bkgPDF)
41  {
42  m_bkgPDF = bkgPDF;
43  }
44 
49  void setThcResolution(TF1* thcRes)
50  {
51  m_thcResolution = thcRes;
52  }
53 
58  void setAerogelFOM(const std::vector<float>& aerogelFOM)
59  {
60  m_aerogelFOM = aerogelFOM;
61  }
62 
67  void setFlatBkgPerPad(const float flatBkgPerPad)
68  {
69  m_flatBkgPerPad = flatBkgPerPad;
70  }
71 
76  void setParameters(const std::vector<float>& pars)
77  {
78  m_pars = pars;
79  }
80 
85  const std::vector<float>& getParameters() const
86  {
87  return m_pars;
88  }
89 
94  const TF1* getBackgroundPDF() const
95  {
96  return m_bkgPDF;
97  }
98 
104  double getThcResolution(double momentum) const
105  {
106  return m_thcResolution->Eval(momentum);
107  }
108 
114  double getAerogelFOM(unsigned iLayer) const
115  {
116  return m_aerogelFOM.at(iLayer);
117  }
118 
123  float getFlatBkgPerPad() const
124  {
125  return m_flatBkgPerPad;
126  }
127 
134  double getBackgroundPerPad(double th_cer, const std::vector<double>& pars) const;
135 
143  double getExpectedBackgroundHits(std::vector<double>& pars, double minThc = 0.1, double maxThc = 0.5) const;
144 
152  double getNPadsInRing(double maxThc, double minThc = 0.0, double trackTh = 0.45) const;
153 
157  void print() const;
158 
159  private:
160 
161  mutable TF1* m_bkgPDF = NULL;
162  TF1* m_thcResolution = NULL;
163  std::vector<float> m_pars;
164  std::vector<float> m_aerogelFOM;
165  float m_flatBkgPerPad = 0.0;
169  };
170 
172 } // namespace
Belle2::ARICHReconstructionPar::setFlatBkgPerPad
void setFlatBkgPerPad(const float flatBkgPerPad)
Set flat background per pad.
Definition: ARICHReconstructionPar.h:75
Belle2::ARICHReconstructionPar::getExpectedBackgroundHits
double getExpectedBackgroundHits(std::vector< double > &pars, double minThc=0.1, double maxThc=0.5) const
Get number of expected background hits in ring (0.1<theta<0.5rad by default)
Definition: ARICHReconstructionPar.cc:49
Belle2::ARICHReconstructionPar::m_flatBkgPerPad
float m_flatBkgPerPad
expected background hits per pad (treated flat over detector surface)
Definition: ARICHReconstructionPar.h:173
Belle2::ARICHReconstructionPar::ARICHReconstructionPar
ARICHReconstructionPar()
Default constructor.
Definition: ARICHReconstructionPar.h:39
Belle2::ARICHReconstructionPar::getAerogelFOM
double getAerogelFOM(unsigned iLayer) const
Get aerogel cherenkov photon yield for tile of selected layer.
Definition: ARICHReconstructionPar.h:122
Belle2::ARICHReconstructionPar::initializeDefault
void initializeDefault()
initializes "default" values of parameters
Definition: ARICHReconstructionPar.cc:20
Belle2::ARICHReconstructionPar::m_pars
std::vector< float > m_pars
vector of other pdf parameters
Definition: ARICHReconstructionPar.h:171
Belle2::ARICHReconstructionPar::getThcResolution
double getThcResolution(double momentum) const
Get Cherenkov angle resolution (without smearing due to pad size!) at given track momentum.
Definition: ARICHReconstructionPar.h:112
Belle2::ARICHReconstructionPar::getBackgroundPDF
const TF1 * getBackgroundPDF() const
Get background PDF function.
Definition: ARICHReconstructionPar.h:102
Belle2::ARICHReconstructionPar::getNPadsInRing
double getNPadsInRing(double maxThc, double minThc=0.0, double trackTh=0.45) const
Get average number of pads in ring.
Definition: ARICHReconstructionPar.cc:71
Belle2::ARICHReconstructionPar::getParameters
const std::vector< float > & getParameters() const
Get vector of additional cherenkov angle PDF parameters.
Definition: ARICHReconstructionPar.h:93
Belle2::ARICHReconstructionPar::setThcResolution
void setThcResolution(TF1 *thcRes)
Set function for cherenkov angle resolution vs.
Definition: ARICHReconstructionPar.h:57
Belle2::ARICHReconstructionPar::print
void print() const
Print parameters values.
Definition: ARICHReconstructionPar.cc:80
Belle2::ARICHReconstructionPar::getFlatBkgPerPad
float getFlatBkgPerPad() const
Get flat background per pad.
Definition: ARICHReconstructionPar.h:131
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ARICHReconstructionPar::getBackgroundPerPad
double getBackgroundPerPad(double th_cer, const std::vector< double > &pars) const
Get expected number of background hits for pad at given theta.
Definition: ARICHReconstructionPar.cc:38
Belle2::ARICHReconstructionPar::ClassDef
ClassDef(ARICHReconstructionPar, 1)
ClassDef, must be the last term before the closing {}.
Belle2::ARICHReconstructionPar::m_aerogelFOM
std::vector< float > m_aerogelFOM
aerogel figure of merit (for photon yield)
Definition: ARICHReconstructionPar.h:172
Belle2::ARICHReconstructionPar::setParameters
void setParameters(const std::vector< float > &pars)
Set additional cherenkov angle PDF parameters.
Definition: ARICHReconstructionPar.h:84
Belle2::ARICHReconstructionPar::setBackgroundPDF
void setBackgroundPDF(TF1 *bkgPDF)
Set background PDF function for cherenkov angle distribution (vs.
Definition: ARICHReconstructionPar.h:48
Belle2::ARICHReconstructionPar::setAerogelFOM
void setAerogelFOM(const std::vector< float > &aerogelFOM)
Set aerogel figure of merit for cherenkov photon yield.
Definition: ARICHReconstructionPar.h:66
Belle2::ARICHReconstructionPar::m_bkgPDF
TF1 * m_bkgPDF
background PDF function (function of theta)
Definition: ARICHReconstructionPar.h:169
Belle2::ARICHReconstructionPar::m_thcResolution
TF1 * m_thcResolution
cherenkov angle resolution (function of track momentum)
Definition: ARICHReconstructionPar.h:170