![]() |
![]() |
Block of elements. More...
#include <PFDisplacedVertex.h>
Public Types | |
enum | M_Hypo { M_CUSTOM, M_MASSLESS, M_PION, M_KAON, M_LAMBDA } |
Mass hypothesis enum. More... | |
typedef std::pair < PFTrackHitInfo, PFTrackHitInfo > | PFTrackHitFullInfo |
typedef std::pair< unsigned int, unsigned int > | PFTrackHitInfo |
Information on the distance between track's hits and the Vertex. More... | |
enum | VertexTrackType { T_NOT_FROM_VERTEX, T_TO_VERTEX, T_FROM_VERTEX, T_MERGED } |
enum | VertexType { ANY = 0, FAKE = 1, LOOPER = 2, NUCL = 10, NUCL_LOOSE = 11, NUCL_KINK = 12, CONVERSION = 20, CONVERSION_LOOSE = 21, CONVERTED_BREMM = 22, K0_DECAY = 30, LAMBDA_DECAY = 31, LAMBDABAR_DECAY = 32, KPLUS_DECAY = 40, KMINUS_DECAY = 41, KPLUS_DECAY_LOOSE = 42, KMINUS_DECAY_LOOSE = 43, BSM_VERTEX = 100 } |
![]() | |
enum | { dimension = 3 } |
error matrix dimension More... | |
enum | { size = dimension * ( dimension + 1 ) / 2 } |
matix size More... | |
typedef math::Error< dimension > ::type | CovarianceMatrix |
covariance error matrix (3x3) More... | |
typedef math::Error< dimension > ::type | Error |
covariance error matrix (3x3) More... | |
typedef unsigned int | index |
index type More... | |
typedef math::XYZPoint | Point |
point in the space More... | |
typedef std::vector < TrackBaseRef > ::const_iterator | trackRef_iterator |
The iteratator for the vector<TrackRef> More... | |
Public Member Functions | |
void | addElement (const TrackBaseRef &r, const Track &refTrack, const PFTrackHitFullInfo &hitInfo, VertexTrackType trackType=T_NOT_FROM_VERTEX, float w=1.0) |
Add a new track to the vertex. More... | |
const double | angle_io () const |
void | calcKinematics () |
void | cleanTracks () |
Clean the tracks collection and all the associated collections. More... | |
void | Dump (std::ostream &out=std::cout) const |
cout function More... | |
bool | isBSM () const |
bool | isConv () const |
bool | isConv_Loose () const |
bool | isConvertedBremm () const |
bool | isFake () const |
const bool | isIncomingTrack (const reco::TrackBaseRef &originalTrack) const |
Is primary or merged track. More... | |
bool | isK0 () const |
bool | isKminus () const |
bool | isKminus_Loose () const |
bool | isKplus () const |
bool | isKplus_Loose () const |
bool | isLambda () const |
bool | isLambdaBar () const |
bool | isLooper () const |
const bool | isMergedTrack (const reco::TrackBaseRef &originalTrack) const |
Is a secondary track was identified. More... | |
bool | isNucl () const |
bool | isNucl_Kink () const |
bool | isNucl_Loose () const |
const bool | isOutgoingTrack (const reco::TrackBaseRef &originalTrack) const |
Is secondary track. More... | |
const bool | isPrimaryTrack (const reco::TrackBaseRef &originalTrack) const |
Is a primary track was identified. More... | |
const bool | isSecondaryTrack (const reco::TrackBaseRef &originalTrack) const |
Is a secondary track was identified. More... | |
const bool | isThereMergedTracks () const |
If a merged track was identified. More... | |
const bool | isThereNotFromVertexTracks () const |
If there is a track which was not identified. More... | |
const bool | isTherePrimaryTracks () const |
--—— Provide useful information --—— /// More... | |
const bool | isThereSecondaryTracks () const |
If a secondary track was identified. More... | |
std::string | nameVertexType () const |
const int | nMergedTracks () const |
Number of merged tracks was identified. More... | |
const int | nNotFromVertexTracks () const |
Number of tracks which was not identified. More... | |
const int | nPrimaryTracks () const |
Number of primary tracks was identified. More... | |
const int | nSecondaryTracks () const |
Number of secondary tracks was identified. More... | |
const int | nTracks () const |
Number of tracks. More... | |
PFDisplacedVertex () | |
Default constructor. More... | |
PFDisplacedVertex (reco::Vertex &) | |
Constructor from the reco::Vertex. More... | |
const math::XYZVector | primaryDirection () const |
Primary Direction. More... | |
const math::XYZTLorentzVector | primaryMomentum (std::string massHypo="PI", bool useRefitted=true, double mass=0.0) const |
Momentum of primary or merged track calculated with a mass hypothesis. More... | |
const math::XYZTLorentzVector | primaryMomentum (M_Hypo massHypo, bool useRefitted=true, double mass=0.0) const |
Momentum of primary or merged track calculated with a mass hypothesis. More... | |
const double | primaryPt () const |
Momentum of primary or merged track calculated with a mass hypothesis. More... | |
const math::XYZTLorentzVector | secondaryMomentum (std::string massHypo="PI", bool useRefitted=true, double mass=0.0) const |
const math::XYZTLorentzVector | secondaryMomentum (M_Hypo massHypo, bool useRefitted=true, double mass=0.0) const |
const double | secondaryPt () const |
void | setPrimaryDirection (const math::XYZPoint &pvtx) |
void | setVertexType (VertexType vertexType) |
Set the type of this vertex. More... | |
const int | totalCharge () const |
Total Charge. More... | |
const PFTrackHitFullInfo | trackHitFullInfo (const reco::TrackBaseRef &originalTrack) const |
const std::vector < PFTrackHitFullInfo > | trackHitFullInfos () const |
const std::vector < VertexTrackType > | trackTypes () const |
VertexType | vertexType () |
Get the type of this vertex. More... | |
![]() | |
void | add (const TrackBaseRef &r, float w=1.0) |
add a reference to a Track More... | |
void | add (const TrackBaseRef &r, const Track &refTrack, float w=1.0) |
add the original a Track(reference) and the smoothed Track More... | |
double | chi2 () const |
chi-squares More... | |
double | covariance (int i, int j) const |
(i, j)-th element of error matrix, i, j = 0, ... 2 More... | |
CovarianceMatrix | covariance () const |
return SMatrix More... | |
Error | error () const |
return SMatrix More... | |
void | fill (CovarianceMatrix &v) const |
fill SMatrix More... | |
bool | hasRefittedTracks () const |
Checks whether refitted tracks are stored. More... | |
bool | isFake () const |
bool | isValid () const |
Tells whether the vertex is valid. More... | |
double | ndof () const |
double | normalizedChi2 () const |
chi-squared divided by n.d.o.f. More... | |
unsigned int | nTracks (float minWeight=0.5) const |
Returns the number of tracks in the vertex with weight above minWeight. More... | |
TrackBaseRef | originalTrack (const Track &refTrack) const |
math::XYZTLorentzVectorD | p4 (float mass=0.13957018, float minWeight=0.5) const |
Returns the four momentum of the sum of the tracks, assuming the given mass for the decay products. More... | |
const Point & | position () const |
position More... | |
Track | refittedTrack (const TrackBaseRef &track) const |
Track | refittedTrack (const TrackRef &track) const |
const std::vector< Track > & | refittedTracks () const |
Returns the container of refitted tracks. More... | |
void | removeTracks () |
trackRef_iterator | tracks_begin () const |
first iterator over tracks More... | |
trackRef_iterator | tracks_end () const |
last iterator over tracks More... | |
size_t | tracksSize () const |
number of tracks More... | |
template<typename TREF > | |
float | trackWeight (const TREF &r) const |
returns the weight with which a Track has contributed to the vertex-fit. More... | |
Vertex () | |
Vertex (const Point &, const Error &) | |
Constructor for a fake vertex. More... | |
Vertex (const Point &, const Error &, double chi2, double ndof, size_t size) | |
constructor for a valid vertex, with all data More... | |
double | x () const |
x coordinate More... | |
double | xError () const |
error on x More... | |
double | y () const |
y coordinate More... | |
double | yError () const |
error on y More... | |
double | z () const |
y coordinate More... | |
double | zError () const |
error on z More... | |
Private Member Functions | |
const double | getMass2 (M_Hypo, double) const |
Get the mass with a given hypothesis. More... | |
const bool | isThereKindTracks (VertexTrackType) const |
---—— TOOLS --------—— /// More... | |
const bool | isTrack (size_t itrk, VertexTrackType T) const |
const math::XYZTLorentzVector | momentum (std::string, VertexTrackType, bool, double mass) const |
Common tool to calculate the momentum vector of tracks with a given Kind. More... | |
const math::XYZTLorentzVector | momentum (M_Hypo massHypo, VertexTrackType, bool, double mass) const |
Common tool to calculate the momentum vector of tracks with a given Kind. More... | |
const int | nKindTracks (VertexTrackType) const |
Common tool used to get the number of tracks of a given Kind. More... | |
const size_t | trackPosition (const reco::TrackBaseRef &originalTrack) const |
Private Attributes | |
math::XYZTLorentzVector | defaultPrimaryMomentum_ |
math::XYZTLorentzVector | defaultSecondaryMomentum_ |
math::XYZVector | primaryDirection_ |
std::vector< PFTrackHitFullInfo > | trackHitFullInfos_ |
Information on the distance between track's hits and the Vertex. More... | |
std::vector< VertexTrackType > | trackTypes_ |
Types of the tracks associated to the vertex. More... | |
VertexType | vertexType_ |
--—— MEMBERS --—— /// More... | |
Block of elements.
A DisplacedVertex is an extension of Vector with some additionnal informations tracks's hit-vertex distances, tracks types and the expected vertex type.
Definition at line 24 of file PFDisplacedVertex.h.
typedef std::pair<PFTrackHitInfo, PFTrackHitInfo> reco::PFDisplacedVertex::PFTrackHitFullInfo |
Definition at line 30 of file PFDisplacedVertex.h.
typedef std::pair<unsigned int, unsigned int> reco::PFDisplacedVertex::PFTrackHitInfo |
Information on the distance between track's hits and the Vertex.
Definition at line 29 of file PFDisplacedVertex.h.
Mass hypothesis enum.
Enumerator | |
---|---|
M_CUSTOM | |
M_MASSLESS | |
M_PION | |
M_KAON | |
M_LAMBDA |
Definition at line 33 of file PFDisplacedVertex.h.
Classification of tracks according to the position with respect to the Vertex. A Merged track is a track which has at least two hits before and two hits after the vertex. It may come from a primary track merged with a low quality secondary track.
Enumerator | |
---|---|
T_NOT_FROM_VERTEX | |
T_TO_VERTEX | |
T_FROM_VERTEX | |
T_MERGED |
Definition at line 46 of file PFDisplacedVertex.h.
Classification of vertex according to different parameters such as the Number of tracks, the invariant mass etc...
Definition at line 55 of file PFDisplacedVertex.h.
PFDisplacedVertex::PFDisplacedVertex | ( | ) |
Default constructor.
Definition at line 9 of file PFDisplacedVertex.cc.
PFDisplacedVertex::PFDisplacedVertex | ( | reco::Vertex & | v | ) |
Constructor from the reco::Vertex.
Definition at line 14 of file PFDisplacedVertex.cc.
void PFDisplacedVertex::addElement | ( | const TrackBaseRef & | r, |
const Track & | refTrack, | ||
const PFTrackHitFullInfo & | hitInfo, | ||
VertexTrackType | trackType = T_NOT_FROM_VERTEX , |
||
float | w = 1.0 |
||
) |
Add a new track to the vertex.
Definition at line 20 of file PFDisplacedVertex.cc.
const double PFDisplacedVertex::angle_io | ( | ) | const |
Angle PrimaryVertex-DisplacedVertex (or primary track if there is) And secondary momentum
Definition at line 189 of file PFDisplacedVertex.cc.
|
inline |
Definition at line 223 of file PFDisplacedVertex.h.
void PFDisplacedVertex::cleanTracks | ( | ) |
Clean the tracks collection and all the associated collections.
Definition at line 29 of file PFDisplacedVertex.cc.
void PFDisplacedVertex::Dump | ( | std::ostream & | out = std::cout | ) | const |
cout function
Definition at line 241 of file PFDisplacedVertex.cc.
|
private |
Get the mass with a given hypothesis.
Definition at line 221 of file PFDisplacedVertex.cc.
|
inline |
Definition at line 266 of file PFDisplacedVertex.h.
|
inline |
Definition at line 256 of file PFDisplacedVertex.h.
|
inline |
Definition at line 257 of file PFDisplacedVertex.h.
|
inline |
Definition at line 258 of file PFDisplacedVertex.h.
|
inline |
Definition at line 251 of file PFDisplacedVertex.h.
|
inline |
Is primary or merged track.
Definition at line 157 of file PFDisplacedVertex.h.
|
inline |
Definition at line 259 of file PFDisplacedVertex.h.
|
inline |
Definition at line 263 of file PFDisplacedVertex.h.
|
inline |
Definition at line 265 of file PFDisplacedVertex.h.
|
inline |
Definition at line 262 of file PFDisplacedVertex.h.
|
inline |
Definition at line 264 of file PFDisplacedVertex.h.
|
inline |
Definition at line 260 of file PFDisplacedVertex.h.
|
inline |
Definition at line 261 of file PFDisplacedVertex.h.
|
inline |
Definition at line 252 of file PFDisplacedVertex.h.
|
inline |
Is a secondary track was identified.
Definition at line 143 of file PFDisplacedVertex.h.
|
inline |
Definition at line 253 of file PFDisplacedVertex.h.
|
inline |
Definition at line 255 of file PFDisplacedVertex.h.
|
inline |
Definition at line 254 of file PFDisplacedVertex.h.
|
inline |
Is secondary track.
Definition at line 164 of file PFDisplacedVertex.h.
|
inline |
Is a primary track was identified.
Definition at line 129 of file PFDisplacedVertex.h.
|
inline |
Is a secondary track was identified.
Definition at line 136 of file PFDisplacedVertex.h.
|
private |
---—— TOOLS --------—— ///
Common tool used to know if there are tracks of a given Kind
Definition at line 39 of file PFDisplacedVertex.cc.
|
inline |
If a merged track was identified.
Definition at line 114 of file PFDisplacedVertex.h.
|
inline |
If there is a track which was not identified.
Definition at line 122 of file PFDisplacedVertex.h.
|
inline |
--—— Provide useful information --—— ///
If a primary track was identified
Definition at line 110 of file PFDisplacedVertex.h.
|
inline |
If a secondary track was identified.
Definition at line 118 of file PFDisplacedVertex.h.
|
inlineprivate |
Definition at line 299 of file PFDisplacedVertex.h.
|
private |
Common tool to calculate the momentum vector of tracks with a given Kind.
|
private |
Common tool to calculate the momentum vector of tracks with a given Kind.
Definition at line 130 of file PFDisplacedVertex.cc.
std::string PFDisplacedVertex::nameVertexType | ( | ) | const |
Definition at line 88 of file PFDisplacedVertex.cc.
|
private |
Common tool used to get the number of tracks of a given Kind.
Definition at line 48 of file PFDisplacedVertex.cc.
|
inline |
Number of merged tracks was identified.
Definition at line 176 of file PFDisplacedVertex.h.
|
inline |
Number of tracks which was not identified.
Definition at line 184 of file PFDisplacedVertex.h.
|
inline |
Number of primary tracks was identified.
Definition at line 172 of file PFDisplacedVertex.h.
|
inline |
Number of secondary tracks was identified.
Definition at line 180 of file PFDisplacedVertex.h.
|
inline |
Number of tracks.
Definition at line 188 of file PFDisplacedVertex.h.
const math::XYZVector PFDisplacedVertex::primaryDirection | ( | ) | const |
Primary Direction.
Definition at line 202 of file PFDisplacedVertex.cc.
|
inline |
Momentum of primary or merged track calculated with a mass hypothesis.
Definition at line 202 of file PFDisplacedVertex.h.
|
inline |
Momentum of primary or merged track calculated with a mass hypothesis.
Definition at line 218 of file PFDisplacedVertex.h.
|
inline |
Momentum of primary or merged track calculated with a mass hypothesis.
Definition at line 233 of file PFDisplacedVertex.h.
|
inline |
Momentum of secondary tracks calculated with a mass hypothesis. Some of those hypothesis are default: "PI" , "KAON", "LAMBDA", "MASSLESS", "CUSTOM" the value of custom shall be then provided in mass variable
Definition at line 196 of file PFDisplacedVertex.h.
|
inline |
Momentum of secondary tracks calculated with a mass hypothesis. Some of those hypothesis are default: "PI" , "KAON", "LAMBDA", "MASSLESS", "CUSTOM" the value of custom shall be then provided in mass variable
Definition at line 212 of file PFDisplacedVertex.h.
|
inline |
Definition at line 229 of file PFDisplacedVertex.h.
void PFDisplacedVertex::setPrimaryDirection | ( | const math::XYZPoint & | pvtx | ) |
Estimate the direction of the vertex. This function produced a unitary vector. It is calculated the axis linking the primary vertex of the event pvtx to this vertex
Definition at line 78 of file PFDisplacedVertex.cc.
|
inline |
Set the type of this vertex.
Definition at line 91 of file PFDisplacedVertex.h.
const int PFDisplacedVertex::totalCharge | ( | ) | const |
Total Charge.
Definition at line 175 of file PFDisplacedVertex.cc.
|
inline |
Definition at line 149 of file PFDisplacedVertex.h.
|
inline |
Definition at line 100 of file PFDisplacedVertex.h.
|
private |
Definition at line 56 of file PFDisplacedVertex.cc.
|
inline |
Definition at line 103 of file PFDisplacedVertex.h.
|
inline |
Get the type of this vertex.
Definition at line 98 of file PFDisplacedVertex.h.
|
private |
Definition at line 317 of file PFDisplacedVertex.h.
|
private |
Definition at line 318 of file PFDisplacedVertex.h.
|
private |
Definition at line 315 of file PFDisplacedVertex.h.
|
private |
Information on the distance between track's hits and the Vertex.
Definition at line 313 of file PFDisplacedVertex.h.
|
private |
Types of the tracks associated to the vertex.
Definition at line 310 of file PFDisplacedVertex.h.
|
private |