ATLAS Offline Software
HICaloCellHelper.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #include "HICaloCellHelper.h"
6 #include "CaloEvent/CaloCell.h"
7 #include "CxxUtils/prefetch.h"
9 #include <iomanip>
10 #include <sstream>
11 #include <cmath>
12 #include <set>
13 #include <TMath.h>
14 
16 {
17  float deta=theCell->caloDDE()->deta();
18  float dphi=theCell->caloDDE()->dphi();
19  return std::abs(deta*dphi);
20 }
21 
22 float HICaloCellHelper::getEtDensity(const CaloCell* theCell, float geoWeight)
23 {
24  float density=theCell->et();
26  if(area<1e-9) area=0.2*TMath::Pi()/geoWeight;
27  density/=area;
28  return density;
29 }
30 
31 std::string HICaloCellHelper::dumpCell(const CaloCell* theCell)
32 {
33  std::stringstream ss;
34  ss << "CELLINFO:"
35  << std::setw(10) << (CaloSampling::CaloSample) theCell->caloDDE()->getSampling()
36  << std::setw(20) << theCell->ID().get_compact()
37  << std::setw(10) << theCell->et()
38  << std::setw(10) << theCell->caloDDE()->eta()
39  << std::setw(10) << theCell->caloDDE()->phi()
40  << std::setw(15) << theCell->caloDDE()->deta()
41  << std::setw(15) << theCell->caloDDE()->dphi()
42  << std::setw(15) << HICaloCellHelper::getAreaEtaPhi(theCell);
43  return ss.str();
44 }
CaloDetDescrElement::deta
float deta() const
cell deta
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:356
AllowedVariables::e
e
Definition: AsgElectronSelectorTool.cxx:37
HICaloCellHelper::getAreaEtaPhi
float getAreaEtaPhi(const CaloCell *theCell)
Definition: HICaloCellHelper.cxx:15
PowhegControl_ttHplus_NLO.ss
ss
Definition: PowhegControl_ttHplus_NLO.py:83
CaloCell.h
Identifier::get_compact
value_type get_compact() const
Get the compact id.
HIEventDefs.h
HICaloCellHelper::getEtDensity
float getEtDensity(const CaloCell *theCell, float geoWeight)
Definition: HICaloCellHelper.cxx:22
CaloSampling::CaloSample
CaloSample
Definition: Calorimeter/CaloGeoHelpers/CaloGeoHelpers/CaloSampling.h:22
CaloCell::caloDDE
const CaloDetDescrElement * caloDDE() const
get pointer to CaloDetDescrElement (data member)
Definition: CaloCell.h:305
CaloCell::et
virtual double et() const override final
get et
Definition: CaloCell.h:407
HICaloCellHelper.h
CaloCell::ID
Identifier ID() const
get ID (from cached data member) non-virtual and inline for fast access
Definition: CaloCell.h:279
CaloDetDescrElement::dphi
float dphi() const
cell dphi
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:358
CaloCell
Data object for each calorimeter readout cell.
Definition: CaloCell.h:57
CaloDetDescrElement::getSampling
CaloCell_ID::CaloSample getSampling() const
cell sampling
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:395
CaloDetDescrElement::eta
float eta() const
cell eta
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:344
CaloDetDescrElement::phi
float phi() const
cell phi
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:346
area
double area(double R)
Definition: ConvertStaveServices.cxx:42
prefetch.h
Functions to prefetch blocks of memory.
HICaloCellHelper::dumpCell
std::string dumpCell(const CaloCell *theCell)
Definition: HICaloCellHelper.cxx:31