Changes in modules/TrackPileUpSubtractor.cc [341014c:781edf86] in git
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
modules/TrackPileUpSubtractor.cc
r341014c r781edf86 17 17 */ 18 18 19 19 20 /** \class TrackPileUpSubtractor 20 21 * … … 31 32 #include "classes/DelphesFormula.h" 32 33 34 #include "ExRootAnalysis/ExRootResult.h" 35 #include "ExRootAnalysis/ExRootFilter.h" 33 36 #include "ExRootAnalysis/ExRootClassifier.h" 34 #include "ExRootAnalysis/ExRootFilter.h"35 #include "ExRootAnalysis/ExRootResult.h"36 37 38 #include "TMath.h" 39 #include "TString.h" 40 #include "TFormula.h" 41 #include "TRandom3.h" 42 #include "TObjArray.h" 37 43 #include "TDatabasePDG.h" 38 #include "TFormula.h"39 44 #include "TLorentzVector.h" 40 #include "TMath.h"41 #include "TObjArray.h"42 #include "TRandom3.h"43 #include "TString.h"44 45 45 46 #include <algorithm> 47 #include <stdexcept> 46 48 #include <iostream> 47 49 #include <sstream> 48 #include <stdexcept>49 50 50 51 using namespace std; … … 53 54 54 55 TrackPileUpSubtractor::TrackPileUpSubtractor() : 55 fFormula(0) 56 fFormula(0) 56 57 { 57 58 fFormula = new DelphesFormula; … … 87 88 88 89 size = param.GetSize(); 89 for(i = 0; i < size /2; ++i)90 for(i = 0; i < size/2; ++i) 90 91 { 91 array = ImportArray(param[i *2].GetString());92 array = ImportArray(param[i*2].GetString()); 92 93 iterator = array->MakeIterator(); 93 94 94 fInputMap[iterator] = ExportArray(param[i *2 + 1].GetString());95 fInputMap[iterator] = ExportArray(param[i*2 + 1].GetString()); 95 96 } 96 97 } … … 100 101 void TrackPileUpSubtractor::Finish() 101 102 { 102 map< TIterator *, TObjArray *>::iterator itInputMap;103 map< TIterator *, TObjArray * >::iterator itInputMap; 103 104 TIterator *iterator; 104 105 … … 118 119 { 119 120 Candidate *candidate, *particle; 120 map< TIterator *, TObjArray *>::iterator itInputMap;121 map< TIterator *, TObjArray * >::iterator itInputMap; 121 122 TIterator *iterator; 122 123 TObjArray *array; 123 Double_t z, zvtx =0;124 Double_t z, zvtx=0; 124 125 Double_t pt, eta, phi, e; 126 125 127 126 128 // find z position of primary vertex 127 129 128 130 fItVertexInputArray->Reset(); 129 while((candidate = static_cast<Candidate 131 while((candidate = static_cast<Candidate*>(fItVertexInputArray->Next()))) 130 132 { 131 133 if(!candidate->IsPU) … … 144 146 // loop over all candidates 145 147 iterator->Reset(); 146 while((candidate = static_cast<Candidate 148 while((candidate = static_cast<Candidate*>(iterator->Next()))) 147 149 { 148 particle = static_cast<Candidate 150 particle = static_cast<Candidate*>(candidate->GetCandidates()->At(0)); 149 151 const TLorentzVector &candidateMomentum = particle->Momentum; 150 152 … … 153 155 phi = candidateMomentum.Phi(); 154 156 e = candidateMomentum.E(); 155 157 156 158 z = particle->Position.Z(); 157 159 … … 159 161 // assume perfect pile-up subtraction for tracks outside fZVertexResolution 160 162 161 if(candidate->Charge != 0 && candidate->IsPU && TMath::Abs(z - zvtx) > fFormula->Eval(pt, eta, phi, e)* 1.0e3)163 if(candidate->Charge !=0 && candidate->IsPU && TMath::Abs(z-zvtx) > fFormula->Eval(pt, eta, phi, e)* 1.0e3) 162 164 { 163 165 candidate->IsRecoPU = 1;
Note:
See TracChangeset
for help on using the changeset viewer.