#include <L1TowerCalibrator.cc>
Private Member Functions | |
void | produce (edm::Event &, const edm::EventSetup &) override |
Additional Inherited Members | |
Public Types inherited from edm::EDProducer | |
typedef EDProducer | ModuleType |
Public Types inherited from edm::ProducerBase | |
using | ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex > > |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Static Public Member Functions inherited from edm::EDProducer | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
static bool | wantsGlobalLuminosityBlocks () |
static bool | wantsGlobalRuns () |
static bool | wantsInputProcessBlocks () |
static bool | wantsProcessBlocks () |
static bool | wantsStreamLuminosityBlocks () |
static bool | wantsStreamRuns () |
Protected Member Functions inherited from edm::ProducerBase | |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces () |
declare what type of product will make and with which optional label More... | |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces () |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces () |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<BranchType B> | |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<Transition B> | |
BranchAliasSetter | produces (const TypeID &id, std::string instanceName=std::string(), bool recordProvenance=true) |
template<typename ProductType , Transition B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<class ProductType > | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
template<typename ProductType , BranchType B> | |
BranchAliasSetterT< ProductType > | produces (std::string instanceName) |
ProducesCollector | producesCollector () |
Protected Member Functions inherited from edm::EDConsumerBase | |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
template<BranchType B = InEvent> | |
EDConsumerBaseAdaptor< B > | consumes (edm::InputTag tag) noexcept |
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<Transition Tr = Transition::Event> | |
constexpr auto | esConsumes () noexcept |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag const &tag) |
template<Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag tag) noexcept |
template<Transition Tr = Transition::Event> | |
ESGetTokenGeneric | esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey) |
Used with EventSetupRecord::doGet. More... | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
Description: Take the calibrated unclustered ECAL energy and total HCAL energy associated with the L1CaloTower collection output from L1EGammaCrystalsEmulatorProducer: l1CaloTowerCollection, "L1CaloTowerCollection"
as well as HGCal Tower level inputs: BXVector<l1t::HGCalTower> "hgcalTriggerPrimitiveDigiProducer" "tower" "HLT"
and HCAL HF inputs from: edm::SortedCollection<HcalTriggerPrimitiveDigi,edm::StrictWeakOrdering<HcalTriggerPrimitiveDigi> > "simHcalTriggerPrimitiveDigis" "" "HLT"
Implement PU-based calibrations which scale down the ET in the towers based on mapping nTowers with ECAL(HCAL) ET <= defined PU threshold. This value has been shown to be similar between TTbar, QCD, and minBias samples. This allows a prediction of nvtx. Which can be mapped to the total minBias energy in an eta slice of the detector. Subtract the total estimated minBias energy per eta slice divided by nTowers in that eta slice from each trigger tower in that eta slice.
This is all ECAL / HCAL specific or EM vs. Hadronic for HGCal.
Implementation: [Notes on implementation]
Definition at line 63 of file L1TowerCalibrator.cc.
|
explicit |
Definition at line 118 of file L1TowerCalibrator.cc.
References all_nvtx_to_PU_sub_funcs, debug, ecal_nvtx_to_PU_sub_funcs, hcal_nvtx_to_PU_sub_funcs, hf_nvtx_to_PU_sub_funcs, hgcalEM_nvtx_to_PU_sub_funcs, hgcalHad_nvtx_to_PU_sub_funcs, mps_fire::i, L1TowerCalibrationProducer_cfi::iEta, nHits_to_nvtx_funcs, nHits_to_nvtx_params, nvtx_to_PU_sub_params, p1, p2, muonDTDigis_cfi::pset, AlCaHLTBitMon_QueryRunRegistry::string, and parallelization::uint.
|
overrideprivatevirtual |
Implements edm::EDProducer.
Definition at line 207 of file L1TowerCalibrator.cc.
References funct::abs(), all_nvtx_to_PU_sub_funcs, barrelSF, BXVector< T >::begin(), debug, decoderTag_, l1tp2::CaloTower::ecalTowerEt(), EcalTpEtMin, BXVector< T >::end(), EgHLTOffHistBins_cfi::et, edm::EventSetup::getData(), hcalToken_, l1tp2::CaloTower::hcalTowerEt(), hcalTowerHandle, HcalTpEtMin, hfSF, HFTpEtMin, HGCalEmTpEtMin, HGCalHadTpEtMin, hgcalSF, hgcalTowers, hgcalTowersHandle, hgcalTowersToken_, hit::id, LEDCalibrationChannels::ieta, iEvent, createfilelist::int, LEDCalibrationChannels::iphi, l1t::CaloTools::kHFBegin, l1t::CaloTools::kHFEnd, l1CaloTowerHandle, l1TowerToken_, eostools::move(), nHits_to_nvtx_funcs, edm::Handle< T >::product(), puThresholdEcalMax, puThresholdEcalMin, puThresholdHcalMax, puThresholdHcalMin, puThresholdHFMax, puThresholdHFMin, puThresholdHGCalEMMax, puThresholdHGCalEMMin, puThresholdHGCalHadMax, puThresholdHGCalHadMin, l1tp2::CaloTower::setEcalTowerEt(), l1tp2::CaloTower::setHcalTowerEt(), l1tp2::CaloTower::setIsBarrel(), l1tp2::CaloTower::setL1egStandaloneIso(), l1tp2::CaloTower::setL1egStandaloneSS(), l1tp2::CaloTower::setL1egTowerEt(), l1tp2::CaloTower::setL1egTrkIso(), l1tp2::CaloTower::setL1egTrkSS(), l1tp2::CaloTower::setNL1eg(), l1tp2::CaloTower::setTowerEta(), l1tp2::CaloTower::setTowerIEta(), l1tp2::CaloTower::setTowerIPhi(), l1tp2::CaloTower::setTowerPhi(), skipCalibrations, l1tp2::CaloTower::towerEta(), l1t::CaloTools::towerEta(), l1tp2::CaloTower::towerIEta(), l1tp2::CaloTower::towerIPhi(), l1tp2::CaloTower::towerPhi(), and l1t::CaloTools::towerPhi().
|
private |
Definition at line 115 of file L1TowerCalibrator.cc.
Referenced by L1TowerCalibrator(), and produce().
|
private |
Definition at line 87 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 90 of file L1TowerCalibrator.cc.
Referenced by L1TowerCalibrator(), runTauIdMVA.TauIDEmbedder::loadMVA_WPs_run2_2017(), produce(), and runTauIdMVA.TauIDEmbedder::runTauID().
|
private |
Definition at line 102 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 110 of file L1TowerCalibrator.cc.
Referenced by L1TowerCalibrator().
|
private |
Definition at line 71 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 111 of file L1TowerCalibrator.cc.
Referenced by L1TowerCalibrator().
|
private |
Definition at line 100 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 101 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 70 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 114 of file L1TowerCalibrator.cc.
Referenced by L1TowerCalibrator().
|
private |
Definition at line 89 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 74 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 112 of file L1TowerCalibrator.cc.
Referenced by L1TowerCalibrator().
|
private |
Definition at line 73 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 113 of file L1TowerCalibrator.cc.
Referenced by L1TowerCalibrator().
|
private |
Definition at line 72 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 88 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 98 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 97 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 96 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 94 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 93 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 106 of file L1TowerCalibrator.cc.
Referenced by L1TowerCalibrator(), and produce().
|
private |
Definition at line 105 of file L1TowerCalibrator.cc.
Referenced by L1TowerCalibrator().
|
private |
Definition at line 109 of file L1TowerCalibrator.cc.
Referenced by L1TowerCalibrator().
|
private |
Definition at line 75 of file L1TowerCalibrator.cc.
|
private |
Definition at line 80 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 79 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 78 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 77 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 86 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 85 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 82 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 81 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 84 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 83 of file L1TowerCalibrator.cc.
Referenced by produce().
|
private |
Definition at line 76 of file L1TowerCalibrator.cc.
|
private |
Definition at line 91 of file L1TowerCalibrator.cc.
Referenced by produce().