|
ATLAS Offline Software
|
A cell of the electromagnetic barrel calorimeter readout geometry This class gives dimensions and positions, and indices of an electromagnetic barrel calorimeter readout cell. Positions are in local coordinates (local to a "big piece", or in this case the EMB half barrel). Use the EMB Cells through EMB Cell Links please!!! This will free the memory used by the cell when the last link to the cell disappears.
More...
#include <EMBCell.h>
|
| EMBCell (unsigned int side, const EMBDetDescr *embDescriptor, unsigned int eta, unsigned int phi) |
| Constructor. More...
|
|
unsigned int | getPhiIndex () const |
| The Phi Index of this Cell. More...
|
|
unsigned int | getEndcapIndex () const |
| The Side Index 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...
|
|
const EMBDetDescr * | getDescriptor () const |
| Returns a pointer to the descriptor. More...
|
|
double | getRLocal (CELLPOS position) const |
| Z for the cell at (FRONT,CENTER,BACK) More...
|
|
double | getZMinLocal (CELLPOS position) const |
| RMin for the cell at (FRONT,CENTER,BACK) More...
|
|
double | getZMaxLocal (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 "upper" 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...
|
|
double | getPhiLocalLower (double r) const |
| Overloaded. More...
|
|
double | getPhiLocalUpper (double r) const |
| Overloaded. More...
|
|
unsigned int | getNumElectrodes () const |
| @Get num electrodes More...
|
|
const EMBHVElectrode & | getElectrode (unsigned int i) const |
| @Get electrode More...
|
|
unsigned int | getNumHVPathologies () const |
| @Get num HVPathologies More...
|
|
const EMBHVPathologiesConstLink & | getHVPathologies (unsigned int i) const |
| @Get HVPathologies More...
|
|
const EMBPresamplerHVModule & | getPresamplerHVModule () const |
| @Get HVModule (presampler cells) More...
|
|
void | addHVPathologies (const EMBHVPathologiesConstLink &) |
| @Add HVPathologies More...
|
|
A cell of the electromagnetic barrel calorimeter readout geometry This class gives dimensions and positions, and indices of an electromagnetic barrel calorimeter readout cell. Positions are in local coordinates (local to a "big piece", or in this case the EMB half barrel). Use the EMB Cells through EMB Cell Links please!!! This will free the memory used by the cell when the last link to the cell disappears.
Definition at line 30 of file EMBCell.h.
◆ CELLPOS
Enumerator |
---|
FRONT | |
CENTER | |
BACK | |
Definition at line 33 of file EMBCell.h.
◆ EMBCell() [1/2]
EMBCell::EMBCell |
( |
unsigned int |
side, |
|
|
const EMBDetDescr * |
embDescriptor, |
|
|
unsigned int |
eta, |
|
|
unsigned int |
phi |
|
) |
| |
|
inline |
◆ EMBCell() [2/2]
◆ ~EMBCell()
◆ addHVPathologies()
◆ getDescriptor()
Returns a pointer to the descriptor.
Definition at line 230 of file EMBCell.h.
◆ getElectrode()
◆ getEndcapIndex()
unsigned int EMBCell::getEndcapIndex |
( |
| ) |
const |
|
inline |
The Side Index of this Cell (0=negatiive, 1=positive)
Definition at line 210 of file EMBCell.h.
◆ getEtaIndex()
unsigned int EMBCell::getEtaIndex |
( |
| ) |
const |
|
inline |
The eta index of this cell.
Definition at line 215 of file EMBCell.h.
◆ getEtaMax()
double EMBCell::getEtaMax |
( |
| ) |
const |
|
inline |
◆ getEtaMin()
double EMBCell::getEtaMin |
( |
| ) |
const |
|
inline |
◆ getHVInfo()
◆ getHVPathologies()
◆ getNumElectrodes()
unsigned int EMBCell::getNumElectrodes |
( |
| ) |
const |
◆ getNumHVPathologies()
unsigned int EMBCell::getNumHVPathologies |
( |
| ) |
const |
◆ getPhiIndex()
unsigned int EMBCell::getPhiIndex |
( |
| ) |
const |
|
inline |
The Phi Index of this Cell.
Definition at line 205 of file EMBCell.h.
◆ getPhiLocalLower() [1/2]
double EMBCell::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 259 of file EMBCell.h.
◆ getPhiLocalLower() [2/2]
double EMBCell::getPhiLocalLower |
( |
double |
r | ) |
const |
Overloaded.
Returns the local lower cell boundaries in phi but they take account of the accordion shape, which undulates in phi, in the barrel.
Definition at line 19 of file EMBCell.cxx.
◆ getPhiLocalUpper() [1/2]
double EMBCell::getPhiLocalUpper |
( |
| ) |
const |
|
inline |
Gets the phi value at the "upper" 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 264 of file EMBCell.h.
◆ getPhiLocalUpper() [2/2]
double EMBCell::getPhiLocalUpper |
( |
double |
r | ) |
const |
Overloaded.
Returns the local upper cell boundaries in phi but they take account of the accordion shape, which undulates in phi, in the barrel.
Definition at line 23 of file EMBCell.cxx.
◆ getPhiMaxNominal()
double EMBCell::getPhiMaxNominal |
( |
| ) |
const |
|
inline |
returns a nominal phi max in global coords; assume canonical placement
Definition at line 274 of file EMBCell.h.
◆ getPhiMinNominal()
double EMBCell::getPhiMinNominal |
( |
| ) |
const |
|
inline |
returns a nominal phi min in global coords; assume canonical placement
Definition at line 269 of file EMBCell.h.
◆ getPresamplerHVModule()
@Get HVModule (presampler cells)
Definition at line 35 of file EMBCell.cxx.
◆ getRegionIndex()
unsigned int EMBCell::getRegionIndex |
( |
| ) |
const |
|
inline |
The region index of this cell.
Definition at line 225 of file EMBCell.h.
◆ getRLocal()
double EMBCell::getRLocal |
( |
CELLPOS |
position | ) |
const |
|
inline |
Z for the cell at (FRONT,CENTER,BACK)
Definition at line 235 of file EMBCell.h.
◆ getSamplingIndex()
unsigned int EMBCell::getSamplingIndex |
( |
| ) |
const |
|
inline |
The sampling index of this cell.
Definition at line 220 of file EMBCell.h.
◆ getZMaxLocal()
double EMBCell::getZMaxLocal |
( |
CELLPOS |
position | ) |
const |
|
inline |
RMax for the cell at (FRONT,CENTER,BACK)
Definition at line 254 of file EMBCell.h.
◆ getZMinLocal()
double EMBCell::getZMinLocal |
( |
CELLPOS |
position | ) |
const |
|
inline |
RMin for the cell at (FRONT,CENTER,BACK)
Definition at line 249 of file EMBCell.h.
◆ initHV()
void EMBCell::initHV |
( |
HVInfo & |
hvinfo | ) |
const |
|
private |
Definition at line 51 of file EMBCell.cxx.
58 double phi=fabs(phiUpper+phiLower)/2.0;
63 unsigned int iPhi =
int((
phi - phiBinning.getStart())/phiBinning.getDelta()) + phiBinning.getFirstDivisionNumber();
64 unsigned int iEta = etaBinning.getFirstDivisionNumber();
65 unsigned int lastDivision=etaBinning.getFirstDivisionNumber()+etaBinning.getNumDivisions();
66 while (
iEta<lastDivision) {
72 if (
iEta==lastDivision)
throw std::runtime_error (
"Error in EMBCell: Presampler HV not found");
88 double phi=fabs(phiUpper+phiLower)/2.0;
91 unsigned int iEta =
int((
eta - etaBinning.getStart())/etaBinning.getDelta()) + etaBinning.getFirstDivisionNumber();
92 unsigned int iPhi =
int((
phi - phiBinning.getStart())/phiBinning.getDelta()) + phiBinning.getFirstDivisionNumber();
93 unsigned int iSector =
int(2.0*(
phi - phiBinning.binLower(
iPhi))/phiBinning.getDelta());
99 double dPhi = fabs((phiUpper-phiLower));
102 unsigned int iOffset=
int(sPhi*(M_1_PI/2*1024.)+0.5);
103 unsigned int N =
int(
dPhi*(M_1_PI/2*1024.)+0.5);
106 for (
unsigned int iElectrode=iOffset;iElectrode<iOffset+
N;iElectrode++) {
108 hvinfo.m_electrode.push_back(&hvElec);
◆ operator=()
◆ ImaginaryFriend
friend class ImaginaryFriend |
|
friend |
◆ m_clockwork
unsigned int EMBCell::m_clockwork |
|
private |
◆ m_embDetDescr
◆ m_hvinfo
◆ m_hvPathologies
The documentation for this class was generated from the following files:
const HVInfo & getHVInfo() const
double getPhiLocalUpper() const
Gets the phi value at the "upper" edge of a cell.
Scalar phi() const
phi method
Scalar eta() const
pseudorapidity method
unsigned int getSamplingIndex() const
The sampling index of this cell.
const EMBHVManager & getHVManager() const
Get the HV Manager.
const EMBDetectorManager * getManager() const
The manager.
const CellBinning & getPhiBinning() const
The Binning in Phi.
void initHV(HVInfo &hvinfo) const
std::vector< const EMBHVElectrode * > m_electrode
double getRLocal(CELLPOS position) const
Z for the cell at (FRONT,CENTER,BACK)
const EMBHVModule & getHVModule(unsigned int iSide, unsigned int iEta, unsigned int iPhi, unsigned int iSector) const
const EMBHVDescriptor & getDescriptor() const
This class provides direct access to information on the HV electrodes within the barrels....
std::vector< EMBHVPathologiesConstLink > m_hvPathologies
double getHalfLength(unsigned int etaIndex) const
gets the cell half-length in z.
unsigned int getEtaIndex() const
The eta index of this cell.
bool dPhi(const xAOD::TauJet &tau, const xAOD::TauTrack &track, double &out)
const EMBPresamplerHVModule * m_presamplerModule
const EMBDetDescr * m_embDetDescr
double getEtaMin() const
Minimum Eta.
const EMBPresamplerHVDescriptor * getDescriptor() const
const EMBDetDescr * getDescriptor() const
Returns a pointer to the descriptor.
double getPhiMaxNominal() const
returns a nominal phi max in global coords; assume canonical placement
const CellBinning & getEtaBinning() const
The Binning in Eta.
double getPhiMinNominal() const
returns a nominal phi min in global coords; assume canonical placement
This class provides direct access to information on the HV electrodes within the barrels....
const EMBPresamplerHVManager & getPresamplerHVManager() const
Get the HV Manager (Presampler)
const CellPartitioning & getEtaPartitioning() const
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 CellBinning & getEtaBinning() const
unsigned int getEndcapIndex() const
The Side Index of this Cell (0=negatiive, 1=positive)
unsigned int getSamplingIndex() const
The sampling index.
const CellBinning & getPhiBinning() const
const EMBHVElectrode & getElectrode(unsigned int iElectrode) const
double getEtaMax() const
Maximum Eta.
Describes one HV Module within the EMB.
const CellBinning & getPhiBinning() const
const EMBPresamplerHVModule & getHVModule(unsigned int iSide, unsigned int iEta, unsigned int iPhi) const
CxxUtils::CachedValue< HVInfo > m_hvinfo
setScale setgFexType iEta
unsigned int getRegionIndex() const
The region index.
double getPhiLocalLower() const
Gets the phi value at the "lower" edge of a cell.
unsigned int getPhiIndex() const
The Phi Index of this Cell.