c) high-energy-Filter (Jan)

L2-high-energy-Algo ( 100% accept)

 

L2-high-ene-algo (does not abort)

  1. Goal: perseveres subset of ETOW & BTOW towers with ET above certain threshold.
  2. RTS params:
     
      int  par_dbg; // use 0 for real event processing
      int  par_maxList; // can't exceed hardcoded value of 150
      int  par_adcThres; // in ADC counts above peds
  3. Class name: L2hienAlgo08:public L2VirtualAlgo2008 , the same for ETOW , 2 instances.
  4. Event processing uses method
    void computeUser(int token); - build internal list
    bool decisionUser(int token, void **myL2Result); only for QA histos
    Output list of towers:
     int  hiSize=getListSize(token);
      const unsigned int  *value=getListData(token);
      printf("pr2-%s: dump %d acceted towers for token=%d\n softID   ADC-ped\n",getName(),hiSize, token);
      for(int ic=0;ic < hiSize;ic++,value++) {
        int adc=(*value) > > 16;
        int softID=(*value)&0xffff;
        printf("%4d %d, \n",softID,adc);
      }
  5. Hardcoded params: mxListSize: BTOW =ETOW=150
  6. Details of Algo:
     -------- event loop-------
       for(i=0;i< hitSize;i++,hit++) {
         if(hit->adc< par_adcThres) continue;
        if(hiTwEve-> size>=par_maxList) break; // overflow protection
        int softID=mRdo2towerID[hit->rdo];
        (*value)= ((hit-> adc) <<16 )+ softID; // store composite value
        hiTwEve-> size++; 
        value++; // increment  index 
      } 
    Descripion:
    this algo selects high-energy towers  from  BTOW & ETOW data
     and take advantage of common calibration to be deployed
     at L2 in February of 2008.
    The common (for B & E) ADC threshold is defined
     in units of adc above  ped i.e. in ET.
    The output of this algo _one_ lists of pairs {adc,softID}.
    You need 2 instances of this ago to cover E & B-EMC.
    Saving of those lists to disk is beyond the scope of this algo.
    SoftID is defined as follows:
    *BTOW : traditional softID [1-4800] used since 20th centry.
    *ETOW: range [0..719], eta index changes slower
        int ieta= (x-> eta-1);
        int iphi= (x-> sec-1)*EtowGeom::mxSubs + x-> sub-'A' ;
        int softId= iphi+EtowGeom::mxPhiBin*ieta;
    
    There is a hardcoded limit on the max list length at 256 towers.
    In case of an overflow a random (not realy) selection of towers  will be  added to the list until the software limit is reached.
  7. Execution time:
    L2:hienBtow08  Compute   CPU/eve MPV 1 kTicks,  FWHM=2
    L2:hienBtow08  Decision  CPU/eve MPV 0 kTicks
    L2:hienBtow08  Deci+Comp CPU/eve MPV 2 kTicks,  FWHM=3
    
  8. Output files:
    * ASCII logfile: run8.l2hienBtow08.log
    * binary histo: run8.l2hienBtow08.hist.bin
  9. QA info in log file: just timing
  10. QA plots : PDF