16 charmCut(params.getParameter<double>(
"charmCut")),
18 trackSelector(params.getParameter<
edm::
ParameterSet>(
"trackSelection")),
20 trackPseudoSelector(params.getParameter<
edm::
ParameterSet>(
"trackPseudoSelection")),
23 minTrackWeight(params.getParameter<double>(
"minimumTrackWeight")),
25 vertexMassCorrection(params.getParameter<
bool>(
"correctVertexMass")),
38 int size,
bool vertex)
const 42 range.
begin = size - 1;
54 const btag::TrackIPData &
62 const std::vector<btag::TrackIPData> &ipData =
64 std::vector<std::size_t> indices = trackIPTagInfo.
sortedIndexes(sort);
69 std::size_t
idx = indices[
i];
70 const btag::TrackIPData &
data = ipData[
idx];
81 static const btag::TrackIPData
dummy = {
93 static const btag::TrackIPData
dummy = {
108 const btag::TrackIPData &
116 const std::vector<btag::TrackIPData> &ipData =
118 std::vector<std::size_t> indices = trackIPTagInfo.
sortedIndexes(sort);
123 std::size_t
idx = indices[
i];
124 const btag::TrackIPData &
data = ipData[
idx];
136 static const btag::TrackIPData
dummy = {
148 static const btag::TrackIPData
dummy = {
175 double vtx_track_ptSum = 0.;
176 double vtx_track_ESum = 0.;
180 unsigned int numberofvertextracks = 0;
193 if (hasRefittedTracks) {
195 vertexKinematics.
add(actualTrack, w);
207 vtx_track_ptSum +=
std::sqrt((*track)->momentum().Perp2());
213 if (vtx < 0) vtx =
i;
239 double vtx_track_ptSum = 0.;
240 double vtx_track_ESum = 0.;
244 unsigned int numberofvertextracks = 0;
249 numberofvertextracks = numberofvertextracks + (svInfo.
secondaryVertex(
i)).numberOfSourceCandidatePtrs();
253 for(std::vector<CandidatePtr>::const_iterator
track = tracks.begin();
track != tracks.end(); ++
track) {
258 vtx_track_ptSum +=
std::sqrt((*track)->momentum().Perp2());
263 if (vtx < 0) vtx =
i;
reco::btag::SortCriteria getCriterium(const std::string &name)
const unsigned int nTracks(const reco::Vertex &sv)
trackRef_iterator tracks_end() const
last iterator over tracks
void add(const reco::Track &track, double weight=1.0)
const VTX & secondaryVertex(unsigned int index) const
Track refittedTrack(const TrackBaseRef &track) const
Base class for all types of Jets.
double etaRel(const math::XYZVector &dir, const math::XYZVector &track)
reco::TrackSelector trackNoDeltaRSelector
bool hasRefittedTracks() const
Checks whether refitted tracks are stored.
Global3DPoint GlobalPoint
const Container & selectedTracks() const
static edm::ParameterSet dropDeltaR(const edm::ParameterSet &pset)
virtual reco::TaggingVariableList operator()(const reco::TrackIPTagInfo &ipInfo, const reco::SecondaryVertexTagInfo &svInfo) const
CombinedSVComputer(const edm::ParameterSet ¶ms)
const Vector & momentum() const
track momentum vector
virtual const daughters & daughterPtrVector() const
references to daughtes
void addParameter(std::string const &name, T const &value)
float trackWeight(const TREF &r) const
returns the weight with which a Track has contributed to the vertex-fit.
std::vector< size_t > sortedIndexes(btag::SortCriteria mode=reco::btag::IP3DSig) const
IterationRange flipIterate(int size, bool vertex) const
const std::vector< btag::TrackIPData > & impactParameterData() const
unsigned int nVertices() const
XYZVectorD XYZVector
spatial vector with cartesian internal representation
double flipValue(double value, bool vertex) const
edm::ParameterSet dropDeltaR(const edm::ParameterSet &pset) const
const reco::btag::TrackIPData & threshTrack(const reco::CandIPTagInfo &trackIPTagInfo, const reco::btag::SortCriteria sort, const reco::Jet &jet, const GlobalPoint &pv) const
void fillCommonVariables(reco::TaggingVariableList &vars, reco::TrackKinematics &vertexKinematics, const IPTI &ipInfo, const SVTI &svInfo, double &vtx_track_ptSum, double &vtx_track_ESum) const
char data[epos_bytes_allocation]
std::vector< TrackBaseRef >::const_iterator trackRef_iterator
The iteratator for the vector<TrackRef>
Container input_container
trackRef_iterator tracks_begin() const
first iterator over tracks
void insert(const TaggingVariable &variable, bool delayed=false)