ATLAS LAr Software: Trigger Tower Identifiers

[ATLAS Collector]

(Last Update: APR-2006)

[CaloPerf] - [Online Identifiers] - [Offline Identifiers] - [High Voltage Identifiers]


Introduction & short Glossary for L1 TriggerTower identifier use:

  • IDENTIFIERS : definition

  • TRIGGER TOWER Identifiers:
    Those Identifiers provides a (geometric) description of the calorimeter
    Trigger Towers. They are connected to online and offline Identifiers via the Cabling Service in LArTools
  • The new LArTTOnlineID identifiers :
    The LArTTOnlineID class is supposed to replace the old LArChannelTTID
    actually defined in LArTools/LArCablingSvc.
    LArTTOnlineID's are defined using a dictionary (IdDictCalorimeter).
    All the old utilities have been implemented in LArTools/LArTriggerTowerService
    so that backward compatibility is ensured

  • Status : **validating**

  • Level-1 Online Trigger Tower Identifiers

  • New LArTTOnlineID Class : LArTTOnlineID.h , LArTTOnlineID.cxx
  • Dictionary for L1 TriggerTower: IdDictCalorimeter_DC3-05.xml -- IdDictCalorimeter.xml
  • Connection with calorimeter cells : LArTriggerTowerService.h , LArTriggerTowerService.cxx
  • Class CaloLVL1_ID : CaloLVL1_ID
  • Test code for TTowers : TestLArHWID_Algo.cxx

  • Online Identifier Fields:

    Identifier = [ CalorimeterCode# , pos_neg# , barrel_EC_Fcal , EM/HAD , I(eta) , I(phi), I(layer) ]

    * New TTidentifier fields:
    * -----------------------
    *
    * element               range              meaning
    * -------               -----              -------
    * 
    * pos_neg               +/-2               positive/negative
    * 
    * barrel_ec_fcal         0                = BARREL
    * "                             1                = EndCap
    * "                             2                = FCAL
    * 
    * em_had                  0                = EM
    * "                            1                = HAD
    *
    *  
    * Ieta                  [1,11]            = EM Barrel
    * "                      [12,15]           = EM Barrel
    * "                      [1,11]             = EMEC Region 1            
    * "                      [12,15]           = EMEC Region 2
    * "                      [2,11]             = HEC Region 1
    * "                      [12,15]           = HEC Region 2
    * "                      [1,4]               = FCAL-EM 
    * "                      [1,4]               = FCAL-HAD
    *
    * Iphi                  [1,64]             = OnL1Phi-0 region (|Ieta|<12)
    * "                      [1,32]             = OnL1Phi-1 region (|Ieta|>=12) 
    *
    * layer                  [0,3]             L1Layer-0 0==PS 1==Front 2==Middle 3==Back
    *                                          for barrel,emec,hec{(+/-2)/(0,1)/(0,1)/(0,1,2)/(0,1)}
    *"                          0              OnL1Layer-1 0== FCAL1 
    *                                          for FCAL-em {(+/-2)/2/0/3/0}
    *"                        [0,1]            OnL1Layer-2 0== FCAL2, 1== FCAL3 
    *                                          for FCAL-had  {(+/-2)/2/1/3/0} 
    *
    * lphi                    A                lphi[1]  for phi=1, 17, 33, 49
    *"                        B                lphi[2]  for phi=2, 18, 34, 50
    *"                        C                lphi[3]  for phi=3, 19, 35, 51
    *"      	          D                lphi[4]  for phi=4, 20, 36, 52
    *"		          E                lphi[5]  for phi=5, 21, 37, 53
    *"     		          F                lphi[6]  for phi=6, 22, 38, 54
    *"		          G                lphi[7]  for phi=7, 23, 39, 55
    *"	                  H                lphi[8]  for phi=8, 24, 40, 56
    *"		          I                lphi[9]  for phi=9, 25, 41, 57
    *"		          J                lphi[10] for phi=10,26, 42, 58
    *"		          K                lphi[11] for phi=11,27, 43, 59
    *"       	          L                lphi[12] for phi=12,28, 44, 60
    *"		          M                lphi[13] for phi=13,29, 45, 61
    *"		          N                lphi[14] for phi=14,30, 46, 62
    *"		          O                lphi[15] for phi=15,31, 47, 63
    *"		          P                lphi[16] for phi=16,32, 48, 64
    *		    
    *
    * quad                    1                for phi=[1,16]
    *"                          2                for phi=[17,32]
    *"                          3                for phi=[33,48]
    *"                          4                for phi=[49,64]
    

    Access Methods & examples

    *  Hash tables:
    *  ------------
    *  size_type towerHashMax() const;
    *  size_type layerHashMax() const;
    *
    *  Iterators:
    *  ----------
    *  std::vector::const_iterator tower_begin(void) const;
    *  std::vector::const_iterator tower_end(void) const;
    *
    *  std::vector::const_iterator layer_begin(void) const;
    *  std::vector::const_iterator layer_end(void) const;
    * 
    *  bool isBarrelTT( HWIdentifier towerID )
    *  bool isEndcapTT( HWIdentifier towerID )
    *  bool isEmBarrelTT( HWIdentifier towerID )
    *  bool isEmBarrelEndTT( HWIdentifier towerID )
    *  bool isFcalTT( HWIdentifier towerID )
    *  bool isHecTT( HWIdentifier towerID )
    *  
    
  • Some Practical way of using those methods :
  • In initialize():
    const LArTTOnlineID* ttonlineId;
    status = detStore->retrieve(ttonlineId, "LArTTOnlineID");
    m_ttonlineHelper=ttonlineId;
  • in execute():
    std::vector::const_iterator ittower = m_ttonlineHelper->tower_begin() ;
    std::vector::const_iterator ittowerEnd = m_ttonlineHelper->tower_end() ;
    for(; ittower!=ittowerEnd;++ittower ){
    const HWIdentifier towerId = *ittower;
    bool isTTEMB = m_larttonlineHelper->isEmBarrelTT( towerId );
    if( isTTEMB ){
    [...]
    }
  • Other examples in : TestLArHWID_Algo.cxx
  • Trigger Tower and Calorimeter cells mapping & Lists:

  • Lists of TriggerTowers vs Offline CellID vs Online CellID:
  • LAr Detector Nb Trigger Towers Nb of channels Nb of Connected / Disconnected channels List TT vs Cell
    EM Barrel (central) 1,792 106,880 (EMB List)
    EM Barrel End 128 5,120 5,120 / 0 (EMBE List)
    EMEC 1,664 61,184 61,184 / 0 (EMEC List)
    HEC 1,536 4,352 4,352 / 0 (HEC List)
    FCAL 256 3,524 3,522 / 2 (ante DC3-05 FCAL) - (DC3-05 FCAL)
    TOTAL 5,376


    [Back to Home page] - [Athena Debug]