|
ATLAS Offline Software
|
A Cell of the electromagnetic endcap calorimeter readout geometry This class represents a single EMEC Cell. These cells are specified by phi and eta boundaries, the latter which corresponds to an inner and outer radius computed from and effective focal length. Those numbers come from the database via the EMEC DetectorManager.
More...
#include <EMECCell.h>
|
| EMECCell (unsigned int endcap, const EMECDetDescr *emecDescriptor, unsigned int eta, unsigned int phi) |
| Constructor. More...
|
|
unsigned int | getPhiIndex () const |
| The Phi Index of this Cell. More...
|
|
unsigned int | getEndcapIndex () const |
| The EndcapIndex of this Cell (0=negatiive, 1=positive) More...
|
|
unsigned int | getEtaIndex () const |
| The eta index of this cell. More...
|
|
unsigned int | getSamplingIndex () const |
| The sampling index of this cell. More...
|
|
unsigned int | getRegionIndex () const |
| The region index of this cell. More...
|
|
unsigned int | getRadialIndex () const |
| The radial index of this cell (0=Outer Wheel, 1=Inner Wheel). More...
|
|
const EMECDetDescr * | getDescriptor () const |
| Returns a pointer to the descriptor. More...
|
|
double | getZLocal (CELLPOS position) const |
| Z for the cell at (FRONT,CENTER,BACK) More...
|
|
double | getRMinLocal (CELLPOS position) const |
| RMin for the cell at (FRONT,CENTER,BACK) More...
|
|
double | getRMaxLocal (CELLPOS position) const |
| RMax for the cell at (FRONT,CENTER,BACK) More...
|
|
double | getPhiLocalLower () const |
| Gets the phi value at the "lower" edge of a cell. More...
|
|
double | getPhiLocalUpper () const |
| Gets the phi value at the "lower" edge of a cell. More...
|
|
double | getPhiMinNominal () const |
| returns a nominal phi min in global coords; assume canonical placement More...
|
|
double | getPhiMaxNominal () const |
| returns a nominal phi max in global coords; assume canonical placement More...
|
|
double | getEtaMin () const |
| Minimum Eta. More...
|
|
double | getEtaMax () const |
| Maximum Eta. More...
|
|
unsigned int | getNumElectrodes () const |
| @Get num electrodes More...
|
|
const EMECHVElectrode & | getElectrode (unsigned int i) const |
| @Get electrode More...
|
|
const EMECPresamplerHVModule & | getPresamplerHVModule () const |
| @Get HVModule (presampler cells) More...
|
|
A Cell of the electromagnetic endcap calorimeter readout geometry This class represents a single EMEC Cell. These cells are specified by phi and eta boundaries, the latter which corresponds to an inner and outer radius computed from and effective focal length. Those numbers come from the database via the EMEC DetectorManager.
Use the EMEC Cells through EMEC Cell Links please!!! This will free the memory used by the cell when the last link to the cell disappears.
Definition at line 31 of file EMECCell.h.
◆ CELLPOS
Enumerator |
---|
FRONT | |
CENTER | |
BACK | |
Definition at line 36 of file EMECCell.h.
◆ EMECCell() [1/2]
EMECCell::EMECCell |
( |
unsigned int |
endcap, |
|
|
const EMECDetDescr * |
emecDescriptor, |
|
|
unsigned int |
eta, |
|
|
unsigned int |
phi |
|
) |
| |
|
inline |
◆ EMECCell() [2/2]
◆ ~EMECCell()
◆ getDescriptor()
Returns a pointer to the descriptor.
Definition at line 229 of file EMECCell.h.
◆ getElectrode()
◆ getEndcapIndex()
unsigned int EMECCell::getEndcapIndex |
( |
| ) |
const |
|
inline |
The EndcapIndex of this Cell (0=negatiive, 1=positive)
Definition at line 194 of file EMECCell.h.
◆ getEtaIndex()
unsigned int EMECCell::getEtaIndex |
( |
| ) |
const |
|
inline |
The eta index of this cell.
Definition at line 201 of file EMECCell.h.
◆ getEtaMax()
double EMECCell::getEtaMax |
( |
| ) |
const |
|
inline |
◆ getEtaMin()
double EMECCell::getEtaMin |
( |
| ) |
const |
|
inline |
◆ getHVInfo()
◆ getNumElectrodes()
unsigned int EMECCell::getNumElectrodes |
( |
| ) |
const |
◆ getPhiIndex()
unsigned int EMECCell::getPhiIndex |
( |
| ) |
const |
|
inline |
The Phi Index of this Cell.
Definition at line 187 of file EMECCell.h.
◆ getPhiLocalLower()
double EMECCell::getPhiLocalLower |
( |
| ) |
const |
|
inline |
Gets the phi value at the "lower" edge of a cell.
This is a local phi!!! It's useful for constructing exact phi boundaries in the local coordinate system.
Definition at line 268 of file EMECCell.h.
◆ getPhiLocalUpper()
double EMECCell::getPhiLocalUpper |
( |
| ) |
const |
|
inline |
Gets the phi value at the "lower" edge of a cell.
This is a local phi!!! It's useful for constructing exact phi boundaries in the local coordinate system.
Definition at line 275 of file EMECCell.h.
◆ getPhiMaxNominal()
double EMECCell::getPhiMaxNominal |
( |
| ) |
const |
|
inline |
returns a nominal phi max in global coords; assume canonical placement
Definition at line 288 of file EMECCell.h.
◆ getPhiMinNominal()
double EMECCell::getPhiMinNominal |
( |
| ) |
const |
|
inline |
returns a nominal phi min in global coords; assume canonical placement
Definition at line 283 of file EMECCell.h.
◆ getPresamplerHVModule()
@Get HVModule (presampler cells)
Definition at line 25 of file EMECCell.cxx.
◆ getRadialIndex()
unsigned int EMECCell::getRadialIndex |
( |
| ) |
const |
|
inline |
The radial index of this cell (0=Outer Wheel, 1=Inner Wheel).
Definition at line 222 of file EMECCell.h.
◆ getRegionIndex()
unsigned int EMECCell::getRegionIndex |
( |
| ) |
const |
|
inline |
The region index of this cell.
Definition at line 215 of file EMECCell.h.
◆ getRMaxLocal()
double EMECCell::getRMaxLocal |
( |
CELLPOS |
position | ) |
const |
|
inline |
RMax for the cell at (FRONT,CENTER,BACK)
Definition at line 260 of file EMECCell.h.
◆ getRMinLocal()
double EMECCell::getRMinLocal |
( |
CELLPOS |
position | ) |
const |
|
inline |
RMin for the cell at (FRONT,CENTER,BACK)
Definition at line 252 of file EMECCell.h.
◆ getSamplingIndex()
unsigned int EMECCell::getSamplingIndex |
( |
| ) |
const |
|
inline |
The sampling index of this cell.
Definition at line 208 of file EMECCell.h.
◆ getZLocal()
double EMECCell::getZLocal |
( |
CELLPOS |
position | ) |
const |
|
inline |
Z for the cell at (FRONT,CENTER,BACK)
Definition at line 236 of file EMECCell.h.
◆ initHV()
void EMECCell::initHV |
( |
HVInfo & |
hvinfo | ) |
const |
|
private |
Definition at line 41 of file EMECCell.cxx.
47 double phi=fabs(phiUpper+phiLower)/2.0;
49 const CellBinning * phiBinning=presamplerHVManager.
getPhiBinning();
50 unsigned int iPhi =
int((
phi - phiBinning->getStart())/phiBinning->getDelta()) + phiBinning->getFirstDivisionNumber();
52 hvinfo.m_presamplerModule = &(presamplerHVManager.
getHVModule(iSide,
iPhi));
64 double phiMid=(phiLower+phiUpper)/2.0;
70 for (
unsigned int i=etaBinning.getFirstDivisionNumber();
i<=etaBinning.getFirstDivisionNumber()+etaBinning.getNumDivisions();
i++) {
71 if (
eta>=etaBinning.binLower(
i) &&
eta<=etaBinning.binUpper(
i)) {
75 unsigned int iPhi =
int((phiMid - phiBinning.getStart())/phiBinning.getDelta()) + phiBinning.getFirstDivisionNumber();
79 unsigned int iSector =
int((phiMid - phiBinning.binLower(
iPhi) - sectorBinning.getStart())/sectorBinning.getDelta()) + sectorBinning.getFirstDivisionNumber();
80 double phiSectorStart = phiBinning.binLower(
iPhi) +iSector*sectorBinning.getDelta();
86 const double inv_2pi = M_1_PI/2;
87 unsigned int iOffset =
int(
N*(phiLower-phiSectorStart +
phi0)*inv_2pi +0.5);
88 double dPhi = fabs((phiUpper-phiLower));
99 for (
unsigned int iElectrode=iOffset;iElectrode<iOffset+
NE;iElectrode++) {
101 hvinfo.m_electrode.push_back(&hvElec);
◆ operator=()
◆ ImaginaryFriend
friend class ImaginaryFriend |
|
friend |
◆ m_clockwork
unsigned int EMECCell::m_clockwork |
|
private |
◆ m_emecDetDescr
◆ m_hvinfo
The documentation for this class was generated from the following files:
const EMECDetectorManager * getManager() const
The manager.
This class provides direct access to information on the HV electrodes within the EMEC....
double getOffset(unsigned int etaIndex) const
Gets the offset position (cell centers with respect to the position of the front of the active volume...
const EMECHVModule & getHVModule(unsigned int iSide, unsigned int iEta, unsigned int iPhi, unsigned int iSector) const
double getPhiMaxNominal() const
returns a nominal phi max in global coords; assume canonical placement
Scalar phi() const
phi method
unsigned int getPhiIndex() const
The Phi Index of this Cell.
std::vector< const EMECHVElectrode * > m_electrode
Scalar eta() const
pseudorapidity method
const EMECHVElectrode & getElectrode(unsigned int iElectrode) const
const CellBinning & getPhiBinning() const
The Binning in Phi.
const CellBinning & getPhiBinning() const
CxxUtils::CachedValue< HVInfo > m_hvinfo
double getEtaMin() const
Minimum Eta.
const EMECDetDescr * getDescriptor() const
Returns a pointer to the descriptor.
unsigned int getEndcapIndex() const
The EndcapIndex of this Cell (0=negatiive, 1=positive)
const EMECPresamplerHVModule & getHVModule(unsigned int iSide, unsigned int iPhi) const
double getHalfLength(unsigned int etaIndex) const
gets the cell half-length in z.
double getRefToPresampler() const
This provides the distance in CLHEP::mm from the Active Endcap Presampler volume (center) to the refe...
double getPhiLocalUpper() const
Gets the phi value at the "lower" edge of a cell.
bool dPhi(const xAOD::TauJet &tau, const xAOD::TauTrack &track, double &out)
const EMECHVManager & getHVManager(EMECHVManager::IOType io) const
Get the HV Managers.
const HVInfo & getHVInfo() const
const CellBinning * getPhiBinning() const
double getRefToActive() const
This provides the distance in CLHEP::mm from the Active EMEC volume to the reference plane.
const EMECDetDescr * m_emecDetDescr
unsigned int getRegionIndex() const
The region index.
const CellBinning & getEtaBinning() const
The Binning in Eta.
const EMECPresamplerHVModule * m_presamplerModule
unsigned int getRadialIndex() const
The radial index of this cell (0=Outer Wheel, 1=Inner Wheel).
unsigned int getEtaIndex() const
The eta index of this cell.
const EMECPresamplerHVManager & getPresamplerHVManager() const
Get the HV Manager (presampler)
unsigned int getSamplingIndex() const
The sampling index.
const EMECHVDescriptor & getDescriptor() const
const CellPartitioning & getEtaBinning() const
double getEtaMax() const
Maximum Eta.
This class provides direct access to information on the HV electrodes within the EMEC....
void initHV(HVInfo &hvinfo) const
setScale setgFexType iEta
double getPhiLocalLower() const
Gets the phi value at the "lower" edge of a cell.
const CellBinning & getSectorBinning() const
unsigned int getSamplingIndex() const
The sampling index of this cell.
double getZLocal(CELLPOS position) const
Z for the cell at (FRONT,CENTER,BACK)
double getPhiMinNominal() const
returns a nominal phi min in global coords; assume canonical placement