Analysis Software
Documentation for sPHENIX simulation software
|
Mathematics for reconstruction of primary vertices based on KFParticle. More...
#include <KFParticle/blob/master/KFParticle/KFVertex.h>
Public Member Functions | |
KFVertex () | |
KFVertex (const KFParticle &particle) | |
Vertex is constructed from the current position of a given particle. | |
KFVertex (const KFPVertex &vertex) | |
~KFVertex () | |
Int_t | GetNContributors () const |
Returns number of particles used for construction of the vertex. | |
void | operator+= (const KFParticle &Daughter) |
Adds particle to a vertex. | |
KFVertex | operator- (const KFParticle &Daughter) const |
Subtracts particle from a vertex, returns temporary object. Initial vertex stays untouched. | |
void | operator-= (const KFParticle &Daughter) |
Subtracts particle from a current vertex. | |
void | SetBeamConstraint (float X, float Y, float Z, float ErrX, float ErrY, float ErrZ) |
void | SetBeamConstraintOff () |
void | ConstructPrimaryVertex (const KFParticle *vDaughters[], int nDaughters, Bool_t vtxFlag[], float ChiCut=3.5) |
Public Member Functions inherited from KFParticle | |
KFParticle () | |
~KFParticle () | |
KFParticle (const KFParticle &d1, const KFParticle &d2) | |
KFParticle (const KFParticle &d1, const KFParticle &d2, const KFParticle &d3) | |
KFParticle (const KFParticle &d1, const KFParticle &d2, const KFParticle &d3, const KFParticle &d4) | |
void | Create (const float Param[], const float Cov[], Int_t Charge, float mass) |
void | Create (const Double_t Param[], const Double_t Cov[], Int_t Charge, float mass) |
KFParticle (const KFPTrack &track, const int PID) | |
KFParticle (const KFPVertex &vertex) | |
void | Initialize () |
float | GetX () const |
Retruns X coordinate of the particle, fP[0]. | |
float | GetY () const |
Retruns Y coordinate of the particle, fP[1]. | |
float | GetZ () const |
Retruns Z coordinate of the particle, fP[2]. | |
float | GetPx () const |
Retruns X component of the momentum, fP[3]. | |
float | GetPy () const |
Retruns Y component of the momentum, fP[4]. | |
float | GetPz () const |
Retruns Z component of the momentum, fP[5]. | |
float | GetE () const |
Returns energy of the particle, fP[6]. | |
float | GetS () const |
Returns dS=l/p, l - decay length, fP[7], defined if production vertex is set. | |
char | GetQ () const |
Returns charge of the particle. | |
float | GetChi2 () const |
Returns Chi2 of the fit. | |
Int_t | GetNDF () const |
Returns number of decrease of freedom. | |
Bool_t | GetAtProductionVertex () const |
Returns a flag which shows if the particle is located at the production point. | |
void | SetAtProductionVertex (Bool_t b) |
Set a flag that particle is at the production point. | |
const float & | X () const |
Retruns X coordinate of the particle, fP[0]. | |
const float & | Y () const |
Retruns Y coordinate of the particle, fP[1]. | |
const float & | Z () const |
Retruns Z coordinate of the particle, fP[2]. | |
const float & | Px () const |
Retruns X component of the momentum, fP[3]. | |
const float & | Py () const |
Retruns Y component of the momentum, fP[4]. | |
const float & | Pz () const |
Retruns Z component of the momentum, fP[5]. | |
const float & | E () const |
Returns energy of the particle, fP[6]. | |
const float & | S () const |
Returns dS=l/p, l - decay length, fP[7], defined if production vertex is set. | |
const char & | Q () const |
Returns charge of the particle. | |
const float & | Chi2 () const |
Returns Chi2 of the fit. | |
const Int_t & | NDF () const |
Returns number of decrease of freedom. | |
float | GetParameter (int i) const |
Returns P[i] parameter. | |
float | GetCovariance (int i) const |
Returns C[i] element of the covariance matrix in the lower triangular form. | |
float | GetCovariance (int i, int j) const |
Returns C[i,j] element of the covariance matrix. | |
float | GetP () const |
Returns momentum. | |
float | GetPt () const |
Returns transverse momentum. | |
float | GetEta () const |
Returns pseudorapidity. | |
float | GetPhi () const |
Returns the azimuthal angle phi. | |
float | GetMomentum () const |
Returns momentum. | |
float | GetMass () const |
Returns mass. | |
float | GetDecayLength () const |
Returns decay length. | |
float | GetDecayLengthXY () const |
Returns decay length in XY. | |
float | GetLifeTime () const |
Returns life time ctau [cm]. | |
float | GetR () const |
Returns distance to the origin of the coordinate system {0,0,0}. | |
float | GetErrX () const |
Returns the error of X of current position. | |
float | GetErrY () const |
Returns the error of Y of current position. | |
float | GetErrZ () const |
Returns the error of Z of current position. | |
float | GetErrPx () const |
Returns the error of X-compoment of the particle momentum. | |
float | GetErrPy () const |
Returns the error of Y-compoment of the particle momentum. | |
float | GetErrPz () const |
Returns the error of Z-compoment of the particle momentum. | |
float | GetErrE () const |
Returns the error of energy. | |
float | GetErrS () const |
Returns the error of decay length / momentum. | |
float | GetErrP () const |
Returns the error of momentum. | |
float | GetErrPt () const |
Returns the error of transverse momentum. | |
float | GetErrEta () const |
Returns the error of pseudorapidity. | |
float | GetErrPhi () const |
Returns the error of the azimuthal angle phi. | |
float | GetErrMomentum () const |
Returns the error of momentum. | |
float | GetErrMass () const |
Returns the error of mass. | |
float | GetErrDecayLength () const |
Returns the error of decay length. | |
float | GetErrDecayLengthXY () const |
Returns the error of decay length in XY. | |
float | GetErrLifeTime () const |
Returns the error of life time. | |
float | GetErrR () const |
Returns the error of distance to the origin of the coordinate system {0,0,0}. | |
int | GetP (float &P, float &SigmaP) const |
int | GetPt (float &Pt, float &SigmaPt) const |
int | GetEta (float &Eta, float &SigmaEta) const |
int | GetPhi (float &Phi, float &SigmaPhi) const |
int | GetMomentum (float &P, float &SigmaP) const |
int | GetMass (float &M, float &SigmaM) const |
int | GetDecayLength (float &L, float &SigmaL) const |
int | GetDecayLengthXY (float &L, float &SigmaL) const |
int | GetLifeTime (float &T, float &SigmaT) const |
int | GetR (float &R, float &SigmaR) const |
float | GetRapidity () const |
Returns rapidity of the particle. | |
float | GetTheta () const |
Returns the polar angle in RZ. | |
float & | X () |
Modifier of X coordinate of the particle, fP[0]. | |
float & | Y () |
Modifier of Y coordinate of the particle, fP[1]. | |
float & | Z () |
Modifier of Z coordinate of the particle, fP[2]. | |
float & | Px () |
Modifier of X component of the momentum, fP[3]. | |
float & | Py () |
Modifier of Y component of the momentum, fP[4]. | |
float & | Pz () |
Modifier of Z component of the momentum, fP[5]. | |
float & | E () |
Modifier of energy of the particle, fP[6]. | |
float & | S () |
Modifier of dS=l/p, l - decay length, fP[7], defined if production vertex is set. | |
char & | Q () |
Modifier of charge of the particle. | |
float & | Chi2 () |
Modifier of Chi2 of the fit. | |
Int_t & | NDF () |
Modifier of number of decrease of freedom. | |
float & | Parameter (int i) |
Modifier of P[i] parameter. | |
float & | Covariance (int i) |
Modifier of C[i] element of the covariance matrix in the lower triangular form. | |
float & | Covariance (int i, int j) |
Modifier of C[i,j] element of the covariance matrix. | |
float * | Parameters () |
Returns pointer to the parameters fP. | |
float * | CovarianceMatrix () |
Returns pointer to the covariance matrix fC. | |
void | AddDaughter (const KFParticle &Daughter) |
void | operator+= (const KFParticle &Daughter) |
void | Construct (const KFParticle *vDaughters[], int nDaughters, const KFParticle *ProdVtx=0, float Mass=-1) |
void | TransportToPoint (const float xyz[]) |
void | TransportToParticle (const KFParticle &p) |
float | GetDStoPoint (const float xyz[3], float dsdr[6]) const |
void | GetDStoParticle (const KFParticleBase &p, float dS[2], float dsdr[4][6]) const |
Bool_t | GetDistanceFromVertexXY (const float vtx[], float &val, float &err) const |
Bool_t | GetDistanceFromVertexXY (const float vtx[], const float Cv[], float &val, float &err) const |
Bool_t | GetDistanceFromVertexXY (const KFParticle &Vtx, float &val, float &err) const |
float | GetDistanceFromVertexXY (const float vtx[]) const |
float | GetDistanceFromVertexXY (const KFParticle &Vtx) const |
float | GetDistanceFromParticleXY (const KFParticle &p) const |
float | GetDeviationFromVertexXY (const float v[], const float Cv[]=0) const |
float | GetDeviationFromVertexXY (const KFParticle &Vtx) const |
float | GetDeviationFromParticleXY (const KFParticle &p) const |
void | GetParametersAtPoint (const float *point, const float *pointCov, float *m, float *mV) |
float | GetAngle (const KFParticle &p) const |
float | GetAngleXY (const KFParticle &p) const |
float | GetAngleRZ (const KFParticle &p) const |
float | GetPseudoProperDecayTime (const KFParticle &primVertex, const float &mass, float *timeErr2=0) const |
void | GetFieldValue (const float xyz[], float B[]) const |
void | Transport (float dS, const float *dsdr, float P[], float C[], float *dsdr1=0, float *F=0, float *F1=0) const |
Public Member Functions inherited from KFParticleBase | |
float | GetDStoPointLine (const float xyz[3], float dsdr[6]) const |
float | GetDStoPointBz (float B, const float xyz[3], float dsdr[6], const float *param=0) const |
float | GetDStoPointBy (float By, const float xyz[3], float dsdr[6]) const |
float | GetDStoPointB (const float *B, const float xyz[3], float dsdr[6]) const |
float | GetDStoPointCBM (const float xyz[3], float dsdr[6]) const |
void | GetDStoParticleLine (const KFParticleBase &p, float dS[2], float dsdr[4][6]) const |
void | GetDStoParticleBz (float Bz, const KFParticleBase &p, float dS[2], float dsdr[4][6], const float *param1=0, const float *param2=0) const |
void | GetDStoParticleBy (float B, const KFParticleBase &p, float dS[2], float dsdr[4][6]) const |
void | GetDStoParticleCBM (const KFParticleBase &p, float dS[2], float dsdr[4][6]) const |
virtual void | Transport (float dS, const float dsdr[6], float P[], float C[], float *dsdr1=0, float *F=0, float *F1=0) const =0 |
KFParticleBase () | |
virtual | ~KFParticleBase () |
The default destructor. | |
void | Initialize (const float Param[], const float Cov[], Int_t Charge, float Mass) |
void | Initialize () |
void | SetConstructMethod (Int_t m) |
Defines the construction method for the current particle (see description of fConstructMethod). | |
void | SetMassHypo (float m) |
Sets the mass hypothesis to the particle, is used when fConstructMethod = 2. | |
const float & | GetMassHypo () const |
Returns the mass hypothesis. | |
const float & | GetSumDaughterMass () const |
Returns the sum of masses of the daughters. | |
float | GetX () const |
Retruns X coordinate of the particle, fP[0]. | |
float | GetY () const |
Retruns Y coordinate of the particle, fP[1]. | |
float | GetZ () const |
Retruns Z coordinate of the particle, fP[2]. | |
float | GetPx () const |
Retruns X component of the momentum, fP[3]. | |
float | GetPy () const |
Retruns Y component of the momentum, fP[4]. | |
float | GetPz () const |
Retruns Z component of the momentum, fP[5]. | |
float | GetE () const |
Returns energy of the particle, fP[6]. | |
float | GetS () const |
Returns dS=l/p, l - decay length, fP[7], defined if production vertex is set. | |
char | GetQ () const |
Returns charge of the particle. | |
float | GetChi2 () const |
Returns Chi2 of the fit. | |
Int_t | GetNDF () const |
Returns number of decrease of freedom. | |
const float & | X () const |
Retruns X coordinate of the particle, fP[0]. | |
const float & | Y () const |
Retruns Y coordinate of the particle, fP[1]. | |
const float & | Z () const |
Retruns Z coordinate of the particle, fP[2]. | |
const float & | Px () const |
Retruns X component of the momentum, fP[3]. | |
const float & | Py () const |
Retruns Y component of the momentum, fP[4]. | |
const float & | Pz () const |
Retruns Z component of the momentum, fP[5]. | |
const float & | E () const |
Returns energy of the particle, fP[6]. | |
const float & | S () const |
Returns dS=l/p, l - decay length, fP[7], defined if production vertex is set. | |
const char & | Q () const |
Returns charge of the particle. | |
const float & | Chi2 () const |
Returns Chi2 of the fit. | |
const Int_t & | NDF () const |
Returns number of decrease of freedom. | |
float | GetParameter (Int_t i) const |
Returns P[i] parameter. | |
float | GetCovariance (Int_t i) const |
Returns C[i] element of the covariance matrix in the lower triangular form. | |
float | GetCovariance (Int_t i, Int_t j) const |
Returns C[i,j] element of the covariance matrix. | |
Int_t | GetMomentum (float &p, float &error) const |
Int_t | GetPt (float &pt, float &error) const |
Int_t | GetEta (float &eta, float &error) const |
Int_t | GetPhi (float &phi, float &error) const |
Int_t | GetMass (float &m, float &error) const |
Int_t | GetDecayLength (float &l, float &error) const |
Int_t | GetDecayLengthXY (float &l, float &error) const |
Int_t | GetLifeTime (float &ctau, float &error) const |
Int_t | GetR (float &r, float &error) const |
float & | X () |
Modifier of X coordinate of the particle, fP[0]. | |
float & | Y () |
Modifier of Y coordinate of the particle, fP[1]. | |
float & | Z () |
Modifier of Z coordinate of the particle, fP[2]. | |
float & | Px () |
Modifier of X component of the momentum, fP[3]. | |
float & | Py () |
Modifier of Y component of the momentum, fP[4]. | |
float & | Pz () |
Modifier of Z component of the momentum, fP[5]. | |
float & | E () |
Modifier of energy of the particle, fP[6]. | |
float & | S () |
Modifier of dS=l/p, l - decay length, fP[7], defined if production vertex is set. | |
char & | Q () |
Modifier of charge of the particle. | |
float & | Chi2 () |
Modifier of Chi2 of the fit. | |
Int_t & | NDF () |
Modifier of number of decrease of freedom. | |
float & | Parameter (Int_t i) |
Modifier of P[i] parameter. | |
float & | Covariance (Int_t i) |
Modifier of C[i] element of the covariance matrix in the lower triangular form. | |
float & | Covariance (Int_t i, Int_t j) |
Modifier of C[i,j] element of the covariance matrix. | |
void | operator+= (const KFParticleBase &Daughter) |
void | AddDaughter (const KFParticleBase &Daughter) |
void | SubtractDaughter (const KFParticleBase &Daughter) |
void | AddDaughterWithEnergyFit (const KFParticleBase &Daughter) |
void | AddDaughterWithEnergyFitMC (const KFParticleBase &Daughter) |
void | SetProductionVertex (const KFParticleBase &Vtx) |
void | SetNonlinearMassConstraint (float Mass) |
void | SetMassConstraint (float Mass, float SigmaMass=0) |
void | SetNoDecayLength () |
void | Construct (const KFParticleBase *vDaughters[], Int_t nDaughters, const KFParticleBase *ProdVtx=0, float Mass=-1) |
void | TransportToDecayVertex () |
void | TransportToProductionVertex () |
void | TransportToDS (float dS, const float *dsdr) |
void | TransportBz (float Bz, float dS, const float *dsdr, float P[], float C[], float *dsdr1=0, float *F=0, float *F1=0) const |
void | TransportCBM (float dS, const float *dsdr, float P[], float C[], float *dsdr1=0, float *F=0, float *F1=0) const |
float | GetDistanceFromVertex (const float vtx[]) const |
float | GetDistanceFromVertex (const KFParticleBase &Vtx) const |
float | GetDistanceFromParticle (const KFParticleBase &p) const |
float | GetDeviationFromVertex (const float v[], const float Cv[]=0) const |
float | GetDeviationFromVertex (const KFParticleBase &Vtx) const |
float | GetDeviationFromParticle (const KFParticleBase &p) const |
void | SubtractFromVertex (KFParticleBase &Vtx) const |
void | SubtractFromParticle (KFParticleBase &Vtx) const |
void | RotateXY (float angle, float Vtx[3]) |
int | Id () const |
Returns Id of the particle. | |
int | NDaughters () const |
Returns number of daughter particles. | |
const std::vector< int > & | DaughterIds () const |
Returns the vector with the indices of daughter particles. | |
void | CleanDaughtersId () |
Cleans the vector with the indices of daughter particles. | |
void | SetId (int id) |
Sets the Id of the particle. After the construction of a particle should be set by user. | |
void | AddDaughterId (int id) |
Adds index of the daughter particle. | |
void | SetPDG (int pdg) |
Sets the PDG hypothesis. | |
int | GetPDG () const |
Returns the PDG hypothesis. | |
Protected Attributes | |
Bool_t | fIsConstrained |
Flag showing if the the beam constraint is set. | |
Additional Inherited Members | |
Static Public Member Functions inherited from KFParticleBase | |
static void | GetArmenterosPodolanski (KFParticleBase &positive, KFParticleBase &negative, float QtAlfa[2]) |
static void | InvertCholetsky3 (float a[6]) |
static void | MultQSQt (const float Q[], const float S[], float SOut[], const int kN) |
Protected Member Functions inherited from KFParticleBase | |
float & | Cij (Int_t i, Int_t j) |
void | TransportLine (float S, const float *dsdr, float P[], float C[], float *dsdr1, float *F, float *F1) const |
bool | GetMeasurement (const KFParticleBase &daughter, float m[], float V[], float D[3][3]) |
void | SetMassConstraint (float *mP, float *mC, float mJ[7][7], float mass) |
Static Protected Member Functions inherited from KFParticleBase | |
static Int_t | IJ (Int_t i, Int_t j) |
Mathematics for reconstruction of primary vertices based on KFParticle.
The class is inherited from KFParticle, adds functionality for reconstruction of primary vertices.
Definition at line 39 of file KFVertex.h.
View newest version in sPHENIX GitHub at line 39 of file KFVertex.h
|
inline |
Definition at line 43 of file KFVertex.h.
View newest version in sPHENIX GitHub at line 43 of file KFVertex.h
|
inline |
Vertex is constructed from the current position of a given particle.
Definition at line 44 of file KFVertex.h.
View newest version in sPHENIX GitHub at line 44 of file KFVertex.h
KFVertex::KFVertex | ( | const KFPVertex & | vertex | ) |
Constructor from KFPVertex.
Definition at line 29 of file KFVertex.cxx.
View newest version in sPHENIX GitHub at line 29 of file KFVertex.cxx
References KFParticleBase::fAtProductionVertex, KFParticleBase::fC, KFParticleBase::fChi2, KFParticleBase::fNDF, KFParticleBase::fP, KFParticleBase::fQ, KFParticleBase::fSFromDecay, KFPVertex::GetChi2(), KFPVertex::GetCovarianceMatrix(), KFPVertex::GetNContributors(), and KFPVertex::GetXYZ().
|
inline |
Definition at line 46 of file KFVertex.h.
View newest version in sPHENIX GitHub at line 46 of file KFVertex.h
void KFVertex::ConstructPrimaryVertex | ( | const KFParticle * | vDaughters[], |
int | nDaughters, | ||
Bool_t | vtxFlag[], | ||
float | ChiCut = 3.5 |
||
) |
Reconstructs the primary vertex from a set of particles. Reconstruction is parformed in three steps:
1) vertex seed is constructed from all particles;
2) if particle deviates more then on the "ChiCut" it is rejected;
3) the final vertex is constructed from the set of remaining particles.
Rejected particles are marked with "false" in the output array of flags.
[in] | vDaughters | - input array of pointers to the particles |
[in] | nDaughters | - number of particles in the input array |
[out] | vtxFlag | - array of flags showing if particle was used in the vertex fit, if yes - set to "true" |
[in] | ChiCut | - cut on the chi2-deviation of the particle from the created seed, by default the cut is set to 3.5 |
Definition at line 67 of file KFVertex.cxx.
View newest version in sPHENIX GitHub at line 67 of file KFVertex.cxx
References KFParticle::Construct(), KFParticleBase::fC, KFParticleBase::fChi2, fIsConstrained, KFParticleBase::fNDF, KFParticleBase::fP, KFParticle::GetChi2(), KFParticleBase::GetDeviationFromVertex(), KFParticle::GetNDF(), i, it, and merge_hashes::p.
Referenced by KFParticlePVReconstructor::FindPrimaryClusters().
|
inline |
Returns number of particles used for construction of the vertex.
Definition at line 48 of file KFVertex.h.
View newest version in sPHENIX GitHub at line 48 of file KFVertex.h
References fIsConstrained, and KFParticleBase::fNDF.
|
inline |
Adds particle to a vertex.
Definition at line 79 of file KFVertex.h.
View newest version in sPHENIX GitHub at line 79 of file KFVertex.h
References KFParticle::operator+=().
|
inline |
Subtracts particle from a vertex, returns temporary object. Initial vertex stays untouched.
Definition at line 90 of file KFVertex.h.
View newest version in sPHENIX GitHub at line 90 of file KFVertex.h
References KFParticleBase::SubtractFromVertex(), and Acts::Test::tmp().
|
inline |
Subtracts particle from a current vertex.
Definition at line 85 of file KFVertex.h.
View newest version in sPHENIX GitHub at line 85 of file KFVertex.h
References KFParticleBase::SubtractFromVertex().
void KFVertex::SetBeamConstraint | ( | float | X, |
float | Y, | ||
float | Z, | ||
float | ErrX, | ||
float | ErrY, | ||
float | ErrZ | ||
) |
Sets a soft beam constraint on the vertex position.
[in] | x,y,z | - coordinates of the constraint |
[in] | errX,errY,errZ | - corresponding errors |
Definition at line 42 of file KFVertex.cxx.
View newest version in sPHENIX GitHub at line 42 of file KFVertex.cxx
References KFParticleBase::fC, fIsConstrained, KFParticleBase::fP, ambiguity_solver_full_chain::x, y, and physmon_track_finding_ttbar::z.
void KFVertex::SetBeamConstraintOff | ( | ) |
Switches off the constraint. Should be called before KFVertex::ConstructPrimaryVertex()
Definition at line 61 of file KFVertex.cxx.
View newest version in sPHENIX GitHub at line 61 of file KFVertex.cxx
References fIsConstrained.
|
protected |
Flag showing if the the beam constraint is set.
Definition at line 64 of file KFVertex.h.
View newest version in sPHENIX GitHub at line 64 of file KFVertex.h
Referenced by ConstructPrimaryVertex(), GetNContributors(), SetBeamConstraint(), and SetBeamConstraintOff().