DAS  3.0
Das Analysis System
Balance

Description

Balance histogram for a given variation.

#include <Balance.h>

+ Collaboration diagram for Balance:

Public Member Functions

 Balance (TDirectory *d, const DAS::Uncertainties::Variation &v, const vector< double > &pt_edges, const vector< double > &y_edges)
 
void operator() (const DAS::AbstractPhysicsObject &tag, const DAS::AbstractPhysicsObject &probe, const DAS::MET *met, const double ev_w)
 
void Write ()
 

Public Attributes

DAS::Uncertainties::Variation v
 

Private Attributes

TDirectory * d
 
unique_ptr< TH3D > asymmetry
 
unique_ptr< TH2D > response
 

Constructor & Destructor Documentation

◆ Balance()

Balance ( TDirectory *  d,
const DAS::Uncertainties::Variation v,
const vector< double > &  pt_edges,
const vector< double > &  y_edges 
)
inline
69  :
70  d(d), v(v)
71  {
72  int nBins = 120;
73  vector balBins = MakeBinning<double>({-1.2,1.2}, nBins);
74 
75  int nPtBins = pt_edges.size()-1,
76  nYbins = y_edges.size()-1;
77 
78  TString dirname = d->GetName();
79  TString hname = dirname + '_' + v.group + '_' + v.name;
80  asymmetry = make_unique<TH3D>(hname, v.name, nBins, balBins.data(),
81  nPtBins, pt_edges.data(),
82  nYbins, y_edges.data());
83 
84  balBins = MakeBinning<double>({0., 1.2}, nBins);
85  response = make_unique<TH2D>("response_" + hname, v.name, nBins, balBins.data(),
86  nYbins, y_edges.data());
87  }

Member Function Documentation

◆ operator()()

void operator() ( const DAS::AbstractPhysicsObject tag,
const DAS::AbstractPhysicsObject probe,
const DAS::MET met,
const double  ev_w 
)
inline

Calculates balance for two objects following the definition of the Run 1 JetMET reference publication for dijet systems.

96  {
97  float absy_probe = probe.AbsRap(v);
98 
99  float pt_tag = tag .CorrPt(v),
100  pt_probe = probe.CorrPt(v);
101 
102  double jw = tag .Weight(v)
103  * probe.Weight(v);
104 
105  response->Fill(pt_probe/pt_tag, absy_probe, ev_w*jw);
106 
107  // \todo does this also apply to Z+jet balance?
108  // (e.g. not in 1804.05252)
109  float pt_dif = (pt_tag - pt_probe),
110  pt_ave = (pt_tag + pt_probe) * 0.5;
111 
112  float asym = pt_dif / pt_ave; // pT balance method
113 
114  if (met != nullptr) // MPF method ref:1607.03663 $\mathcal{A} =\frac{\vec{p}_T^{miss}\cdot\left(\vec{p}_{T,tag}/p_{T,tag}\right)}{2 p_{T,ave}}$
115  asym = -met->Pt * cos(met->Phi - tag.CorrP4(v).Phi()) / pt_ave;
116 
117  asymmetry->Fill(asym, pt_ave, absy_probe, ev_w*jw);
118  }

◆ Write()

void Write ( )
inline
121  {
122  d->cd();
123  TString dirname = d->GetName();
124 
125  asymmetry->SetDirectory(d);
126  TString hname = asymmetry->GetName();
127  hname.ReplaceAll(dirname + '_', "");
128  asymmetry->Write(hname);
129 
130  response->SetDirectory(d);
131  hname = response->GetName();
132  hname.ReplaceAll(dirname + '_', "");
133  response->Write(hname);
134  }

Member Data Documentation

◆ asymmetry

unique_ptr<TH3D> asymmetry
private

asymmetry histogram

◆ d

TDirectory* d
private

directory in output ROOT file

◆ response

unique_ptr<TH2D> response
private

response

◆ v

systematic variation


The documentation for this class was generated from the following file:
DAS::y_edges
static const std::vector< double > y_edges
Definition: binnings.h:36
DAS::AbstractPhysicsObject::CorrPt
virtual float CorrPt(const Uncertainties::Variation &) const =0
DAS::JetEnergy::Balance::response
unique_ptr< TH2D > response
response
Definition: Balance.h:61
DAS::AbstractPhysicsObject::Weight
virtual double Weight(const Uncertainties::Variation &) const =0
DAS::Uncertainties::Variation::name
const TString name
variation name (including "Up" or "Down")
Definition: Variation.h:25
DAS::pt_edges
static const std::vector< double > pt_edges
Definition: binnings.h:33
DAS::JetEnergy::Balance::d
TDirectory * d
directory in output ROOT file
Definition: Balance.h:59
DAS::AbstractPhysicsObject::CorrP4
virtual FourVector CorrP4(const Uncertainties::Variation &) const =0
DAS::AbstractPhysicsObject::AbsRap
virtual float AbsRap(const Uncertainties::Variation &) const =0
met
DAS::MET met
Definition: classes.h:28
DAS::nPtBins
static const int nPtBins
Definition: binnings.h:39
DAS::Uncertainties::Variation::group
const TString group
e.g. event, recjet
Definition: Variation.h:24
DAS::JetEnergy::Balance::v
DAS::Uncertainties::Variation v
systematic variation
Definition: Balance.h:64
DAS::MET::Phi
float Phi
direction of the total transverse momentum
Definition: Event.h:88
DAS::JetEnergy::Balance::asymmetry
unique_ptr< TH3D > asymmetry
asymmetry histogram
Definition: Balance.h:60
DAS::nYbins
static const int nYbins
Definition: binnings.h:38
DAS::MET::Pt
float Pt
exactly the same as Et
Definition: Event.h:87