CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
L1GctValidation Class Reference

#include <L1Trigger/L1GlobalCaloTrigger/plugins/L1GctValidation.cc>

Inheritance diagram for L1GctValidation:
edm::EDAnalyzer edm::EDConsumerBase

Public Member Functions

 L1GctValidation (const edm::ParameterSet &)
 
 ~L1GctValidation () override
 
- Public Member Functions inherited from edm::EDAnalyzer
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzer ()
 
SerialTaskQueueglobalLuminosityBlocksQueue ()
 
SerialTaskQueueglobalRunsQueue ()
 
ModuleDescription const & moduleDescription () const
 
std::string workerType () const
 
 ~EDAnalyzer () override
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
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
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void beginJob () override
 
void endJob () override
 

Private Attributes

edm::InputTag m_energy_tag
 
edm::InputTag m_gctinp_tag
 
edm::ESGetToken< L1CaloEtScale, L1HfRingEtScaleRcdm_hfRingEtScaleToken
 
edm::ESGetToken< L1CaloEtScale, L1HtMissScaleRcdm_htMissScaleToken
 
edm::ESGetToken< L1GctJetFinderParams, L1GctJetFinderParamsRcdm_jfParsToken
 
TH2F * theDPhiVsMissEt
 
TH2F * theDPhiVsMissHt
 
TH1F * theHfRing0CountNegativeEta
 
TH1F * theHfRing0CountPositiveEta
 
TH1F * theHfRing0EtSumNegativeEta
 
TH1F * theHfRing0EtSumPositiveEta
 
TH1F * theHfRing1CountNegativeEta
 
TH1F * theHfRing1CountPositiveEta
 
TH1F * theHfRing1EtSumNegativeEta
 
TH1F * theHfRing1EtSumPositiveEta
 
TH2F * theHtVsInternalJetsSum
 
TH1F * theMissEtAngle
 
TH2F * theMissEtAngleVsInputRegions
 
TH1F * theMissEtInGeV
 
TH1F * theMissEtInLsb
 
TH2F * theMissEtMagVsInputRegions
 
TH2F * theMissEtVector
 
TH2F * theMissEtVsMissHt
 
TH2F * theMissEtVsMissHtAngle
 
TH1F * theMissHtAngle
 
TH1F * theMissHtInGeV
 
TH1F * theMissHtInLsb
 
TH2F * theMissHtMagVsInputRegions
 
TH2F * theMissHtPhiVsInternalJetsSum
 
TH2F * theMissHtVector
 
TH2F * theMissHtVsInternalJetsSum
 
TH2F * theMissHxVsInternalJetsSum
 
TH2F * theMissHyVsInternalJetsSum
 
TH1F * theSumEtInGeV
 
TH1F * theSumEtInLsb
 
TH2F * theSumEtVsInputRegions
 
TH1F * theSumHtInGeV
 
TH1F * theSumHtInLsb
 

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 wantsInputProcessBlocks ()
 
static bool wantsProcessBlocks ()
 
static bool wantsStreamLuminosityBlocks ()
 
static bool wantsStreamRuns ()
 
- 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)
 

Detailed Description

Description: produces standard plots of Gct output quantities to enable validation of global event quantities in particular

Definition at line 43 of file L1GctValidation.h.

Constructor & Destructor Documentation

◆ L1GctValidation()

L1GctValidation::L1GctValidation ( const edm::ParameterSet iConfig)
explicit

Definition at line 16 of file L1GctValidation.cc.

17  : m_gctinp_tag(iConfig.getUntrackedParameter<edm::InputTag>("rctInputTag", edm::InputTag("rctDigis"))),
18  m_energy_tag(iConfig.getUntrackedParameter<edm::InputTag>("gctInputTag", edm::InputTag("gctDigis"))),
19  m_jfParsToken(esConsumes<L1GctJetFinderParams, L1GctJetFinderParamsRcd>()),
20  m_htMissScaleToken(esConsumes<L1CaloEtScale, L1HtMissScaleRcd>()),
21  m_hfRingEtScaleToken(esConsumes<L1CaloEtScale, L1HfRingEtScaleRcd>()) {}

◆ ~L1GctValidation()

L1GctValidation::~L1GctValidation ( )
override

Definition at line 23 of file L1GctValidation.cc.

23  {
24  // do anything here that needs to be done at desctruction time
25  // (e.g. close files, deallocate resources etc.)
26 }

Member Function Documentation

◆ analyze()

void L1GctValidation::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
overrideprivatevirtual

Implements edm::EDAnalyzer.

Definition at line 33 of file L1GctValidation.cc.

33  {
34  using namespace edm;
35 
36  // Get the scales from the event setup
38 
39  double lsbForEt = jfPars.product()->getRgnEtLsbGeV();
40  double lsbForHt = jfPars.product()->getHtLsbGeV();
41 
42  unsigned httJetThreshold = static_cast<int>(jfPars.product()->getHtJetEtThresholdGeV() / lsbForHt);
43  unsigned htmJetThreshold = static_cast<int>(jfPars.product()->getMHtJetEtThresholdGeV() / lsbForHt);
44 
47 
48  // Get the Gct energy sums from the event
50  iEvent.getByLabel(m_energy_tag, sumEtColl);
52  iEvent.getByLabel(m_energy_tag, sumHtColl);
54  iEvent.getByLabel(m_energy_tag, missEtColl);
56  iEvent.getByLabel(m_energy_tag, missHtColl);
57 
58  // Get the input calo regions from the event (for checking MEt)
60  iEvent.getByLabel(m_gctinp_tag, inputColl);
61 
62  // Get the internal jet data from the event (for checking Ht)
63  Handle<L1GctInternJetDataCollection> internalJetsColl;
64  iEvent.getByLabel(m_energy_tag, internalJetsColl);
65 
66  double etTot = 0.0;
67  for (L1GctEtTotalCollection::const_iterator jbx = sumEtColl->begin(); jbx != sumEtColl->end(); jbx++) {
68  if (jbx->bx() == 0) {
69  etTot = static_cast<double>(jbx->et());
70  }
71  }
72 
73  double etHad = 0.0;
74  for (L1GctEtHadCollection::const_iterator jbx = sumHtColl->begin(); jbx != sumHtColl->end(); jbx++) {
75  if (jbx->bx() == 0) {
76  etHad = static_cast<double>(jbx->et());
77  }
78  }
79 
80  double etMiss = 0.0;
81  double etMAng = 0.0;
82  for (L1GctEtMissCollection::const_iterator jbx = missEtColl->begin(); jbx != missEtColl->end(); jbx++) {
83  if (jbx->bx() == 0) {
84  etMiss = static_cast<double>(jbx->et());
85  int phibin = jbx->phi();
86  if (phibin >= 36)
87  phibin -= 72;
88  double etMPhi = static_cast<double>(phibin);
89 
90  etMAng = (etMPhi + 0.5) * M_PI / 36.;
91  }
92  }
93 
94  double etTotFromRegions = 0.0;
95  double exTotFromRegions = 0.0;
96  double eyTotFromRegions = 0.0;
97  for (L1CaloRegionCollection::const_iterator jrg = inputColl->begin(); jrg != inputColl->end(); jrg++) {
98  if (jrg->bx() == 0) {
99  double rgEt = static_cast<double>(jrg->et()) * lsbForEt;
100  double rgPhibin = static_cast<double>(jrg->id().iphi());
101  double rgPh = (rgPhibin + 0.5) * M_PI / 9.;
102 
103  etTotFromRegions += rgEt;
104  exTotFromRegions += rgEt * cos(rgPh);
105  eyTotFromRegions += rgEt * sin(rgPh);
106  }
107  }
108 
109  double htMissGct = 0.0;
110  double htMissAng = 0.0;
111  double htMissGeV = 0.0;
112  for (L1GctHtMissCollection::const_iterator jbx = missHtColl->begin(); jbx != missHtColl->end(); jbx++) {
113  if (jbx->bx() == 0) {
114  htMissGct = static_cast<double>(jbx->et());
115  htMissGeV = htMissScale->et(jbx->et());
116  int phibin = jbx->phi();
117  if (phibin >= 9)
118  phibin -= 18;
119  double htMPhi = static_cast<double>(phibin);
120  htMissAng = (htMPhi + 0.5) * M_PI / 9.;
121  }
122  }
123 
124  double htFromJets = 0.0;
125  double hxFromJets = 0.0;
126  double hyFromJets = 0.0;
127  for (L1GctInternJetDataCollection::const_iterator jet = internalJetsColl->begin(); jet != internalJetsColl->end();
128  jet++) {
129  if (jet->bx() == 0 && !jet->empty()) {
130  unsigned jetEtGct = jet->et();
131  double jetEt = static_cast<double>(jetEtGct);
132  int phibin = jet->regionId().iphi();
133  if (phibin >= 9)
134  phibin -= 18;
135  // The phi bin centres are at 0, 20, 40, ... degrees
136  double jetAng = (static_cast<double>(phibin)) * M_PI / 9.;
137  if (jetEtGct > httJetThreshold) {
138  htFromJets += jetEt;
139  }
140  if (jetEtGct > htmJetThreshold) {
141  hxFromJets += jetEt * cos(jetAng);
142  hyFromJets += jetEt * sin(jetAng);
143  }
144  }
145  }
146 
147  double dPhiMetMht = deltaPhi(etMAng, htMissAng);
148 
149  theSumEtInLsb->Fill(etTot);
150  theSumHtInLsb->Fill(etHad);
151  theMissEtInLsb->Fill(etMiss);
152  theMissHtInLsb->Fill(htMissGct);
153  theSumEtInGeV->Fill(etTot * lsbForEt);
154  theSumHtInGeV->Fill(etHad * lsbForHt);
155  theMissEtInGeV->Fill(etMiss * lsbForEt);
156  theMissEtAngle->Fill(etMAng);
157  theMissEtVector->Fill(etMiss * lsbForEt * cos(etMAng), etMiss * lsbForEt * sin(etMAng));
158  if (htMissGct < 126.5) {
159  theMissHtInGeV->Fill(htMissGeV);
160  theMissHtAngle->Fill(htMissAng);
161  theMissHtVector->Fill(htMissGeV * cos(htMissAng), htMissGeV * sin(htMissAng));
162  }
163 
164  theSumEtVsInputRegions->Fill(etTot * lsbForEt, etTotFromRegions);
165  theMissEtMagVsInputRegions->Fill(etMiss * lsbForEt,
166  sqrt(exTotFromRegions * exTotFromRegions + eyTotFromRegions * eyTotFromRegions));
167  theMissEtAngleVsInputRegions->Fill(etMAng, atan2(-eyTotFromRegions, -exTotFromRegions));
168  theMissHtMagVsInputRegions->Fill(htMissGeV,
169  sqrt(exTotFromRegions * exTotFromRegions + eyTotFromRegions * eyTotFromRegions));
170 
171  theMissEtVsMissHt->Fill(etMiss * lsbForEt, htMissGeV);
172  theMissEtVsMissHtAngle->Fill(etMAng, htMissAng);
173  theDPhiVsMissEt->Fill(dPhiMetMht, etMiss * lsbForEt);
174  theDPhiVsMissHt->Fill(dPhiMetMht, htMissGeV);
175 
176  theHtVsInternalJetsSum->Fill(etHad * lsbForHt, htFromJets * lsbForHt);
177  if (htMissGct < 126.5) {
178  theMissHtVsInternalJetsSum->Fill(htMissGeV, sqrt(hxFromJets * hxFromJets + hyFromJets * hyFromJets) * lsbForHt);
179  theMissHtPhiVsInternalJetsSum->Fill(htMissAng, atan2(-hyFromJets, -hxFromJets));
180  theMissHxVsInternalJetsSum->Fill(htMissGeV * cos(htMissAng), hxFromJets * lsbForHt);
181  theMissHyVsInternalJetsSum->Fill(htMissGeV * sin(htMissAng), hyFromJets * lsbForHt);
182  }
183 
184  // Get minbias trigger quantities from HF
187  iEvent.getByLabel(m_energy_tag, HFEtSumsColl);
188  iEvent.getByLabel(m_energy_tag, HFCountsColl);
189 
190  for (L1GctHFRingEtSumsCollection::const_iterator es = HFEtSumsColl->begin(); es != HFEtSumsColl->end(); es++) {
191  if (es->bx() == 0) {
192  theHfRing0EtSumPositiveEta->Fill(hfRingEtScale->et(es->etSum(0)));
193  theHfRing0EtSumNegativeEta->Fill(hfRingEtScale->et(es->etSum(1)));
194  theHfRing1EtSumPositiveEta->Fill(hfRingEtScale->et(es->etSum(2)));
195  theHfRing1EtSumNegativeEta->Fill(hfRingEtScale->et(es->etSum(3)));
196  }
197  }
198 
199  for (L1GctHFBitCountsCollection::const_iterator bc = HFCountsColl->begin(); bc != HFCountsColl->end(); bc++) {
200  if (bc->bx() == 0) {
201  theHfRing0CountPositiveEta->Fill(bc->bitCount(0));
202  theHfRing0CountNegativeEta->Fill(bc->bitCount(1));
203  theHfRing1CountPositiveEta->Fill(bc->bitCount(2));
204  theHfRing1CountNegativeEta->Fill(bc->bitCount(3));
205  }
206  }
207 }

References funct::cos(), SiPixelRawToDigiRegional_cfi::deltaPhi, L1CaloEtScale::et(), edm::EventSetup::getHandle(), L1GctJetFinderParams::getHtJetEtThresholdGeV(), L1GctJetFinderParams::getHtLsbGeV(), L1GctJetFinderParams::getMHtJetEtThresholdGeV(), L1GctJetFinderParams::getRgnEtLsbGeV(), iEvent, HLT_FULL_cff::inputColl, metsig::jet, m_energy_tag, m_gctinp_tag, m_hfRingEtScaleToken, m_htMissScaleToken, m_jfParsToken, M_PI, edm::ESHandle< T >::product(), funct::sin(), mathSSE::sqrt(), theDPhiVsMissEt, theDPhiVsMissHt, theHfRing0CountNegativeEta, theHfRing0CountPositiveEta, theHfRing0EtSumNegativeEta, theHfRing0EtSumPositiveEta, theHfRing1CountNegativeEta, theHfRing1CountPositiveEta, theHfRing1EtSumNegativeEta, theHfRing1EtSumPositiveEta, theHtVsInternalJetsSum, theMissEtAngle, theMissEtAngleVsInputRegions, theMissEtInGeV, theMissEtInLsb, theMissEtMagVsInputRegions, theMissEtVector, theMissEtVsMissHt, theMissEtVsMissHtAngle, theMissHtAngle, theMissHtInGeV, theMissHtInLsb, theMissHtMagVsInputRegions, theMissHtPhiVsInternalJetsSum, theMissHtVector, theMissHtVsInternalJetsSum, theMissHxVsInternalJetsSum, theMissHyVsInternalJetsSum, theSumEtInGeV, theSumEtInLsb, theSumEtVsInputRegions, theSumHtInGeV, and theSumHtInLsb.

◆ beginJob()

void L1GctValidation::beginJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 210 of file L1GctValidation.cc.

210  {
212 
213  TFileDirectory dir0 = fs->mkdir("L1GctEtSums");
214 
215  theSumEtInLsb = dir0.make<TH1F>("SumEtInLsb", "Total Et (GCT units)", 128, 0., 2048.);
216  theSumHtInLsb = dir0.make<TH1F>("SumHtInLsb", "Total Ht (GCT units)", 128, 0., 2048.);
217  theMissEtInLsb = dir0.make<TH1F>("MissEtInLsb", "Missing Et magnitude (GCT units)", 128, 0., 1024.);
218  theMissHtInLsb = dir0.make<TH1F>("MissHtInLsb", "Missing Ht magnitude (GCT units)", 128, 0., 127.);
219  theSumEtInGeV = dir0.make<TH1F>("SumEtInGeV", "Total Et (in GeV)", 100, 0., 1000.);
220  theSumHtInGeV = dir0.make<TH1F>("SumHtInGeV", "Total Ht (in GeV)", 100, 0., 1000.);
221  theMissEtInGeV = dir0.make<TH1F>("MissEtInGeV", "Missing Et magnitude (in GeV)", 100, 0., 500.);
222  theMissEtAngle = dir0.make<TH1F>("MissEtAngle", "Missing Et angle", 72, -M_PI, M_PI);
223  theMissEtVector = dir0.make<TH2F>("MissEtVector", "Missing Ex vs Missing Ey", 100, -100., 100., 100, -100., 100.);
224  theMissHtInGeV = dir0.make<TH1F>("MissHtInGeV", "Missing Ht magnitude (in GeV)", 100, 0., 500.);
225  theMissHtAngle = dir0.make<TH1F>("MissHtAngle", "Missing Ht angle", 72, -M_PI, M_PI);
226  theMissHtVector = dir0.make<TH2F>("MissHtVector", "Missing Hx vs Missing Hy", 100, -100., 100., 100, -100., 100.);
228  dir0.make<TH2F>("SumEtVsInputRegions", "Total Et vs sum of input regions", 100, 0., 1000., 100, 0., 1000.);
229  theMissEtMagVsInputRegions = dir0.make<TH2F>(
230  "MissEtMagVsInputRegions", "Missing Et magnitude vs sum of input regions", 100, 0., 500., 100, 0., 500.);
231  theMissEtAngleVsInputRegions = dir0.make<TH2F>(
232  "MissEtAngleVsInputRegions", "Missing Et angle vs sum of input regions", 72, -M_PI, M_PI, 72, -M_PI, M_PI);
233  theMissHtMagVsInputRegions = dir0.make<TH2F>(
234  "MissHtMagVsInputRegions", "Missing Ht magnitude vs sum of input regions", 100, 0., 500., 100, 0., 500.);
235  theMissEtVsMissHt = dir0.make<TH2F>("MissEtVsMissHt", "Missing Et vs Missing Ht", 100, 0., 500., 100, 0., 500.);
236  theMissEtVsMissHtAngle = dir0.make<TH2F>(
237  "MissEtVsMissHtAngle", "Angle correlation Missing Et vs Missing Ht", 72, -M_PI, M_PI, 72, -M_PI, M_PI);
239  dir0.make<TH2F>("theDPhiVsMissEt", "Angle difference MET-MHT vs MET magnitude", 72, -M_PI, M_PI, 100, 0., 500.);
241  dir0.make<TH2F>("theDPhiVsMissHt", "Angle difference MET-MHT vs MHT magnitude", 72, -M_PI, M_PI, 100, 0., 500.);
242 
243  theHtVsInternalJetsSum = dir0.make<TH2F>(
244  "HtVsInternalJetsSum", "Ht vs scalar sum of jet Et values (in GeV)", 128, 0., 2048., 128, 0., 2048.);
245  theMissHtVsInternalJetsSum = dir0.make<TH2F>(
246  "MissHtVsInternalJetsSum", "Missing Ht vs vector sum of jet Et values (in GeV)", 128, 0., 512., 128, 0., 512.);
247  theMissHtPhiVsInternalJetsSum = dir0.make<TH2F>("MissHtPhiVsInternalJetsSum",
248  "Angle correlation Missing Ht vs vector sum of jet Et values",
249  72,
250  -M_PI,
251  M_PI,
252  72,
253  -M_PI,
254  M_PI);
255  theMissHxVsInternalJetsSum = dir0.make<TH2F>("MissHxVsInternalJetsSum",
256  "Missing Ht x component vs sum of jet Et values (in GeV)",
257  128,
258  -256.,
259  256.,
260  128,
261  -256.,
262  256.);
263  theMissHyVsInternalJetsSum = dir0.make<TH2F>("MissHyVsInternalJetsSum",
264  "Missing Ht y component vs sum of jet Et values (in GeV)",
265  128,
266  -256.,
267  256.,
268  128,
269  -256.,
270  256.);
271 
272  TFileDirectory dir1 = fs->mkdir("L1GctHfSumsAndJetCounts");
273 
274  // Minimum bias triggers from Hf inner rings
275  theHfRing0EtSumPositiveEta = dir1.make<TH1F>("HfRing0EtSumPositiveEta", "Hf Inner Ring0 Et eta+", 60, 0., 30.);
276  theHfRing0EtSumNegativeEta = dir1.make<TH1F>("HfRing0EtSumNegativeEta", "Hf Inner Ring0 Et eta-", 60, 0., 30.);
277  theHfRing1EtSumPositiveEta = dir1.make<TH1F>("HfRing1EtSumPositiveEta", "Hf Inner Ring1 Et eta+", 60, 0., 30.);
278  theHfRing1EtSumNegativeEta = dir1.make<TH1F>("HfRing1EtSumNegativeEta", "Hf Inner Ring1 Et eta-", 60, 0., 30.);
279  theHfRing0CountPositiveEta = dir1.make<TH1F>("HfRing0CountPositiveEta", "Hf Threshold bits Ring0 eta+", 20, 0., 20.);
280  theHfRing0CountNegativeEta = dir1.make<TH1F>("HfRing0CountNegativeEta", "Hf Threshold bits Ring0 eta-", 20, 0., 20.);
281  theHfRing1CountPositiveEta = dir1.make<TH1F>("HfRing1CountPositiveEta", "Hf Threshold bits Ring1 eta+", 20, 0., 20.);
282  theHfRing1CountNegativeEta = dir1.make<TH1F>("HfRing1CountNegativeEta", "Hf Threshold bits Ring1 eta-", 20, 0., 20.);
283 }

References L1TDiffHarvesting_cfi::dir1, M_PI, TFileDirectory::make(), TFileService::mkdir(), theDPhiVsMissEt, theDPhiVsMissHt, theHfRing0CountNegativeEta, theHfRing0CountPositiveEta, theHfRing0EtSumNegativeEta, theHfRing0EtSumPositiveEta, theHfRing1CountNegativeEta, theHfRing1CountPositiveEta, theHfRing1EtSumNegativeEta, theHfRing1EtSumPositiveEta, theHtVsInternalJetsSum, theMissEtAngle, theMissEtAngleVsInputRegions, theMissEtInGeV, theMissEtInLsb, theMissEtMagVsInputRegions, theMissEtVector, theMissEtVsMissHt, theMissEtVsMissHtAngle, theMissHtAngle, theMissHtInGeV, theMissHtInLsb, theMissHtMagVsInputRegions, theMissHtPhiVsInternalJetsSum, theMissHtVector, theMissHtVsInternalJetsSum, theMissHxVsInternalJetsSum, theMissHyVsInternalJetsSum, theSumEtInGeV, theSumEtInLsb, theSumEtVsInputRegions, theSumHtInGeV, and theSumHtInLsb.

◆ endJob()

void L1GctValidation::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::EDAnalyzer.

Definition at line 286 of file L1GctValidation.cc.

286 {}

Member Data Documentation

◆ m_energy_tag

edm::InputTag L1GctValidation::m_energy_tag
private

Definition at line 56 of file L1GctValidation.h.

Referenced by analyze().

◆ m_gctinp_tag

edm::InputTag L1GctValidation::m_gctinp_tag
private

Definition at line 55 of file L1GctValidation.h.

Referenced by analyze().

◆ m_hfRingEtScaleToken

edm::ESGetToken<L1CaloEtScale, L1HfRingEtScaleRcd> L1GctValidation::m_hfRingEtScaleToken
private

Definition at line 97 of file L1GctValidation.h.

Referenced by analyze().

◆ m_htMissScaleToken

edm::ESGetToken<L1CaloEtScale, L1HtMissScaleRcd> L1GctValidation::m_htMissScaleToken
private

Definition at line 96 of file L1GctValidation.h.

Referenced by analyze().

◆ m_jfParsToken

edm::ESGetToken<L1GctJetFinderParams, L1GctJetFinderParamsRcd> L1GctValidation::m_jfParsToken
private

Definition at line 95 of file L1GctValidation.h.

Referenced by analyze().

◆ theDPhiVsMissEt

TH2F* L1GctValidation::theDPhiVsMissEt
private

Definition at line 78 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theDPhiVsMissHt

TH2F* L1GctValidation::theDPhiVsMissHt
private

Definition at line 79 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theHfRing0CountNegativeEta

TH1F* L1GctValidation::theHfRing0CountNegativeEta
private

Definition at line 92 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theHfRing0CountPositiveEta

TH1F* L1GctValidation::theHfRing0CountPositiveEta
private

Definition at line 91 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theHfRing0EtSumNegativeEta

TH1F* L1GctValidation::theHfRing0EtSumNegativeEta
private

Definition at line 88 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theHfRing0EtSumPositiveEta

TH1F* L1GctValidation::theHfRing0EtSumPositiveEta
private

Definition at line 87 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theHfRing1CountNegativeEta

TH1F* L1GctValidation::theHfRing1CountNegativeEta
private

Definition at line 94 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theHfRing1CountPositiveEta

TH1F* L1GctValidation::theHfRing1CountPositiveEta
private

Definition at line 93 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theHfRing1EtSumNegativeEta

TH1F* L1GctValidation::theHfRing1EtSumNegativeEta
private

Definition at line 90 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theHfRing1EtSumPositiveEta

TH1F* L1GctValidation::theHfRing1EtSumPositiveEta
private

Definition at line 89 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theHtVsInternalJetsSum

TH2F* L1GctValidation::theHtVsInternalJetsSum
private

Definition at line 81 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissEtAngle

TH1F* L1GctValidation::theMissEtAngle
private

Definition at line 65 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissEtAngleVsInputRegions

TH2F* L1GctValidation::theMissEtAngleVsInputRegions
private

Definition at line 73 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissEtInGeV

TH1F* L1GctValidation::theMissEtInGeV
private

Definition at line 64 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissEtInLsb

TH1F* L1GctValidation::theMissEtInLsb
private

Definition at line 60 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissEtMagVsInputRegions

TH2F* L1GctValidation::theMissEtMagVsInputRegions
private

Definition at line 72 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissEtVector

TH2F* L1GctValidation::theMissEtVector
private

Definition at line 66 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissEtVsMissHt

TH2F* L1GctValidation::theMissEtVsMissHt
private

Definition at line 76 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissEtVsMissHtAngle

TH2F* L1GctValidation::theMissEtVsMissHtAngle
private

Definition at line 77 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissHtAngle

TH1F* L1GctValidation::theMissHtAngle
private

Definition at line 68 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissHtInGeV

TH1F* L1GctValidation::theMissHtInGeV
private

Definition at line 67 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissHtInLsb

TH1F* L1GctValidation::theMissHtInLsb
private

Definition at line 61 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissHtMagVsInputRegions

TH2F* L1GctValidation::theMissHtMagVsInputRegions
private

Definition at line 74 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissHtPhiVsInternalJetsSum

TH2F* L1GctValidation::theMissHtPhiVsInternalJetsSum
private

Definition at line 83 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissHtVector

TH2F* L1GctValidation::theMissHtVector
private

Definition at line 69 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissHtVsInternalJetsSum

TH2F* L1GctValidation::theMissHtVsInternalJetsSum
private

Definition at line 82 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissHxVsInternalJetsSum

TH2F* L1GctValidation::theMissHxVsInternalJetsSum
private

Definition at line 84 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theMissHyVsInternalJetsSum

TH2F* L1GctValidation::theMissHyVsInternalJetsSum
private

Definition at line 85 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theSumEtInGeV

TH1F* L1GctValidation::theSumEtInGeV
private

Definition at line 62 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theSumEtInLsb

TH1F* L1GctValidation::theSumEtInLsb
private

Definition at line 58 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theSumEtVsInputRegions

TH2F* L1GctValidation::theSumEtVsInputRegions
private

Definition at line 71 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theSumHtInGeV

TH1F* L1GctValidation::theSumHtInGeV
private

Definition at line 63 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

◆ theSumHtInLsb

TH1F* L1GctValidation::theSumHtInLsb
private

Definition at line 59 of file L1GctValidation.h.

Referenced by analyze(), and beginJob().

L1GctValidation::theHfRing1CountPositiveEta
TH1F * theHfRing1CountPositiveEta
Definition: L1GctValidation.h:93
edm::ESHandle::product
T const * product() const
Definition: ESHandle.h:86
L1GctValidation::theMissHyVsInternalJetsSum
TH2F * theMissHyVsInternalJetsSum
Definition: L1GctValidation.h:85
L1GctValidation::m_hfRingEtScaleToken
edm::ESGetToken< L1CaloEtScale, L1HfRingEtScaleRcd > m_hfRingEtScaleToken
Definition: L1GctValidation.h:97
L1GctJetFinderParams::getHtJetEtThresholdGeV
double getHtJetEtThresholdGeV() const
Definition: L1GctJetFinderParams.h:41
L1GctValidation::theHfRing1CountNegativeEta
TH1F * theHfRing1CountNegativeEta
Definition: L1GctValidation.h:94
L1GctValidation::theMissHtAngle
TH1F * theMissHtAngle
Definition: L1GctValidation.h:68
TFileDirectory::make
T * make(const Args &... args) const
make new ROOT object
Definition: TFileDirectory.h:53
edm
HLT enums.
Definition: AlignableModifier.h:19
L1GctJetFinderParams::getRgnEtLsbGeV
double getRgnEtLsbGeV() const
Definition: L1GctJetFinderParams.h:35
L1GctValidation::theSumHtInLsb
TH1F * theSumHtInLsb
Definition: L1GctValidation.h:59
L1GctValidation::theSumEtVsInputRegions
TH2F * theSumEtVsInputRegions
Definition: L1GctValidation.h:71
L1GctValidation::theHtVsInternalJetsSum
TH2F * theHtVsInternalJetsSum
Definition: L1GctValidation.h:81
L1GctValidation::theMissHtVsInternalJetsSum
TH2F * theMissHtVsInternalJetsSum
Definition: L1GctValidation.h:82
L1GctValidation::theSumEtInGeV
TH1F * theSumEtInGeV
Definition: L1GctValidation.h:62
L1GctValidation::theMissEtVsMissHtAngle
TH2F * theMissEtVsMissHtAngle
Definition: L1GctValidation.h:77
L1GctValidation::theMissEtInLsb
TH1F * theMissEtInLsb
Definition: L1GctValidation.h:60
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
L1GctJetFinderParams::getHtLsbGeV
double getHtLsbGeV() const
Definition: L1GctJetFinderParams.h:36
TFileDirectory
Definition: TFileDirectory.h:24
L1GctValidation::theHfRing0EtSumNegativeEta
TH1F * theHfRing0EtSumNegativeEta
Definition: L1GctValidation.h:88
L1GctValidation::theMissEtVector
TH2F * theMissEtVector
Definition: L1GctValidation.h:66
L1GctValidation::theMissHtPhiVsInternalJetsSum
TH2F * theMissHtPhiVsInternalJetsSum
Definition: L1GctValidation.h:83
edm::Handle
Definition: AssociativeIterator.h:50
L1GctValidation::theMissHtVector
TH2F * theMissHtVector
Definition: L1GctValidation.h:69
L1GctValidation::theDPhiVsMissEt
TH2F * theDPhiVsMissEt
Definition: L1GctValidation.h:78
L1GctValidation::theHfRing1EtSumPositiveEta
TH1F * theHfRing1EtSumPositiveEta
Definition: L1GctValidation.h:89
funct::sin
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
L1GctValidation::theHfRing0CountNegativeEta
TH1F * theHfRing0CountNegativeEta
Definition: L1GctValidation.h:92
L1GctValidation::m_htMissScaleToken
edm::ESGetToken< L1CaloEtScale, L1HtMissScaleRcd > m_htMissScaleToken
Definition: L1GctValidation.h:96
funct::cos
Cos< T >::type cos(const T &t)
Definition: Cos.h:22
SiPixelRawToDigiRegional_cfi.deltaPhi
deltaPhi
Definition: SiPixelRawToDigiRegional_cfi.py:9
L1GctValidation::theSumEtInLsb
TH1F * theSumEtInLsb
Definition: L1GctValidation.h:58
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
edm::ESHandle
Definition: DTSurvey.h:22
L1GctValidation::theMissHxVsInternalJetsSum
TH2F * theMissHxVsInternalJetsSum
Definition: L1GctValidation.h:84
L1TDiffHarvesting_cfi.dir1
dir1
Definition: L1TDiffHarvesting_cfi.py:10
L1GctValidation::m_energy_tag
edm::InputTag m_energy_tag
Definition: L1GctValidation.h:56
HLT_FULL_cff.inputColl
inputColl
Definition: HLT_FULL_cff.py:14656
L1GctValidation::theMissEtAngleVsInputRegions
TH2F * theMissEtAngleVsInputRegions
Definition: L1GctValidation.h:73
L1GctValidation::theMissHtInLsb
TH1F * theMissHtInLsb
Definition: L1GctValidation.h:61
TFileService::mkdir
TFileDirectory mkdir(const std::string &dir, const std::string &descr="")
create a new subdirectory
Definition: TFileService.h:69
edm::Service< TFileService >
iEvent
int iEvent
Definition: GenABIO.cc:224
L1GctValidation::theHfRing1EtSumNegativeEta
TH1F * theHfRing1EtSumNegativeEta
Definition: L1GctValidation.h:90
L1GctValidation::theMissEtAngle
TH1F * theMissEtAngle
Definition: L1GctValidation.h:65
M_PI
#define M_PI
Definition: BXVectorInputProducer.cc:49
edm::EventSetup::getHandle
ESHandle< T > getHandle(const ESGetToken< T, R > &iToken) const
Definition: EventSetup.h:148
L1GctValidation::theHfRing0CountPositiveEta
TH1F * theHfRing0CountPositiveEta
Definition: L1GctValidation.h:91
L1GctValidation::theMissEtVsMissHt
TH2F * theMissEtVsMissHt
Definition: L1GctValidation.h:76
L1GctValidation::theSumHtInGeV
TH1F * theSumHtInGeV
Definition: L1GctValidation.h:63
L1GctValidation::m_gctinp_tag
edm::InputTag m_gctinp_tag
Definition: L1GctValidation.h:55
L1GctValidation::m_jfParsToken
edm::ESGetToken< L1GctJetFinderParams, L1GctJetFinderParamsRcd > m_jfParsToken
Definition: L1GctValidation.h:95
metsig::jet
Definition: SignAlgoResolutions.h:47
L1GctValidation::theHfRing0EtSumPositiveEta
TH1F * theHfRing0EtSumPositiveEta
Definition: L1GctValidation.h:87
L1GctValidation::theDPhiVsMissHt
TH2F * theDPhiVsMissHt
Definition: L1GctValidation.h:79
L1CaloEtScale::et
double et(const uint16_t rank) const
convert from rank to physically meaningful quantity
Definition: L1CaloEtScale.cc:68
L1GctValidation::theMissEtInGeV
TH1F * theMissEtInGeV
Definition: L1GctValidation.h:64
L1GctValidation::theMissEtMagVsInputRegions
TH2F * theMissEtMagVsInputRegions
Definition: L1GctValidation.h:72
L1GctValidation::theMissHtInGeV
TH1F * theMissHtInGeV
Definition: L1GctValidation.h:67
L1GctJetFinderParams::getMHtJetEtThresholdGeV
double getMHtJetEtThresholdGeV() const
Definition: L1GctJetFinderParams.h:42
edm::InputTag
Definition: InputTag.h:15
L1GctValidation::theMissHtMagVsInputRegions
TH2F * theMissHtMagVsInputRegions
Definition: L1GctValidation.h:74