DAS  3.0
Das Analysis System
ObsMiniJets

Description

MN_Helper::ObsMiniJets is a structure that implements observables based on the jets that are emmited in-between the Mueller-Navelet jets. These jets are called "mini jets" Definition of these observavbles ($N$ is the number of jets in the event, and the jets are labeled $i \in (0,N-1)$, including the two Mueller-Navelet jets, the jets are assumed ordred in rapidity from highest rapidity to lowest rapidity (signed rapidity).

  • PtAveMini --> $ \left\langle P_{T,Mini} \right\rangle = \frac{1}{N-2} \sum_{i=1}^{N-2} p_{T,i} $
  • DEtaAveMini --> & \left\langle \Delta \eta_{Mini} \right\rangle = \frac{1}{N-3} \sum_{i=1}^{N-3} \left\vert \eta_{i} - \eta_{i+1} \right\vert$
  • REtaAveMini --> $ R_{k} = \frac{1}{N-3} \sum_{i=1}^{N-3} \frac{\eta_{i}}{\eta_{i+1}} $
    Todo:
    Check this and compare with the standard definition.

#include <MuellerNavelet.h>

+ Collaboration diagram for ObsMiniJets:

Public Member Functions

 ObsMiniJets (const std::vector< DAS::RecJet > &recJets)
 
 ObsMiniJets (const std::vector< DAS::GenJet > &genJets)
 
float PtAveMini () const
 
float DEtaAveMini () const
 
float REtaAveMini () const
 
float RPtExpDEta () const
 
size_t size () const
 

Public Attributes

const float weight
 

Private Attributes

std::vector< DAS::FourVectorMiniJets
 

Constructor & Destructor Documentation

◆ ObsMiniJets() [1/2]

ObsMiniJets ( const std::vector< DAS::RecJet > &  recJets)
78  :
79  weight( (recJets.size()<1) ? 0 :
80  accumulate( recJets.begin(), recJets.end(), 1.,
81  [] ( double w, const RecJet& j ) { return w * j.weights.front(); } ) )
82 {
83  for (auto it = recJets.begin() ; it != recJets.end() ; ++it) {
84 
85  FourVector p4 = it->p4;
86  p4 *= it->scales.front();
87  MiniJets.push_back( p4 );
88  }
89 }

◆ ObsMiniJets() [2/2]

ObsMiniJets ( const std::vector< DAS::GenJet > &  genJets)
91  :
92  weight( (genJets.size() < 1) ? 0 :
93  accumulate( genJets.begin(), genJets.end(), 1.,
94  [] ( double w, const GenJet& j ) { return w * j.weights.front(); } ) )
95 {
96  for (auto it = genJets.begin() ; it != genJets.end() ; ++it)
97  MiniJets.push_back( it->p4 );
98 }

Member Function Documentation

◆ DEtaAveMini()

float DEtaAveMini ( ) const
109 {
110  assert(MiniJets.size() >= 2);
111  float detaavemini = 0;
112  for (auto it=MiniJets.begin() ; it != prev(MiniJets.end()) ; ++it)
113  detaavemini += it->Eta() - next(it)->Eta();
114  return detaavemini/MiniJets.size();
115 }

◆ PtAveMini()

float PtAveMini ( ) const
101 {
102  assert(MiniJets.size()>0);
103  auto AddPt = [] ( float sumpt, const FourVector& v) { return sumpt + v.Pt(); };
104  float ptavemini = accumulate(MiniJets.begin(), MiniJets.end(), 0., AddPt);
105  return ptavemini/MiniJets.size();
106 }

◆ REtaAveMini()

float REtaAveMini ( ) const
118 {
119  assert(MiniJets.size() >= 2);
120  float retaavemini = 0;
121  for (auto it=MiniJets.begin() ; it != prev(MiniJets.end()) ; ++it)
122  retaavemini += it->Eta()/next(it)->Eta();
123  return retaavemini/MiniJets.size();
124 }

◆ RPtExpDEta()

float RPtExpDEta ( ) const
127 {
128  assert(MiniJets.size() >= 2);
129  float rptexpdeta = 0;
130  for (auto it=MiniJets.begin() ; it != prev(MiniJets.end()) ; ++it) {
131  auto it2 = next(it);
132  auto Eta = it->Eta(), Eta2 = it2->Eta();
133  auto expo = exp( Eta - Eta2 );
134  auto Pt = it->Pt(), Pt2 = it2->Pt();
135  assert( Pt2 > 0 );
136  rptexpdeta += Pt / Pt2 * expo;
137  }
138  return rptexpdeta/MiniJets.size();
139 }

◆ size()

size_t size ( ) const
141 { return MiniJets.size(); }

Member Data Documentation

◆ MiniJets

std::vector<DAS::FourVector> MiniJets
private

The size should be >1.

The jets that are between the Mueller-navelet Jets.

◆ weight

const float weight

The documentation for this struct was generated from the following files:
DAS::MN::ObsMiniJets::weight
const float weight
Definition: MuellerNavelet.h:77
DAS::RecJet
Definition: Jet.h:37
DAS::JetEnergy::w
static const float w
Definition: common.h:47
DAS::GenJet
class GenJet
Definition: Jet.h:9
DAS::FourVector
ROOT::Math::LorentzVector< ROOT::Math::PtEtaPhiM4D< float > > FourVector
Definition: PhysicsObject.h:15
DAS::MN::ObsMiniJets::MiniJets
std::vector< DAS::FourVector > MiniJets
The size should be >1.
Definition: MuellerNavelet.h:80