Belle II Software  release-08-01-10
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 
11 /* ECL headers. */
12 #include <ecl/geometry/ECLNeighbours.h>
13 
14 /* Basf2 headers. */
15 #include <calibration/CalibrationAlgorithm.h>
16 
17 namespace Belle2 {
22  namespace ECL {
23 
26  public:
27 
30 
32  virtual ~eclee5x5Algorithm() {}
33 
35  void setOutputName(const std::string& outputName) {m_outputName = outputName;}
36 
38  std::string getOutputName() {return m_outputName;}
39 
41  void setMinEntries(int minEntries) {m_minEntries = minEntries;}
42 
44  int getMinEntries() {return m_minEntries;}
45 
47  void setPayloadName(const std::string& payloadname) {m_payloadName = payloadname;}
48 
50  std::string getPayloadName() {return m_payloadName;}
51 
53  void setStoreConst(bool storeConst) {m_storeConst = storeConst;}
54 
56  bool getStoreConst() {return m_storeConst;}
57 
59  void setfracLo(double fracLo) {m_fracLo = fracLo;}
60 
62  double getfracLo() {return m_fracLo;}
63 
65  void setfracHiSym(double fracHiSym) {m_fracHiSym = fracHiSym;}
66 
68  double getfracHiSym() {return m_fracHiSym;}
69 
71  void setfracHiASym(double fracHiASym) {m_fracHiASym = fracHiASym;}
72 
74  double getfracHiASym() {return m_fracHiASym;}
75 
77  void setnsigLo(double nsigLo) {m_nsigLo = nsigLo;}
78 
80  double getnsigLo() {return m_nsigLo;}
81 
83  void setnsigHiSym(double nsigHiSym) {m_nsigHiSym = nsigHiSym;}
84 
86  double getnsigHiSym() {return m_nsigHiSym;}
87 
89  void setnsigHiASym(double nsigHiASym) {m_nsigHiASym = nsigHiASym;}
90 
92  double getnsigHiASym() {return m_nsigHiASym;}
93 
95  void setlastLoThetaID(int lastLoThetaID) {m_lastLoThetaID = lastLoThetaID;}
96 
99 
100  protected:
101 
103  virtual EResult calibrate() override;
104 
105  private:
106 
108  std::string m_outputName = "eclee5x5Algorithm.root";
109  int m_minEntries = 150;
111  std::string m_payloadName = "ECLCrystalEnergy5x5";
112  bool m_storeConst = true;
114  double m_fracLo = 0.2;
115  double m_fracHiSym = 0.2;
116  double m_fracHiASym = 0.4;
117  double m_nsigLo = 2.5;
118  double m_nsigHiSym = 2.5;
119  double m_nsigHiASym = 2.0;
120  int m_lastLoThetaID = 4;
121  };
122  }
124 } // namespace Belle2
125 
126 
Base class for calibration algorithms.
EResult
The result of calibration.
Class to get the neighbours for a given cell id.
Definition: ECLNeighbours.h:25
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.