ATLAS Offline Software
Loading...
Searching...
No Matches
Analysis::SecVtxInfo Class Reference

The SecVtxInfo class: This class contains information of the secondary vertex fit within the jet. More...

#include <SecVtxInfo.h>

Inheritance diagram for Analysis::SecVtxInfo:
Collaboration diagram for Analysis::SecVtxInfo:

Public Types

enum  FitType { TearDown =0 , BuildUp =1 , NoFit =2 }

Public Member Functions

 SecVtxInfo ()
 default constructor
 SecVtxInfo (const TagInfoType &x)
 constructor with infotype
 SecVtxInfo (const SecVtxInfo &rhs)
 copy destructor
SecVtxInfooperator= (const SecVtxInfo &rhs)
 assigenment operator
virtual ~SecVtxInfo ()
 default destructor
virtual SecVtxInfoclone () const
 a clone method for the proper workings of the copy constructor
int numSelTracksForFit () const
 The number of tracks available for the sec.vtx.
double distance () const
 The distance between the primary and the secondary vertex.
double rphidistance () const
double probability () const
 The fit probability of the fit.
double mass () const
 The invariant mass of the tracks fitted to the vertex.
double energyFraction () const
 The energy fraction: Evtx/Ejet of charges tracks.
int mult () const
 The number of tracks fitted in the vertex.
FitType fitType () const
 Returns an enum to indicate the type of fit.
const Trk::RecVertexsecVertexPos () const
 Returns the reconstructed secondary vertex.
int NumberOfG2TrackVertices () const
 Returns number of 2 track vertices.
void setFitType (FitType type)
 Set-methods for the private data members of the class.
void setSecVtx (const Trk::RecVertex &secVtx, double fitProb, const TrackVec &fittedTrks)
void setNumSelTracksForFit (int numSelTracksForFit)
void setMult (int mult)
void setMass (double mass)
void setEnergyFraction (double energyFraction)
void setDist (double dist)
void setRPhiDist (double dist)
void setNumberOfG2TrackVertices (int NSVPair)
virtual void setTagLikelihood (const std::vector< double > &)
 Return and set methods for the likelihood.
virtual void setTagLikelihood (std::vector< double > &&)
 to set the tag likelihood for one tagger
virtual const std::vector< double > & tagLikelihood (void) const
 returns the tag likelihood of one tagger
virtual void setWeight (double weight)
 set the weight for one tagger
virtual double weight () const
 get the weight of one tagger
virtual void makeValid ()
 sets the isValid flag to true, cannot be reversed!
virtual bool isValid () const
 returns true if the tag was successfull
virtual TagInfoType infoType (void) const
 returns the infoType of the info objects.

Protected Member Functions

void setValid (bool valid)
void setTagJetInfoType (const TagInfoType &type)

Protected Attributes

bool m_isValid
 true if the tagger could tag the jet, default is false
std::vector< double > m_tagLikelihood
 vector to hold the taglikelihood (signal plus N background)
double m_weight
 weight for this tag
TagInfoType m_tagJetInfoType
 string to hold the info type (specified by the tag tool)

Private Attributes

int m_numSelTracksForFit
 The number of tracks available for the sec.vtx.
double m_dist
double m_rphidist
double m_prob
double m_mass
double m_energyFraction
TrackVec m_fittedTrks
int m_mult
FitType m_fitType
Trk::RecVertex m_secVtxPos
int m_NGood2TrackVertices

Detailed Description

The SecVtxInfo class: This class contains information of the secondary vertex fit within the jet.

It is not supposed to be an overly intelligent class with much overhead. The class inherits from IBInfo and can therefor be put into the BJet as additional info to the B-Jet.

Currently available methods to retrieve information:

  • distance(): Distance between the reconstructed primary vertex and the fitted secondary vertex. The distance is calculated in three dimensions.
  • probability(): The fit probability of the secondary vertex.
  • mass(): The reconstructed mass of the secondary vertex.
  • mult(): Number of tracks in the secondary vertex.
  • secVertexPos(): The fitted vertex and its errors on the position. The return type is Trk::RecVertex.
  • infoType(): Returns a enum with the type of information in the class. This is done so that the user directly can typecast from IBInfo to the correct concrete implementation (here: SecVtxInfo).

Methods to fill the class with information:

  • setSecVtx: Sets the secondary vertex position, the fit probability and the vector of fitted tracks.
  • setMult: Sets the multiplicity of the secondary vertex.
  • setMass: Sets the mass of the secondary vertex.

Definition at line 59 of file SecVtxInfo.h.

Member Enumeration Documentation

◆ FitType

Enumerator
TearDown 
BuildUp 
NoFit 

Definition at line 62 of file SecVtxInfo.h.

Constructor & Destructor Documentation

◆ SecVtxInfo() [1/3]

Analysis::SecVtxInfo::SecVtxInfo ( )

default constructor

Default constructor.

Definition at line 21 of file SecVtxInfo.cxx.

21 : BaseTagInfo(),
23 m_dist(-1.),
24 m_rphidist(-1.),
25 m_prob(-1.),
26 m_mass(-1.),
28 m_fittedTrks(std::vector<const Rec::TrackParticle*>()),
29 m_mult(-1),
31 m_secVtxPos(Trk::RecVertex()),
33 {
34 m_fittedTrks.clear();
35 }
BaseTagInfo()
default constructor
int m_numSelTracksForFit
The number of tracks available for the sec.vtx.
Definition SecVtxInfo.h:125
Trk::RecVertex m_secVtxPos
Definition SecVtxInfo.h:134

◆ SecVtxInfo() [2/3]

Analysis::SecVtxInfo::SecVtxInfo ( const TagInfoType & x)

constructor with infotype

Definition at line 38 of file SecVtxInfo.cxx.

38 : BaseTagInfo(tagJetInfoType),
40 m_dist(-1.),
41 m_rphidist(-1.),
42 m_prob(-1.),
43 m_mass(-1.),
45 m_fittedTrks(std::vector<const Rec::TrackParticle*>()),
46 m_mult(-1),
48 m_secVtxPos(Trk::RecVertex()),
50 {
51 m_fittedTrks.clear();
52 }

◆ SecVtxInfo() [3/3]

Analysis::SecVtxInfo::SecVtxInfo ( const SecVtxInfo & rhs)

copy destructor

Copy constructor.

Definition at line 55 of file SecVtxInfo.cxx.

55 : BaseTagInfo(rhs),
56 m_numSelTracksForFit(rhs.m_numSelTracksForFit),
57 m_dist(rhs.m_dist),
58 m_rphidist(rhs.m_rphidist),
59 m_prob(rhs.m_prob),
60 m_mass(rhs.m_mass),
61 m_energyFraction(rhs.m_energyFraction),
62 m_fittedTrks(rhs.m_fittedTrks), // copies pointers only (tracks are in SG!)
63 m_mult(rhs.m_mult),
64 m_fitType(rhs.m_fitType),
65 m_secVtxPos(rhs.m_secVtxPos),
66 m_NGood2TrackVertices(rhs.m_NGood2TrackVertices)
67 {}

◆ ~SecVtxInfo()

Analysis::SecVtxInfo::~SecVtxInfo ( )
virtual

default destructor

Default destructor.

Definition at line 91 of file SecVtxInfo.cxx.

92{}

Member Function Documentation

◆ clone()

Analysis::SecVtxInfo * Analysis::SecVtxInfo::clone ( ) const
inlinevirtual

a clone method for the proper workings of the copy constructor

Reimplemented from Analysis::BaseTagInfo.

Definition at line 218 of file SecVtxInfo.h.

219{
220 return new SecVtxInfo(*this);
221}
SecVtxInfo()
default constructor

◆ distance()

double Analysis::SecVtxInfo::distance ( ) const
inline

The distance between the primary and the secondary vertex.

Not implemented yet. Maybe needs two- and three dim distances.

Definition at line 142 of file SecVtxInfo.h.

143{
144 return m_dist;
145}

◆ energyFraction()

double Analysis::SecVtxInfo::energyFraction ( ) const
inline

The energy fraction: Evtx/Ejet of charges tracks.

Definition at line 158 of file SecVtxInfo.h.

159{
160 return m_energyFraction;
161}

◆ fitType()

SecVtxInfo::FitType Analysis::SecVtxInfo::fitType ( ) const
inline

Returns an enum to indicate the type of fit.

Definition at line 166 of file SecVtxInfo.h.

167{
168 return m_fitType;
169}

◆ infoType()

TagInfoType Analysis::BaseTagInfo::infoType ( void ) const
inlinevirtualinherited

returns the infoType of the info objects.

This has to be set by the tagger.

Implements Analysis::ITagInfo.

Definition at line 81 of file BaseTagInfo.h.

82{
83 return m_tagJetInfoType;
84}
TagInfoType m_tagJetInfoType
string to hold the info type (specified by the tag tool)
Definition BaseTagInfo.h:69

◆ isValid()

bool Analysis::BaseTagInfo::isValid ( ) const
inlinevirtualinherited

returns true if the tag was successfull

Implements Analysis::ITagInfo.

Definition at line 73 of file BaseTagInfo.h.

74{
75 return m_isValid;
76}
bool m_isValid
true if the tagger could tag the jet, default is false
Definition BaseTagInfo.h:66

◆ makeValid()

void Analysis::BaseTagInfo::makeValid ( )
inlinevirtualinherited

sets the isValid flag to true, cannot be reversed!

Implements Analysis::ITagInfo.

Definition at line 77 of file BaseTagInfo.h.

78{
79 m_isValid = true;
80}

◆ mass()

double Analysis::SecVtxInfo::mass ( ) const
inline

The invariant mass of the tracks fitted to the vertex.

Definition at line 154 of file SecVtxInfo.h.

155{
156 return m_mass;
157}

◆ mult()

int Analysis::SecVtxInfo::mult ( ) const
inline

The number of tracks fitted in the vertex.

Definition at line 162 of file SecVtxInfo.h.

163{
164 return m_mult;
165}

◆ NumberOfG2TrackVertices()

int Analysis::SecVtxInfo::NumberOfG2TrackVertices ( ) const
inline

Returns number of 2 track vertices.

Definition at line 214 of file SecVtxInfo.h.

215{
217}

◆ numSelTracksForFit()

int Analysis::SecVtxInfo::numSelTracksForFit ( ) const
inline

The number of tracks available for the sec.vtx.

fit after track sel. cuts.

Definition at line 138 of file SecVtxInfo.h.

139{
141}

◆ operator=()

SecVtxInfo & Analysis::SecVtxInfo::operator= ( const SecVtxInfo & rhs)

assigenment operator

Definition at line 70 of file SecVtxInfo.cxx.

71{
72 if (this!=&rhs)
73 {
74 m_numSelTracksForFit=rhs.m_numSelTracksForFit;
75 m_tagLikelihood=rhs.m_tagLikelihood;
76 m_dist=rhs.m_dist;
77 m_rphidist=rhs.m_rphidist;
78 m_prob=rhs.m_prob;
79 m_mass=rhs.m_mass;
80 m_energyFraction=rhs.m_energyFraction;
81 m_fittedTrks=rhs.m_fittedTrks; // copies pointers only (tracks are in SG!)
82 m_mult=rhs.m_mult;
83 m_fitType=rhs.m_fitType;
84 m_secVtxPos=rhs.m_secVtxPos;
85 m_NGood2TrackVertices=rhs.m_NGood2TrackVertices;
86 }
87 return *this;
88}
std::vector< double > m_tagLikelihood
vector to hold the taglikelihood (signal plus N background)
Definition BaseTagInfo.h:67

◆ probability()

double Analysis::SecVtxInfo::probability ( ) const
inline

The fit probability of the fit.

It is set to -1 it the fit did not work.

Definition at line 150 of file SecVtxInfo.h.

151{
152 return m_prob;
153}

◆ rphidistance()

double Analysis::SecVtxInfo::rphidistance ( ) const
inline

Definition at line 146 of file SecVtxInfo.h.

147{
148 return m_rphidist;
149}

◆ secVertexPos()

const Trk::RecVertex & Analysis::SecVtxInfo::secVertexPos ( ) const
inline

Returns the reconstructed secondary vertex.

Definition at line 170 of file SecVtxInfo.h.

171{
172 return m_secVtxPos;
173}

◆ setDist()

void Analysis::SecVtxInfo::setDist ( double dist)
inline

Definition at line 202 of file SecVtxInfo.h.

203{
204 m_dist=dist;
205}

◆ setEnergyFraction()

void Analysis::SecVtxInfo::setEnergyFraction ( double energyFraction)
inline

Definition at line 194 of file SecVtxInfo.h.

195{
197}
double energyFraction() const
The energy fraction: Evtx/Ejet of charges tracks.
Definition SecVtxInfo.h:158

◆ setFitType()

void Analysis::SecVtxInfo::setFitType ( FitType type)
inline

Set-methods for the private data members of the class.

Definition at line 198 of file SecVtxInfo.h.

◆ setMass()

void Analysis::SecVtxInfo::setMass ( double mass)
inline

Definition at line 190 of file SecVtxInfo.h.

191{
192 m_mass=mass;
193}
double mass() const
The invariant mass of the tracks fitted to the vertex.
Definition SecVtxInfo.h:154

◆ setMult()

void Analysis::SecVtxInfo::setMult ( int mult)
inline

Definition at line 186 of file SecVtxInfo.h.

187{
188 m_mult=mult;
189}
int mult() const
The number of tracks fitted in the vertex.
Definition SecVtxInfo.h:162

◆ setNumberOfG2TrackVertices()

void Analysis::SecVtxInfo::setNumberOfG2TrackVertices ( int NSVPair)
inline

Definition at line 210 of file SecVtxInfo.h.

211{
212 m_NGood2TrackVertices=NGood2TrackVertices;
213}

◆ setNumSelTracksForFit()

void Analysis::SecVtxInfo::setNumSelTracksForFit ( int numSelTracksForFit)
inline

Definition at line 182 of file SecVtxInfo.h.

183{
185}
int numSelTracksForFit() const
The number of tracks available for the sec.vtx.
Definition SecVtxInfo.h:138

◆ setRPhiDist()

void Analysis::SecVtxInfo::setRPhiDist ( double dist)
inline

Definition at line 206 of file SecVtxInfo.h.

207{
208 m_rphidist=dist;
209}

◆ setSecVtx()

void Analysis::SecVtxInfo::setSecVtx ( const Trk::RecVertex & secVtx,
double fitProb,
const TrackVec & fittedTrks )
inline

Definition at line 174 of file SecVtxInfo.h.

177{
178 m_secVtxPos=secVtx;
179 m_prob=fitProb;
180 m_fittedTrks=fittedTrks;
181}

◆ setTagJetInfoType()

void Analysis::BaseTagInfo::setTagJetInfoType ( const TagInfoType & type)
inlineprotectedinherited

Definition at line 121 of file BaseTagInfo.h.

122{
124}

◆ setTagLikelihood() [1/2]

void Analysis::BaseTagInfo::setTagLikelihood ( const std::vector< double > & tagLikelihood)
inlinevirtualinherited

Return and set methods for the likelihood.

to set the tag likelihood for one tagger

Implements Analysis::ITagInfo.

Definition at line 85 of file BaseTagInfo.h.

86{
88}
virtual const std::vector< double > & tagLikelihood(void) const
returns the tag likelihood of one tagger
Definition BaseTagInfo.h:93

◆ setTagLikelihood() [2/2]

void Analysis::BaseTagInfo::setTagLikelihood ( std::vector< double > && tagLikelihood)
inlinevirtualinherited

to set the tag likelihood for one tagger

Implements Analysis::ITagInfo.

Definition at line 89 of file BaseTagInfo.h.

90{
92}

◆ setValid()

void Analysis::BaseTagInfo::setValid ( bool valid)
inlineprotectedinherited

Definition at line 117 of file BaseTagInfo.h.

118{
120}
list valid
Definition calibdata.py:44

◆ setWeight()

void Analysis::BaseTagInfo::setWeight ( double weight)
inlinevirtualinherited

set the weight for one tagger

Implements Analysis::ITagInfo.

Definition at line 105 of file BaseTagInfo.h.

106{
108}
double m_weight
weight for this tag
Definition BaseTagInfo.h:68
virtual double weight() const
get the weight of one tagger

◆ tagLikelihood()

const std::vector< double > & Analysis::BaseTagInfo::tagLikelihood ( void ) const
inlinevirtualinherited

returns the tag likelihood of one tagger

Implements Analysis::ITagInfo.

Definition at line 93 of file BaseTagInfo.h.

94{
95 // in principal the caller has to check if the vector has a length
96 // -> no checking for the size as in the case of lhSig(void)
97 return m_tagLikelihood;
98}

◆ weight()

double Analysis::BaseTagInfo::weight ( void ) const
inlinevirtualinherited

get the weight of one tagger

Implements Analysis::ITagInfo.

Definition at line 109 of file BaseTagInfo.h.

110{
111 return (this->isValid() ? m_weight : -19.75);
112}
virtual bool isValid() const
returns true if the tag was successfull
Definition BaseTagInfo.h:73

Member Data Documentation

◆ m_dist

double Analysis::SecVtxInfo::m_dist
private

Definition at line 126 of file SecVtxInfo.h.

◆ m_energyFraction

double Analysis::SecVtxInfo::m_energyFraction
private

Definition at line 130 of file SecVtxInfo.h.

◆ m_fittedTrks

TrackVec Analysis::SecVtxInfo::m_fittedTrks
private

Definition at line 131 of file SecVtxInfo.h.

◆ m_fitType

FitType Analysis::SecVtxInfo::m_fitType
private

Definition at line 133 of file SecVtxInfo.h.

◆ m_isValid

bool Analysis::BaseTagInfo::m_isValid
protectedinherited

true if the tagger could tag the jet, default is false

Definition at line 66 of file BaseTagInfo.h.

◆ m_mass

double Analysis::SecVtxInfo::m_mass
private

Definition at line 129 of file SecVtxInfo.h.

◆ m_mult

int Analysis::SecVtxInfo::m_mult
private

Definition at line 132 of file SecVtxInfo.h.

◆ m_NGood2TrackVertices

int Analysis::SecVtxInfo::m_NGood2TrackVertices
private

Definition at line 135 of file SecVtxInfo.h.

◆ m_numSelTracksForFit

int Analysis::SecVtxInfo::m_numSelTracksForFit
private

The number of tracks available for the sec.vtx.

fit after track sel. cuts

Definition at line 125 of file SecVtxInfo.h.

◆ m_prob

double Analysis::SecVtxInfo::m_prob
private

Definition at line 128 of file SecVtxInfo.h.

◆ m_rphidist

double Analysis::SecVtxInfo::m_rphidist
private

Definition at line 127 of file SecVtxInfo.h.

◆ m_secVtxPos

Trk::RecVertex Analysis::SecVtxInfo::m_secVtxPos
private

Definition at line 134 of file SecVtxInfo.h.

◆ m_tagJetInfoType

TagInfoType Analysis::BaseTagInfo::m_tagJetInfoType
protectedinherited

string to hold the info type (specified by the tag tool)

Definition at line 69 of file BaseTagInfo.h.

◆ m_tagLikelihood

std::vector<double> Analysis::BaseTagInfo::m_tagLikelihood
protectedinherited

vector to hold the taglikelihood (signal plus N background)

Definition at line 67 of file BaseTagInfo.h.

◆ m_weight

double Analysis::BaseTagInfo::m_weight
protectedinherited

weight for this tag

Definition at line 68 of file BaseTagInfo.h.


The documentation for this class was generated from the following files: