Daq10K BEMC fire tpc test

Basic idea useing bemc tower hits to trigger on tpc sector.

If tower energy > Energy Threshold , then fire corresponding TPC sectors and only do tracking on fired TPC sectors.

The method of mapping between BEMC tower to TPC sector:


     int gl3EMC::fireTPCSector(){
        const float pi = 3.1415927;
        const float zEdge = 20.;
        const float maxPhiDiff = 3.1415927/12 + 0.1;
        const float beginLayer = 45;
        const float endLayer = 26;
        const float sectorPhi[24] = {
          2.*pi/6., 1.*pi/6., 0.*pi/6., 11.*pi/6., 10.*pi/6., 9.*pi/6., 8.*pi/6., 7.*pi/
            6., 6.*pi/6., 5.*pi/6., 4.*pi/6., 3.*pi/6.,
          4.*pi/6., 5.*pi/6., 6.*pi/6., 7.*pi/6., 8.*pi/6., 9.*pi/6., 10.*pi/6., 11.*pi/
            6., 0.*pi/6., 1.*pi/6., 2.*pi/6., 3.*pi/6.};
        int firedTPCMask = 0;
        int nTowers_PassET = 0;
        int nSector = 0;
        for(int i=0; i<nBarrelTowers; i++)
        {
          if(barrelTower[i].getEnergy() < minEnergyForTrackingSeed) continue;

          nTowers_PassET++;
          l3EmcTowerInfo* towerInfo = barrelTower[i].getTowerInfo();

          float z = towerInfo->getZ();
          float phi = towerInfo->getPhi();
          for(int j=0; j<24; j++){
            if(!((j<12 && z>-zEdge) || (j>=12 && z<zEdge))) continue;
            float phiDiff = fabs(phi - sectorPhi[j]);
            while(phiDiff > pi) phiDiff -= 2*pi;
            phiDiff = fabs(phiDiff);
            if(phiDiff > maxPhiDiff) continue;
            firedTPCMask |= 1<<(j+1);
            //nSector++; may have double counting
          }
        }

        for(int i=1; i<=24; i++){
          if( (1<<i) & firedTPCMask) nSector++;
        }
        //printf(" %i ",nTowers_PassET);
        nTowers =  nTowers_PassET;
        nfiredTpc =  nSector;
        return firedTPCMask;
      }


A test on daq file is done. I trigger on only events triggered by BHT1 of Run11 pp500 online daq file.

Enery threshold = 2.5GeV

plot 1 shows number of tower hits pass the energy threshold

plot 2 shows number fired tpc sectors vs number of tower hits pass energy threhold (> 2.5GeV)

From these two plots we can get about 1.2 tower hits/event and about 1.7 Tpc sector fired per events with energy threshold = 2.5GeV.

plot3 number of fired TPC sector per BEMC hit pass energy threshold.


Energy threshold = 3 GeV

The same plots as Energy threshold = 2.5 GeV

 

we can get about 1.1tower hits/event and about 1.7 Tpc sectors fired per events with energy threshold = 3GeV

 


Energy threshold = 4GeV

we can get about 1.1 tower hits/event and about 1.6 Tpc sectors fired per events with energy threshold = 4GeV