htautau / hhntup

Skim and flat ntuple production framework for the hh channel.
GNU General Public License v3.0
2 stars 8 forks source link

Adding LepLep channel to d3pd branch #28

Open vincecr0ft opened 9 years ago

vincecr0ft commented 9 years ago

most of my actions are concerned with applying event selection filters in higgstautau/leplep/filters.py mimicking the selection procedure in the leplep code seen here: https://svnweb.cern.ch/trac/atlasphys/browser/Physics/Higgs/HSG4/software/leplep/MVA_8TeV/Preselection/trunk/Common/analysis.C

the required filters are listed as

Cut[0] = "begin"; Cut[1] = "GRL/Filt"; Cut[2] = "trigger"; Cut[3] = "primVtx"; Cut[4] = "jet-clean"; Cut[5] = "LArError"; Cut[6] = "tau-veto"; Cut[7] = "2-lepton"; Cut[8] = "OS"; Cut[9] = "trigMatch"; Cut[10] = "AuxiCut";

I believe that cuts 1-5 are already implemented in hhntup but when I start checking the trigger matching code I will also check the trigger cut mentioned here. I guess the primary Vertex calculation will remain the same?

I've already implemented a TauVeto (minus some overlap information) And shares many similarities with the Tau selection criteria in higgstautau/filters.py but is isolated such that it only effects the leplep specific code.

Next I implement the selection of 2 leptons and the requirement that these be opposite sign. This should be done before the weekend.

vincecr0ft commented 9 years ago

I currently apply the following filters... GRLFilter CoreFlags EmbeddingPileupPatch averageIntPerXingPatch PileupTemplates RandomSeed BCHSampleRunNumber RandomRunNumber Triggers PileupReweight PriVertex LArError TileError TileTrips JetCopy JetCalibration JetIsPileup LArHole JetCleaning PileupScale MCWeight JetPreselection NonIsolatedJet JetSelection BCHCleaning TauVeto (NEW)

DiLeptonSelection (To Be Added) OppositeSignLeptons (To Be Added)

Have I removed any filters that I really shouldn't have? e.g. the met recalculation. and HiggsPT and MCWeight.

Are there any of these that I would need to modify to make them fit leplep?

qbuat commented 9 years ago

@vincecr0ft: HiggsPT and MCWeight should definitely be present for all channel. As fas as METRecalculation is concerned, it has to be checked carefully against each channel implementation. You should probably do something about trigger_emulation.

vincecr0ft commented 9 years ago

Ok so a first cut flow for the leplep implementation. The code is in my fork. Damián is running the standard code on the same D3PD to check. I'll implement the trigger matching and do some general checks tomorrow such that we can start looking at variables by the end of the week.

event cut-flow +------------------------+-------+ | Filter | Pass | +------------------------+-------+ | Total | 10000 | | GRLFilter | 10000 | | CoreFlags | 10000 | | EmbeddingPileupPatch | 10000 | | averageIntPerXingPatch | 10000 | | PileupTemplates | 10000 | | RandomSeed | 10000 | | BCHSampleRunNumber | 10000 | | RandomRunNumber | 10000 | | TauTriggerEmulation | 10000 | | Triggers | 10000 | | PileupReweight | 10000 | | PriVertex | 9991 | | LArError | 9991 | | TileError | 9991 | | TileTrips | 9991 | | JetCopy | 9991 | | JetCalibration | 9991 | | JetIsPileup | 9991 | | LArHole | 9991 | | JetCleaning | 9922 | | PileupScale | 9922 | | MCWeight | 9922 | | JetPreselection | 9922 | | NonIsolatedJet | 9922 | | JetSelection | 9922 | | BCHCleaning | 9922 | | TauVeto | 9868 | | DiLeptonSelection | 9841 | | LepPT | 8447 | | LepEta | 3436 | | MuonID | 3421 | | MuonBLayerHits | 3420 | | MuonPixelHits | 3418 | | MuonSCTHits | 3418 | | MuonHoles | 3418 | | MuonTRT | 3418 | | MuonZ0pv | 3417 | | MuonCone | 3368 | | ElectronAuthor | 2229 | | ElectronOQ | 2217 | | ElectronCone | 708 | | ElectronPP | 128 | | LepOS | 126 | +------------------------+-------+

qbuat commented 9 years ago

@vincecr0ft Looks nice ! I'll review your PR.