Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
KFParticleBaseSIMD.h File Reference
#include <vector>
#include "KFParticleDef.h"
+ Include dependency graph for KFParticleBaseSIMD.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  KFParticleBaseSIMD
 The base of KFParticleSIMD class. More...
 

Functions

class KFParticleBaseSIMD __attribute__ ((aligned(sizeof(float_v))))
 
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
 
virtual void GetFieldValue (const float_v xyz[], float_v B[]) const =0
 
virtual float_v GetDStoPoint (const float_v xyz[3], float_v dsdr[6]) const =0
 
float_v GetDStoPointLine (const float_v xyz[3], float_v dsdr[6]) const
 
float_v GetDStoPointBz (float_v Bz, const float_v xyz[3], float_v dsdr[6], const float_v *param=0) const
 
float_v GetDStoPointBy (float_v By, const float_v xyz[3], float_v dsdr[6]) const
 
float_v GetDStoPointCBM (const float_v xyz[3], float_v dsdr[6]) const
 
virtual void GetDStoParticle (const KFParticleBaseSIMD &p, float_v dS[2], float_v dsdr[4][6]) const =0
 
virtual void GetDStoParticleFast (const KFParticleBaseSIMD &p, float_v dS[2]) const =0
 
void GetDStoParticleLine (const KFParticleBaseSIMD &p, float_v dS[2], float_v dsdr[4][6]) const
 
void GetDStoParticleLine (const KFParticleBaseSIMD &p, float_v dS[2]) const
 
void GetDStoParticleBz (float_v Bz, const KFParticleBaseSIMD &p, float_v dS[2], float_v dsdr[4][6], const float_v *param1=0, const float_v *param2=0) const
 
void GetDStoParticleBz (float_v Bz, const KFParticleBaseSIMD &p, float_v dS[2], const float_v *param1=0, const float_v *param2=0) const
 
void GetDStoParticleBy (float_v B, const KFParticleBaseSIMD &p, float_v dS[2], float_v dsdr[4][6]) const
 
void GetDStoParticleBy (float_v B, const KFParticleBaseSIMD &p, float_v dS[2]) const
 
void GetDStoParticleB (float_v B[3], const KFParticleBaseSIMD &p, float_v dS[2], float_v dsdr[4][6]) const
 
void GetDStoParticleB (float_v B[3], const KFParticleBaseSIMD &p, float_v dS[2]) const
 
void GetDStoParticleCBM (const KFParticleBaseSIMD &p, float_v dS[2], float_v dsdr[4][6]) const
 
void GetDStoParticleCBM (const KFParticleBaseSIMD &p, float_v dS[2]) const
 
virtual void Transport (float_v dS, const float_v dsdr[6], float_v P[], float_v C[], float_v *dsdr1=0, float_v *F=0, float_v *F1=0) const =0
 
virtual void TransportFast (float_v dS, float_v P[]) const =0
 
 KFParticleBaseSIMD ()
 
virtual ~KFParticleBaseSIMD ()
 The default destructor.
 
void Initialize (const float_v Param[], const float_v Cov[], int_v Charge, float_v Mass)
 
void Initialize ()
 
void SetConstructMethod (Int_t m)
 Defines the construction method for the current particle (see description of fConstructMethod).
 
void SetMassHypo (float_v m)
 Sets the mass hypothesis to the particle, is used when fConstructMethod = 2.
 
const float_v & GetMassHypo () const
 Returns the mass hypothesis.
 
const float_v & GetSumDaughterMass () const
 Returns the sum of masses of the daughters.
 
float_v GetX () const
 Returns the sum of masses of the daughters.
 
float_v GetY () const
 Returns the sum of masses of the daughters.
 
float_v GetZ () const
 Returns the sum of masses of the daughters.
 
float_v GetPx () const
 Returns the sum of masses of the daughters.
 
float_v GetPy () const
 Returns the sum of masses of the daughters.
 
float_v GetPz () const
 Returns the sum of masses of the daughters.
 
float_v GetE () const
 Returns the sum of masses of the daughters.
 
float_v GetS () const
 Returns the sum of masses of the daughters.
 
int_v GetQ () const
 Returns the sum of masses of the daughters.
 
float_v GetChi2 () const
 Returns the sum of masses of the daughters.
 
int_v GetNDF () const
 Returns the sum of masses of the daughters.
 
const float_v & X () const
 Retruns X coordinate of the particle, fP[0].
 
const float_v & Y () const
 Retruns Y coordinate of the particle, fP[1].
 
const float_v & Z () const
 Retruns Z coordinate of the particle, fP[2].
 
const float_v & Px () const
 Retruns X component of the momentum, fP[3].
 
const float_v & Py () const
 Retruns Y component of the momentum, fP[4].
 
const float_v & Pz () const
 Retruns Z component of the momentum, fP[5].
 
const float_v & E () const
 Returns energy of the particle, fP[6].
 
const float_v & S () const
 Returns dS=l/p, l - decay length, fP[7], defined if production vertex is set.
 
const int_v & Q () const
 Returns charge of the particle.
 
const float_v & Chi2 () const
 Returns Chi2 of the fit.
 
const int_v & NDF () const
 Returns number of decrease of freedom.
 
float_v GetParameter (Int_t i) const
 Returns P[i] parameter.
 
float_v GetCovariance (Int_t i) const
 Returns C[i] element of the covariance matrix in the lower triangular form.
 
float_v GetCovariance (Int_t i, Int_t j) const
 Returns C[i,j] element of the covariance matrix.
 
float_m GetMomentum (float_v &p, float_v &error) const
 
float_m GetPt (float_v &pt, float_v &error) const
 
float_m GetEta (float_v &eta, float_v &error) const
 
float_m GetPhi (float_v &phi, float_v &error) const
 
float_m GetMass (float_v &m, float_v &error) const
 
float_m GetDecayLength (float_v &l, float_v &error) const
 
float_m GetDecayLengthXY (float_v &l, float_v &error) const
 
float_m GetLifeTime (float_v &ctau, float_v &error) const
 
float_m GetR (float_v &r, float_v &error) const
 
float_v & Parameter (Int_t i)
 Modifier of P[i] parameter.
 
float_v & Covariance (Int_t i)
 Modifier of C[i] element of the covariance matrix in the lower triangular form.
 
float_v & Covariance (Int_t i, Int_t j)
 Modifier of C[i,j] element of the covariance matrix.
 
void operator+= (const KFParticleBaseSIMD &Daughter)
 
void AddDaughter (const KFParticleBaseSIMD &Daughter)
 
void SubtractDaughter (const KFParticleBaseSIMD &Daughter)
 
void AddDaughterWithEnergyFit (const KFParticleBaseSIMD &Daughter)
 
void AddDaughterWithEnergyFitMC (const KFParticleBaseSIMD &Daughter)
 
void SetProductionVertex (const KFParticleBaseSIMD &Vtx)
 
void SetNonlinearMassConstraint (float_v Mass)
 
void SetMassConstraint (float_v Mass, float_v SigmaMass=float_v(0.f))
 
void SetNoDecayLength ()
 
void Construct (const KFParticleBaseSIMD *vDaughters[], Int_t nDaughters, const KFParticleBaseSIMD *ProdVtx=0, Float_t Mass=-1)
 
void TransportToDecayVertex ()
 
void TransportToProductionVertex ()
 
void TransportToDS (float_v dS, const float_v *dsdr)
 
void TransportToDSLine (float_v dS, const float_v *dsdr)
 
void TransportBz (float_v Bz, float_v dS, const float_v *dsdr, float_v P[], float_v C[], float_v *dsdr1=0, float_v *F=0, float_v *F1=0) const
 
void TransportBz (float_v Bz, float_v dS, float_v P[]) const
 
void TransportCBM (float_v dS, const float_v *dsdr, float_v P[], float_v C[], float_v *dsdr1=0, float_v *F=0, float_v *F1=0) const
 
void TransportCBM (float_v dS, float_v P[]) const
 
float_v GetDistanceFromVertex (const float_v vtx[]) const
 
float_v GetDistanceFromVertex (const KFParticleBaseSIMD &Vtx) const
 
float_v GetDistanceFromParticle (const KFParticleBaseSIMD &p) const
 
float_v GetDeviationFromVertex (const float_v v[], const float_v Cv[]=0) const
 
float_v GetDeviationFromVertex (const KFParticleBaseSIMD &Vtx) const
 
float_v GetDeviationFromParticle (const KFParticleBaseSIMD &p) const
 
void SubtractFromVertex (KFParticleBaseSIMD &Vtx) const
 
void SubtractFromParticle (KFParticleBaseSIMD &Vtx) const
 
static void GetArmenterosPodolanski (KFParticleBaseSIMD &positive, KFParticleBaseSIMD &negative, float_v QtAlfa[2])
 
void RotateXY (float_v angle, float_v Vtx[3])
 
int_v Id () const
 Returns Id of the particle.
 
int NDaughters () const
 Returns number of daughter particles.
 
std::vector< int_v > & DaughterIds ()
 Returns the vector with the indices of daughter particles.
 
int_v GetDaughterId (int iD) const
 Returns the daughter Id with the index iD.
 
void SetId (int_v id)
 Sets the Id of the particle. After the construction of a particle should be set by user.
 
void SetNDaughters (int n)
 Reserves the size of the vector with daughter Ids to n.
 
void AddDaughterId (int_v id)
 Adds index of the daughter particle.
 
void CleanDaughtersId ()
 Cleans the vector with the indices of daughter particles.
 
void SetPDG (int pdg)
 Sets the PDG hypothesis common for all elements of the SIMD vector.
 
void SetPDG (int_v &pdg)
 Sets the PDG hypothesis individual for each entry of the SIMD vector.
 
const int_v & GetPDG () const
 Returns the PDG hypothesis.
 
const int_v & PDG () const
 Returns the PDG hypothesis.
 
void GetDistanceToVertexLine (const KFParticleBaseSIMD &Vertex, float_v &l, float_v &dl, float_m *isParticleFromVertex=0) const
 
static void MultQSQt (const float_v Q[], const float_v S[], float_v SOut[], const int kN)
 
static Int_t IJ (Int_t i, Int_t j)
 
float_v & Cij (Int_t i, Int_t j)
 
void TransportLine (float_v S, const float_v *dsdr, float_v P[], float_v C[], float_v *dsdr1=0, float_v *F=0, float_v *F1=0) const
 
void TransportLine (float_v S, float_v P[]) const
 
static void InvertCholetsky3 (float_v a[6])
 
void GetMeasurement (const KFParticleBaseSIMD &daughter, float_v m[], float_v V[], float_v D[3][3])
 
void SetMassConstraint (float_v *mP, float_v *mC, float_v mJ[7][7], float_v mass, float_m mask)
 

Variables

float_v fP [8]
 Particle parameters { X, Y, Z, Px, Py, Pz, E, S[=DecayLength/P]}.
 
float_v fC [36]
 Low-triangle covariance matrix of fP.
 
int_v fQ
 The charge of the particle in the units of the elementary charge.
 
int_v fNDF
 Number of degrees of freedom.
 
float_v fChi2
 Chi^2.
 
float_v fSFromDecay
 Distance from the decay vertex to the current position.
 
float_v SumDaughterMass
 Sum of the daughter particles masses. Needed to set the constraint on the minimum mass during particle construction.
 
float_v fMassHypo
 The mass hypothesis, used for the constraints during particle construction.
 
int_v fId
 Id of the particle.
 
Bool_t fAtProductionVertex
 Flag shows if particle is at the production point.
 
int_v fPDG
 The PDG hypothesis assigned to the particle.
 
Int_t fConstructMethod
 Determines the method for the particle construction.
0 - Energy considered as an independent veriable, fitted independently from momentum, without any constraints on mass
2 - Energy considered as an independent variable, fitted independently from momentum, with constraints on mass of daughter particle.
 
std::vector< int_v > fDaughterIds
 A vector with ids of the daughter particles:
1) if particle is created from a track - the index of the track, in this case the size of the vector is always equal to one;
2) if particle is constructed from other particles - indices of these particles in the same array.
 

Function Documentation

class KFParticleBaseSIMD __attribute__ ( (aligned(sizeof(float_v)))  )
void __attribute__::AddDaughter ( const KFParticleBaseSIMD Daughter)
void __attribute__::AddDaughterId ( int_v  id)

Adds index of the daughter particle.

Definition at line 589 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 589 of file KFParticleBaseSIMD.h

void __attribute__::AddDaughterWithEnergyFit ( const KFParticleBaseSIMD Daughter)
void __attribute__::AddDaughterWithEnergyFitMC ( const KFParticleBaseSIMD Daughter)
const float_v& __attribute__::Chi2 ( ) const

Returns Chi2 of the fit.

Modifier of Chi2 of the fit.

Definition at line 451 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 451 of file KFParticleBaseSIMD.h

float_v& __attribute__::Cij ( Int_t  i,
Int_t  j 
)
protected

Return an element of the covariance matrix with {i,j} indices.

Definition at line 607 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 607 of file KFParticleBaseSIMD.h

void __attribute__::CleanDaughtersId ( )

Cleans the vector with the indices of daughter particles.

Definition at line 590 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 590 of file KFParticleBaseSIMD.h

void __attribute__::Construct ( const KFParticleBaseSIMD vDaughters[],
Int_t  nDaughters,
const KFParticleBaseSIMD ProdVtx = 0,
Float_t  Mass = -1 
)
float_v& __attribute__::Covariance ( Int_t  i)

Modifier of C[i] element of the covariance matrix in the lower triangular form.

Definition at line 488 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 488 of file KFParticleBaseSIMD.h

float_v& __attribute__::Covariance ( Int_t  i,
Int_t  j 
)

Modifier of C[i,j] element of the covariance matrix.

Definition at line 489 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 489 of file KFParticleBaseSIMD.h

std::vector<int_v>& __attribute__::DaughterIds ( )

Returns the vector with the indices of daughter particles.

Definition at line 584 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 584 of file KFParticleBaseSIMD.h

Referenced by KFParticleFinder::CombinePartPart(), and KFParticleTopoReconstructor::SelectParticleCandidates().

+ Here is the caller graph for this function:

const float_v& __attribute__::E ( ) const

Returns energy of the particle, fP[6].

Modifier of energy of the particle, fP[6].

Definition at line 448 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 448 of file KFParticleBaseSIMD.h

static void __attribute__::GetArmenterosPodolanski ( KFParticleBaseSIMD positive,
KFParticleBaseSIMD negative,
float_v  QtAlfa[2] 
)
static
float_v __attribute__::GetChi2 ( ) const

Returns the sum of masses of the daughters.

Definition at line 439 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 439 of file KFParticleBaseSIMD.h

Referenced by KFParticleFinder::SelectParticles().

+ Here is the caller graph for this function:

float_v __attribute__::GetCovariance ( Int_t  i) const

Returns C[i] element of the covariance matrix in the lower triangular form.

Definition at line 455 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 455 of file KFParticleBaseSIMD.h

Referenced by KFParticleTopoReconstructor::SaveInputParticles().

+ Here is the caller graph for this function:

float_v __attribute__::GetCovariance ( Int_t  i,
Int_t  j 
) const

Returns C[i,j] element of the covariance matrix.

Definition at line 456 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 456 of file KFParticleBaseSIMD.h

int_v __attribute__::GetDaughterId ( int  iD) const

Returns the daughter Id with the index iD.

Definition at line 585 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 585 of file KFParticleBaseSIMD.h

float_m __attribute__::GetDecayLength ( float_v &  l,
float_v &  error 
) const
float_m __attribute__::GetDecayLengthXY ( float_v &  l,
float_v &  error 
) const
float_v __attribute__::GetDeviationFromParticle ( const KFParticleBaseSIMD p) const
float_v __attribute__::GetDeviationFromVertex ( const float_v  v[],
const float_v  Cv[] = 0 
) const

Referenced by KFParticle_truthAndDetTools::allPVInfo(), KFParticlePVReconstructor::FindPrimaryClusters(), and KFParticle_eventReconstruction::selectBestCombination().

+ Here is the caller graph for this function:

float_v __attribute__::GetDeviationFromVertex ( const KFParticleBaseSIMD Vtx) const
float_v __attribute__::GetDistanceFromParticle ( const KFParticleBaseSIMD p) const

Referenced by KFParticle_Tools::findNProngs(), and KFParticle_Tools::findTwoProngs().

+ Here is the caller graph for this function:

float_v __attribute__::GetDistanceFromVertex ( const float_v  vtx[]) const

Referenced by KFParticle_truthAndDetTools::allPVInfo().

+ Here is the caller graph for this function:

float_v __attribute__::GetDistanceFromVertex ( const KFParticleBaseSIMD Vtx) const
void __attribute__::GetDistanceToVertexLine ( const KFParticleBaseSIMD Vertex,
float_v &  l,
float_v &  dl,
float_m *  isParticleFromVertex = 0 
) const
virtual void __attribute__::GetDStoParticle ( const KFParticleBaseSIMD p,
float_v  dS[2],
float_v  dsdr[4][6] 
) const
pure virtual

Virtual method to get extrapolation parameter dS=l/p and ds/dr partial derivatives to another particle. Is defined in KFParticleSIMD.

void __attribute__::GetDStoParticleB ( float_v  B[3],
const KFParticleBaseSIMD p,
float_v  dS[2],
float_v  dsdr[4][6] 
) const
void __attribute__::GetDStoParticleB ( float_v  B[3],
const KFParticleBaseSIMD p,
float_v  dS[2] 
) const
void __attribute__::GetDStoParticleBy ( float_v  B,
const KFParticleBaseSIMD p,
float_v  dS[2],
float_v  dsdr[4][6] 
) const
void __attribute__::GetDStoParticleBy ( float_v  B,
const KFParticleBaseSIMD p,
float_v  dS[2] 
) const
void __attribute__::GetDStoParticleBz ( float_v  Bz,
const KFParticleBaseSIMD p,
float_v  dS[2],
float_v  dsdr[4][6],
const float_v *  param1 = 0,
const float_v *  param2 = 0 
) const
void __attribute__::GetDStoParticleBz ( float_v  Bz,
const KFParticleBaseSIMD p,
float_v  dS[2],
const float_v *  param1 = 0,
const float_v *  param2 = 0 
) const
void __attribute__::GetDStoParticleCBM ( const KFParticleBaseSIMD p,
float_v  dS[2],
float_v  dsdr[4][6] 
) const
void __attribute__::GetDStoParticleCBM ( const KFParticleBaseSIMD p,
float_v  dS[2] 
) const
virtual void __attribute__::GetDStoParticleFast ( const KFParticleBaseSIMD p,
float_v  dS[2] 
) const
pure virtual

Virtual method to get extrapolation parameter dS=l/p to another particle. Is defined in KFParticleSIMD.

void __attribute__::GetDStoParticleLine ( const KFParticleBaseSIMD p,
float_v  dS[2],
float_v  dsdr[4][6] 
) const
void __attribute__::GetDStoParticleLine ( const KFParticleBaseSIMD p,
float_v  dS[2] 
) const
virtual float_v __attribute__::GetDStoPoint ( const float_v  xyz[3],
float_v  dsdr[6] 
) const
pure virtual

Virtual method to get extrapolation parameter dS=l/p to . Is defined in KFParticleSIMD.

float_v __attribute__::GetDStoPointBy ( float_v  By,
const float_v  xyz[3],
float_v  dsdr[6] 
) const
float_v __attribute__::GetDStoPointBz ( float_v  Bz,
const float_v  xyz[3],
float_v  dsdr[6],
const float_v *  param = 0 
) const
float_v __attribute__::GetDStoPointCBM ( const float_v  xyz[3],
float_v  dsdr[6] 
) const
float_v __attribute__::GetDStoPointLine ( const float_v  xyz[3],
float_v  dsdr[6] 
) const
float_v __attribute__::GetE ( ) const

Returns the sum of masses of the daughters.

Definition at line 436 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 436 of file KFParticleBaseSIMD.h

float_m __attribute__::GetEta ( float_v &  eta,
float_v &  error 
) const
virtual void __attribute__::GetFieldValue ( const float_v  xyz[],
float_v  B[] 
) const
pure virtual

Virtual method to access the magnetic field

float_m __attribute__::GetLifeTime ( float_v &  ctau,
float_v &  error 
) const
float_m __attribute__::GetMass ( float_v &  m,
float_v &  error 
) const

Referenced by KFParticle_Tools::buildMother().

+ Here is the caller graph for this function:

const float_v& __attribute__::GetMassHypo ( ) const

Returns the mass hypothesis.

Definition at line 421 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 421 of file KFParticleBaseSIMD.h

void __attribute__::GetMeasurement ( const KFParticleBaseSIMD daughter,
float_v  m[],
float_v  V[],
float_v  D[3][3] 
)
protected
float_m __attribute__::GetMomentum ( float_v &  p,
float_v &  error 
) const
int_v __attribute__::GetNDF ( ) const

Returns the sum of masses of the daughters.

Definition at line 440 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 440 of file KFParticleBaseSIMD.h

Referenced by numericInverse(), and KFParticleFinder::SelectParticles().

+ Here is the caller graph for this function:

float_v __attribute__::GetParameter ( Int_t  i) const

Returns P[i] parameter.

Definition at line 454 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 454 of file KFParticleBaseSIMD.h

Referenced by analyzeClusterEtIso(), CalculateSigmaDca(), SDeltaPtCutStudy::CreateSigmaGraphs(), AZigzag::DetermineCommonMode(), BbcMonDraw::Draw(), draw_hists_3D(), fit_vs_directcount(), FitCalHist(), pi0EtaByEta::fitEtaSlices(), GetSubtractedDist(), Jet_reso(), JetReso(), plotQA_cosmic_TowerCalib(), plotQA_cosmic_vertical(), and QuickDeltaPtExtractor().

+ Here is the caller graph for this function:

const int_v& __attribute__::GetPDG ( ) const

Returns the PDG hypothesis.

Definition at line 594 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 594 of file KFParticleBaseSIMD.h

Referenced by ana_hijbkg(), and KFParticleTopoReconstructor::SelectParticleCandidates().

+ Here is the caller graph for this function:

float_m __attribute__::GetPhi ( float_v &  phi,
float_v &  error 
) const
float_m __attribute__::GetPt ( float_v &  pt,
float_v &  error 
) const
float_v __attribute__::GetPx ( ) const

Returns the sum of masses of the daughters.

Definition at line 433 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 433 of file KFParticleBaseSIMD.h

float_v __attribute__::GetPy ( ) const

Returns the sum of masses of the daughters.

Definition at line 434 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 434 of file KFParticleBaseSIMD.h

float_v __attribute__::GetPz ( ) const

Returns the sum of masses of the daughters.

Definition at line 435 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 435 of file KFParticleBaseSIMD.h

int_v __attribute__::GetQ ( ) const

Returns the sum of masses of the daughters.

Definition at line 438 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 438 of file KFParticleBaseSIMD.h

Referenced by KFParticle_eventReconstruction::buildChain(), KFParticle_Tools::buildMother(), and KFParticle_eventReconstruction::getCandidateDecay().

+ Here is the caller graph for this function:

float_m __attribute__::GetR ( float_v &  r,
float_v &  error 
) const
float_v __attribute__::GetS ( ) const

Returns the sum of masses of the daughters.

Definition at line 437 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 437 of file KFParticleBaseSIMD.h

const float_v& __attribute__::GetSumDaughterMass ( ) const

Returns the sum of masses of the daughters.

Definition at line 422 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 422 of file KFParticleBaseSIMD.h

float_v __attribute__::GetX ( ) const

Returns the sum of masses of the daughters.

Definition at line 430 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 430 of file KFParticleBaseSIMD.h

Referenced by numericInverse().

+ Here is the caller graph for this function:

float_v __attribute__::GetY ( ) const

Returns the sum of masses of the daughters.

Definition at line 431 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 431 of file KFParticleBaseSIMD.h

Referenced by hcal::fitShape(), and hcal::GetNextEvent().

+ Here is the caller graph for this function:

float_v __attribute__::GetZ ( ) const

Returns the sum of masses of the daughters.

Definition at line 432 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 432 of file KFParticleBaseSIMD.h

int_v __attribute__::Id ( ) const

Returns Id of the particle.

Definition at line 582 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 582 of file KFParticleBaseSIMD.h

Referenced by KFParticle_eventReconstruction::buildChain(), KFParticleFinder::CombinePartPart(), KFParticleFinder::ConstructV0(), AdSCFT::DoEnergyLoss(), Martini::DoEnergyLoss(), KFParticle_DST::fillParticleNode_Track(), KFParticle_eventReconstruction::getCandidateDecay(), KFParticleTopoReconstructor::Init(), BuildResonanceJetTaggingTree::loopHFHadronic(), and KFParticleTopoReconstructor::SaveInputParticles().

+ Here is the caller graph for this function:

static Int_t __attribute__::IJ ( Int_t  i,
Int_t  j 
)
staticprotected

Converts a pair of indices {i,j} of the covariance matrix to one index corresponding to the triangular form.

Definition at line 603 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 603 of file KFParticleBaseSIMD.h

void __attribute__::Initialize ( const float_v  Param[],
const float_v  Cov[],
int_v  Charge,
float_v  Mass 
)

Referenced by PHG4GDMLUtility::Dump_G4_GDML(), PHG4GDMLUtility::Dump_GDML(), and hcal::evLoop().

+ Here is the caller graph for this function:

void __attribute__::Initialize ( )
static void __attribute__::InvertCholetsky3 ( float_v  a[6])
staticprotected
__attribute__::KFParticleBaseSIMD ( )
static void __attribute__::MultQSQt ( const float_v  Q[],
const float_v  S[],
float_v  SOut[],
const int  kN 
)
static
int __attribute__::NDaughters ( ) const

Returns number of daughter particles.

Definition at line 583 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 583 of file KFParticleBaseSIMD.h

Referenced by KFParticleTest::RunTestSingle().

+ Here is the caller graph for this function:

int_v & NDF ( ) const

Returns number of decrease of freedom.

Modifier of number of decrease of freedom.

Definition at line 452 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 452 of file KFParticleBaseSIMD.h

void operator delete ( void *  ptr,
size_t   
)

delete operator for the SIMD-alligned dynamic memory release

Definition at line 358 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 358 of file KFParticleBaseSIMD.h

void operator delete[] ( void *  ptr,
size_t   
)

delete operator for the SIMD-alligned dynamic memory release

Definition at line 359 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 359 of file KFParticleBaseSIMD.h

void * operator new ( size_t  size)

new operator for allocation of the SIMD-alligned dynamic memory allocation

Definition at line 354 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 354 of file KFParticleBaseSIMD.h

void * operator new ( size_t  size,
void *  ptr 
)

new operator for allocation of the SIMD-alligned dynamic memory allocation

Definition at line 356 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 356 of file KFParticleBaseSIMD.h

void * operator new[] ( size_t  size)

new operator for allocation of the SIMD-alligned dynamic memory allocation

Definition at line 355 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 355 of file KFParticleBaseSIMD.h

void * operator new[] ( size_t  size,
void *  ptr 
)

new operator for allocation of the SIMD-alligned dynamic memory allocation

Definition at line 357 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 357 of file KFParticleBaseSIMD.h

void __attribute__::operator+= ( const KFParticleBaseSIMD Daughter)
float_v& __attribute__::Parameter ( Int_t  i)

Modifier of P[i] parameter.

Definition at line 487 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 487 of file KFParticleBaseSIMD.h

Referenced by KFPInputData::ReadDataFromFile(), and KFParticleTopoReconstructor::SaveInputParticles().

+ Here is the caller graph for this function:

const int_v& __attribute__::PDG ( ) const

Returns the PDG hypothesis.

Definition at line 595 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 595 of file KFParticleBaseSIMD.h

Referenced by KFPartEfficiencies::KFPartEfficiencies(), and KFParticleTopoReconstructor::SaveInputParticles().

+ Here is the caller graph for this function:

float_v & Px ( ) const

Retruns X component of the momentum, fP[3].

Modifier of X component of the momentum, fP[3].

Definition at line 445 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 445 of file KFParticleBaseSIMD.h

Referenced by Fluid::calcTotals().

+ Here is the caller graph for this function:

float_v & Py ( ) const

Retruns Y component of the momentum, fP[4].

Modifier of Y component of the momentum, fP[4].

Definition at line 446 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 446 of file KFParticleBaseSIMD.h

float_v & Pz ( ) const

Retruns Z component of the momentum, fP[5].

Modifier of Z component of the momentum, fP[5].

Definition at line 447 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 447 of file KFParticleBaseSIMD.h

void __attribute__::RotateXY ( float_v  angle,
float_v  Vtx[3] 
)
float_v & S ( ) const
void __attribute__::SetConstructMethod ( Int_t  m)

Defines the construction method for the current particle (see description of fConstructMethod).

Definition at line 419 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 419 of file KFParticleBaseSIMD.h

void __attribute__::SetMassConstraint ( float_v  Mass,
float_v  SigmaMass = float_v(0.f) 
)
void __attribute__::SetMassConstraint ( float_v *  mP,
float_v *  mC,
float_v  mJ[7][7],
float_v  mass,
float_m  mask 
)
protected
void __attribute__::SetMassHypo ( float_v  m)

Sets the mass hypothesis to the particle, is used when fConstructMethod = 2.

Definition at line 420 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 420 of file KFParticleBaseSIMD.h

void __attribute__::SetNDaughters ( int  n)

Reserves the size of the vector with daughter Ids to n.

Definition at line 588 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 588 of file KFParticleBaseSIMD.h

void __attribute__::SetNoDecayLength ( )
void __attribute__::SetNonlinearMassConstraint ( float_v  Mass)
void __attribute__::SetPDG ( int  pdg)

Sets the PDG hypothesis common for all elements of the SIMD vector.

Definition at line 592 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 592 of file KFParticleBaseSIMD.h

void __attribute__::SetPDG ( int_v &  pdg)

Sets the PDG hypothesis individual for each entry of the SIMD vector.

Definition at line 593 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 593 of file KFParticleBaseSIMD.h

void __attribute__::SetProductionVertex ( const KFParticleBaseSIMD Vtx)
void __attribute__::SubtractDaughter ( const KFParticleBaseSIMD Daughter)
void __attribute__::SubtractFromParticle ( KFParticleBaseSIMD Vtx) const
void __attribute__::SubtractFromVertex ( KFParticleBaseSIMD Vtx) const
virtual void __attribute__::Transport ( float_v  dS,
const float_v  dsdr[6],
float_v  P[],
float_v  C[],
float_v *  dsdr1 = 0,
float_v *  F = 0,
float_v *  F1 = 0 
) const
pure virtual

Virtual method to transport a particle parameters and covariance matrix on a certain distance along the trajectory. Is defined in KFParticleSIMD.

void __attribute__::TransportBz ( float_v  Bz,
float_v  dS,
const float_v *  dsdr,
float_v  P[],
float_v  C[],
float_v *  dsdr1 = 0,
float_v *  F = 0,
float_v *  F1 = 0 
) const
void __attribute__::TransportBz ( float_v  Bz,
float_v  dS,
float_v  P[] 
) const
void __attribute__::TransportCBM ( float_v  dS,
const float_v *  dsdr,
float_v  P[],
float_v  C[],
float_v *  dsdr1 = 0,
float_v *  F = 0,
float_v *  F1 = 0 
) const
void __attribute__::TransportCBM ( float_v  dS,
float_v  P[] 
) const
virtual void __attribute__::TransportFast ( float_v  dS,
float_v  P[] 
) const
pure virtual

Virtual method to transport a particle parameters on a certain distance along the trajectory. Is defined in KFParticleSIMD.

void __attribute__::TransportLine ( float_v  S,
const float_v *  dsdr,
float_v  P[],
float_v  C[],
float_v *  dsdr1 = 0,
float_v *  F = 0,
float_v *  F1 = 0 
) const
protected
void __attribute__::TransportLine ( float_v  S,
float_v  P[] 
) const
protected
void __attribute__::TransportToDecayVertex ( )
void __attribute__::TransportToDS ( float_v  dS,
const float_v *  dsdr 
)
void __attribute__::TransportToDSLine ( float_v  dS,
const float_v *  dsdr 
)
void __attribute__::TransportToProductionVertex ( )
const float_v& __attribute__::X ( ) const

Retruns X coordinate of the particle, fP[0].

Modifier of X coordinate of the particle, fP[0].

Definition at line 442 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 442 of file KFParticleBaseSIMD.h

const float_v& __attribute__::Y ( ) const

Retruns Y coordinate of the particle, fP[1].

Modifier of Y coordinate of the particle, fP[1].

Definition at line 443 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 443 of file KFParticleBaseSIMD.h

float_v & Z ( ) const

Retruns Z coordinate of the particle, fP[2].

Modifier of Z coordinate of the particle, fP[2].

Definition at line 444 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 444 of file KFParticleBaseSIMD.h

virtual __attribute__::~KFParticleBaseSIMD ( )
virtual

The default destructor.

Definition at line 414 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 414 of file KFParticleBaseSIMD.h

Variable Documentation

Bool_t fAtProductionVertex

Flag shows if particle is at the production point.

Definition at line 628 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 628 of file KFParticleBaseSIMD.h

float_v fC[36]

Low-triangle covariance matrix of fP.

Definition at line 620 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 620 of file KFParticleBaseSIMD.h

Int_t fConstructMethod

Determines the method for the particle construction.
0 - Energy considered as an independent veriable, fitted independently from momentum, without any constraints on mass
2 - Energy considered as an independent variable, fitted independently from momentum, with constraints on mass of daughter particle.

Definition at line 634 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 634 of file KFParticleBaseSIMD.h

std::vector<int_v> fDaughterIds

A vector with ids of the daughter particles:
1) if particle is created from a track - the index of the track, in this case the size of the vector is always equal to one;
2) if particle is constructed from other particles - indices of these particles in the same array.

Definition at line 639 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 639 of file KFParticleBaseSIMD.h

int_v fId

Id of the particle.

Definition at line 627 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 627 of file KFParticleBaseSIMD.h

float_v fMassHypo

The mass hypothesis, used for the constraints during particle construction.

Definition at line 626 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 626 of file KFParticleBaseSIMD.h

int_v fNDF

Number of degrees of freedom.

Definition at line 622 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 622 of file KFParticleBaseSIMD.h

float_v fP[8]

Particle parameters { X, Y, Z, Px, Py, Pz, E, S[=DecayLength/P]}.

Definition at line 619 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 619 of file KFParticleBaseSIMD.h

int_v fPDG

The PDG hypothesis assigned to the particle.

Definition at line 629 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 629 of file KFParticleBaseSIMD.h

int_v fQ

The charge of the particle in the units of the elementary charge.

Definition at line 621 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 621 of file KFParticleBaseSIMD.h

float_v fSFromDecay

Distance from the decay vertex to the current position.

Definition at line 624 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 624 of file KFParticleBaseSIMD.h

float_v SumDaughterMass

Sum of the daughter particles masses. Needed to set the constraint on the minimum mass during particle construction.

Definition at line 625 of file KFParticleBaseSIMD.h.

View newest version in sPHENIX GitHub at line 625 of file KFParticleBaseSIMD.h