19 #ifndef KFParticleBaseSIMD_H
20 #define KFParticleBaseSIMD_H
22 #include "RootTypesDef.h"
201 Bool_t isAtVtxGuess = 0 );
253 const fvec Cv[]=0 )
const;
290 static Int_t
IJ( Int_t
i, Int_t j ){
291 return ( j<=i ) ? i*(i+1)/2+j :j*(j+1)/2+
i;
296 void Convert(
bool ToProduction );
void GetDStoParticleBy(fvec B, const KFParticleBaseSIMD &p, fvec &dS, fvec &dS1) const
void AddDaughterWithEnergyFit(const KFParticleBaseSIMD &Daughter, Bool_t isAtVtxGuess)
std::vector< fvec > fDaughterIds
void TransportToDecayVertex()
fvec GetEta(fvec &Eta, fvec &SigmaEta) const
fvec & Covariance(Int_t i, Int_t j)
fvec GetDStoPointCBM(const fvec xyz[]) const
fvec GetDeviationFromParticle(const KFParticleBaseSIMD &p) const
void SetNDaughters(int n)
fvec GetDecayLength(fvec &L, fvec &SigmaL) const
virtual void GetDStoParticle(const KFParticleBaseSIMD &p, fvec &DS, fvec &DSp) const =0
fvec GetMomentum(fvec &P, fvec &SigmaP) const
fvec GetDeviationFromVertex(const fvec v[], const fvec Cv[]=0) const
virtual void Transport(fvec dS, fvec P[], fvec C[]) const =0
void SetVtxErrGuess(fvec &x, fvec &y, fvec &z)
void GetDStoParticleLine(const KFParticleBaseSIMD &p, fvec &dS, fvec &dS1) const
fvec GetCovariance(Int_t i, Int_t j) const
void GetDistanceToVertexLine(const KFParticleBaseSIMD &Vertex, fvec &l, fvec &dl, fvec *isParticleFromVertex=0) const
void TransportToProductionVertex()
void ConstructGammaBz(const KFParticleBaseSIMD &daughter1, const KFParticleBaseSIMD &daughter2, fvec Bz)
void AddDaughterId(fvec id)
fvec GetLifeTime(fvec &T, fvec &SigmaT) const
void operator+=(const KFParticleBaseSIMD &Daughter)
void GetDStoParticleCBM(const KFParticleBaseSIMD &p, fvec &dS, fvec &dS1) const
void TransportLine(fvec S, fvec P[], fvec C[]) const
fvec GetR(fvec &R, fvec &SigmaR) const
fvec GetSCorrection(const fvec Part[], const fvec XYZ[]) const
void GetMeasurement(const fvec XYZ[], fvec m[], fvec V[], Bool_t isAtVtxGuess=0) const
fvec & Cij(Int_t i, Int_t j)
virtual void GetFieldValue(const fvec xyz[], fvec B[]) const =0
void RotateXY(fvec angle, fvec Vtx[3])
fvec GetCovariance(Int_t i) const
fvec GetDStoPointBy(fvec By, const fvec xyz[]) const
void AddDaughterWithEnergyCalc(const KFParticleBaseSIMD &Daughter, Bool_t isAtVtxGuess)
void TransportCBM(fvec dS, fvec P[], fvec C[]) const
void Convert(bool ToProduction)
fvec & Covariance(Int_t i)
static void multQSQt1(const fvec J[11], fvec S[])
const fvec & GetSumDaughterMass() const
static fvec InvertSym3(const fvec A[], fvec Ainv[])
static void MultQSQt(const fvec Q[], const fvec S[], fvec SOut[])
static void GetArmenterosPodolanski(KFParticleBaseSIMD &positive, KFParticleBaseSIMD &negative, fvec QtAlfa[2])
fvec GetDistanceFromParticle(const KFParticleBaseSIMD &p) const
void GetDStoParticleBz(fvec Bz, const KFParticleBaseSIMD &p, fvec &dS, fvec &dS1) const
std::vector< fvec > & DaughterIds()
void AddDaughterWithEnergyFitMC(const KFParticleBaseSIMD &Daughter, Bool_t isAtVtxGuess)
void TransportToDS(fvec dS)
const fvec & Chi2() const
fvec GetDistanceFromVertex(const fvec vtx[]) const
fvec GetPt(fvec &Pt, fvec &SigmaPt) const
static void InvertCholetsky3(fvec a[6])
virtual ~KFParticleBaseSIMD()
void GetDSIter(const KFParticleBaseSIMD &p, fvec const &dS, fvec x[3], fvec dx[3], fvec ddx[3]) const
void SubtractFromParticle(KFParticleBaseSIMD &Vtx) const
void SetConstructMethod(Int_t m)
void AddDaughter(const KFParticleBaseSIMD &Daughter, Bool_t isAtVtxGuess=0)
fvec GetDStoPointBz(fvec Bz, const fvec xyz[]) const
const int & GetPDG() const
Bool_t fAtProductionVertex
virtual fvec GetDStoPoint(const fvec xyz[]) const =0
fvec GetDStoPointLine(const fvec xyz[]) const
fvec GetMass(fvec &M, fvec &SigmaM) const
fvec GetPhi(fvec &Phi, fvec &SigmaPhi) const
static Int_t IJ(Int_t i, Int_t j)
const fvec & GetMassHypo() const
fvec GetDaughterId(int iD) const
void SetProductionVertex(const KFParticleBaseSIMD &Vtx)
fvec GetParameter(Int_t i) const
void SetNonlinearMassConstraint(fvec Mass)
void SetVtxGuess(fvec x, fvec y, fvec z)
void TransportBz(fvec Bz, fvec dS, fvec P[], fvec C[]) const
void SubtractFromVertex(KFParticleBaseSIMD &Vtx) const
fvec & Parameter(Int_t i)
fvec GetDecayLengthXY(fvec &L, fvec &SigmaL) const
void SetMassConstraint(fvec Mass, fvec SigmaMass=0)
void Construct(const KFParticleBaseSIMD *vDaughters[], Int_t nDaughters, const KFParticleBaseSIMD *ProdVtx=0, Float_t Mass=-1, Bool_t IsConstrained=0, Bool_t isAtVtxGuess=0)