Project
Loading...
Searching...
No Matches
SimParam.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11#ifndef ALICEO2_EMCAL_SIMPARAM_H_
12#define ALICEO2_EMCAL_SIMPARAM_H_
13
14#include <iosfwd>
17#include "Rtypes.h"
18
19namespace o2
20{
21namespace emcal
22{
26
28{
29 public:
30 ~SimParam() override = default;
31
32 // Parameters used in Digitizer
33 Int_t getDigitThreshold() const { return mDigitThreshold; }
34 Float_t getPinNoise() const { return mPinNoise; }
35 Float_t getPinNoiseLG() const { return mPinNoiseLG; }
38 Double_t getTimeResolution(Double_t energy) const;
39 Int_t getNADCEC() const { return mNADCEC; }
45 Int_t getBCPhaseSwap() const { return mSwapPhase; }
46
47 // Parameters used in TRU Digitizer
52
53 // Parameters used in LZERO
55
56 // Parameters used in SDigitizer
57 Float_t getA() const { return mA; }
58 Float_t getB() const { return mB; }
60
62 unsigned int getTimeBinOffset() const { return mTimeWindowStart; }
63 Float_t getLiveTime() const { return mLiveTime; }
64 Float_t getBusyTime() const { return mBusyTime; }
66
67 Bool_t doSmearEnergy() const { return mSmearEnergy; }
71 Bool_t doSimulateL1Phase() const { return mSimulateL1Phase; }
72
73 Bool_t isDisablePileup() const { return mDisablePileup; }
74
75 void PrintStream(std::ostream& stream) const;
76
77 // Digitizer
78 Int_t mDigitThreshold{3};
79 Int_t mMeanPhotonElectron{4400};
85 Int_t mNADCEC{0x10000};
89 Int_t mSwapPhase{0};
90
91 // TRU Digitizer
95 Float_t mTimeResponseNormalisationTRU{(5. / 3.93) * (45. / 39.25)};
96
97 // LZERO peak finding
99
100 // SDigitizer
102 Float_t mB{1.e+6};
104
105 // Timing
107 unsigned int mTimeWindowStart{400};
111
112 // Processing
113 Bool_t mSmearEnergy{true};
116 Bool_t mSimulateNoiseDigits{true};
117 bool mSimulateL1Phase{true};
118
119 // DigitizerSpec
120 Bool_t mDisablePileup{false};
121
122 O2ParamDef(SimParam, "EMCSimParam");
123};
124
125std::ostream& operator<<(std::ostream& stream, const SimParam& s);
126
127} // namespace emcal
128
129namespace framework
130{
131template <typename T>
132struct is_messageable;
133template <>
134struct is_messageable<o2::emcal::SimParam> : std::true_type {
135};
136} // namespace framework
137
138} // namespace o2
139
140#endif
EMCal simulation parameters.
Definition SimParam.h:28
Float_t mTimeResponseNormalisationTRU
Raw time response function normalisation parameter TRU from correlation studies.
Definition SimParam.h:95
Float_t mPinNoise
Electronics noise in EMC, APD.
Definition SimParam.h:81
Bool_t mSimulateNoiseDigits
simulate noise digits
Definition SimParam.h:116
Bool_t doRemoveDigitsBelowThreshold() const
Definition SimParam.h:69
Float_t getTimeResponseTauTRU() const
Definition SimParam.h:49
void PrintStream(std::ostream &stream) const
Definition SimParam.cxx:26
Float_t mB
Slope Digitizition parameters.
Definition SimParam.h:102
Float_t getSignalDelay() const
Definition SimParam.h:61
Bool_t mSimulateTimeResponse
simulate time response
Definition SimParam.h:114
Float_t mGainFluctuations
correct fMeanPhotonElectron by the gain fluctuations
Definition SimParam.h:80
Float_t getBusyTime() const
Definition SimParam.h:64
Float_t mA
Pedestal parameter.
Definition SimParam.h:101
Float_t getTimeResponseTau() const
Definition SimParam.h:42
Bool_t doSimulateNoiseDigits() const
Definition SimParam.h:70
Float_t mLiveTime
EMCal live time (ns)
Definition SimParam.h:108
Bool_t isDisablePileup() const
Definition SimParam.h:73
Float_t getA() const
Definition SimParam.h:57
Float_t mTimeResponseTau
Raw time response function tau parameter.
Definition SimParam.h:86
unsigned int mTimeWindowStart
The start of the time window.
Definition SimParam.h:107
Float_t mPreTriggerTime
EMCal pre-trigger time (ns)
Definition SimParam.h:110
Float_t mSignalDelay
Signal delay time (ns)
Definition SimParam.h:106
Int_t mDigitThreshold
Threshold for storing digits in EMC.
Definition SimParam.h:78
O2ParamDef(SimParam, "EMCSimParam")
Int_t mNADCEC
number of channels in EC section ADC
Definition SimParam.h:85
~SimParam() override=default
Float_t mTimeResponsePower
Raw time response function power parameter.
Definition SimParam.h:87
Bool_t doSimulateL1Phase() const
Definition SimParam.h:71
Float_t getB() const
Definition SimParam.h:58
bool mSimulateL1Phase
Simulate L1 phase.
Definition SimParam.h:117
Float_t getTimeResolutionPar1() const
Definition SimParam.h:37
Bool_t mDisablePileup
disable pileup simulation
Definition SimParam.h:120
Float_t mECPrimThreshold
To store primary if EC Shower Elos > threshold.
Definition SimParam.h:103
Float_t mBusyTime
EMCal busy time (ns)
Definition SimParam.h:109
Float_t mPinNoiseTRU
Electronics noise in EMC, TRU, normalised by fastOr.
Definition SimParam.h:92
Float_t mTimeResponseThreshold
Raw time response function energy threshold.
Definition SimParam.h:88
Float_t getLiveTime() const
Definition SimParam.h:63
Float_t getPreTriggerTime() const
Definition SimParam.h:65
Float_t getTimeResolutionPar0() const
Definition SimParam.h:36
Double_t getTimeResolution(Double_t energy) const
Definition SimParam.cxx:58
Float_t getGainFluctuations() const
Definition SimParam.h:41
Float_t getTimeResponseNormalisationTRU() const
Definition SimParam.h:51
Int_t mSwapPhase
BC phase swap similar to data.
Definition SimParam.h:89
Float_t getECPrimaryThreshold() const
Definition SimParam.h:59
Float_t getPinNoise() const
Definition SimParam.h:34
Float_t mTimeResolutionPar0
Time resolution of FEE electronics.
Definition SimParam.h:83
Int_t getBCPhaseSwap() const
Definition SimParam.h:45
Float_t getPinNoiseLG() const
Definition SimParam.h:35
Int_t mMeanPhotonElectron
number of photon electrons per GeV deposited energy
Definition SimParam.h:79
Bool_t doSmearEnergy() const
Definition SimParam.h:67
Float_t mTimeResponsePowerTRU
Raw time response function power parameter TRU from Martin Poghosyan.
Definition SimParam.h:94
Int_t getNADCEC() const
Definition SimParam.h:39
Float_t getTimeResponsePower() const
Definition SimParam.h:43
Float_t getTimeResponseThreshold() const
Definition SimParam.h:44
Float_t mTimeResolutionPar1
Time resolution of FEE electronics.
Definition SimParam.h:84
Bool_t mSmearEnergy
do time and energy smearing
Definition SimParam.h:113
Float_t getPinNoiseTRU() const
Definition SimParam.h:48
Bool_t doSimulateTimeResponse() const
Definition SimParam.h:68
Float_t mPinNoiseLG
Electronics noise in EMC, APD, Low Gain.
Definition SimParam.h:82
Float_t getTimeResponsePowerTRU() const
Definition SimParam.h:50
Int_t getDigitThreshold() const
Definition SimParam.h:33
Int_t getMeanPhotonElectron() const
Definition SimParam.h:40
Float_t mThresholdLZERO
ADC threshold for peak finding in the LZEROElectronics.
Definition SimParam.h:98
Bool_t mRemoveDigitsBelowThreshold
remove digits below threshold
Definition SimParam.h:115
Float_t getThresholdLZERO() const
Definition SimParam.h:54
Float_t mTimeResponseTauTRU
Raw time response function tau parameter TRU from Martin Poghosyan.
Definition SimParam.h:93
unsigned int getTimeBinOffset() const
Definition SimParam.h:62
GLuint GLuint stream
Definition glcorearb.h:1806
std::ostream & operator<<(std::ostream &stream, const Cell &cell)
Stream operator for EMCAL cell.
Definition Cell.cxx:355
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...