rivet is hosted by Hepforge, IPPP Durham

List of all members.

Public Member Functions

 Variables (const vector< const Jet * > &jets, const Particle *lep1, const Particle *lep2)

Public Attributes

double jet1pt
double jet2pt
double zpt
double deltay
double mjj
double deltaphijj
double ptbalance2
double ptbalance3
int ngapjets
double dilepton_dr
bool pass_jetveto
bool pass_ptbaleff

Private Member Functions

bool _isBetween (const Jet *probe, const Jet *boundary1, const Jet *boundary2)
int _getNumGapJets (const vector< const Jet * > &jets, FourMomentum &thirdJet)

Detailed Description

Definition at line 36 of file ATLAS_2014_I1279489.cc.


Constructor & Destructor Documentation

Variables ( const vector< const Jet * > &  jets,
const Particle lep1,
const Particle lep2 
) [inline]

Definition at line 38 of file ATLAS_2014_I1279489.cc.

References Variables::_getNumGapJets(), Rivet::deltaPhi(), Variables::deltaphijj, Variables::deltay, Rivet::GeV, Variables::jet1pt, Variables::jet2pt, Rivet::Cuts::mass, Variables::mjj, ParticleBase::mom(), Variables::ngapjets, Variables::pass_jetveto, Variables::pass_ptbaleff, Rivet::PI, Rivet::Cuts::pT, ParticleBase::pT(), FourMomentum::pT(), Variables::ptbalance2, Variables::ptbalance3, FourMomentum::rapidity(), and Variables::zpt.

                                                                                          {
      FourMomentum j1 = jets.at(0)->momentum();
      FourMomentum j2 = jets.at(1)->momentum();
      jet1pt = j1.pT();
      jet2pt = j2.pT();
      assert(jet1pt > jet2pt);

      zpt = (lep1->mom() + lep2->mom()).pT();

      deltay = fabs(j1.rapidity() - j2.rapidity());
      mjj = (j1 + j2).mass();
      deltaphijj = deltaPhi(j1, j2) / PI;

      FourMomentum gapjet(0., 0., 0., 0.);
      ngapjets = _getNumGapJets(jets, gapjet);

      double ptbal_vec = (j1 + j2 + lep1->mom() + lep2->mom()).pT();
      double ptbal_sc = j1.pT() + j2.pT() + lep1->pT() + lep2->pT();
      ptbalance2 = ptbal_vec / ptbal_sc;

      double ptbal3_vec = (j1 + j2 + gapjet + lep1->mom() + lep2->mom()).pT();
      double ptbal3_sc = j1.pT() + j2.pT() + gapjet.pT() + lep1->pT() + lep2->pT();
      ptbalance3 = ptbal3_vec / ptbal3_sc;

      pass_jetveto = gapjet.pT() < 25.0*GeV;
      pass_ptbaleff = ptbalance2 < 0.15;
    }

Member Function Documentation

int _getNumGapJets ( const vector< const Jet * > &  jets,
FourMomentum thirdJet 
) [inline, private]

Definition at line 98 of file ATLAS_2014_I1279489.cc.

References Variables::_isBetween(), and Jet::momentum().

Referenced by Variables::Variables().

                                                                               {
      if (jets.size() < 2) return 0;
      // The vector of jets is already sorted by pT. So the boundary jets will be the first two.
      const Jet* bj1 = jets.at(0);
      const Jet* bj2 = jets.at(1);

      int n_between = 0;
      // Start loop at the 3rd hardest pT jet
      for (size_t i = 2; i < jets.size(); ++i) {
        const Jet* j = jets.at(i);
        // If this jet is between the boundary jets and is hard enough, increment counter
        if (_isBetween(j, bj1, bj2)) {
          if (n_between == 0) thirdJet = j->momentum();
          ++n_between;
        }
      }
      return n_between;
    }
bool _isBetween ( const Jet probe,
const Jet boundary1,
const Jet boundary2 
) [inline, private]

Definition at line 86 of file ATLAS_2014_I1279489.cc.

References ParticleBase::rapidity().

Referenced by Variables::_getNumGapJets().

                                                                                  {
      double y_p = probe->rapidity();
      double y_b1 = boundary1->rapidity();
      double y_b2 = boundary2->rapidity();

      double y_min = std::min(y_b1, y_b2);
      double y_max = std::max(y_b1, y_b2);

      if (y_p > y_min && y_p < y_max) return true;
      else return false;
    }

Member Data Documentation

double deltaphijj

Definition at line 73 of file ATLAS_2014_I1279489.cc.

Referenced by ATLAS_2014_I1279489::fillPlots(), and Variables::Variables().

double deltay

Definition at line 71 of file ATLAS_2014_I1279489.cc.

Referenced by ATLAS_2014_I1279489::fillPlots(), and Variables::Variables().

double dilepton_dr

Definition at line 78 of file ATLAS_2014_I1279489.cc.

double jet1pt

Definition at line 67 of file ATLAS_2014_I1279489.cc.

Referenced by ATLAS_2014_I1279489::analyze(), and Variables::Variables().

double jet2pt

Definition at line 68 of file ATLAS_2014_I1279489.cc.

Referenced by ATLAS_2014_I1279489::analyze(), and Variables::Variables().

double ptbalance3

Definition at line 75 of file ATLAS_2014_I1279489.cc.

Referenced by ATLAS_2014_I1279489::analyze(), and Variables::Variables().

double zpt

Definition at line 69 of file ATLAS_2014_I1279489.cc.

Referenced by ATLAS_2014_I1279489::analyze(), and Variables::Variables().


The documentation for this struct was generated from the following file: