This TWiki is designed to communicate for the common H/Z->tautau lephad final state analysis.

According to the meeting IndicoCommonLephadAnalysisDisucssion, the basic strategy to design a common lephad NTuple production code has been decided.

Planned time scale

Task Time scale Responsible persons Finished
Create the common channel ~14 Aug. Zinonas and Eric Yes / Done
Implement the common part +1 or 2 days Lei Yes / Done
Merge tagprobe channel +1 or 2 days Brian, Mark, Takashi, and Lei No
Merge BSM lephad channel ~24/25 Aug. Pedro No
Merge SM lephad channel +1 or 2 days Clara, Muhammed, David, Dirk and Lei No
Merge eVeto channel ~16 Aug. Eric Yes / Done

Basic work flow

As the work flow demonstrated in the following figure:The preselection cuts applied are only: lepton requirement and tau candidate requirement, with full flexibility to configure the cuts by Job Option (JO). Then, the common object and event information will be stored. After that, with activiated by JO option, the specific analysis, e.g. tag-probe or Htautau, module will be performed.

  • Work flow of the common lephad analysis code:

Common ntuple content

xFillEventInfo                  eventInfo       { vlist }; //!< basic event information                                                               
xFillEventWeights           eventWeights  { vlist }; //!< MC event weights
xFillMultiplicities              multiplicities   { vlist }; //!< selected object multiplicities
xFillMuonTriggers           trigger_mu  { vlist }; //!< muon trigger signatures
xFillElectronTriggers       trigger_el    { vlist }; //!< el trigger signatures
xFillTauTriggers              trigger_tau  { vlist }; //!< tau trigger signatures
xFillJetTriggers               trigger_jet   { vlist }; //!< tau trigger signatures
xFillMuonTriggerMatch     muTrig_0 { vlist, "trigMatch_mu_0" }; //!< leading muon trigger matching
xFillElectronTriggerMatch eleTrig_0 { vlist, "trigMatch_ele_0" }; //!< leading electron
//(Note: tau truth match will be updated with coming new class in xTauFW)
xFillMatchedParticle       matchedTau0   { vlist, "tau_0_matched" }; //!< Finds and fills truth object matched to the particle
xFillMatchedParticle       matchedLepton { vlist, "lep_0_matched" }; //!< Finds and fills truth object matched to the particle
xFillMET                         met_truth     { vlist, "met_truth"}; //!< missing ET
xFillLepton                   lep_0 { vlist, "lep_0" }; //!< leading lepton
xFillLepton                   lep_1 { vlist, "lep_1" }; //!< sub-leading lepton
xFillTau                   tau_0 { vlist, "tau_0" }; //!< leading tau
xFillTau                   tau_1 { vlist, "tau_1" }; //!< sub-leading tau
xFillTau                   tau_2 { vlist, "tau_2" }; //!< sub-sub-leading tau
xFillJet                   jet_0  { vlist, "jet_0"  }; //!< leading jet
xFillJet                   jet_1  { vlist, "jet_1"  }; //!< sub-leading jet
xFillJet                   jet_2  { vlist, "jet_2"  }; //!< sub-sub-leading jet
xFillJet                   jet_3  { vlist, "jet_3"  }; //!< sub-sub-sub-leading jet
xFillDiTau             lep_had  { vlist, "lephad" }; //!< lepton-lepton pairs
xFillMET               met_reco { vlist, "met" }; //!< missing ET

Ztautau tagprobe specific variables:

xFillTauID tau_0_id { vlist, "tau_0_id" }; //!< leading tauID var
xFillTauSub tau_0_sub { vlist, "tau_0_sub" }; //!< leading tauID var
xFillTauTrack tau_0_track { vlist, "tau_0_track" };
xFillTauTriggerMatch tauTrig_0 {vlist, "trigMatch_tau_0"}; //! leading tauTrigger matchings
xFillTauHLTInfo tauTrig1_0 { vlist, "trigInfoHlt_tau_0" }; //!< leading tauTrig1_0 HLT information

BSM Htautau specific variables:

xVarI nLooseElectrons { vlist, "nLooseElectrons"}; //!< number of Loose electrons
xVarI nLooseMuons { vlist, "nLooseMuons" }; //!< number of Loose muons
xVarI nLooseTaus { vlist, "nLooseTaus" }; //!< number of Loose taus
xFillMMC mmc { vlist, "lephad" }; //!< missing mass calculator variables
xFillMOSAIC mosaic { vlist, "lephad" }; //!< missing mass calculator variables

xVarI signal_region    { vlist, "SignalRegion" }; //!< label for signal region events
xVarI antitau_region   { vlist, "AntitauRegion" }; //!< label for antitau region events
xVarI tightVeto_region { vlist, "tightVeto" }; //!< label for tight veto region events (dilepton veto with leptons of any quality)
xVarI NoIso_region     { vlist, "NoIso" }; //!< label for no isolation region events
xVarI FakeLep_region   { vlist, "FakeLep" }; //!< label for fake lepton region events

SM Htautau specific variables:

(Except MMC, most of these variables can be reduced, or merge with BSM lephad content)

std::unique_ptr<xVarI> IsOneSelectedLepton;
  std::unique_ptr<xVarI> IsOneSelectedTau;
  std::unique_ptr<xVarI> LepIsEle;
  std::unique_ptr<xVarI> LepIsMu;
  std::unique_ptr<xVarD> Dilepton_mass;
  std::unique_ptr<xVarI> IsDilepCR;
  std::unique_ptr<xVarD> HiggsPt; 
  std::unique_ptr<xVarD> mt;
  std::unique_ptr<xVarD> ScalarSumPt;
  std::unique_ptr<xVarD> PtRatioLepTau;
  std::unique_ptr<xVarD> pTtot;
  std::unique_ptr<xVarI> IsBtagged;
  std::unique_ptr<xVarD> ProdEtaJets;
  std::unique_ptr<xVarI> IsOppositeJets;
  std::unique_ptr<xVarI> IsJetCentrality;
  std::unique_ptr<xVarD> LeptonEtaCentrality; 
  std::unique_ptr<xVarD> JetsVisibleMass;
  std::unique_ptr<xVarD> JetsDeltaEta;
  std::unique_ptr<xVarD> JetsSumPt;
  std::unique_ptr<xVarI> IsVbfMVA;
  std::unique_ptr<xVarI> IsVbfCB; 
  std::unique_ptr<xVarI> IsBoostedMVA; 
  std::unique_ptr<xVarI> IsBoostedCB;
  std::unique_ptr<xFillTruthTau>               m_tauSubTruth;    //!<  substructure truth var

  std::unique_ptr<xFillTauID>                  m_tauID;     //!< leading tauID var
  std::unique_ptr<xFillMatchedTruthLeptonicTauDecay>       m_LeptonicTauTruthMatching           ;     //!< for leptonic tau truth matching
  std::unique_ptr<xFillTriggerMatch>           m_tauTrig;   //!< leading tauTrigger matchings
  std::unique_ptr<xFillTauHLTInfo>             m_tauTrig1;  //!< leading tauTrig1_0 HLT information

Contents of variables:
  * IsOneSelectedLepton: Exactly one tight electron or one loose muon and a dilepton veto on loose electron-muon.
  * IsOneSelectedTau: Exactly one medium tau
  * LepIsEle (lepIsMu): Lepton flavour
  * IsDileptonCR: Flag for the event if it contain or not two (or more) leptons of the same flavour (electrons or muons) with loose selection for both lepton flavour. The two leptons have to have opposite charge and an invariant mass > 61 GeV and < 121 GeV
  * Dilepton_mass: Mass of two leptons in the dilepton_CR
  * HiggsPt: 4-vector sum of te lepton, tau and MET
  * mt: transverse mass of lepton+MET
  * ScalarSumPt: Scalar sum of pt of lepton + tau + all jets
  * PtRatioLeptonTau: Ratio of pt between the lepton and the tau in a given event
  * PtTot: Vectorial sum of pt for lepton + tau + MET + 2 leading jets
  *  IsBtagged: flag for each event if conatin or not a jet with the following definition
      * discriminant_mv2c20  > -0.5517 (see this twiki:
      * jet_eta < 2.5 and jet_pt > 30 GeV

Now, flags and variables for events with more the one jet:
  * ProdEtaJets: jets eta product between two leading jets 
  * IsOppositeJets: flag for each event if the ProdEtaJets is <0 or not
  * IsJetCentrality: flag with following definition
      * jetMinEta < lepEta && jetMinEta < tauEta And  jetMaxEta > lepEta &&  jetMaxEta > tauEta
         where jetMinEta and jetMaxEta are respectiveley the minimum and the maximum etas of the 2 jets
  * LeptonEtaCentrality: variable that give an idea of the centrality of the lepton with respect to the 2 jets (you can find the formula of this variable in the note)
  * JetVisibleMass: visible mass of the leading jets
  * JetsDeltaEta: delta eta between two leading jets
  * JetsSumPt: vectorial sum of pt of the 2 leading jets
  * IsVBFMVA: flag for each event if it is VBF for MVA analysis or not with the following definition:
     * pT of the leading jet > 50 GeV
     * pT of the subleading jet > 30 GeV 
     * DeltaEta between the jets > 3
     * TauLepVisMass  > 40 GeV
  * IsVBFCB: flag for each event if it is VBF for cutbased analysis or not with the following definition
     * pT of the leading jt > 40 GeV
     * pT of the subleading jet > 30 GeV
     * DeltaEta between the jets > 3
     * TauLepVisMass > 40 GeV
     * Pass the "IsOppositeJets" flag
     * Pass the "IsJetCentrality" flag
     * jetsisibleMass > 300 GeV
     * Dont pass IsBtagged flag
     * MET> 20 GeV
     * pTtot < 30 GeV

  * IsBoostedMVA: flag for each event if it is boosted for MVA analysis or not with the following definition
     * Not VBF_MVA
     * pTHiggs > 100 GeV
  * IsBoostedCB: flag for each event if it is boosted for cutbased analysis or not with the following definition
     * Not VBF_CB
     * pTHiggs > 100 GeV
     * MET > 20 GeV
     * tau_pT > 30 GeV
     * Not btagged

Job Option format convention

To be flexible on configuration, each channel has their own JO script. However, in order to easily spot the mistake in JO, the format of JO should be kept consistent in terms of the order of the JO items. In xTauFramework, the JO can be divided into following blocks:
Channel name
general job setting
di-tau (mass, etc)

So the idea is that the order of the blocks are kept the same as above in each JO. Then, the order of the items in each block listed in alphabetic way.

Topic attachments
I Attachment History Action Size Date Who Comment
PNGpng lephad_common_ntuple_code_1.png r1 manage 38.6 K 2015-08-12 - 08:39 LeiZhang Work flow of the common lephad analysis code
Edit | Attach | Watch | Print version | History: r6 < r5 < r4 < r3 < r2 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r6 - 2016-03-31 - EricDrechsler
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Sandbox All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2023 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback