27 {
return r1.
id() < r2.
id() || (r1.
id() == r2.
id() && r1.
key() < r2.
key()); }
31 double cut,
double temperature) :
32 cut(cut), temperature(temperature)
50 ROOT::Math::SVector<double, 3>
dir(point1.x() - point2.x(),
51 point1.y() - point2.y(),
52 point1.z() - point2.z());
54 tsos.cartesianError().position();
56 return ROOT::Math::Mag2(
dir) /
57 std::sqrt(ROOT::Math::Similarity(cov.matrix_new(),
dir));
63 TransientTrackMap::iterator
pos =
trackMap.lower_bound(track);
64 if (pos !=
trackMap.end() && pos->first == track)
84 std::vector<float>
result(vertices.size(), 0.);
88 track != tracks.
end(); ++track) {
92 for(
unsigned int i = 0;
i < vertices.size();
i++) {
98 result[
i] += contribution;
104 for(
unsigned int i = 0;
i < result.size();
i++)
105 result[
i] = 1.0 / result.size();
107 for(
unsigned int i = 0;
i < result.size();
i++)
reco::Vertex::Point convertPos(const GlobalPoint &p)
std::vector< float > compatibility(const reco::VertexCollection &vertices, const reco::TrackRefVector &tracks) const
reco::Vertex::Error convertError(const GlobalError &ge)
reco::TransientTrack build(const reco::Track *p) const
~JetSignalVertexCompatibilityAlgo()
GlobalPoint globalPosition() const
std::vector< Vertex > VertexCollection
collection of Vertex objects
const MagneticField * field() const
double covariance(int i, int j) const
(i, j)-th element of error matrix, i, j = 0, ... 2
const_iterator end() const
Termination of iteration.
const Point & position() const
position
const_iterator begin() const
Initialize an iterator over the RefVector.
static double trackVertexCompat(const reco::Vertex &vtx, const TransientTrack &track)
double activation(double compat) const
edm::RefToBase< reco::Track > TrackBaseRef
persistent reference to a Track, using views
void resetEvent(const TransientTrackBuilder *trackBuilder)
REF castTo() const
cast to a concrete type
JetSignalVertexCompatibilityAlgo(double cut, double temperature)
const TransientTrack & convert(const reco::TrackBaseRef &track) const
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalPoint
point in global coordinate system
TrajectoryStateOnSurface impactPointState() const
bool operator()(const edm::RefToBase< T > &r1, const edm::RefToBase< T > &r2) const
const TransientTrackBuilder * trackBuilder
TransientTrackMap trackMap