Belle II Software  release-05-01-25
eclMuMuECollectorModule.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2018 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Christopher Hearty *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 //Calibration
14 #include <calibration/CalibrationCollectorModule.h>
15 
16 //ECL
17 #include <framework/database/DBObjPtr.h>
18 #include <framework/datastore/StoreArray.h>
19 
20 namespace Belle2 {
26  class ECLDigit;
27  class ECLCalDigit;
28  class Track;
29  class ECLCrystalCalib;
30  class EventMetaData;
31  class TRGSummary;
32 
33  namespace ECL {
34  class ECLNeighbours;
35  }
36 
38  class eclMuMuECollectorModule : public CalibrationCollectorModule {
39 
40  public:
41 
44 
46  void prepare() override;
47 
49  void collect() override;
50 
51  private:
52 
54  double m_minPairMass{9.0};
55  double m_minTrackLength{30.0};
56  double m_MaxNeighbourE{0.010};
57  double m_thetaLabMinDeg{17.0};
58  double m_thetaLabMaxDeg{150.0};
59  bool m_measureTrueEnergy{false};
60  bool m_requireL1{true};
63  int firstcellIDN4 = 1009;
64  int lastcellIDN4 = 7920;
76  double cotThetaLabMin{0.0};
77  double cotThetaLabMax{0.0};
78  int iEvent = 0;
79  std::vector<float> EperCrys;
83  std::vector<float> ExpMuMuE;
87  std::vector<float> ElectronicsCalib;
91  std::vector<float> MuMuECalib;
93  };
95 }
Belle2::eclMuMuECollectorModule::m_minTrackLength
double m_minTrackLength
minimum extrapolated track length in the crystal (30 cm)
Definition: eclMuMuECollectorModule.h:63
Belle2::eclMuMuECollectorModule::m_TRGResults
StoreObjPtr< TRGSummary > m_TRGResults
DataStore TRGSummary.
Definition: eclMuMuECollectorModule.h:80
Belle2::eclMuMuECollectorModule::ElectronicsCalib
std::vector< float > ElectronicsCalib
vector obtained from DB object
Definition: eclMuMuECollectorModule.h:95
Belle2::eclMuMuECollectorModule::myNeighbours8
ECL::ECLNeighbours * myNeighbours8
class to return 8 nearest neighbours to crystal
Definition: eclMuMuECollectorModule.h:74
Belle2::eclMuMuECollectorModule::m_MuMuECalib
DBObjPtr< ECLCrystalCalib > m_MuMuECalib
Existing single crystal calibration from DB; will be updated by CAF.
Definition: eclMuMuECollectorModule.h:98
Belle2::eclMuMuECollectorModule::m_measureTrueEnergy
bool m_measureTrueEnergy
use eclCalDigit to determine MC deposited energy (false)
Definition: eclMuMuECollectorModule.h:67
Belle2::eclMuMuECollectorModule::m_thetaLabMinDeg
double m_thetaLabMinDeg
miniumum muon theta in lab (17 degrees)
Definition: eclMuMuECollectorModule.h:65
Belle2::eclMuMuECollectorModule::m_requireL1
bool m_requireL1
require events to satisfy a level 1 trigger (true)
Definition: eclMuMuECollectorModule.h:68
Belle2::eclMuMuECollectorModule::m_eclCalDigitArray
StoreArray< ECLCalDigit > m_eclCalDigitArray
DataStore TRGSummary.
Definition: eclMuMuECollectorModule.h:81
Belle2::eclMuMuECollectorModule::firstcellIDN4
int firstcellIDN4
Neighbours of each ECL crystal.
Definition: eclMuMuECollectorModule.h:71
Belle2::eclMuMuECollectorModule::iEvent
int iEvent
event counter
Definition: eclMuMuECollectorModule.h:86
Belle2::eclMuMuECollectorModule::cotThetaLabMax
double cotThetaLabMax
m_thetaLabMaxDeg converted to cotangent
Definition: eclMuMuECollectorModule.h:85
Belle2::DBObjPtr
Class for accessing objects in the database.
Definition: DBObjPtr.h:31
Belle2::eclMuMuECollectorModule::ExpMuMuE
std::vector< float > ExpMuMuE
vector obtained from DB object
Definition: eclMuMuECollectorModule.h:91
Belle2::ECL::ECLNeighbours
Class to get the neighbours for a given cell id.
Definition: ECLNeighbours.h:38
Belle2::eclMuMuECollectorModule::lastcellIDN4
int lastcellIDN4
last cellID where we only need 4 neighbours
Definition: eclMuMuECollectorModule.h:72
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::StoreObjPtr
Type-safe access to single objects in the data store.
Definition: ParticleList.h:33
Belle2::eclMuMuECollectorModule::MuMuECalib
std::vector< float > MuMuECalib
vector obtained from DB object
Definition: eclMuMuECollectorModule.h:99
Belle2::eclMuMuECollectorModule::m_trackArray
StoreArray< Track > m_trackArray
Required arrays.
Definition: eclMuMuECollectorModule.h:77
Belle2::eclMuMuECollectorModule::cotThetaLabMin
double cotThetaLabMin
Some other useful quantities.
Definition: eclMuMuECollectorModule.h:84
Belle2::eclMuMuECollectorModule::m_eclDigitArray
StoreArray< ECLDigit > m_eclDigitArray
Required input array of eclDigits.
Definition: eclMuMuECollectorModule.h:78
Belle2::eclMuMuECollectorModule::EperCrys
std::vector< float > EperCrys
ECL digit energy for each crystal.
Definition: eclMuMuECollectorModule.h:87
Belle2::eclMuMuECollectorModule::collect
void collect() override
Select events and crystals and accumulate histograms.
Definition: eclMuMuECollectorModule.cc:171
Belle2::eclMuMuECollectorModule::m_ECLExpMuMuE
DBObjPtr< ECLCrystalCalib > m_ECLExpMuMuE
Expected energies from database.
Definition: eclMuMuECollectorModule.h:90
Belle2::eclMuMuECollectorModule::m_ElectronicsCalib
DBObjPtr< ECLCrystalCalib > m_ElectronicsCalib
Electronics calibration from database.
Definition: eclMuMuECollectorModule.h:94
Belle2::eclMuMuECollectorModule::m_minPairMass
double m_minPairMass
Parameters to control the job.
Definition: eclMuMuECollectorModule.h:62
Belle2::StoreArray
Accessor to arrays stored in the data store.
Definition: ECLMatchingPerformanceExpertModule.h:33
Belle2::eclMuMuECollectorModule::m_evtMetaData
StoreObjPtr< EventMetaData > m_evtMetaData
DataStore EventMetaData.
Definition: eclMuMuECollectorModule.h:79
Belle2::eclMuMuECollectorModule::myNeighbours4
ECL::ECLNeighbours * myNeighbours4
class to return 4 nearest neighbours to crystal
Definition: eclMuMuECollectorModule.h:73
Belle2::eclMuMuECollectorModule::m_thetaLabMaxDeg
double m_thetaLabMaxDeg
maximum muon theta in lab (150 degrees)
Definition: eclMuMuECollectorModule.h:66
Belle2::eclMuMuECollectorModule::m_MaxNeighbourE
double m_MaxNeighbourE
maximum signal allowed in a neighbouring crystal (0.010 GeV)
Definition: eclMuMuECollectorModule.h:64
Belle2::eclMuMuECollectorModule::prepare
void prepare() override
Define histograms and read payloads from DB.
Definition: eclMuMuECollectorModule.cc:66
Belle2::eclMuMuECollectorModule::eclMuMuECollectorModule
eclMuMuECollectorModule()
Constructor: Sets the description, the properties and the parameters of the module.
Definition: eclMuMuECollectorModule.cc:49