Continue Electron Charge Misidentification studies 7/14/09: comparison to 31X

  • use single electron sample generated by Yanjun in 310

Basic selection

  • true:
    • genps particle with genps_id == +-11
    • pT >= 10 GeV
  • reco:
    • els_p4 pT >= 10 GeV

Code

Show code  Hide code  for( unsigned int event = 0; event < nEvents; ++event) { cms2.GetEntry(event); ++nEventsTotal;

if ( nEventsTotal%10000 == 0 ) { std::cout << "Event: " << nEventsTotal << endl; }

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

// check for true electron if ( TMath::Abs(genps_id()[els]) = 11 ) continue;

// check for pT >= 10 GeV if ( genps_p4()[els].pt() < 10. ) 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 // check for pT >= 10 GeV if ( els_p4()[els].pt() < 10. ) continue;

//if ( goodElectronWithoutIsolation(els) ) continue; if ( goodElectronIsolated(els,true) ) continue; if ( conversionElectron(els) ) continue;

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

// tmp charge variable double charge = els_charge().at(els);

// if electron has associated track and track charge is not equal to electron charge, veto int trk = els_trkidx().at(els); if ( (trk >= 0) && (charge = trks_charge().at(trk)) ) { continue; }

// exclude reco electron which is not a true electron if ( abs(els_mc_id()[els]) = 11 ) continue;

// further reduce misidentifcation rate using the ratio of super cluster energy // to gsf track momentum if ( els_eSC()[els]/els_trk_p4()[els].P() < 0.3 ) continue;

// further redyce misidentification rate using the ratio of gsf track momentum // over ctf track momentum and only veto high tail if ( trk >= 0 && els_trk_p4()[els].P()/trks_trk_p4()[trk].P() > 3.5 ) continue;

// further redyce misidentification rate using the ratio of gsf track momentum // over ctf track momentum and also veto lower tail if ( trk >= 0 && els_trk_p4()[els].P()/trks_trk_p4()[trk].P() < 0.5 ) 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 ( (charge = -1 && els_mc_id().at(els) = 11) || (charge = 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()); }

// 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 ( (charge = -1 && els_mc_id().at(els) = 11) || (charge = 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());

els_ScOvGsfTrkP_corId->Fill(els_eSC()[els]/els_trk_p4()[els].P()); if ( trk >= 0 ) { els_GfsTrkPOvCtfTrkP_corId->Fill(els_trk_p4()[els].P()/trks_trk_p4()[trk].P()); }

// 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());

els_ScOvGsfTrkP_incorId->Fill(els_eSC()[els]/els_trk_p4()[els].P()); if ( trk >= 0 ) { els_GfsTrkPOvCtfTrkP_incorId->Fill(els_trk_p4()[els].P()/trks_trk_p4()[trk].P()); }

}

}

}

}

Base: GoodIsolatedElectrons veto'ing conversions (Puneeth) and veto'ing electrons with inconsistent charge rel. to their assoc. track in 22X


Base: GoodIsolatedElectrons veto'ing conversions (Puneeth) and veto'ing electrons with inconsistent charge rel. to their assoc. track in 31X


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

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

Further reduce charge misidentification rate (starting from base selection)

  • look at ratio of energy of the electron super cluster vs. momentum of the gsf track


  • CUT 1: veto electrons with ratio of energy of the electron super cluster vs. momentum of the gsf track < 0.3

  • look further at ratio of gsf track momentum vs. ctf track momentum


  • CUT 2: veto electrons with ratio of gsf track momentum vs. ctf track momentum > 3.5
  • CUT 3: veto electrons with 0.5 < ratio of gsf track momentum vs. ctf track momentum > 3.5

  • results:

comment reco efficiency [%] barrel reco efficiency [%] forward reco efficiency [%] charge misidentification rate [%] barrel charge misidentification rate [%] forward charge misidentification rate [%]
Base 77.993 87.692 63.533 0.335 0.101 0.788
CUT 1 77.298 87.376 62.317 0.275 0.084 0.650
CUT 2 74.680 86.041 57.920 0.225 0.076 0.539
CUT 3 74.417 85.816 57.566 0.204 0.066 0.490

Base selection with CUT 1 and CUT 3


Comparison Yanjun/Oli

  • look at ratio of energy of the electron super cluster vs. momentum of the gsf track requiring the Base selection and a valid associated track (left: Oli, right: Yanjun)



  • look at ratio of gsf track momentum vs. ctf track momentum requiring the Base selection and a valid associated track and CUT 1 (left: Oli, right: Yanjun)



Topic revision: r2 - 15 Jul 2009 - 10:00:57 - OliverGutsche

tip TWiki Tip of the Day
Raw Text link
At the bottom of the page next to Edit and Attach , there is a Raw Text link that allows one to ... Read on Read more

 
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