![]() |
Project
|
#include <EMCALCalibParams.h>
Inherits o2::conf::ConfigurableParamHelper< EMCALCalibParams >.
Public Member Functions | |
O2ParamDef (EMCALCalibParams, "EMCALCalibParams") | |
![]() | |
std::string | getName () const final |
EParamProvenance | getMemberProvenance (const std::string &key) const final |
void | printKeyValues (bool showProv=true, bool useLogger=false) const final |
size_t | getHash () const final |
void | output (std::ostream &out) const final |
std::vector< ParamDataMember > * | getDataMembers () const |
void | putKeyValues (boost::property_tree::ptree *tree) final |
void | initFrom (TFile *file) final |
void | syncCCDBandRegistry (void *externalobj) final |
void | serializeTo (TFile *file) const final |
ConfigurableParam () | |
Public Attributes | |
unsigned int | minNEvents_bc = 1e7 |
minimum number of events to trigger the calibration | |
unsigned int | minNEntries_bc = 1e6 |
minimum number of entries to trigger the calibration | |
bool | useNEventsForCalib_bc = true |
use the minimum number of events to trigger the calibration | |
bool | useScaledHisto_bc = true |
use the scaled histogram for the bad channel map | |
bool | enableTestMode_bc = false |
enable test mode for calibration | |
int | nBinsEnergyAxis_bc = 1000 |
number of bins for boost histogram energy axis | |
bool | useTimeInfoForCalib_bc = true |
weather to use the timing information as a criterion in the bad channel analysis | |
float | maxValueEnergyAxis_bc = 40 |
maximum value for boost histogram energy axis (minimum is always 0) | |
int | nBinsTimeAxis_bc = 1000 |
number of bins for boost histogram time axis | |
float | rangeTimeAxisLow_bc = -500 |
minimum value of time for histogram range | |
float | rangeTimeAxisHigh_bc = 500 |
maximum value of time for histogram range | |
float | minCellEnergyTime_bc = 0.1 |
minimum energy needed to fill the time histogram | |
float | sigmaTime_bc = 5 |
sigma value for the upper cut on the time-variance distribution | |
float | sigmaTimePreTrigg_bc = 10. |
sigma value for the upper cut on the fraction of cells in the pre-trigger region | |
float | sigmaTimePostTrigg_bc = 10. |
sigma value for the upper cut on the fraction of cells in the post-trigger region | |
unsigned int | slotLength_bc = 0 |
Lenght of the slot before calibration is triggered. If set to 0 calibration is triggered when hasEnoughData returns true. | |
bool | UpdateAtEndOfRunOnly_bc = false |
switch to enable trigger of calibration only at end of run | |
float | minNHitsForMeanEnergyCut = 100 |
mean number of hits per cell that is needed to cut on the mean energy per hit. Needed for high energy intervals as outliers can distort the distribution | |
float | minNHitsForNHitCut = 1 |
mean number of hits per cell that is needed to cut on the mean number of hits. Needed for high energy intervals as outliers can distort the distribution | |
float | minCellEnergy_bc = 0.1 |
minimum cell energy considered for filling the histograms for bad channel calib. Should speedup the filling of the histogram to suppress noise | |
float | fractionEvents_bc = 1. |
fraction of events used in bad channel calibration | |
size_t | nThreads_bc = 4 |
number of threads used for the bad channel calinration for filling the histograms | |
float | fracMaskSMFully_bc = 0.5 |
fraction of bad+dead channel for a SM to be fully masked | |
float | fracMaskFECFully_bc = 0.9 |
fraction of bad+dead channel for a FEC to be fully masked | |
unsigned int | minNEvents_tc = 1e7 |
minimum number of events to trigger the calibration | |
unsigned int | minNEntries_tc = 1e6 |
minimum number of entries to trigger the calibration | |
bool | useNEventsForCalib_tc = true |
use the minimum number of events to trigger the calibration | |
float | minCellEnergy_tc = 0.5 |
minimum cell energy to enter the time calibration (typical minimum seed energy for clusters), time resolution gets better with rising energy | |
int | minTimeForFit_tc = -300 |
minimum cell time considered for the time calibration in ns | |
int | maxTimeForFit_tc = 300 |
maximum cell time considered for the time calibration in ns | |
int | restrictFitRangeToMax_tc = 25 |
window around the largest entry within the minTimeForFit in which the fit is performed in ns | |
int | nBinsTimeAxis_tc = 1500 |
number of bins used for the time calibration | |
int | minValueTimeAxis_tc = -500 |
minimum value of the time axis in the time calibration | |
int | maxValueTimeAxis_tc = 1000 |
maximum value of the time axis in the time calibration | |
float | lowGainOffset_tc = 8.8 |
Offset between high gain and low gain in ns. This is needed since the low gain calib will not be possible due to insuficient statistics. | |
unsigned int | slotLength_tc = 0 |
Lenght of the slot before calibration is triggered. If set to 0 calibration is triggered when hasEnoughData returns true. | |
bool | UpdateAtEndOfRunOnly_tc = false |
switch to enable trigger of calibration only at end of run | |
float | maxAllowedDeviationFromMax = 10 |
maximum deviation allowed between the estimated maximum of the fit and the true maximum from the distribution. If deviation is larger then value, the fit likely failed. In this case, the true value is taken | |
float | fractionEvents_tc = 1. |
fraction of events used in time calibration | |
size_t | nThreads_tc = 2 |
number of threads used for the time calinration for filling the histograms | |
std::string | calibType = "time" |
type of calibration to run | |
std::string | localRootFilePath = "" |
path to local root file in order to store the calibration histograms (off by default, only to be used for testing) | |
bool | enableFastCalib = false |
switch to enable fast calibration. Instead of filling boost histograms, mean and sigma of cells is calculated on the fly | |
bool | enableTimeProfiling = false |
enable to log how much time is spent in the run function in the calibrator spec. Needed for speed tests offline and at point 2 | |
bool | setSavedSlotAllowed_EMC = true |
if true, saving and loading of calibrations from last run and for next run is enabled | |
bool | setSavedSlotAllowedSOR_EMC = true |
if true, stored calibrations from last run can be loaded in the next run (if false, storing of the calib histograms is still active in contrast to setSavedSlotAllowed_EMC) | |
long | endTimeMargin = 2592000000 |
set end TS to 30 days after slot ends (1000 * 60 * 60 * 24 * 30) | |
std::string | selectedClassMasks = "C0TVX-B-NOPF-EMC" |
name of EMCal min. bias trigger that is used for calibration | |
int | bcShiftCTP = 0 |
bc shift of CTP digits to align them with EMC bc in case they are misaligned | |
std::string | filePathSave = "./emc_calib" |
path where calibration histograms are stored at EOR to save them for the next run | |
bool | requireSameFill = false |
if loading calib objects from previous run, require it to be in the same fill as the current one | |
bool | requireSameRunType = true |
if loading calib objects from previous run, require it to be the same run type | |
int | tsDiffMax = 48 |
if loading calib objects from previous run, limit time between the object being stored and loaded again (in hours) | |
unsigned int | minNEventsSaveSlot = 100000 |
minimum amount a slot has to have in order to be taken into accoutn in finalize slot. THis is also relevant if the slot should be saved at the EOR | |
bool | useStaticStartTimeSlot = true |
if set to true, allows to use the start timestamp set manually. This is important if data from a previous run was loaded as otherwise, the start-timestamp will not include data from the previous run | |
short | maxPedestalRMS = 10 |
Maximum value for RMS for pedestals (has to be tuned) | |
unsigned int | minNEvents = 1e7 |
minimum number of events to trigger the calibration | |
unsigned int | minNEntries = 1e6 |
minimum number of entries to trigger the calibration | |
bool | useNEventsForCalib = true |
use the minimum number of events to trigger the calibration | |
bool | useScaledHistoForBadChannelMap = true |
use the scaled histogram for the bad channel map | |
bool | enableTestMode = false |
enable test mode for calibration | |
float | minCellEnergyForTimeCalib = 0.5 |
minimum cell energy to enter the time calibration (typical minimum seed energy for clusters), time resolution gets better with rising energy | |
unsigned int | slotLength = 0 |
Lenght of the slot before calibration is triggered. If set to 0 calibration is triggered when hasEnoughData returns true. | |
bool | UpdateAtEndOfRunOnly = false |
switch to enable trigger of calibration only at end of run | |
int | minTimeForFit = -300 |
minimum cell time considered for the time calibration in ns | |
int | maxTimeForFit = 300 |
maximum cell time considered for the time calibration in ns | |
int | restrictFitRangeToMax = 25 |
window around the largest entry within the minTimeForFit in which the fit is performed in ns | |
Additional Inherited Members | |
![]() | |
enum | EParamProvenance { kCODE , kCCDB , kRT } |
enum class | EParamUpdateStatus { Changed , Unchanged , Failed } |
![]() | |
static const EMCALCalibParams & | Instance () |
![]() | |
static std::string | toString (EParamProvenance p) |
static EParamProvenance | getProvenance (const std::string &key) |
static void | printAllRegisteredParamNames () |
static void | printAllKeyValuePairs (bool useLogger=false) |
static const std::string & | getOutputDir () |
static void | setOutputDir (const std::string &d) |
static bool | configFileExists (std::string const &filepath) |
static void | writeJSON (std::string const &filename, std::string const &keyOnly="") |
static void | writeINI (std::string const &filename, std::string const &keyOnly="") |
template<typename T > | |
static T | getValueAs (std::string key) |
template<typename T > | |
static void | setValue (std::string const &mainkey, std::string const &subkey, T x) |
static void | setProvenance (std::string const &mainkey, std::string const &subkey, EParamProvenance p) |
static void | setValue (std::string const &key, std::string const &valuestring) |
static void | setEnumValue (const std::string &, const std::string &) |
static void | setArrayValue (const std::string &, const std::string &) |
static void | setValues (std::vector< std::pair< std::string, std::string > > const &keyValues) |
static void | initialize () |
static void | toCCDB (std::string filename) |
static void | fromCCDB (std::string filename) |
static void | updateFromString (std::string const &) |
static void | updateFromFile (std::string const &, std::string const ¶msList="", bool unchangedOnly=false) |
![]() | |
ConfigurableParam () | |
virtual | ~ConfigurableParam ()=default |
void | setRegisterMode (bool b) |
bool | isInitialized () const |
![]() | |
static void | initPropertyTree () |
static EParamUpdateStatus | updateThroughStorageMap (std::string, std::string, std::type_info const &, void *) |
static EParamUpdateStatus | updateThroughStorageMapWithConversion (std::string const &, std::string const &) |
![]() | |
static std::map< std::string, std::pair< std::type_info const &, void * > > * | sKeyToStorageMap = nullptr |
static std::map< std::string, ConfigurableParam::EParamProvenance > * | sValueProvenanceMap = nullptr |
static EnumRegistry * | sEnumRegistry = nullptr |
static std::string | sOutputDir = "" |
Definition at line 30 of file EMCALCalibParams.h.
o2::emcal::EMCALCalibParams::O2ParamDef | ( | EMCALCalibParams | , |
"EMCALCalibParams" | |||
) |
int o2::emcal::EMCALCalibParams::bcShiftCTP = 0 |
bc shift of CTP digits to align them with EMC bc in case they are misaligned
Definition at line 85 of file EMCALCalibParams.h.
std::string o2::emcal::EMCALCalibParams::calibType = "time" |
type of calibration to run
Definition at line 77 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::enableFastCalib = false |
switch to enable fast calibration. Instead of filling boost histograms, mean and sigma of cells is calculated on the fly
Definition at line 79 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::enableTestMode = false |
enable test mode for calibration
Definition at line 101 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::enableTestMode_bc = false |
enable test mode for calibration
Definition at line 37 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::enableTimeProfiling = false |
enable to log how much time is spent in the run function in the calibrator spec. Needed for speed tests offline and at point 2
Definition at line 80 of file EMCALCalibParams.h.
long o2::emcal::EMCALCalibParams::endTimeMargin = 2592000000 |
set end TS to 30 days after slot ends (1000 * 60 * 60 * 24 * 30)
Definition at line 83 of file EMCALCalibParams.h.
std::string o2::emcal::EMCALCalibParams::filePathSave = "./emc_calib" |
path where calibration histograms are stored at EOR to save them for the next run
Definition at line 86 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::fracMaskFECFully_bc = 0.9 |
fraction of bad+dead channel for a FEC to be fully masked
Definition at line 56 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::fracMaskSMFully_bc = 0.5 |
fraction of bad+dead channel for a SM to be fully masked
Definition at line 55 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::fractionEvents_bc = 1. |
fraction of events used in bad channel calibration
Definition at line 53 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::fractionEvents_tc = 1. |
fraction of events used in time calibration
Definition at line 73 of file EMCALCalibParams.h.
std::string o2::emcal::EMCALCalibParams::localRootFilePath = "" |
path to local root file in order to store the calibration histograms (off by default, only to be used for testing)
Definition at line 78 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::lowGainOffset_tc = 8.8 |
Offset between high gain and low gain in ns. This is needed since the low gain calib will not be possible due to insuficient statistics.
Definition at line 69 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::maxAllowedDeviationFromMax = 10 |
maximum deviation allowed between the estimated maximum of the fit and the true maximum from the distribution. If deviation is larger then value, the fit likely failed. In this case, the true value is taken
Definition at line 72 of file EMCALCalibParams.h.
short o2::emcal::EMCALCalibParams::maxPedestalRMS = 10 |
Maximum value for RMS for pedestals (has to be tuned)
Definition at line 94 of file EMCALCalibParams.h.
int o2::emcal::EMCALCalibParams::maxTimeForFit = 300 |
maximum cell time considered for the time calibration in ns
Definition at line 106 of file EMCALCalibParams.h.
int o2::emcal::EMCALCalibParams::maxTimeForFit_tc = 300 |
maximum cell time considered for the time calibration in ns
Definition at line 64 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::maxValueEnergyAxis_bc = 40 |
maximum value for boost histogram energy axis (minimum is always 0)
Definition at line 40 of file EMCALCalibParams.h.
int o2::emcal::EMCALCalibParams::maxValueTimeAxis_tc = 1000 |
maximum value of the time axis in the time calibration
Definition at line 68 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::minCellEnergy_bc = 0.1 |
minimum cell energy considered for filling the histograms for bad channel calib. Should speedup the filling of the histogram to suppress noise
Definition at line 52 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::minCellEnergy_tc = 0.5 |
minimum cell energy to enter the time calibration (typical minimum seed energy for clusters), time resolution gets better with rising energy
Definition at line 62 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::minCellEnergyForTimeCalib = 0.5 |
minimum cell energy to enter the time calibration (typical minimum seed energy for clusters), time resolution gets better with rising energy
Definition at line 102 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::minCellEnergyTime_bc = 0.1 |
minimum energy needed to fill the time histogram
Definition at line 44 of file EMCALCalibParams.h.
unsigned int o2::emcal::EMCALCalibParams::minNEntries = 1e6 |
minimum number of entries to trigger the calibration
Definition at line 98 of file EMCALCalibParams.h.
unsigned int o2::emcal::EMCALCalibParams::minNEntries_bc = 1e6 |
minimum number of entries to trigger the calibration
Definition at line 34 of file EMCALCalibParams.h.
unsigned int o2::emcal::EMCALCalibParams::minNEntries_tc = 1e6 |
minimum number of entries to trigger the calibration
Definition at line 60 of file EMCALCalibParams.h.
unsigned int o2::emcal::EMCALCalibParams::minNEvents = 1e7 |
minimum number of events to trigger the calibration
Definition at line 97 of file EMCALCalibParams.h.
unsigned int o2::emcal::EMCALCalibParams::minNEvents_bc = 1e7 |
minimum number of events to trigger the calibration
Definition at line 33 of file EMCALCalibParams.h.
unsigned int o2::emcal::EMCALCalibParams::minNEvents_tc = 1e7 |
minimum number of events to trigger the calibration
Definition at line 59 of file EMCALCalibParams.h.
unsigned int o2::emcal::EMCALCalibParams::minNEventsSaveSlot = 100000 |
minimum amount a slot has to have in order to be taken into accoutn in finalize slot. THis is also relevant if the slot should be saved at the EOR
Definition at line 90 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::minNHitsForMeanEnergyCut = 100 |
mean number of hits per cell that is needed to cut on the mean energy per hit. Needed for high energy intervals as outliers can distort the distribution
Definition at line 50 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::minNHitsForNHitCut = 1 |
mean number of hits per cell that is needed to cut on the mean number of hits. Needed for high energy intervals as outliers can distort the distribution
Definition at line 51 of file EMCALCalibParams.h.
int o2::emcal::EMCALCalibParams::minTimeForFit = -300 |
minimum cell time considered for the time calibration in ns
Definition at line 105 of file EMCALCalibParams.h.
int o2::emcal::EMCALCalibParams::minTimeForFit_tc = -300 |
minimum cell time considered for the time calibration in ns
Definition at line 63 of file EMCALCalibParams.h.
int o2::emcal::EMCALCalibParams::minValueTimeAxis_tc = -500 |
minimum value of the time axis in the time calibration
Definition at line 67 of file EMCALCalibParams.h.
int o2::emcal::EMCALCalibParams::nBinsEnergyAxis_bc = 1000 |
number of bins for boost histogram energy axis
Definition at line 38 of file EMCALCalibParams.h.
int o2::emcal::EMCALCalibParams::nBinsTimeAxis_bc = 1000 |
number of bins for boost histogram time axis
Definition at line 41 of file EMCALCalibParams.h.
int o2::emcal::EMCALCalibParams::nBinsTimeAxis_tc = 1500 |
number of bins used for the time calibration
Definition at line 66 of file EMCALCalibParams.h.
size_t o2::emcal::EMCALCalibParams::nThreads_bc = 4 |
number of threads used for the bad channel calinration for filling the histograms
Definition at line 54 of file EMCALCalibParams.h.
size_t o2::emcal::EMCALCalibParams::nThreads_tc = 2 |
number of threads used for the time calinration for filling the histograms
Definition at line 74 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::rangeTimeAxisHigh_bc = 500 |
maximum value of time for histogram range
Definition at line 43 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::rangeTimeAxisLow_bc = -500 |
minimum value of time for histogram range
Definition at line 42 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::requireSameFill = false |
if loading calib objects from previous run, require it to be in the same fill as the current one
Definition at line 87 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::requireSameRunType = true |
if loading calib objects from previous run, require it to be the same run type
Definition at line 88 of file EMCALCalibParams.h.
int o2::emcal::EMCALCalibParams::restrictFitRangeToMax = 25 |
window around the largest entry within the minTimeForFit in which the fit is performed in ns
Definition at line 107 of file EMCALCalibParams.h.
int o2::emcal::EMCALCalibParams::restrictFitRangeToMax_tc = 25 |
window around the largest entry within the minTimeForFit in which the fit is performed in ns
Definition at line 65 of file EMCALCalibParams.h.
std::string o2::emcal::EMCALCalibParams::selectedClassMasks = "C0TVX-B-NOPF-EMC" |
name of EMCal min. bias trigger that is used for calibration
Definition at line 84 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::setSavedSlotAllowed_EMC = true |
if true, saving and loading of calibrations from last run and for next run is enabled
Definition at line 81 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::setSavedSlotAllowedSOR_EMC = true |
if true, stored calibrations from last run can be loaded in the next run (if false, storing of the calib histograms is still active in contrast to setSavedSlotAllowed_EMC)
Definition at line 82 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::sigmaTime_bc = 5 |
sigma value for the upper cut on the time-variance distribution
Definition at line 45 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::sigmaTimePostTrigg_bc = 10. |
sigma value for the upper cut on the fraction of cells in the post-trigger region
Definition at line 47 of file EMCALCalibParams.h.
float o2::emcal::EMCALCalibParams::sigmaTimePreTrigg_bc = 10. |
sigma value for the upper cut on the fraction of cells in the pre-trigger region
Definition at line 46 of file EMCALCalibParams.h.
unsigned int o2::emcal::EMCALCalibParams::slotLength = 0 |
Lenght of the slot before calibration is triggered. If set to 0 calibration is triggered when hasEnoughData returns true.
Definition at line 103 of file EMCALCalibParams.h.
unsigned int o2::emcal::EMCALCalibParams::slotLength_bc = 0 |
Lenght of the slot before calibration is triggered. If set to 0 calibration is triggered when hasEnoughData returns true.
Definition at line 48 of file EMCALCalibParams.h.
unsigned int o2::emcal::EMCALCalibParams::slotLength_tc = 0 |
Lenght of the slot before calibration is triggered. If set to 0 calibration is triggered when hasEnoughData returns true.
Definition at line 70 of file EMCALCalibParams.h.
int o2::emcal::EMCALCalibParams::tsDiffMax = 48 |
if loading calib objects from previous run, limit time between the object being stored and loaded again (in hours)
Definition at line 89 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::UpdateAtEndOfRunOnly = false |
switch to enable trigger of calibration only at end of run
Definition at line 104 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::UpdateAtEndOfRunOnly_bc = false |
switch to enable trigger of calibration only at end of run
Definition at line 49 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::UpdateAtEndOfRunOnly_tc = false |
switch to enable trigger of calibration only at end of run
Definition at line 71 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::useNEventsForCalib = true |
use the minimum number of events to trigger the calibration
Definition at line 99 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::useNEventsForCalib_bc = true |
use the minimum number of events to trigger the calibration
Definition at line 35 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::useNEventsForCalib_tc = true |
use the minimum number of events to trigger the calibration
Definition at line 61 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::useScaledHisto_bc = true |
use the scaled histogram for the bad channel map
Definition at line 36 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::useScaledHistoForBadChannelMap = true |
use the scaled histogram for the bad channel map
Definition at line 100 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::useStaticStartTimeSlot = true |
if set to true, allows to use the start timestamp set manually. This is important if data from a previous run was loaded as otherwise, the start-timestamp will not include data from the previous run
Definition at line 91 of file EMCALCalibParams.h.
bool o2::emcal::EMCALCalibParams::useTimeInfoForCalib_bc = true |
weather to use the timing information as a criterion in the bad channel analysis
Definition at line 39 of file EMCALCalibParams.h.