Changeset 307 in svn for trunk/src/JetsUtil.cc
- Timestamp:
- Mar 9, 2009, 9:47:21 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/JetsUtil.cc
r286 r307 120 120 } 121 121 122 vector<fastjet::PseudoJet> JetsUtil::RunJets(const vector<fastjet::PseudoJet>& input_particles )122 vector<fastjet::PseudoJet> JetsUtil::RunJets(const vector<fastjet::PseudoJet>& input_particles, const vector<TRootTracks> & TrackCentral, vector<int> &NTrackJet) 123 123 { 124 124 inclusive_jets.clear(); … … 131 131 double ptmin = 5.0; 132 132 inclusive_jets = clust_seq.inclusive_jets(ptmin); 133 133 134 // sort jets into increasing pt 134 135 sorted_jets = sorted_by_pt(inclusive_jets); 136 137 //check number of tracks in jets 138 float iEtaTrack[TrackCentral.size()]; 139 float iPhiTrack[TrackCentral.size()]; 140 for(unsigned int t = 0; t < TrackCentral.size(); t++) 141 { 142 DET->BinEtaPhi(TrackCentral[t].PhiOuter,TrackCentral[t].EtaOuter,iPhiTrack[t],iEtaTrack[t]); 143 } 144 int numTrackJet; 145 for (unsigned int i = 0; i < sorted_jets.size(); i++) 146 { 147 numTrackJet=0; 148 vector<fastjet::PseudoJet> constituents = clust_seq.constituents(sorted_jets[i]); 149 for(unsigned int it = 0; it < TrackCentral.size(); it++) 150 { 151 for (unsigned int j = 0; j < constituents.size(); j++) 152 { 153 if(DeltaR(iPhiTrack[it], iEtaTrack[it], constituents[j].phi(), constituents[j].eta())<0.001)numTrackJet++; 154 } 155 } 156 NTrackJet.push_back(numTrackJet); 157 } 135 158 } 136 159 … … 138 161 } 139 162 140 void JetsUtil::RunJetBtagging(ExRootTreeWriter *treeWriter, ExRootTreeBranch *branchJet,const vector<fastjet::PseudoJet> & sorted_jets,const TSimpleArray<TRootGenParticle>& NFCentralQ) 163 164 165 void JetsUtil::RunJetBtagging(ExRootTreeWriter *treeWriter, ExRootTreeBranch *branchJet,const vector<fastjet::PseudoJet> & sorted_jets,const TSimpleArray<TRootGenParticle>& NFCentralQ, const vector<int> &NTrackJet) 141 166 { 142 167 TRootJet *elementJet; 143 168 TLorentzVector JET; 144 169 for (unsigned int i = 0; i < sorted_jets.size(); i++) { 170 145 171 JET.SetPxPyPzE(sorted_jets[i].px(),sorted_jets[i].py(),sorted_jets[i].pz(),sorted_jets[i].E()); 146 172 if(JET.Pt() > DET->PTCUT_jet) … … 148 174 elementJet = (TRootJet*) branchJet->NewEntry(); 149 175 elementJet->Set(JET); 176 elementJet->NTracks = NTrackJet[i]; 177 150 178 // b-jets 151 179 bool btag=false; … … 157 185 } 158 186 159 //void JetsUtil::RunTauJets(ExRootTreeWriter *treeWriter, ExRootTreeBranch *branchTauJet,const vector<fastjet::PseudoJet> & sorted_jets,const vector<PhysicsTower> & towers, const vector<TLorentzVector> & TrackCentral) 160 void JetsUtil::RunTauJets(ExRootTreeWriter *treeWriter, ExRootTreeBranch *branchTauJet,const vector<fastjet::PseudoJet> & sorted_jets,const vector<PhysicsTower> & towers, const vector<TRootTracks> & TrackCentral) 187 void JetsUtil::RunTauJets(ExRootTreeWriter *treeWriter, ExRootTreeBranch *branchTauJet,const vector<fastjet::PseudoJet> & sorted_jets,const vector<PhysicsTower> & towers, const vector<TRootTracks> & TrackCentral, const vector<int> &NTrackJet) 161 188 { 162 189 TRootTauJet *elementTauJet; … … 176 203 elementTauJet = (TRootTauJet*) branchTauJet->NewEntry(); 177 204 elementTauJet->Set(JET); 205 elementTauJet->NTracks=NTrackJet[i]; 178 206 elementTauJet->Charge = charge; 179 207 } // if tau jet
Note:
See TracChangeset
for help on using the changeset viewer.