ECAL TB 2006 calibration with matrix inversion technique. More...
#include <InvRingCalib.h>
Private Member Functions | |
int | EBRegId (const int) |
Gives back in which region you are: More... | |
void | EBRegionDef () |
Defines the regions in the barrel. More... | |
int | EBRegionNum () const |
Number of regions in EB. More... | |
int | EERegId (int) |
gives back in which region of the endcap you are. More... | |
void | EERegionDef () |
Defines the regions in the endcap. More... | |
int | EERegionNum () const |
The number of regions in EE. More... | |
void | EERingDef (const edm::EventSetup &) |
Defines the rins in the endcap. More... | |
void | RegPrepare () |
Prepares the EB regions;. More... | |
Private Attributes | |
bool | isfirstcall_ |
const edm::InputTag | m_barrelAlCa |
EcalBarrel Input Collection name. More... | |
std::vector< DetId > | m_barrelCells |
geometry things used all over the file More... | |
EcalIntercalibConstantMap | m_barrelMap |
std::map< int, int > | m_cellPhi |
std::map< int, GlobalPoint > | m_cellPos |
position of the cell, borders, coords etc... More... | |
const std::string | m_EBcoeffFile |
coeffs filenames More... | |
const edm::EDGetTokenT < EBRecHitCollection > | m_ebRecHitToken |
ED token. More... | |
const std::string | m_EEcoeffFile |
const edm::EDGetTokenT < EERecHitCollection > | m_eeRecHitToken |
const int | m_EEZone |
endcap zone to be calibrated More... | |
const edm::InputTag | m_ElectronLabel |
To take the electrons. More... | |
const edm::InputTag | m_endcapAlCa |
EcalEndcap Input Collection name. More... | |
std::vector< DetId > | m_endcapCells |
EcalIntercalibConstantMap | m_endcapMap |
const int | m_endRing |
const int | m_etaEnd |
eta end of the zone of interest More... | |
const int | m_etaStart |
eta start of the zone of interest More... | |
const int | m_etaWidth |
eta size of the regions More... | |
const edm::ESGetToken < CaloGeometry, CaloGeometryRecord > | m_geometryToken |
ES token. More... | |
const edm::EDGetTokenT < reco::GsfElectronCollection > | m_gsfElectronToken |
std::vector< VEcalCalibBlock * > | m_IMACalibBlocks |
single blocks calibrators More... | |
unsigned int | m_loops |
LP sets the number of loops to do. More... | |
VFillMap * | m_MapFiller |
The class that fills the map! More... | |
std::string | m_mapFillerType |
const double | m_maxCoeff |
maximum coefficient accepted (RAW) More... | |
const double | m_maxEnergyPerCrystal |
maximum energy per crystal cut More... | |
const int | m_maxSelectedNumPerRing |
maximum number of events per Ring More... | |
const double | m_minCoeff |
minimum coefficient accepted (RAW) More... | |
const double | m_minEnergyPerCrystal |
minimum energy per crystal cut More... | |
const int | m_recoWindowSidex |
reconstruction window size More... | |
const int | m_recoWindowSidey |
std::map< int, int > | m_Reg |
EB regions vs. eta index. More... | |
std::map< int, int > | m_RinginRegion |
association map between raw detIds and the number of the ring inside the region More... | |
std::map< int, int > | m_RingNumOfHits |
number of events already read per Ring More... | |
const int | m_startRing |
LP define the EE region to calibrate. More... | |
const int | m_usingBlockSolver |
to exclude the blocksolver More... | |
std::map< int, int > | m_xtalRegionId |
association map between raw detIds and Region More... | |
std::map< int, int > | m_xtalRing |
association map between Raw detIds and Rings More... | |
Additional Inherited Members | |
Public Types inherited from edm::EDLooperBase | |
enum | Status { kContinue, kStop } |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Protected Member Functions inherited from edm::EDLooperBase | |
ModuleChanger * | moduleChanger () |
This only returns a non-zero value during the call to endOfLoop. More... | |
ScheduleInfo const * | scheduleInfo () const |
This returns a non-zero value after the constructor has been called. More... | |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
template<BranchType B = InEvent> | |
EDConsumerBaseAdaptor< B > | consumes (edm::InputTag tag) noexcept |
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<Transition Tr = Transition::Event> | |
constexpr auto | esConsumes () |
template<Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag tag) |
template<Transition Tr = Transition::Event> | |
ESGetTokenGeneric | esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey) |
Used with EventSetupRecord::doGet. More... | |
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) |
void | resetItemsToGetFrom (BranchType iType) |
ECAL TB 2006 calibration with matrix inversion technique.
Definition at line 30 of file InvRingCalib.h.
|
explicit |
ctor
Definition at line 26 of file InvRingCalib.cc.
References funct::abs(), HLT_FULL_cff::algorithm, cms::cuda::assert(), EBRegionNum(), EERegionNum(), beamvalidation::exit(), edm::ParameterSet::getParameter(), edm::ParameterSet::getUntrackedParameter(), mps_fire::i, m_EEZone, m_endRing, m_etaEnd, m_etaStart, m_etaWidth, m_IMACalibBlocks, m_loops, m_mapFillerType, m_startRing, and AlCaHLTBitMon_QueryRunRegistry::string.
|
override |
|
overridevirtual |
Reimplemented from edm::EDLooperBase.
Definition at line 108 of file InvRingCalib.cc.
References isfirstcall_.
|
overridevirtual |
duringLoop
Implements edm::EDLooper.
Definition at line 129 of file InvRingCalib.cc.
References funct::abs(), EBRegionDef(), DetId::Ecal, EcalBarrel, EcalEndcap, EERegionDef(), EERingDef(), HcalObjRepresent::Fill(), VFillMap::fillMap(), first, relativeConstraints::geometry, CaloMiscalibMapEcal::get(), edm::Event::getByToken(), edm::EventSetup::getData(), EcalCondObjectContainer< T >::getMap(), EBDetId::ieta(), EBDetId::iphi(), isfirstcall_, edm::HandleBase::isValid(), EEDetId::ix(), EEDetId::iy(), edm::EDLooperBase::kContinue, m_barrelCells, m_barrelMap, m_EBcoeffFile, m_ebRecHitToken, m_EEcoeffFile, m_eeRecHitToken, m_endcapCells, m_endcapMap, m_geometryToken, m_gsfElectronToken, m_IMACalibBlocks, m_MapFiller, m_mapFillerType, m_maxEnergyPerCrystal, m_minEnergyPerCrystal, m_recoWindowSidex, m_recoWindowSidey, m_RinginRegion, m_RingNumOfHits, m_xtalRegionId, m_xtalRing, siStripFEDMonitor_P5_cff::Max, submitPVResolutionJobs::out, MiscalibReaderFromXML::parseXMLMiscalibFile(), CaloMiscalibMapEcal::prefillMap(), edm::Handle< T >::product(), DetId::rawId(), and EEDetId::zside().
|
private |
Gives back in which region you are:
gives the region Id given ieta
Definition at line 533 of file InvRingCalib.cc.
References m_etaEnd, and m_Reg.
Referenced by EBRegionDef().
|
private |
Defines the regions in the barrel.
Definition at line 543 of file InvRingCalib.cc.
References EBRegId(), m_barrelCells, m_etaStart, m_etaWidth, m_RinginRegion, m_xtalRegionId, m_xtalRing, and RegPrepare().
Referenced by duringLoop().
|
private |
Number of regions in EB.
number of Ring in EB
Definition at line 512 of file InvRingCalib.cc.
References m_etaEnd, m_etaStart, and m_etaWidth.
Referenced by EERegionDef(), and InvRingCalib().
|
private |
gives back in which region of the endcap you are.
Gives the Id of the region given the id of the xtal.
Definition at line 439 of file InvRingCalib.cc.
References gpuClustering::id, m_EEZone, m_endRing, m_etaWidth, m_RinginRegion, m_startRing, m_xtalRing, relativeConstraints::ring, and EEDetId::zside().
Referenced by EERegionDef().
|
private |
Defines the regions in the endcap.
Loops over all the endcap xtals and sets for each xtal the value of the region the xtal is in, and the ringNumber inside the region
Definition at line 486 of file InvRingCalib.cc.
References EBRegionNum(), EERegId(), EERegionNum(), m_endcapCells, m_xtalRegionId, and EEDetId::zside().
Referenced by duringLoop().
|
inlineprivate |
The number of regions in EE.
Number of Regions in EE.
Definition at line 509 of file InvRingCalib.cc.
References m_endRing, m_etaWidth, and m_startRing.
Referenced by EERegionDef(), and InvRingCalib().
|
private |
Defines the rins in the endcap.
EE ring definition.
Definition at line 383 of file InvRingCalib.cc.
References DetId::Ecal, EcalEndcap, relativeConstraints::geometry, edm::EventSetup::getData(), CaloSubdetectorGeometry::getGeometry(), m_cellPhi, m_cellPos, m_endcapCells, m_geometryToken, m_xtalRing, DetId::rawId(), relativeConstraints::ring, EEDetId::validDetId(), EEDetId::XYMODE, and EEDetId::zside().
Referenced by duringLoop().
|
overridevirtual |
Reimplemented from edm::EDLooperBase.
Definition at line 360 of file InvRingCalib.cc.
References EcalBarrel, EcalEndcap, m_barrelCells, m_barrelMap, m_endcapCells, m_endcapMap, and calibXMLwriter::writeLine().
|
overridevirtual |
Called after the system has finished one loop over the events. Thar argument is a count of how many loops have been processed before this loo. For the first time through the events the argument will be 0.
Implements edm::EDLooperBase.
Definition at line 290 of file InvRingCalib.cc.
References lut2db_cfg::filename, for(), edm::EDLooperBase::kContinue, edm::EDLooperBase::kStop, m_barrelCells, m_barrelMap, m_endcapCells, m_endcapMap, m_IMACalibBlocks, m_loops, m_maxCoeff, m_minCoeff, m_RinginRegion, m_RingNumOfHits, m_usingBlockSolver, m_xtalRegionId, m_xtalRing, and submitPVResolutionJobs::out.
|
private |
Prepares the EB regions;.
Divides the barrel in region, necessary to take into account the missing 0 xtal
Definition at line 523 of file InvRingCalib.cc.
References mps_fire::i, isotrackApplyRegressor::k, m_etaEnd, m_etaStart, m_etaWidth, and m_Reg.
Referenced by EBRegionDef().
|
overridevirtual |
startingNewLoop
Implements edm::EDLooperBase.
Definition at line 113 of file InvRingCalib.cc.
References m_IMACalibBlocks, m_RingNumOfHits, m_xtalRing, and relativeConstraints::ring.
|
private |
Definition at line 128 of file InvRingCalib.h.
Referenced by beginOfJob(), and duringLoop().
|
private |
EcalBarrel Input Collection name.
Definition at line 67 of file InvRingCalib.h.
|
private |
geometry things used all over the file
Definition at line 118 of file InvRingCalib.h.
Referenced by duringLoop(), EBRegionDef(), endOfJob(), and endOfLoop().
|
private |
association map between coeff and ring coeffs for the single xtals
Definition at line 103 of file InvRingCalib.h.
Referenced by duringLoop(), endOfJob(), and endOfLoop().
|
private |
Definition at line 100 of file InvRingCalib.h.
Referenced by EERingDef().
|
private |
position of the cell, borders, coords etc...
Definition at line 99 of file InvRingCalib.h.
Referenced by EERingDef().
|
private |
|
private |
|
private |
Definition at line 122 of file InvRingCalib.h.
Referenced by duringLoop().
|
private |
Definition at line 132 of file InvRingCalib.h.
Referenced by duringLoop().
|
private |
endcap zone to be calibrated
Definition at line 124 of file InvRingCalib.h.
Referenced by EERegId(), and InvRingCalib().
|
private |
To take the electrons.
Definition at line 71 of file InvRingCalib.h.
|
private |
EcalEndcap Input Collection name.
Definition at line 69 of file InvRingCalib.h.
|
private |
Definition at line 119 of file InvRingCalib.h.
Referenced by duringLoop(), EERegionDef(), EERingDef(), endOfJob(), and endOfLoop().
|
private |
Definition at line 104 of file InvRingCalib.h.
Referenced by duringLoop(), endOfJob(), and endOfLoop().
|
private |
Definition at line 109 of file InvRingCalib.h.
Referenced by EERegId(), EERegionNum(), and InvRingCalib().
|
private |
eta end of the zone of interest
Definition at line 82 of file InvRingCalib.h.
Referenced by EBRegId(), EBRegionNum(), InvRingCalib(), and RegPrepare().
|
private |
eta start of the zone of interest
Definition at line 80 of file InvRingCalib.h.
Referenced by EBRegionDef(), EBRegionNum(), InvRingCalib(), and RegPrepare().
|
private |
eta size of the regions
Definition at line 84 of file InvRingCalib.h.
Referenced by EBRegionDef(), EBRegionNum(), EERegId(), EERegionNum(), InvRingCalib(), and RegPrepare().
|
private |
ES token.
Definition at line 135 of file InvRingCalib.h.
Referenced by duringLoop(), and EERingDef().
|
private |
Definition at line 133 of file InvRingCalib.h.
Referenced by duringLoop().
|
private |
single blocks calibrators
Definition at line 91 of file InvRingCalib.h.
Referenced by duringLoop(), endOfLoop(), InvRingCalib(), and startingNewLoop().
|
private |
LP sets the number of loops to do.
Definition at line 106 of file InvRingCalib.h.
Referenced by endOfLoop(), and InvRingCalib().
|
private |
The class that fills the map!
Definition at line 63 of file InvRingCalib.h.
Referenced by duringLoop().
|
private |
Definition at line 127 of file InvRingCalib.h.
Referenced by duringLoop(), and InvRingCalib().
|
private |
maximum coefficient accepted (RAW)
Definition at line 95 of file InvRingCalib.h.
Referenced by endOfLoop().
|
private |
maximum energy per crystal cut
Definition at line 78 of file InvRingCalib.h.
Referenced by duringLoop().
|
private |
maximum number of events per Ring
Definition at line 87 of file InvRingCalib.h.
|
private |
minimum coefficient accepted (RAW)
Definition at line 93 of file InvRingCalib.h.
Referenced by endOfLoop().
|
private |
minimum energy per crystal cut
Definition at line 76 of file InvRingCalib.h.
Referenced by duringLoop().
|
private |
reconstruction window size
Definition at line 73 of file InvRingCalib.h.
Referenced by duringLoop().
|
private |
Definition at line 74 of file InvRingCalib.h.
Referenced by duringLoop().
|
private |
EB regions vs. eta index.
Definition at line 126 of file InvRingCalib.h.
Referenced by EBRegId(), and RegPrepare().
|
private |
association map between raw detIds and the number of the ring inside the region
Definition at line 115 of file InvRingCalib.h.
Referenced by duringLoop(), EBRegionDef(), EERegId(), and endOfLoop().
|
private |
number of events already read per Ring
Definition at line 89 of file InvRingCalib.h.
Referenced by duringLoop(), endOfLoop(), and startingNewLoop().
|
private |
LP define the EE region to calibrate.
Definition at line 108 of file InvRingCalib.h.
Referenced by EERegId(), EERegionNum(), and InvRingCalib().
|
private |
|
private |
association map between raw detIds and Region
Definition at line 113 of file InvRingCalib.h.
Referenced by duringLoop(), EBRegionDef(), EERegionDef(), and endOfLoop().
|
private |
association map between Raw detIds and Rings
Definition at line 111 of file InvRingCalib.h.
Referenced by duringLoop(), EBRegionDef(), EERegId(), EERingDef(), endOfLoop(), and startingNewLoop().