18 const std::vector<reco::TrackRef>& fTracks,
21 std::vector<math::RhoEtaPhiVector> trackP3s;
22 std::map<int, double> trackvert;
26 trackP3s.reserve(fTracks.size());
27 for (
unsigned i = 0;
i < fTracks.size(); ++
i) {
35 int trackhasvert = -1;
36 for (reco::VertexCollection::const_iterator iv =
vertices.begin(); iv !=
vertices.end(); iv++) {
37 std::vector<reco::TrackBaseRef>::const_iterator
rr =
find((*iv).tracks_begin(), (*iv).tracks_end(), ttr1);
38 if (
rr != (*iv).tracks_end()) {
40 trackvert[
i] = (*iv).position().z();
45 if (trackhasvert < 0) {
48 trackvert[
i] =
track->dz(ppt);
55 for (
unsigned j = 0;
j < fJets.size(); ++
j) {
61 for (
unsigned t = 0;
t < fTracks.size(); ++
t) {
62 std::map<int, double>::iterator cur = trackvert.find(
t);
63 if (cur != trackvert.end()) {
64 neweta =
jet->physicsEta((*cur).second,
jetEta);