22 declareInterface<IjFEXFormTOBs>(
this);
30 return StatusCode::SUCCESS;
34uint32_t
jFEXFormTOBs::formTauTOB(
int jFEX,
int iPhi,
int iEta,
int EtClus,
int IsoRing,
bool satTau,
int Resolution,
int ptMinToTopo )
const
43 if(jFEX == 1 || jFEX == 2){
50 unsigned int et = EtClus/Resolution;
56 unsigned int iso = IsoRing/Resolution;
57 if (iso > 0x7ff) iso = 0x7ff;
62 ATH_MSG_DEBUG(
"tobword tau with iso, et, eta and phi: " << std::bitset<32>(tobWord) );
64 unsigned int minEtThreshold = ptMinToTopo/Resolution;
66 if (
et <= minEtThreshold)
return 0;
74 int Et_edge[8] = {20,30,40,50,65,80,110,150};
78 for(
int i=0;i<8; i++){
79 if(
Energy < Et_edge[i] * 1e3){
90 int calib = calibFactors[et_range];
93 int et_200Mev = std::floor(1.0*
Energy/
res);
96 int et = std::floor( (1.0*et_200Mev*calib)/(1<<7) );
106 if (jfex != 0 && jfex != 5) {
107 coreEta = std::min(coreEta,7u);
109 coreEta = std::min(coreEta,24u);
112 int calib = calibFactors[coreEta];
115 int et_200Mev = std::floor(1.0*
Energy/
res);
118 int et = std::floor( (1.0*et_200Mev*calib)/(1<<7) );
124uint32_t
jFEXFormTOBs::formSRJetTOB(
int jFEX,
int iPhi,
int iEta,
int EtClus,
bool sat,
int Resolution,
int ptMinToTopo,
const std::pair<
unsigned int,
const std::vector<int>&>& calibParameters )
const {
125 uint32_t tobWord = 0;
126 unsigned int eta = 0;
127 unsigned int phi = 0;
128 unsigned int jFEXSmallRJetTOBEt = 0;
132 if(jFEX == 1 || jFEX == 2) {
137 if(jFEX == 3 || jFEX == 4) {
176 if(jFEXSmallRJetTOBEt > 0x7ff) {
177 jFEXSmallRJetTOBEt = 0x7ff;
181 ATH_MSG_DEBUG(
"tobword smallRJet with res, et, eta and phi: " << std::bitset<32>(tobWord) );
184 unsigned int minEtThreshold = ptMinToTopo/Resolution;
186 if (jFEXSmallRJetTOBEt <= minEtThreshold)
return 0;
194 uint32_t tobWord = 0;
195 unsigned int eta = 0;
196 unsigned int phi = 0;
197 unsigned int jFEXLargeRJetTOBEt = 0;
201 if(jFEX == 1 || jFEX == 2) {
206 if(jFEX == 3 || jFEX == 4) {
238 jFEXLargeRJetTOBEt = EtClus/Resolution;
239 if (jFEXLargeRJetTOBEt > 0x1fff) {
240 jFEXLargeRJetTOBEt = 0x1fff;
244 ATH_MSG_DEBUG(
"tobword largeRJet with res, et, eta, phi: " << std::bitset<32>(tobWord) );
247 unsigned int minEtThreshold = ptMinToTopo/Resolution;
249 if (jFEXLargeRJetTOBEt <= minEtThreshold)
return 0;
256 uint32_t tobWord = 0;
258 bool satlow = std::get<1>(ETlow);
259 bool sathigh = std::get<1>(EThigh);
261 unsigned int etlow = std::get<0>(ETlow)/Resolution;
262 if (etlow > 0x7fff) {
267 unsigned int ethigh = std::get<0>(EThigh)/Resolution;
268 if (ethigh > 0x7fff) {
275 ATH_MSG_DEBUG(
"tobword SumET with Sathigh, EThigh, ETlow and Satlow : " << std::bitset<32>(tobWord) );
283 uint32_t tobWord = 0;
286 unsigned int res = 0;
288 int metX = std::floor(1.0*METX/Resolution);
289 int metY = std::floor(1.0*METY/Resolution);
292 if (std::abs(metX) > 0x3fff) {
302 if (std::abs(metY) > 0x3fff) {
314 ATH_MSG_DEBUG(
"tobword MET with Res, MET_Y, MET_X, Sat: " << std::bitset<32>(tobWord) );
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
std::pair< std::vector< unsigned int >, bool > res
static constexpr int jTE_Et_upperBit
static constexpr int jTE_Sat_upperBit
static constexpr int jFEX_algoSpace_C_FCAL_end_eta
static constexpr int jJ_phiBit
static constexpr int jLJ_phiBit
static constexpr int jFEX_algoSpace_A_FCAL_start_eta
static constexpr int jTE_Et_lowerBit
static constexpr int jFEX_algoSpace_A_EMIE_eta
static constexpr int jLJ_etaBit
static constexpr int jTau_phiBit
static constexpr int jLJ_etBit
static constexpr int jXE_ResBit
static constexpr int jJ_etBit
static constexpr int jXE_SatBit
static constexpr int jLJ_resBit
static constexpr int jJ_resBit
static constexpr int jTE_Sat_lowerBit
static constexpr int jJ_etaBit
static constexpr int jTau_etaBit
static constexpr int jXE_Ey_Bit
static constexpr int jTau_etBit
static constexpr int jTau_isoBit
static constexpr int jXE_Ex_Bit
static constexpr int jFEX_algoSpace_C_EMIE_end_eta
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Extra patterns decribing particle interation process.