Fork me on GitHub

Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • modules/Isolation.cc

    r65dc4e7 r341014c  
    1717 */
    1818
    19 
    2019/** \class Isolation
    2120 *
     
    3534#include "classes/DelphesFormula.h"
    3635
     36#include "ExRootAnalysis/ExRootClassifier.h"
     37#include "ExRootAnalysis/ExRootFilter.h"
    3738#include "ExRootAnalysis/ExRootResult.h"
    38 #include "ExRootAnalysis/ExRootFilter.h"
    39 #include "ExRootAnalysis/ExRootClassifier.h"
    40 
     39
     40#include "TDatabasePDG.h"
     41#include "TFormula.h"
     42#include "TLorentzVector.h"
    4143#include "TMath.h"
     44#include "TObjArray.h"
     45#include "TRandom3.h"
    4246#include "TString.h"
    43 #include "TFormula.h"
    44 #include "TRandom3.h"
    45 #include "TObjArray.h"
    46 #include "TDatabasePDG.h"
    47 #include "TLorentzVector.h"
    4847
    4948#include <algorithm>
    50 #include <stdexcept>
    5149#include <iostream>
    5250#include <sstream>
     51#include <stdexcept>
    5352
    5453using namespace std;
     
    5958{
    6059public:
    61 
    6260  IsolationClassifier() {}
    6361
     
    7169Int_t IsolationClassifier::GetCategory(TObject *object)
    7270{
    73   Candidate *track = static_cast<Candidate*>(object);
     71  Candidate *track = static_cast<Candidate *>(object);
    7472  const TLorentzVector &momentum = track->Momentum;
    7573
     
    171169  // loop over all input jets
    172170  fItCandidateInputArray->Reset();
    173   while((candidate = static_cast<Candidate*>(fItCandidateInputArray->Next())))
     171  while((candidate = static_cast<Candidate *>(fItCandidateInputArray->Next())))
    174172  {
    175173    const TLorentzVector &candidateMomentum = candidate->Momentum;
     
    181179    {
    182180      fItRhoInputArray->Reset();
    183       while((object = static_cast<Candidate*>(fItRhoInputArray->Next())))
     181      while((object = static_cast<Candidate *>(fItRhoInputArray->Next())))
    184182      {
    185183        if(eta >= object->Edges[0] && eta < object->Edges[1])
     
    198196
    199197    itIsolationArray.Reset();
    200     while((isolation = static_cast<Candidate*>(itIsolationArray.Next())))
     198    while((isolation = static_cast<Candidate *>(itIsolationArray.Next())))
    201199    {
    202200      const TLorentzVector &isolationMomentum = isolation->Momentum;
     
    204202      if(fUseMiniCone)
    205203      {
    206          pass = candidateMomentum.DeltaR(isolationMomentum) <= fDeltaRMax &&
    207          candidateMomentum.DeltaR(isolationMomentum) > fDeltaRMin;
     204        pass = candidateMomentum.DeltaR(isolationMomentum) <= fDeltaRMax && candidateMomentum.DeltaR(isolationMomentum) > fDeltaRMin;
    208205      }
    209206      else
    210207      {
    211          pass = candidateMomentum.DeltaR(isolationMomentum) <= fDeltaRMax &&
    212          candidate->GetUniqueID() != isolation->GetUniqueID();
     208        pass = candidateMomentum.DeltaR(isolationMomentum) <= fDeltaRMax && candidate->GetUniqueID() != isolation->GetUniqueID();
    213209      }
    214210
     
    233229        }
    234230      }
    235 
    236231    }
    237232
    238    // find rho
     233    // find rho
    239234    rho = 0.0;
    240235    if(fRhoInputArray)
    241236    {
    242237      fItRhoInputArray->Reset();
    243       while((object = static_cast<Candidate*>(fItRhoInputArray->Next())))
     238      while((object = static_cast<Candidate *>(fItRhoInputArray->Next())))
    244239      {
    245240        if(eta >= object->Edges[0] && eta < object->Edges[1])
     
    250245    }
    251246
    252 
    253 
    254247    // correct sum for pile-up contamination
    255     sumDBeta = sumChargedNoPU + TMath::Max(sumNeutral - 0.5*sumChargedPU, 0.0);
    256     sumRhoCorr = sumChargedNoPU + TMath::Max(sumNeutral - TMath::Max(rho, 0.0)*fDeltaRMax*fDeltaRMax*TMath::Pi(), 0.0);
    257     ratioDBeta = sumDBeta/candidateMomentum.Pt();
    258     ratioRhoCorr = sumRhoCorr/candidateMomentum.Pt();
     248    sumDBeta = sumChargedNoPU + TMath::Max(sumNeutral - 0.5 * sumChargedPU, 0.0);
     249    sumRhoCorr = sumChargedNoPU + TMath::Max(sumNeutral - TMath::Max(rho, 0.0) * fDeltaRMax * fDeltaRMax * TMath::Pi(), 0.0);
     250    ratioDBeta = sumDBeta / candidateMomentum.Pt();
     251    ratioRhoCorr = sumRhoCorr / candidateMomentum.Pt();
    259252
    260253    candidate->IsolationVar = ratioDBeta;
Note: See TracChangeset for help on using the changeset viewer.