Belle II Software  release-06-00-14
eclee5x5Algorithm.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #pragma once
10 #include <ecl/calibration/eclee5x5Algorithm.h>
11 #include <calibration/CalibrationAlgorithm.h>
12 #include <ecl/geometry/ECLNeighbours.h>
13 
14 namespace Belle2 {
19  namespace ECL {
20 
23  public:
24 
27 
29  virtual ~eclee5x5Algorithm() {}
30 
32  void setOutputName(const std::string& outputName) {m_outputName = outputName;}
33 
35  std::string getOutputName() {return m_outputName;}
36 
38  void setMinEntries(int minEntries) {m_minEntries = minEntries;}
39 
41  int getMinEntries() {return m_minEntries;}
42 
44  void setPayloadName(const std::string& payloadname) {m_payloadName = payloadname;}
45 
47  std::string getPayloadName() {return m_payloadName;}
48 
50  void setStoreConst(bool storeConst) {m_storeConst = storeConst;}
51 
53  bool getStoreConst() {return m_storeConst;}
54 
56  void setfracLo(double fracLo) {m_fracLo = fracLo;}
57 
59  double getfracLo() {return m_fracLo;}
60 
62  void setfracHiSym(double fracHiSym) {m_fracHiSym = fracHiSym;}
63 
65  double getfracHiSym() {return m_fracHiSym;}
66 
68  void setfracHiASym(double fracHiASym) {m_fracHiASym = fracHiASym;}
69 
71  double getfracHiASym() {return m_fracHiASym;}
72 
74  void setnsigLo(double nsigLo) {m_nsigLo = nsigLo;}
75 
77  double getnsigLo() {return m_nsigLo;}
78 
80  void setnsigHiSym(double nsigHiSym) {m_nsigHiSym = nsigHiSym;}
81 
83  double getnsigHiSym() {return m_nsigHiSym;}
84 
86  void setnsigHiASym(double nsigHiASym) {m_nsigHiASym = nsigHiASym;}
87 
89  double getnsigHiASym() {return m_nsigHiASym;}
90 
92  void setlastLoThetaID(int lastLoThetaID) {m_lastLoThetaID = lastLoThetaID;}
93 
96 
97  protected:
98 
100  virtual EResult calibrate() override;
101 
102  private:
103 
105  std::string m_outputName = "eclee5x5Algorithm.root";
106  int m_minEntries = 150;
108  std::string m_payloadName = "ECLCrystalEnergy5x5";
109  bool m_storeConst = true;
111  double m_fracLo = 0.2;
112  double m_fracHiSym = 0.2;
113  double m_fracHiASym = 0.4;
114  double m_nsigLo = 2.5;
115  double m_nsigHiSym = 2.5;
116  double m_nsigHiASym = 2.0;
117  int m_lastLoThetaID = 4;
118  };
119  }
121 } // namespace Belle2
122 
123 
Base class for calibration algorithms.
EResult
The result of calibration.
Class to get the neighbours for a given cell id.
Definition: ECLNeighbours.h:23
Calibrate ecl crystals using Bhabha events.
void setlastLoThetaID(int lastLoThetaID)
Setter for m_lastLoThetaID.
int m_minEntries
all crystals to be calibrated must have this many entries
double m_fracHiASym
or fracHiASym*peak, at low values of thetaID
void setMinEntries(int minEntries)
Setter for m_minEntries.
double getnsigHiSym()
Getter for m_nsigHiSym.
void setOutputName(const std::string &outputName)
Setter for m_outputName.
double getnsigLo()
Getter for m_nsigLo.
double getnsigHiASym()
Getter for m_nsigHiASym.
double m_fracLo
start dPhi fit where data is > fraclo*peak
double m_nsigHiASym
or mean+nsigHiASym*sigma at low thetaID
double getfracLo()
Getter for m_fracLo.
double m_nsigLo
dPhi region is mean - nsigLo*sigma
void setnsigHiSym(double nsigHiSym)
Setter for m_nsigHiSym.
std::string getOutputName()
Getter for m_outputName.
double getfracHiSym()
Getter for m_fracHiSym.
void setfracLo(double fracLo)
Setter for m_fracLo.
std::string m_payloadName
Name of the payload to be stored.
virtual ~eclee5x5Algorithm()
..Destructor
bool getStoreConst()
Getter for m_storeConst.
ECL::ECLNeighbours * m_eclNeighbours5x5
Neighbours, used to get nCrys per ring.
double getfracHiASym()
Getter for m_fracHiASym.
void setnsigHiASym(double nsigHiASym)
Setter for m_nsigHiASym.
void setfracHiASym(double fracHiASym)
Setter for m_fracHiASym.
void setPayloadName(const std::string &payloadname)
Setter for m_payloadName.
std::string m_outputName
..Parameters to control job to find energy calibration using Bhabhas
bool m_storeConst
write payload to localdb if true
int m_lastLoThetaID
use asymmetric dPhi range for thetaID<= this value
void setfracHiSym(double fracHiSym)
Setter for m_fracHiSym.
void setnsigLo(double nsigLo)
Setter for m_nsigLo.
std::string getPayloadName()
Getter for m_payloadname.
virtual EResult calibrate() override
..Run algorithm on events
double m_fracHiSym
end dPhi fit where data is > fracHiSym*peak
int getlastLoThetaID()
Getter for m_lastLoThetaID.
double m_nsigHiSym
to mean + nsigHiSym*sigma
void setStoreConst(bool storeConst)
Setter for m_storeConst.
int getMinEntries()
Getter for m_minEntries.
Abstract base class for different kinds of events.