#include <DTT0Calibration.h>
Public Member Functions | |
void | analyze (const edm::Event &event, const edm::EventSetup &eventSetup) override |
Fill the maps with t0 (by channel) More... | |
DTT0Calibration (const edm::ParameterSet &pset) | |
Constructor. More... | |
void | endJob () override |
Compute the mean and the RMS of the t0 from the maps and write them to the DB with channel granularity. More... | |
~DTT0Calibration () override | |
Destructor. More... | |
Public Member Functions inherited from edm::EDAnalyzer | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
EDAnalyzer () | |
SerialTaskQueue * | globalLuminosityBlocksQueue () |
SerialTaskQueue * | globalRunsQueue () |
ModuleDescription const & | moduleDescription () const |
std::string | workerType () const |
~EDAnalyzer () override | |
Public Member Functions inherited from edm::EDConsumerBase | |
std::vector< ConsumesInfo > | consumesInfo () const |
void | convertCurrentProcessAlias (std::string const &processName) |
Convert "@currentProcess" in InputTag process names to the actual current process name. More... | |
EDConsumerBase () | |
EDConsumerBase (EDConsumerBase const &)=delete | |
EDConsumerBase (EDConsumerBase &&)=default | |
ProductResolverIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
void | itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
void | itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
std::vector< ProductResolverIndexAndSkipBit > const & | itemsToGetFrom (BranchType iType) const |
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
ProductResolverIndexAndSkipBit | uncheckedIndexFrom (EDGetToken) const |
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
virtual | ~EDConsumerBase () noexcept(false) |
Private Member Functions | |
std::string | getHistoName (const DTWireId &wId) const |
std::string | getHistoName (const DTLayerId &lId) const |
Private Attributes | |
std::vector< std::string > | cellsWithHistos |
std::string | dbLabel |
bool | debug |
std::string | digiLabel |
edm::ESHandle< DTGeometry > | dtGeom |
unsigned int | eventsForLayerT0 |
unsigned int | eventsForWireT0 |
TH1D * | hT0SectorHisto |
std::map< DTWireId, double > | mK |
std::map< DTWireId, double > | mK_ref |
std::map< DTWireId, int > | nDigiPerWire |
std::map< DTWireId, int > | nDigiPerWire_ref |
unsigned int | nevents |
std::map< DTWireId, double > | qK |
unsigned int | rejectDigiFromPeak |
unsigned int | retryForLayerT0 |
int | selSector |
int | selWheel |
TSpectrum * | spectrum |
std::map< DTWireId, double > | theAbsoluteT0PerWire |
std::string | theCalibSector |
std::string | theCalibWheel |
std::map< DTChamberId, int > | theCountT0ByChamber |
TFile * | theFile |
std::map< DTLayerId, TH1I * > | theHistoLayerMap |
std::map< DTWireId, TH1I * > | theHistoWireMap |
TFile * | theOutputFile |
std::map< DTChamberId, double > | theRefT0ByChamber |
std::map< DTWireId, double > | theRelativeT0PerWire |
std::map< std::string, double > | theSigmaT0LayerMap |
std::map< DTWireId, double > | theSigmaT0PerWire |
std::map< DTChamberId, double > | theSumT0ByChamber |
std::map< std::string, double > | theT0LayerMap |
std::map< DTLayerId, double > | theTPPeakMap |
unsigned int | timeBoxWidth |
double | tpPeakWidth |
double | tpPeakWidthPerLayer |
std::vector< DTWireId > | wireIdWithHistos |
Additional Inherited Members | |
Public Types inherited from edm::EDAnalyzer | |
typedef EDAnalyzer | ModuleType |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Static Public Member Functions inherited from edm::EDAnalyzer | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &) |
static bool | wantsGlobalLuminosityBlocks () |
static bool | wantsGlobalRuns () |
static bool | wantsStreamLuminosityBlocks () |
static bool | wantsStreamRuns () |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ProductType , BranchType B = InEvent> | |
void | consumesMany () |
void | consumesMany (const TypeToGet &id) |
template<BranchType B> | |
void | consumesMany (const TypeToGet &id) |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes () |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag const &tag) |
template<typename ESProduct , Transition Tr = Transition::Event> | |
auto | esConsumes (eventsetup::EventSetupRecordKey const &, ESInputTag const &tag) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
Analyzer class computes the mean and RMS of t0 from pulses. Those values are written in the DB with cell granularity. The mean value for each channel is normalized to a reference time common to all the sector. The t0 of wires in odd layers are corrected for the relative difference between odd and even layers
Definition at line 29 of file DTT0Calibration.h.
DTT0Calibration::DTT0Calibration | ( | const edm::ParameterSet & | pset | ) |
Constructor.
Definition at line 31 of file DTT0Calibration.cc.
References gather_cfg::cout, RecoTauHPSTancTauProdcuer_cfi::dbLabel, debug, CastorSimpleReconstructor_cfi::digiLabel, edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), DTAnalyzerDetailed_cfi::rootFileName, relativeConstraints::station, interactiveExample::theFile, and makeMuonMisalignmentScenario::wheel.
|
override |
Destructor.
Definition at line 93 of file DTT0Calibration.cc.
References gather_cfg::cout, debug, and interactiveExample::theFile.
|
override |
Fill the maps with t0 (by channel)
Perform the real analysis.
Definition at line 102 of file DTT0Calibration.cc.
References funct::abs(), stringResolutionProvider_cfi::bin, DTSuperLayerId::chamberId(), DTTimeUnits::counts, gather_cfg::cout, RecoTauHPSTancTauProdcuer_cfi::dbLabel, debug, CastorSimpleReconstructor_cfi::digiLabel, edm::EventID::event(), spr::find(), objects.autophobj::float, edm::EventSetup::get(), DTTtrig::get(), mergeVDriftHistosByStation::getHistoName(), edm::EventBase::id(), DTAnalyzerDetailed_cfi::kFactor, SiStripPI::mean, edm::EventID::run(), DTChamberId::sector(), DTLayerId::superlayerId(), cscNeutronWriter_cfi::t0, interactiveExample::theFile, and DTChamberId::wheel().
|
overridevirtual |
Compute the mean and the RMS of the t0 from the maps and write them to the DB with channel granularity.
Loop on superlayer to correct between even-odd layers (2 different test pulse lines!)
Change t0 absolute reference -> from sector peak to chamber average
Write the t0 map into DB
Reimplemented from edm::EDAnalyzer.
Definition at line 394 of file DTT0Calibration.cc.
References funct::abs(), DTT0::begin(), relativeConstraints::chamber, DTSuperLayerId::chamberId(), DTTimeUnits::counts, gather_cfg::cout, debug, DTT0::end(), DTT0::get(), DTT0::set(), mathSSE::sqrt(), cscNeutronWriter_cfi::t0, interactiveExample::theFile, tzero, and DTCalibDBUtils::writeToDB().
Referenced by o2olib.O2ORunMgr::executeJob().
|
private |
Definition at line 615 of file DTT0Calibration.cc.
References DTLayerId::layer(), DTChamberId::sector(), DTChamberId::station(), DTSuperLayerId::superlayer(), DTChamberId::wheel(), and DTWireId::wire().
|
private |
Definition at line 624 of file DTT0Calibration.cc.
References DTLayerId::layer(), DTChamberId::sector(), DTChamberId::station(), DTSuperLayerId::superlayer(), and DTChamberId::wheel().
|
private |
Definition at line 102 of file DTT0Calibration.h.
|
private |
Definition at line 59 of file DTT0Calibration.h.
|
private |
Definition at line 54 of file DTT0Calibration.h.
Referenced by util.rrapi.RRApi::dprint(), rrapi.RRApi::dprint(), pkg.AbstractPkg::generate(), rrapi.RRApi::get(), util.rrapi.RRApi::get(), pkg.AbstractPkg::get_kwds(), crabFunctions.CrabController::submit(), and pkg.AbstractPkg::write().
|
private |
Definition at line 57 of file DTT0Calibration.h.
|
private |
Definition at line 125 of file DTT0Calibration.h.
|
private |
Definition at line 69 of file DTT0Calibration.h.
|
private |
Definition at line 71 of file DTT0Calibration.h.
|
private |
Definition at line 96 of file DTT0Calibration.h.
|
private |
Definition at line 110 of file DTT0Calibration.h.
|
private |
Definition at line 111 of file DTT0Calibration.h.
|
private |
Definition at line 108 of file DTT0Calibration.h.
|
private |
Definition at line 109 of file DTT0Calibration.h.
|
private |
Definition at line 67 of file DTT0Calibration.h.
|
private |
Definition at line 112 of file DTT0Calibration.h.
|
private |
Definition at line 83 of file DTT0Calibration.h.
|
private |
Definition at line 85 of file DTT0Calibration.h.
|
private |
Definition at line 91 of file DTT0Calibration.h.
|
private |
Definition at line 89 of file DTT0Calibration.h.
|
private |
Definition at line 98 of file DTT0Calibration.h.
|
private |
Definition at line 105 of file DTT0Calibration.h.
|
private |
Definition at line 90 of file DTT0Calibration.h.
|
private |
Definition at line 88 of file DTT0Calibration.h.
|
private |
Definition at line 121 of file DTT0Calibration.h.
|
private |
Definition at line 62 of file DTT0Calibration.h.
|
private |
Definition at line 94 of file DTT0Calibration.h.
|
private |
Definition at line 114 of file DTT0Calibration.h.
|
private |
Definition at line 64 of file DTT0Calibration.h.
|
private |
Definition at line 122 of file DTT0Calibration.h.
|
private |
Definition at line 106 of file DTT0Calibration.h.
|
private |
Definition at line 117 of file DTT0Calibration.h.
|
private |
Definition at line 107 of file DTT0Calibration.h.
|
private |
Definition at line 120 of file DTT0Calibration.h.
|
private |
Definition at line 116 of file DTT0Calibration.h.
|
private |
Definition at line 118 of file DTT0Calibration.h.
|
private |
Definition at line 80 of file DTT0Calibration.h.
|
private |
Definition at line 74 of file DTT0Calibration.h.
|
private |
Definition at line 77 of file DTT0Calibration.h.
|
private |
Definition at line 101 of file DTT0Calibration.h.