Analysis Software
Documentation for sPHENIX simulation software
|
A class to store vectors of input tracks in the cartesian parametrisation. More...
#include <KFParticle/blob/master/KFParticle/KFPTrackVector.h>
Public Member Functions | |
KFPTrackVector () | |
~KFPTrackVector () | |
int | Size () const |
int | DataSize () const |
void | Resize (const int n) |
void | Set (KFPTrackVector &v, int vSize, int offset) |
void | SetTracks (const KFPTrackVector &track, const kfvector_uint &trackIndex, const int nIndexes) |
void | GetTrack (KFPTrack &track, const int n) |
const kfvector_float & | X () const |
Returns constant reference to the vector with X coordinates. | |
const kfvector_float & | Y () const |
Returns constant reference to the vector with Y coordinates. | |
const kfvector_float & | Z () const |
Returns constant reference to the vector with Z coordinates. | |
const kfvector_float & | Px () const |
Returns constant reference to the vector with Px components of momentum. | |
const kfvector_float & | Py () const |
Returns constant reference to the vector with Py components of momentum. | |
const kfvector_float & | Pz () const |
Returns constant reference to the vector with Pz components of momentum. | |
const kfvector_float & | Parameter (const int i) const |
Returns constant reference to the track parameter vector with index "i". | |
const kfvector_float & | Covariance (const int i) const |
Returns constant reference to the vector of the covariance matrix elements with index "i". | |
const kfvector_int & | Id () const |
Returns constant reference to the vector with track Id KFPTrackVector::fId. | |
const kfvector_int & | PDG () const |
Returns constant reference to the vector with assigned PDG hypothesis KFPTrackVector::fPDG. | |
const kfvector_int & | Q () const |
Returns constant reference to the vector with charge KFPTrackVector::fQ. | |
const kfvector_int & | PVIndex () const |
Returns constant reference to the vector with indices of corresponding primary vertex KFPTrackVector::fPVIndex. | |
const kfvector_int & | NPixelHits () const |
Returns constant reference to the vector with the number of precise measurements KFPTrackVector::fNPixelHits. | |
float | Pt (const int n) const |
Returns transverse momentum of the track with index "n". | |
float | P (const int n) const |
Returns momentum of the track with index "n". | |
void | SetParameter (float value, int iP, int iTr) |
Sets the "value" of the parameter "iP" of the track with index "iTr". | |
void | SetCovariance (float value, int iC, int iTr) |
Sets the "value" of the element of covariance matrix "iC" of the track with index "iTr". | |
void | SetParameter (const float_v &value, int iP, int iTr) |
void | SetCovariance (const float_v &value, int iC, int iTr) |
void | SetId (int value, int iTr) |
Sets Id of the track with index "iTr". | |
void | SetPDG (int value, int iTr) |
Sets PDG hypothesis of the track with index "iTr". | |
void | SetQ (int value, int iTr) |
Sets charge of the track with index "iTr". | |
void | SetPVIndex (int value, int iTr) |
Sets index of the corresponding primary vertex of the track with index "iTr". | |
void | SetNPixelHits (int value, int iTr) |
Sets number of precise measurement of the track with index "iTr". | |
void | SetLastElectron (int n) |
Sets index of the last electron. | |
void | SetLastMuon (int n) |
Sets index of the last muon. | |
void | SetLastPion (int n) |
Sets index of the last pion. | |
void | SetLastKaon (int n) |
Sets index of the last kaon. | |
void | SetLastProton (int n) |
Sets index of the last proton. | |
void | SetLastDeuteron (int n) |
Sets index of the last deuteron. | |
void | SetLastTritium (int n) |
Sets index of the last triton. | |
void | SetLastHe3 (int n) |
Sets index of the last He3. | |
void | SetLastHe4 (int n) |
Sets index of the last He4. | |
void | RecalculateLastIndex () |
int | FirstElectron () |
Returns index of the first electron. | |
const int & | LastElectron () const |
Returns index of the last electron. | |
int | NElectrons () |
Returns number of electrons. | |
int | FirstMuon () |
Returns index of the first element of the SIMD vector with the first muon. | |
const int & | LastMuon () const |
Returns index of the last muon. | |
int | NMuons () |
Returns number of muons. | |
int | FirstPion () |
Returns index of the first element of the SIMD vector with the first pion. | |
const int & | LastPion () const |
Returns index of the last pion. | |
int | NPions () |
Returns number of pions. | |
int | FirstKaon () |
Returns index of the first element of the SIMD vector with the first kaon. | |
const int & | LastKaon () const |
Returns index of the last kaon. | |
int | NKaons () |
Returns number of kaons. | |
int | FirstProton () |
Returns index of the first element of the SIMD vector with the first proton. | |
const int & | LastProton () const |
Returns index of the last proton. | |
int | NProtons () |
Returns number of protons. | |
int | FirstDeuteron () |
Returns index of the first element of the SIMD vector with the first deuteron. | |
const int & | LastDeuteron () const |
Returns index of the last deuteron. | |
int | NDeuterons () |
Returns number of deuterons. | |
int | FirstTritium () |
Returns index of the first element of the SIMD vector with the first triton. | |
const int & | LastTritium () const |
Returns index of the last triton. | |
int | NTritiums () |
Returns number of tritons. | |
int | FirstHe3 () |
Returns index of the first element of the SIMD vector with the first He3. | |
const int & | LastHe3 () const |
Returns index of the last He3. | |
int | NHe3s () |
Returns number of He3 tracks. | |
int | FirstHe4 () |
Returns index of the first element of the SIMD vector with the first He4. | |
const int & | LastHe4 () const |
Returns index of the last He4. | |
int | NHe4s () |
Returns number of He4 tracks. | |
void | AddElectron () |
Increases by one index of the last electron. | |
void | AddMuon () |
Increases by one index of the last muon. | |
void | AddPion () |
Increases by one index of the last pion. | |
void | AddKaon () |
Increases by one index of the last kaon. | |
void | AddProton () |
Increases by one index of the last proton. | |
void | AddDeuteron () |
Increases by one index of the last deuteron. | |
void | AddTririum () |
Increases by one index of the last triton. | |
void | AddHe3 () |
Increases by one index of the last He3. | |
void | AddHe4 () |
Increases by one index of the last He4. | |
void | RotateXY (float_v alpha, int firstElement) |
void | PrintTrack (int n) |
void | Print () |
const KFPTrackVector & | operator= (const KFPTrackVector &track) |
void | SetDataToVector (int *data, int &offset) |
void | ReadDataFromVector (int *data, int &offset) |
void * | operator new (size_t size) |
new operator for allocation of the SIMD-alligned dynamic memory allocation | |
void * | operator new[] (size_t size) |
new operator for allocation of the SIMD-alligned dynamic memory allocation | |
void * | operator new (size_t size, void *ptr) |
new operator for allocation of the SIMD-alligned dynamic memory allocation | |
void * | operator new[] (size_t size, void *ptr) |
new operator for allocation of the SIMD-alligned dynamic memory allocation | |
void | operator delete (void *ptr, size_t) |
delete operator for the SIMD-alligned dynamic memory release | |
void | operator delete[] (void *ptr, size_t) |
delete operator for the SIMD-alligned dynamic memory release | |
Private Attributes | |
kfvector_float | fP [6] |
Vectors with parameters of the track : X, Y, Z, Px, Py, Pz. | |
kfvector_float | fC [21] |
Vectors with covariance matrix of the track parameters stroed in a lower triangular form. | |
kfvector_int | fId |
Vector with the unique Id of tracks. | |
kfvector_int | fPDG |
Vector with the PDG hypothesis. | |
kfvector_int | fQ |
Vector with the charge of the tracks. | |
kfvector_int | fPVIndex |
Vector with the index of the corresponding primary vertex. If track is considered secondary "-1" is stored. | |
kfvector_int | fNPixelHits |
Vector with the number of hits from precise detectors (like MVD in CBM, HFT in STAR, ITS in ALICE, etc.) | |
int | fNE |
Index of the last electron. | |
int | fNMu |
Index of the last muon. | |
int | fNPi |
Index of the last pion (plus tracks without PID). | |
int | fNK |
Index of the last kaon. | |
int | fNP |
Index of the last proton. | |
int | fND |
Index of the last deuteron. | |
int | fNT |
Index of the last triton. | |
int | fNHe3 |
Index of the last He3. | |
int | fNHe4 |
Index of the last He4. | |
Friends | |
class | KFParticleTopoReconstructor |
A class to store vectors of input tracks in the cartesian parametrisation.
A track is described with the state vector { X, Y, Z, Px, Py, Pz } and the corresponding covariance matrix. Also contains charge of the track, unique Id, assigned PDG hypothesis, charge, index of the corresponding primary vertex in case of primary track, number of hits from precise detectors (like MVD in CBM, HFT in STAR, ITS in ALICE, etc.) and the magnetic field approximation along the track trajectory (in case of nonhomogeneous CBM-like field).
The data model implemented in the class is "Structure Of Arrays": each parameter is stroed in a separate vector. Such data structure allows fast vectorised access to the aligned data providing the maximum possible speed for data reading, and at the same time easy random access to the data members. Tracks are sorted by KFParticleTopoReconstructor::SortTracks(): electrons, muons, pions, tracks without PID, kaons, protons, deuterons, tritons, He3, He4.
Definition at line 49 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 49 of file KFPTrackVector.h
|
inline |
Definition at line 53 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 53 of file KFPTrackVector.h
|
inline |
Definition at line 54 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 54 of file KFPTrackVector.h
|
inline |
Increases by one index of the last deuteron.
Definition at line 182 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 182 of file KFPTrackVector.h
References fND.
|
inline |
Increases by one index of the last electron.
Definition at line 177 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 177 of file KFPTrackVector.h
References fNE.
|
inline |
Increases by one index of the last He3.
Definition at line 184 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 184 of file KFPTrackVector.h
References fNHe3.
|
inline |
Increases by one index of the last He4.
Definition at line 185 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 185 of file KFPTrackVector.h
References fNHe4.
|
inline |
Increases by one index of the last kaon.
Definition at line 180 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 180 of file KFPTrackVector.h
References fNK.
|
inline |
Increases by one index of the last muon.
Definition at line 178 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 178 of file KFPTrackVector.h
References fNMu.
|
inline |
Increases by one index of the last pion.
Definition at line 179 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 179 of file KFPTrackVector.h
References fNPi.
|
inline |
Increases by one index of the last proton.
Definition at line 181 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 181 of file KFPTrackVector.h
References fNP.
|
inline |
Increases by one index of the last triton.
Definition at line 183 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 183 of file KFPTrackVector.h
References fNT.
|
inline |
Returns constant reference to the vector of the covariance matrix elements with index "i".
Definition at line 83 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 83 of file KFPTrackVector.h
Referenced by KFParticleSIMD::Create(), KFParticleSIMD::KFParticleSIMD(), KFParticleSIMD::Load(), and Print().
|
inline |
Returns size of the memory in floats (4 bytes or 32 bits) allocated by the current object.
Definition at line 58 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 58 of file KFPTrackVector.h
|
inline |
Returns index of the first element of the SIMD vector with the first deuteron.
Definition at line 164 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 164 of file KFPTrackVector.h
References float_vLen, and fNP.
|
inline |
Returns index of the first electron.
Definition at line 149 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 149 of file KFPTrackVector.h
|
inline |
Returns index of the first element of the SIMD vector with the first He3.
Definition at line 170 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 170 of file KFPTrackVector.h
References float_vLen, and fNT.
|
inline |
Returns index of the first element of the SIMD vector with the first He4.
Definition at line 173 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 173 of file KFPTrackVector.h
References float_vLen, and fNHe3.
|
inline |
Returns index of the first element of the SIMD vector with the first kaon.
Definition at line 158 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 158 of file KFPTrackVector.h
References float_vLen, and fNPi.
Referenced by KFParticleFinder::Find2DaughterDecay(), and KFParticleFinder::NeutralDaughterDecay().
|
inline |
Returns index of the first element of the SIMD vector with the first muon.
Definition at line 152 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 152 of file KFPTrackVector.h
References float_vLen, and fNE.
Referenced by KFParticleFinder::Find2DaughterDecay(), and KFParticleFinder::NeutralDaughterDecay().
|
inline |
Returns index of the first element of the SIMD vector with the first pion.
Definition at line 155 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 155 of file KFPTrackVector.h
References float_vLen, and fNMu.
Referenced by KFParticleFinder::ConstructPrimaryBG(), KFParticleFinder::Find2DaughterDecay(), and KFParticleFinder::NeutralDaughterDecay().
|
inline |
Returns index of the first element of the SIMD vector with the first proton.
Definition at line 161 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 161 of file KFPTrackVector.h
References float_vLen, and fNK.
Referenced by KFParticleFinder::Find2DaughterDecay(), and KFParticleFinder::NeutralDaughterDecay().
|
inline |
Returns index of the first element of the SIMD vector with the first triton.
Definition at line 167 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 167 of file KFPTrackVector.h
References float_vLen, and fND.
void KFPTrackVector::GetTrack | ( | KFPTrack & | track, |
const int | n | ||
) |
Copies track with index "n" for the current object to the KFPTrack object "track".
[out] | track | - KFPTrack object, where track with index "n" is copied |
[in] | n | - index of the track to be copied |
Definition at line 244 of file KFPTrackVector.cxx.
View newest version in sPHENIX GitHub at line 244 of file KFPTrackVector.cxx
References fC, fId, fP, fQ, i, KFPTrack::SetCharge(), KFPTrack::SetCovariance(), KFPTrack::SetId(), and KFPTrack::SetParameters().
Referenced by KFParticleFinder::FindParticles(), and KFParticlePVReconstructor::Init().
|
inline |
Returns constant reference to the vector with track Id KFPTrackVector::fId.
Definition at line 88 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 88 of file KFPTrackVector.h
References fId.
Referenced by KFParticleFinder::ConstructTrackV0Cand(), KFParticleFinder::FindTrackV0Decay(), KFParticleFinder::NeutralDaughterDecay(), and Print().
|
inline |
Returns index of the last deuteron.
Definition at line 165 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 165 of file KFPTrackVector.h
References fND.
Referenced by Print().
|
inline |
Returns index of the last electron.
Definition at line 150 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 150 of file KFPTrackVector.h
References fNE.
Referenced by Print(), and KFParticleTopoReconstructor::SaveInputParticles().
|
inline |
Returns index of the last He3.
Definition at line 171 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 171 of file KFPTrackVector.h
References fNHe3.
Referenced by Print().
|
inline |
Returns index of the last He4.
Definition at line 174 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 174 of file KFPTrackVector.h
References fNHe4.
Referenced by Print().
|
inline |
Returns index of the last kaon.
Definition at line 159 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 159 of file KFPTrackVector.h
References fNK.
Referenced by KFParticleFinder::Find2DaughterDecay(), KFParticleFinder::NeutralDaughterDecay(), Print(), and KFParticleTopoReconstructor::SaveInputParticles().
|
inline |
Returns index of the last muon.
Definition at line 153 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 153 of file KFPTrackVector.h
References fNMu.
Referenced by KFParticleFinder::Find2DaughterDecay(), KFParticleFinder::NeutralDaughterDecay(), Print(), and KFParticleTopoReconstructor::SaveInputParticles().
|
inline |
Returns index of the last pion.
Definition at line 156 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 156 of file KFPTrackVector.h
References fNPi.
Referenced by KFParticleFinder::Find2DaughterDecay(), KFParticleFinder::NeutralDaughterDecay(), Print(), and KFParticleTopoReconstructor::SaveInputParticles().
|
inline |
Returns index of the last proton.
Definition at line 162 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 162 of file KFPTrackVector.h
References fNP.
Referenced by KFParticleFinder::ConstructPrimaryBG(), KFParticleFinder::Find2DaughterDecay(), KFParticleFinder::NeutralDaughterDecay(), Print(), and KFParticleTopoReconstructor::SaveInputParticles().
|
inline |
Returns index of the last triton.
Definition at line 168 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 168 of file KFPTrackVector.h
References fNT.
Referenced by Print().
|
inline |
Returns number of deuterons.
Definition at line 166 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 166 of file KFPTrackVector.h
|
inline |
Returns number of electrons.
Definition at line 151 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 151 of file KFPTrackVector.h
References fNE.
Referenced by KFParticleFinder::FindParticles().
|
inline |
Returns number of He3 tracks.
Definition at line 172 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 172 of file KFPTrackVector.h
|
inline |
Returns number of He4 tracks.
Definition at line 175 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 175 of file KFPTrackVector.h
|
inline |
Returns number of kaons.
Definition at line 160 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 160 of file KFPTrackVector.h
Referenced by KFParticleFinder::FindParticles().
|
inline |
Returns number of muons.
Definition at line 154 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 154 of file KFPTrackVector.h
Referenced by KFParticleFinder::FindParticles().
|
inline |
Returns number of pions.
Definition at line 157 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 157 of file KFPTrackVector.h
Referenced by KFParticleFinder::FindParticles().
|
inline |
Returns constant reference to the vector with the number of precise measurements KFPTrackVector::fNPixelHits.
Definition at line 92 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 92 of file KFPTrackVector.h
References fNPixelHits.
Referenced by KFParticleFinder::Find2DaughterDecay(), KFParticleFinder::FindTrackV0Decay(), and Print().
|
inline |
Returns number of protons.
Definition at line 163 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 163 of file KFPTrackVector.h
Referenced by KFParticleFinder::FindParticles().
|
inline |
Returns number of tritons.
Definition at line 169 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 169 of file KFPTrackVector.h
|
inline |
delete operator for the SIMD-alligned dynamic memory release
Definition at line 369 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 369 of file KFPTrackVector.h
|
inline |
delete operator for the SIMD-alligned dynamic memory release
Definition at line 370 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 370 of file KFPTrackVector.h
|
inline |
new operator for allocation of the SIMD-alligned dynamic memory allocation
Definition at line 365 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 365 of file KFPTrackVector.h
References size.
|
inline |
new operator for allocation of the SIMD-alligned dynamic memory allocation
Definition at line 367 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 367 of file KFPTrackVector.h
References size.
|
inline |
new operator for allocation of the SIMD-alligned dynamic memory allocation
Definition at line 366 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 366 of file KFPTrackVector.h
References size.
|
inline |
new operator for allocation of the SIMD-alligned dynamic memory allocation
Definition at line 368 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 368 of file KFPTrackVector.h
References size.
|
inline |
Operator to copy one KFPTrackVector object to another. Makes one-to-one copy.
Definition at line 192 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 192 of file KFPTrackVector.h
References fC, fId, fND, fNE, fNHe3, fNHe4, fNK, fNMu, fNP, fNPi, fNPixelHits, fNT, fP, fPDG, fPVIndex, fQ, i, n, and Size().
|
inline |
Returns momentum of the track with index "n".
Definition at line 95 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 95 of file KFPTrackVector.h
References fP.
|
inline |
Returns constant reference to the track parameter vector with index "i".
Definition at line 82 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 82 of file KFPTrackVector.h
Referenced by KFParticleSIMD::Create(), KFParticleSIMD::KFParticleSIMD(), KFParticleSIMD::Load(), and Print().
|
inline |
Returns constant reference to the vector with assigned PDG hypothesis KFPTrackVector::fPDG.
Definition at line 89 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 89 of file KFPTrackVector.h
References fPDG.
Referenced by KFParticleFinder::ConstructPrimaryBG(), KFParticleFinder::Find2DaughterDecay(), KFParticleFinder::FindParticles(), KFParticleFinder::FindTrackV0Decay(), KFParticleTopoReconstructor::GetChiToPrimVertex(), KFParticleFinder::NeutralDaughterDecay(), Print(), KFParticleTopoReconstructor::SortTracks(), and KFParticleTopoReconstructor::TransportPVTracksToPrimVertex().
void KFPTrackVector::Print | ( | ) |
Prints all field of the current object.
Definition at line 350 of file KFPTrackVector.cxx.
View newest version in sPHENIX GitHub at line 350 of file KFPTrackVector.cxx
References Covariance(), Id(), LastDeuteron(), LastElectron(), LastHe3(), LastHe4(), LastKaon(), LastMuon(), LastPion(), LastProton(), LastTritium(), NPixelHits(), Parameter(), PDG(), PVIndex(), Q(), and Size().
void KFPTrackVector::PrintTrack | ( | int | n | ) |
Prints parameters of the track with index "n".
[in] | n | - index of track to be printed |
Definition at line 334 of file KFPTrackVector.cxx.
View newest version in sPHENIX GitHub at line 334 of file KFPTrackVector.cxx
References fC, fId, fNPixelHits, fP, fPDG, fPVIndex, fQ, i, and n.
|
inline |
Returns transverse momentum of the track with index "n".
Definition at line 94 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 94 of file KFPTrackVector.h
References fP.
|
inline |
Returns constant reference to the vector with indices of corresponding primary vertex KFPTrackVector::fPVIndex.
Definition at line 91 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 91 of file KFPTrackVector.h
References fPVIndex.
Referenced by KFParticleFinder::ConstructPrimaryBG(), KFParticleFinder::Find2DaughterDecay(), KFParticleFinder::FindTrackV0Decay(), KFParticleFinder::NeutralDaughterDecay(), Print(), and KFParticleTopoReconstructor::TransportPVTracksToPrimVertex().
|
inline |
Returns constant reference to the vector with Px components of momentum.
Definition at line 78 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 78 of file KFPTrackVector.h
References fP.
|
inline |
Returns constant reference to the vector with Py components of momentum.
Definition at line 79 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 79 of file KFPTrackVector.h
References fP.
|
inline |
Returns constant reference to the vector with Pz components of momentum.
Definition at line 80 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 80 of file KFPTrackVector.h
References fP.
|
inline |
Returns constant reference to the vector with charge KFPTrackVector::fQ.
Definition at line 90 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 90 of file KFPTrackVector.h
References fQ.
Referenced by KFParticleSIMD::Create(), KFParticleSIMD::KFParticleSIMD(), KFParticleSIMD::Load(), Print(), and KFParticleTopoReconstructor::SortTracks().
|
inline |
Copies entire vector from the provided memory starting form the position "offset". The function is used in KFPInputData::ReadDataFromVector().
[in] | data | - pointer to the memory with the track vectors; since all fields of KFPTrackVector are of the same size (int or float) pointer can be safely casted to int* |
[in,out] | offset | - starting position of the memory to be copied; after all vectors are copied the offset is shifted on the size of the read object so the next KFPTrackVector object can be copied |
Definition at line 309 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 309 of file KFPTrackVector.h
References fC, fId, fND, fNE, fNHe3, fNHe4, fNK, fNMu, fNP, fNPi, fNPixelHits, fNT, fP, fPDG, fPVIndex, fQ, offset, and Size().
Referenced by KFPInputData::ReadDataFromVector().
|
inline |
Recalculate the last index of each track specie. Should be called after track sorting.
Definition at line 122 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 122 of file KFPTrackVector.h
References fND, fNE, fNHe3, fNHe4, fNK, fNMu, fNP, fNPi, fNT, fPDG, i, and Size().
void KFPTrackVector::Resize | ( | const int | n | ) |
Resizes all vectors in the class to a given value.
[in] | n | - new size of the vector |
Definition at line 79 of file KFPTrackVector.cxx.
View newest version in sPHENIX GitHub at line 79 of file KFPTrackVector.cxx
References fC, fId, fNPixelHits, fP, fPDG, fPVIndex, fQ, and i.
Referenced by KFParticleTopoReconstructor::Init(), KFPInputData::ReadDataFromFile(), KFPInputData::ReadDataFromVector(), SetTracks(), and KFParticleTopoReconstructor::SortTracks().
void KFPTrackVector::RotateXY | ( | float_v | alpha, |
int | firstElement | ||
) |
Rotates SIMD vector of tracks starting from the position "firstElement" onto the angles "alpha" in the XY plane. Rotation matrix is:
{ cos(A), -sin(A), 0, 0, 0, 0 } { sin(A), cos(A), 0, 0, 0, 0 } { 0, 0, 1, 0, 0, 0 } { 0, 0, 0, cos(A), -sin(A), 0 } { 0, 0, 0, sin(A), cos(A), 0 } { 0, 0, 0, 0, 0, 1 }
[in] | alpha | - rotation angles |
[in] | firstElement | - track index, starting from which SIMD vector of tracks will be rotated |
Definition at line 264 of file KFPTrackVector.cxx.
View newest version in sPHENIX GitHub at line 264 of file KFPTrackVector.cxx
References Acts::Test::cov, fC, fP, ambiguity_solver_full_chain::x, and y.
void KFPTrackVector::Set | ( | KFPTrackVector & | v, |
int | vSize, | ||
int | offset | ||
) |
Copies "vSize" tracks from the KFPTrackVector "v" to the current object. Tracks are put starting from the "offset" position.
[in] | v | - external KFPTrackVector with input tracks to be copied |
[in] | vSize | - number of tracks to be copied from "v" |
[in] | offset | - offset position in the current object, starting from which input tracks will be stored |
Definition at line 101 of file KFPTrackVector.cxx.
View newest version in sPHENIX GitHub at line 101 of file KFPTrackVector.cxx
References fC, fId, fNPixelHits, fP, fPDG, fPVIndex, fQ, and i.
Referenced by KFParticleTopoReconstructor::Init(), and KFParticleTopoReconstructor::SortTracks().
|
inline |
Sets the "value" of the element of covariance matrix "iC" of the track with index "iTr".
Definition at line 99 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 99 of file KFPTrackVector.h
Referenced by KFPInputData::ReadDataFromFile().
void KFPTrackVector::SetCovariance | ( | const float_v & | value, |
int | iC, | ||
int | iTr | ||
) |
Copies the SIMD vector "value" to the element of the covariance matrix vector KFPTrackVector::fC[iC] starting at the position "iTr".
[in] | value | - SIMD vector with the values to be stored |
[in] | iC | - number of the element of the covariance matrix |
[in] | iTr | - starting position in the parameter vector where the values should be stored |
Definition at line 51 of file KFPTrackVector.cxx.
View newest version in sPHENIX GitHub at line 51 of file KFPTrackVector.cxx
References fC, float_vLen, i, Size(), and Size().
|
inline |
Copies entire vector to the provided memory starting form the position "offset". The function is used in KFPInputData::SetDataToVector().
[out] | data | - pointer to the memory where the track vectors should be copied; since all fields of KFPTrackVector are of the same size (int or float) pointer can be safely casted to int* |
[in,out] | offset | - starting position in "data" where vectors should be copied; after all vectors are copied the offset is shifted on the size of the written object so the next KFPTrackVector object can be copied to the "data" |
Definition at line 253 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 253 of file KFPTrackVector.h
References fC, fId, fND, fNE, fNHe3, fNHe4, fNK, fNMu, fNP, fNPi, fNPixelHits, fNT, fP, fPDG, fPVIndex, fQ, offset, and Size().
|
inline |
Sets Id of the track with index "iTr".
Definition at line 107 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 107 of file KFPTrackVector.h
Referenced by KFParticleFinder::FindParticles(), KFParticleTopoReconstructor::Init(), and KFPInputData::ReadDataFromFile().
|
inline |
Sets index of the last deuteron.
Definition at line 117 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 117 of file KFPTrackVector.h
|
inline |
Sets index of the last electron.
Definition at line 112 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 112 of file KFPTrackVector.h
Referenced by KFPInputData::ReadDataFromFile().
|
inline |
Sets index of the last He3.
Definition at line 119 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 119 of file KFPTrackVector.h
|
inline |
Sets index of the last He4.
Definition at line 120 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 120 of file KFPTrackVector.h
|
inline |
Sets index of the last kaon.
Definition at line 115 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 115 of file KFPTrackVector.h
Referenced by KFPInputData::ReadDataFromFile().
|
inline |
Sets index of the last muon.
Definition at line 113 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 113 of file KFPTrackVector.h
Referenced by KFPInputData::ReadDataFromFile().
|
inline |
Sets index of the last pion.
Definition at line 114 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 114 of file KFPTrackVector.h
Referenced by KFPInputData::ReadDataFromFile().
|
inline |
Sets index of the last proton.
Definition at line 116 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 116 of file KFPTrackVector.h
Referenced by KFPInputData::ReadDataFromFile().
|
inline |
Sets index of the last triton.
Definition at line 118 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 118 of file KFPTrackVector.h
|
inline |
Sets number of precise measurement of the track with index "iTr".
Definition at line 111 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 111 of file KFPTrackVector.h
References fNPixelHits, and value.
Referenced by KFParticleTopoReconstructor::Init().
|
inline |
Sets the "value" of the parameter "iP" of the track with index "iTr".
Definition at line 98 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 98 of file KFPTrackVector.h
Referenced by KFPInputData::ReadDataFromFile().
void KFPTrackVector::SetParameter | ( | const float_v & | value, |
int | iP, | ||
int | iTr | ||
) |
Copies the SIMD vector "value" to the parameter vector KFPTrackVector::fP[iP] starting at the position "iTr".
[in] | value | - SIMD vector with the values to be stored |
[in] | iP | - number of the parameter vector |
[in] | iTr | - starting position in the parameter vector where the values should be stored |
Definition at line 25 of file KFPTrackVector.cxx.
View newest version in sPHENIX GitHub at line 25 of file KFPTrackVector.cxx
References float_vLen, fP, i, Size(), and Size().
|
inline |
Sets PDG hypothesis of the track with index "iTr".
Definition at line 108 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 108 of file KFPTrackVector.h
Referenced by KFParticleTopoReconstructor::Init(), and KFPInputData::ReadDataFromFile().
|
inline |
Sets index of the corresponding primary vertex of the track with index "iTr".
Definition at line 110 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 110 of file KFPTrackVector.h
References fPVIndex, and value.
Referenced by KFParticleTopoReconstructor::Init(), and KFPInputData::ReadDataFromFile().
|
inline |
Sets charge of the track with index "iTr".
Definition at line 109 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 109 of file KFPTrackVector.h
Referenced by KFParticleTopoReconstructor::Init(), and KFPInputData::ReadDataFromFile().
void KFPTrackVector::SetTracks | ( | const KFPTrackVector & | track, |
const kfvector_uint & | trackIndex, | ||
const int | nIndexes | ||
) |
The current object is resised to "nIndexes", tracks with indices "trackIndex" are copied to the current object.
[in] | track | - input vector of tracks |
[in] | trackIndex | - indices of tracks in a vector "track", which should be stored to the current object |
[in] | nIndexes | - number of tracks to be copied, defines the new size of the current object |
Definition at line 129 of file KFPTrackVector.cxx.
View newest version in sPHENIX GitHub at line 129 of file KFPTrackVector.cxx
References fC, fId, float_vLen, fNPixelHits, fP, fPDG, fPVIndex, fQ, index, Resize(), and vec.
Referenced by KFParticleTopoReconstructor::SortTracks().
|
inline |
Returns size of the vectors. All data vectors have the same size.
Definition at line 57 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 57 of file KFPTrackVector.h
References fP.
Referenced by KFParticleFinder::ConstructPrimaryBG(), KFParticleFinder::Find2DaughterDecay(), KFParticleFinder::FindParticles(), KFParticleTopoReconstructor::GetChiToPrimVertex(), KFParticleTopoReconstructor::Init(), KFParticleFinder::NeutralDaughterDecay(), operator=(), Print(), KFPInputData::ReadDataFromFile(), ReadDataFromVector(), RecalculateLastIndex(), KFParticleTopoReconstructor::SaveInputParticles(), SetCovariance(), SetDataToVector(), SetParameter(), KFParticleTopoReconstructor::SortTracks(), and KFParticleTopoReconstructor::TransportPVTracksToPrimVertex().
|
inline |
Returns constant reference to the vector with X coordinates.
Definition at line 75 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 75 of file KFPTrackVector.h
References fP.
|
inline |
Returns constant reference to the vector with Y coordinates.
Definition at line 76 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 76 of file KFPTrackVector.h
References fP.
|
inline |
Returns constant reference to the vector with Z coordinates.
Definition at line 77 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 77 of file KFPTrackVector.h
References fP.
|
friend |
Definition at line 51 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 51 of file KFPTrackVector.h
|
private |
Vectors with covariance matrix of the track parameters stroed in a lower triangular form.
Definition at line 374 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 374 of file KFPTrackVector.h
Referenced by Covariance(), GetTrack(), operator=(), PrintTrack(), ReadDataFromVector(), Resize(), RotateXY(), Set(), SetCovariance(), SetDataToVector(), and SetTracks().
|
private |
Vector with the unique Id of tracks.
Definition at line 376 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 376 of file KFPTrackVector.h
Referenced by GetTrack(), Id(), operator=(), PrintTrack(), ReadDataFromVector(), Resize(), Set(), SetDataToVector(), SetId(), and SetTracks().
|
private |
Index of the last deuteron.
Definition at line 400 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 400 of file KFPTrackVector.h
Referenced by AddDeuteron(), FirstTritium(), LastDeuteron(), NDeuterons(), NTritiums(), operator=(), ReadDataFromVector(), RecalculateLastIndex(), SetDataToVector(), and SetLastDeuteron().
|
private |
Index of the last electron.
The coefficients of the field approximation of each field component along the track trajectory using parabolas:
cx0 = fField[0], cx1 = fField[1], cx2 = fField[2] - coefficients of the Bx approximation;
cy0 = fField[3], cy1 = fField[4], cy2 = fField[5] - coefficients of the By approximation;
cz0 = fField[6], cz1 = fField[7], cz2 = fField[8] - coefficients of the Bz approximation;
z0 = fField[9] - reference Z coordinate.
Bx(z) = cx0 + cx1*(z-z0) + cx2*(z-z0)^2
By(z) = cy0 + cy1*(z-z0) + cy2*(z-z0)^2
Bz(z) = cz0 + cz1*(z-z0) + cz2*(z-z0)^2
Definition at line 395 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 395 of file KFPTrackVector.h
Referenced by AddElectron(), FirstMuon(), LastElectron(), NElectrons(), NMuons(), operator=(), ReadDataFromVector(), RecalculateLastIndex(), SetDataToVector(), and SetLastElectron().
|
private |
Index of the last He3.
Definition at line 402 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 402 of file KFPTrackVector.h
Referenced by AddHe3(), FirstHe4(), LastHe3(), NHe3s(), NHe4s(), operator=(), ReadDataFromVector(), RecalculateLastIndex(), SetDataToVector(), and SetLastHe3().
|
private |
Index of the last He4.
Definition at line 403 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 403 of file KFPTrackVector.h
Referenced by AddHe4(), LastHe4(), NHe4s(), operator=(), ReadDataFromVector(), RecalculateLastIndex(), SetDataToVector(), and SetLastHe4().
|
private |
Index of the last kaon.
Definition at line 398 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 398 of file KFPTrackVector.h
Referenced by AddKaon(), FirstProton(), LastKaon(), NKaons(), NProtons(), operator=(), ReadDataFromVector(), RecalculateLastIndex(), SetDataToVector(), and SetLastKaon().
|
private |
Index of the last muon.
Definition at line 396 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 396 of file KFPTrackVector.h
Referenced by AddMuon(), FirstPion(), LastMuon(), NMuons(), NPions(), operator=(), ReadDataFromVector(), RecalculateLastIndex(), SetDataToVector(), and SetLastMuon().
|
private |
Index of the last proton.
Definition at line 399 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 399 of file KFPTrackVector.h
Referenced by AddProton(), FirstDeuteron(), LastProton(), NDeuterons(), NProtons(), operator=(), ReadDataFromVector(), RecalculateLastIndex(), SetDataToVector(), and SetLastProton().
|
private |
Index of the last pion (plus tracks without PID).
Definition at line 397 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 397 of file KFPTrackVector.h
Referenced by AddPion(), FirstKaon(), LastPion(), NKaons(), NPions(), operator=(), ReadDataFromVector(), RecalculateLastIndex(), SetDataToVector(), and SetLastPion().
|
private |
Vector with the number of hits from precise detectors (like MVD in CBM, HFT in STAR, ITS in ALICE, etc.)
Definition at line 380 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 380 of file KFPTrackVector.h
Referenced by NPixelHits(), operator=(), PrintTrack(), ReadDataFromVector(), Resize(), Set(), SetDataToVector(), SetNPixelHits(), and SetTracks().
|
private |
Index of the last triton.
Definition at line 401 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 401 of file KFPTrackVector.h
Referenced by AddTririum(), FirstHe3(), LastTritium(), NHe3s(), NTritiums(), operator=(), ReadDataFromVector(), RecalculateLastIndex(), SetDataToVector(), and SetLastTritium().
|
private |
Vectors with parameters of the track : X, Y, Z, Px, Py, Pz.
Definition at line 373 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 373 of file KFPTrackVector.h
Referenced by DataSize(), GetTrack(), operator=(), P(), Parameter(), PrintTrack(), Pt(), Px(), Py(), Pz(), ReadDataFromVector(), Resize(), RotateXY(), Set(), SetDataToVector(), SetParameter(), SetTracks(), Size(), X(), Y(), and Z().
|
private |
Vector with the PDG hypothesis.
Definition at line 377 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 377 of file KFPTrackVector.h
Referenced by operator=(), PDG(), PrintTrack(), ReadDataFromVector(), RecalculateLastIndex(), Resize(), Set(), SetDataToVector(), SetPDG(), and SetTracks().
|
private |
Vector with the index of the corresponding primary vertex. If track is considered secondary "-1" is stored.
Definition at line 379 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 379 of file KFPTrackVector.h
Referenced by operator=(), PrintTrack(), PVIndex(), ReadDataFromVector(), Resize(), Set(), SetDataToVector(), SetPVIndex(), and SetTracks().
|
private |
Vector with the charge of the tracks.
Definition at line 378 of file KFPTrackVector.h.
View newest version in sPHENIX GitHub at line 378 of file KFPTrackVector.h
Referenced by GetTrack(), operator=(), PrintTrack(), Q(), ReadDataFromVector(), Resize(), Set(), SetDataToVector(), SetQ(), and SetTracks().