Difference: OliverGutscheElsChargeMisidentificationStudies ( vs. 1)

Revision 118 May 2009 - Main.OliverGutsche

Line: 1 to 1
Added:
>
>
META TOPICPARENT name="OliverGutsche"

Studies of Electron Charge Identification Inefficiency

Sample

  • full statistics of /RelValSingleElectronFlatPt5To100/CMSSW_2_2_7_IDEAL_V12_v1/GEN-SIM-RECO
    • 1 Million electron particle gun events, abs(η) < 2.4 , 5 < pT < 100 GeV
    • each event contains particle gun particle and its anti-particle with opposite kinematics

Code

      // loop over true electrons
      for ( unsigned int els = 0;
       els < genps_p4().size();
       ++els ) {

   // check that electron is final state electron
   if ( genps_status()[els] != 1 ) continue;
   
   // check for true electron
   if ( TMath::Abs(genps_id()[els]) != 11 ) continue;

   // fill true histrograms
   els_pt_sim->Fill(genps_p4()[els].pt());
   els_eta_sim->Fill(genps_p4()[els].eta());

      }

      // loop over reco electrons
      for (unsigned int els = 0; 
           els < els_p4().size(); 
      ++els) {

   // cuts
   //if ( !goodElectronWithoutIsolation(els) ) continue;
   if ( !goodElectronIsolated(els) ) continue;
   if ( conversionElectron(els) ) continue;

   // check how many electrons don't have an associated track
   els_trkId->Fill(els_trkidx().at(els));

   // filter out all electrons which don't have an associated track
   // if ( els_trkidx().at(els) < 0 ) continue;

   // filter all electrons that don't agree with the charge of the associated track
   if ( (els_trkidx().at(els) >= 0) && (els_charge().at(els) != trks_charge().at(els_trkidx().at(els))) ) continue;


   // fill reco
   els_pt_reco->Fill(els_p4().at(els).Pt());
   els_eta_reco->Fill(els_p4().at(els).eta());

   // fill reco_corCharge
   if ( (els_charge().at(els) == -1 && els_mc_id().at(els) == 11) || (els_charge().at(els) == 1 && els_mc_id().at(els) == -11) ) {
     els_pt_reco_corCharge->Fill(els_p4().at(els).Pt());
     els_eta_reco_corCharge->Fill(els_p4().at(els).eta());
   }

   // exclude reco which has no true electron match
   if ( els_mc_id()[els] == -999 ) continue;

   // fill recosim
   els_pt_recosim->Fill(els_mc_p4().at(els).Pt());
   els_eta_recosim->Fill(els_mc_p4().at(els).eta());

   // correct charge identified
   if ( (els_charge().at(els) == -1 && els_mc_id().at(els) == 11) || (els_charge().at(els) == 1 && els_mc_id().at(els) == -11) ) {
     els_pt_recosim_corCharge->Fill(els_mc_p4().at(els).Pt());
     els_eta_recosim_corCharge->Fill(els_mc_p4().at(els).eta());
     // incorrect charge identified
   } else {
     els_pt_recosim_incorCharge->Fill(els_mc_p4().at(els).Pt());
     els_eta_recosim_incorCharge->Fill(els_mc_p4().at(els).eta());
   }

      }

Variable definitions

  • reconstruction efficiency:
  els_pt_reco->Divide(els_pt_sim);
  • charge identification inefficiency:
  els_pt_recosim_incorCharge->Divide(els_pt_recosim);

Studies

all electrons in electron maker collection


GoodNonIsolatedElectrons


GoodIsolatedElectrons


GoodIsolatedElectrons veto'ing conversions


GoodIsolatedElectrons veto'ing conversions that don't have a track associated

GoodIsolatedElectrons veto'ing conversions and veto'ing electrons with inconsistent charge rel. to their assoc. track


GoodIsolatedElectrons veto'ing conversions and veto'ing electrons with inconsistent charge rel. to their assoc. track but letting electrons without associated track pass


Result

Study reconstruction efficiency [%] charge identification inefficiency [%]
AllElectrons 93.7 2.5
GoodElectrons 85.6 1.9
GoodIsolatedElectrons 85.1 1.8
GoodIsolatedElectronsConvRemoval 83.8 1.5
GoodIsolatedElectronConvRemovalTrkChargeConsistent 79.9 0.3
GoodIsolatedElectronConvRemovalTrkChargeConsistentPassThrough 82.1 0.4

 
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback