|
ATLAS Offline Software
|
Go to the documentation of this file.
35 if (
m_debug) { std::cout <<
"TriggerTowerKey: m_debug output turned on...."<<std::endl; }
46 if (
m_debug) { std::cout <<
"TriggerTowerKey: m_debug output turned on...."<<std::endl; }
58 double phiBinWidth=((2*
M_PI)/64.0);
59 int iphi=iCoord->
phi();
60 int ieta=iCoord->
eta();
61 double centralPhi=0.0;
62 double centralEta=0.0;
64 int abs_ieta=abs(ieta);
65 int sign=ieta/abs_ieta;
68 std::cout <<
"TriggerTowerKey: start calcTrigBin"<<std::endl;
69 std::cout <<
"phi, eta : ("<<iCoord->
phi()<<
", "<<iCoord->
eta()<<
")"<<std::endl;
70 std::cout <<
"iphi, ieta : ("<<iphi<<
", "<<ieta<<
")"<<std::endl;
71 std::cout <<
"abs_ieta : ("<<abs_ieta<<
" and sign : "<<
sign<<std::endl;
81 centralEta=( (
static_cast<double>(abs_ieta)*0.1)-0.05)*
sign;
82 centralPhi=(iphi*phiBinWidth)+(phiBinWidth/2);
83 if (
m_debug) std::cout <<
"central : ("<<centralPhi<<
", "<<centralEta<<
")"<<std::endl;
86 if (abs_ieta>25 && abs_ieta<=32){
100 centralPhi=(
static_cast<double>(
phiBin)*2.0+1.0)*phiBinWidth;
103 centralEta=((
static_cast<double>(
static_cast<int>((abs_ieta-26)/2))*0.2)+2.6)*
sign;
106 centralEta=3.15*
sign;
113 double fcalEtaSize=0.425;
115 double abs_eta = iCoord->
dEta()*
sign;
116 double temp=
static_cast<double>(abs_eta-3.2);
117 temp = (temp/ fcalEtaSize );
118 int iTemp=
static_cast<int>(temp);
123 centralEta=((
static_cast<double>(iTemp)*fcalEtaSize)+3.2+(fcalEtaSize/2))*
sign;
125 centralPhi=(
static_cast<double>(
phiBin)*phiBinWidth*4)+(phiBinWidth*2);
128 if (
m_debug) std::cout <<
"central : /t("<<centralPhi<<
", "<<centralEta<<
")"<<std::endl;
129 Coordinate* centralCoords =
new Coordinate(centralPhi, centralEta);
130 BinAndCoord* bandc =
new BinAndCoord(
phiBin,
etaBin,centralCoords);
139 return key(tower.phi(), tower.eta());
144 return key(calocell.
phi(), calocell.
eta());
150 if (
m_debug) std::cout <<
"TTK: returning key for coords ("<<
phi<<
","<<
eta<<
")"<<std::endl;
164 std::cerr <<
"TriggerTowerKey::region UNKNOWN REGION"
173 if (reg==TTBarrel)
return 0.1;
174 if (reg==TTEndCap1)
return 0.2;
175 if (reg==TTEndCap2)
return 0.1;
176 if (reg==TTFCAL)
return 0.425;
183 if (reg==TTBarrel)
return M_PI/32;
184 if (reg==TTEndCap1)
return M_PI/16;
185 if (reg==TTEndCap2)
return M_PI/16;
186 if (reg==TTFCAL)
return M_PI/8;
187 return TTRegionError;
virtual int sign(int temp) const
returns -1 if temp is -ve and +1 if it is +ve.
virtual double phi() const
returns phi coordinate of centre of relevant trigger tower.
virtual ~TriggerTowerKey()
double m_phi
phi coordinate of key
virtual double phi() const override final
get phi (through CaloDetDescrElement)
double phi() const
return phi
unsigned int key(double phi, double eta)
calculates a map key from passed phi, eta coordinates
TriggerTowerRegion region(const Coordinate &coord) const
returns the TT region that the coordinate corresponds to.
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
bool m_debug
turns DEBUG code on and off
Used by Key Classes, returns and integer coorginate for the bin Eta-Phi.
virtual double eta() const
returns the centre of the TT at eta_coord:
TriggerTowerKey()
constructs a TriggerTowerKey object
double dEta() const
return double eta
setSAddress setEtaMS setDirPhiMS setDirZMS setBarrelRadius setEndcapAlpha setEndcapRadius setInterceptInner setEtaMap etaBin
Coordinate coord() const
return central coords of current key value.
Coordinate class declaration.
BinAndCoord * calculateTriggerBin(ICoordinate *iCoord)
converts integer phi, eta coordinates to phi, eta trigger bins.
Used to pass data between the methods of the Key Classes: Returns the Eta and Phi bins,...
void setupThisKeyValues()
int phi() const
return phi
double m_eta
eta coordinate of key
double dPhi(const Coordinate &coord) const
returns phi height of trigger tower at coordinate coord
setSAddress setEtaMS setDirPhiMS setDirZMS setBarrelRadius setEndcapAlpha setEndcapRadius setPhiMap phiBin
double eta() const
return eta
Data object for each calorimeter readout cell.
bool absEta(const xAOD::TauJet &tau, double &out)
int eta() const
return eta
double dEta(const Coordinate &coord) const
returns eta width of trigger tower at coordinate coord
virtual unsigned int ttKey(const TriggerTower &tower)
returns the key of the passed tower
virtual double eta() const override final
get eta (through CaloDetDescrElement)
TriggerTower_v2 TriggerTower
Define the latest version of the TriggerTower class.