ATLAS Offline Software
|
The class calculates the depth of each layer, in interaction lengths, for a given EM2 eta. More...
#include <eflowDepthCalculator.h>
Public Types | |
enum | DEPTHLAYER { ORIGIN =0, EMB1, EMB2, EMB3, EMB_back, EME1, EME2, EME3, EME_back, HEC1, HEC2, HEC3, HEC4, HEC_back, Tile1, TileGap12, Tile2, TileGap23, Tile3, Tile_back, FCAL0, FCAL1, FCAL2, Unknown =999 } |
Public Member Functions | |
eflowDepthCalculator () | |
~eflowDepthCalculator () | |
const double * | calcDepthArray (double eta, double filler=0.0) |
const double * | getDepthArray () const |
Static Public Member Functions | |
static int | NDepth () |
static DEPTHLAYER | depthIndex (eflowCaloENUM layer) |
Static Public Attributes | |
static const double | m_preEMBat0eta = 0.5793 |
static const double | m_cryostatAt0eta = 0.4666 |
static const double | m_LArGap = 0.4 |
static const double | m_preEMEat19eta = 0.5 |
static const double | m_preHEC = 0.4 |
static const double | m_preFCAL = 0.5 |
static const double | m_tileGapAt1eta = 0.5 |
static const double | m_inclusivePreTileExt = 3.9603 |
static const double | m_EMBlambdaPerUnitLength = 2.5189 / Gaudi::Units::meter |
static const double | m_tileLambdaPerUnitLength = 4.9979 / Gaudi::Units::meter |
static const double | m_fcalLambdaPerUnitLength [3] = {27.5/(0.45*Gaudi::Units::meter),91.3/(0.45*Gaudi::Units::meter),89.2/(0.45*Gaudi::Units::meter)} |
static const double | m_EMBlayerR [4] = {1.5*Gaudi::Units::meter, 1.586*Gaudi::Units::meter, 1.93*Gaudi::Units::meter, 1.96*Gaudi::Units::meter} |
static const double | m_EMBzMin = 0.0*Gaudi::Units::meter |
static const double | m_EMBzMax = 3.15*Gaudi::Units::meter |
static const double | m_EMErMin = 0.33*Gaudi::Units::meter |
static const double | m_EMErMax = 1.96*Gaudi::Units::meter |
static const double | m_EMElayerZ [4] = { 3.55*Gaudi::Units::meter, 3.65*Gaudi::Units::meter, 3.95*Gaudi::Units::meter, 4.08*Gaudi::Units::meter } |
static const double | m_HECrMin = 0.50*Gaudi::Units::meter |
static const double | m_HECrMax = 1.96*Gaudi::Units::meter |
static const double | m_HEClayerZ [5] = { 4.14*Gaudi::Units::meter, 4.61*Gaudi::Units::meter, 5.08*Gaudi::Units::meter, 5.55*Gaudi::Units::meter, 6.00*Gaudi::Units::meter } |
static const double | m_FCALrMin = 0.6*Gaudi::Units::meter |
static const double | m_FCALrMax = 0.45*Gaudi::Units::meter |
static const double | m_FCALlayerZ [4] = { 4.71*Gaudi::Units::meter, (4.71+.45)*Gaudi::Units::meter, (4.71+2*.45)*Gaudi::Units::meter, (4.71+3*.45)*Gaudi::Units::meter } |
static const double | m_tileBarLayerR [4] = {2.3*Gaudi::Units::meter, 2.6*Gaudi::Units::meter, 3.44*Gaudi::Units::meter, 3.82*Gaudi::Units::meter} |
static const double | m_tileBarZmin = 0.0*Gaudi::Units::meter |
static const double | m_tileBarZmax = 2.82*Gaudi::Units::meter |
static const double | m_tileExtLayerR [4] = {2.3*Gaudi::Units::meter, 2.6*Gaudi::Units::meter, 3.14*Gaudi::Units::meter, 3.82*Gaudi::Units::meter} |
static const double | m_tileExtZmin = 3.42*Gaudi::Units::meter |
static const double | m_tileExtZmax = 6.33*Gaudi::Units::meter |
static const double | m_itc1Zmin = 3.34*Gaudi::Units::meter |
static const double | m_itc1Zmax = 3.42*Gaudi::Units::meter |
static const double | m_itc1Rmin = 2.99*Gaudi::Units::meter |
static const double | m_itc1Rmax = 3.44*Gaudi::Units::meter |
static const double | m_itc2Zmin = 3.17*Gaudi::Units::meter |
static const double | m_itc2Zmax = 3.42*Gaudi::Units::meter |
static const double | m_itc2Rmin = 3.44*Gaudi::Units::meter |
static const double | m_itc2Rmax = 3.82*Gaudi::Units::meter |
Static Private Member Functions | |
static double | lengthThroughBox (double theta, double zMin, double zMax, double rMin, double rMax) |
Private Attributes | |
double | m_layerDepth [m_nDepth+1] {} |
Static Private Attributes | |
static const int | m_nDepth = FCAL2 |
static const DEPTHLAYER | m_layerDepthMap [eflowCalo::nRegions] = { EMB1, EMB2, EMB3, EME1, EME2, EME3, HEC1, HEC2, HEC3, HEC4, Tile1, Tile2, Tile3, FCAL0, FCAL1, FCAL2 } |
The class calculates the depth of each layer, in interaction lengths, for a given EM2 eta.
This is used by eflowLayerIntegrator.
This holds m_layerDepth (returned by getDepthArray) which is an array of double. Each double is the depth of a calorimeter layer in nuclear interaction lengths, and this is filled in calcDepthArray. This is needed in eflowLayerIntegrator::getFirstIntLayer() to calculate dy/dx, which uses the cluster integral in each calorimeter layer to calculate the gaussian weighted density.
It has an enum (depthLayerENUM) which designates where in the detector we are, and this includes additional calorimeter positions such as EMB_back.
Definition at line 27 of file eflowDepthCalculator.h.
Enumerator | |
---|---|
ORIGIN | |
EMB1 | |
EMB2 | |
EMB3 | |
EMB_back | |
EME1 | |
EME2 | |
EME3 | |
EME_back | |
HEC1 | |
HEC2 | |
HEC3 | |
HEC4 | |
HEC_back | |
Tile1 | |
TileGap12 | |
Tile2 | |
TileGap23 | |
Tile3 | |
Tile_back | |
FCAL0 | |
FCAL1 | |
FCAL2 | |
Unknown |
Definition at line 47 of file eflowDepthCalculator.h.
eflowDepthCalculator::eflowDepthCalculator | ( | ) |
Definition at line 88 of file eflowDepthCalculator.cxx.
|
inline |
Definition at line 40 of file eflowDepthCalculator.h.
const double * eflowDepthCalculator::calcDepthArray | ( | double | eta, |
double | filler = 0.0 |
||
) |
Definition at line 152 of file eflowDepthCalculator.cxx.
|
static |
Definition at line 96 of file eflowDepthCalculator.cxx.
|
inline |
Definition at line 45 of file eflowDepthCalculator.h.
|
staticprivate |
Definition at line 109 of file eflowDepthCalculator.cxx.
|
inlinestatic |
Definition at line 42 of file eflowDepthCalculator.h.
|
static |
Definition at line 59 of file eflowDepthCalculator.h.
|
static |
Definition at line 67 of file eflowDepthCalculator.h.
|
static |
Definition at line 71 of file eflowDepthCalculator.h.
|
static |
Definition at line 73 of file eflowDepthCalculator.h.
|
static |
Definition at line 72 of file eflowDepthCalculator.h.
|
static |
Definition at line 77 of file eflowDepthCalculator.h.
|
static |
Definition at line 76 of file eflowDepthCalculator.h.
|
static |
Definition at line 75 of file eflowDepthCalculator.h.
|
static |
Definition at line 69 of file eflowDepthCalculator.h.
|
static |
Definition at line 85 of file eflowDepthCalculator.h.
|
static |
Definition at line 84 of file eflowDepthCalculator.h.
|
static |
Definition at line 83 of file eflowDepthCalculator.h.
|
static |
Definition at line 81 of file eflowDepthCalculator.h.
|
static |
Definition at line 80 of file eflowDepthCalculator.h.
|
static |
Definition at line 79 of file eflowDepthCalculator.h.
|
static |
Definition at line 65 of file eflowDepthCalculator.h.
|
static |
Definition at line 98 of file eflowDepthCalculator.h.
|
static |
Definition at line 97 of file eflowDepthCalculator.h.
|
static |
Definition at line 96 of file eflowDepthCalculator.h.
|
static |
Definition at line 95 of file eflowDepthCalculator.h.
|
static |
Definition at line 103 of file eflowDepthCalculator.h.
|
static |
Definition at line 102 of file eflowDepthCalculator.h.
|
static |
Definition at line 101 of file eflowDepthCalculator.h.
|
static |
Definition at line 100 of file eflowDepthCalculator.h.
|
static |
Definition at line 60 of file eflowDepthCalculator.h.
|
private |
Definition at line 112 of file eflowDepthCalculator.h.
|
staticprivate |
Definition at line 110 of file eflowDepthCalculator.h.
Definition at line 109 of file eflowDepthCalculator.h.
|
static |
Definition at line 58 of file eflowDepthCalculator.h.
|
static |
Definition at line 61 of file eflowDepthCalculator.h.
|
static |
Definition at line 63 of file eflowDepthCalculator.h.
|
static |
Definition at line 62 of file eflowDepthCalculator.h.
|
static |
Definition at line 87 of file eflowDepthCalculator.h.
|
static |
Definition at line 89 of file eflowDepthCalculator.h.
|
static |
Definition at line 88 of file eflowDepthCalculator.h.
|
static |
Definition at line 91 of file eflowDepthCalculator.h.
|
static |
Definition at line 93 of file eflowDepthCalculator.h.
|
static |
Definition at line 92 of file eflowDepthCalculator.h.
|
static |
Definition at line 64 of file eflowDepthCalculator.h.
|
static |
Definition at line 68 of file eflowDepthCalculator.h.