18#define NonhomogeneousField
21#ifndef ALIKFPARTICLE_H
22#define ALIKFPARTICLE_H
27#ifdef HomogeneousField
32#ifdef NonhomogeneousField
47#ifdef HomogeneousField
75#ifdef HomogeneousField
85#ifdef NonhomogeneousField
123#ifdef NonhomogeneousField
247 Bool_t IsConstrained = 0);
269#ifdef HomogeneousField
270 void TransportToVertex(
const AliVVertex&
v);
300#ifdef HomogeneousField
310#ifdef HomogeneousField
320#ifdef HomogeneousField
326#ifdef HomogeneousField
336#ifdef HomogeneousField
367#ifdef HomogeneousField
380#ifdef HomogeneousField
383#ifdef NonhomogeneousField
396#ifdef HomogeneousField
397inline void KFParticle::SetField(
Double_t Bz)
901#ifdef HomogeneousField
902inline void KFParticle::TransportToVertex(
const AliVVertex&
v)
921#ifdef HomogeneousField
924#ifdef NonhomogeneousField
953#ifdef HomogeneousField
979#ifdef HomogeneousField
980inline Double_t KFParticle::GetFieldAlice()
986#ifdef HomogeneousField
990 B[2] = GetFieldAlice();
994#ifdef NonhomogeneousField
998 MF->GetFieldValue(xyz, B);
1009#ifdef HomogeneousField
1012#ifdef NonhomogeneousField
1020#ifdef HomogeneousField
1023#ifdef NonhomogeneousField
1030#ifdef HomogeneousField
#define ClassDef(name, id)
static CbmKF * Instance()
BmnNewFieldMap * GetMagneticField()
void SetProductionVertex(const KFParticleBase &Vtx)
Int_t GetPhi(Double_t &Phi, Double_t &SigmaPhi) const
const Double_t & Y() const
const Double_t & S() const
void GetDStoParticleBz(Double_t Bz, const KFParticleBase &p, Double_t &dS, Double_t &dS1) const
Double_t GetDStoPointCBM(const Double_t xyz[]) const
void AddDaughter(const KFParticleBase &Daughter)
Int_t GetLifeTime(Double_t &T, Double_t &SigmaT) const
Int_t GetEta(Double_t &Eta, Double_t &SigmaEta) const
Int_t GetDecayLength(Double_t &L, Double_t &SigmaL) const
Int_t GetR(Double_t &R, Double_t &SigmaR) const
const Double_t & Z() const
void TransportCBM(Double_t dS, Double_t P[], Double_t C[]) const
Int_t GetMomentum(Double_t &P, Double_t &SigmaP) const
void SubtractFromVertex(KFParticleBase &Vtx) const
const Double_t & E() const
Double_t & Parameter(Int_t i)
Bool_t fAtProductionVertex
Double_t GetDistanceFromVertex(const Double_t vtx[]) const
Double_t GetDStoPointBz(Double_t Bz, const Double_t xyz[]) const
void GetDStoParticleCBM(const KFParticleBase &p, Double_t &dS, Double_t &dS1) const
const Double_t & Pz() const
Double_t GetDistanceFromParticle(const KFParticleBase &p) const
void operator+=(const KFParticleBase &Daughter)
Double_t GetDeviationFromParticle(const KFParticleBase &p) const
Double_t GetCovariance(Int_t i) const
void SetVtxGuess(Double_t x, Double_t y, Double_t z)
const Double_t & Chi2() const
const Double_t & Px() const
std::vector< int > fDaughtersIds
Int_t GetMass(Double_t &M, Double_t &SigmaM) const
void TransportToProductionVertex()
void TransportBz(Double_t Bz, Double_t dS, Double_t P[], Double_t C[]) const
const Double_t & X() const
Int_t GetDecayLengthXY(Double_t &L, Double_t &SigmaL) const
Double_t GetParameter(Int_t i) const
const Double_t & Py() const
void Construct(const KFParticleBase *vDaughters[], Int_t nDaughters, const KFParticleBase *ProdVtx=0, Double_t Mass=-1, Bool_t IsConstrained=0)
void SetMassConstraint(Double_t Mass, Double_t SigmaMass=0)
Double_t GetDeviationFromVertex(const Double_t v[], const Double_t Cv[]=0) const
const Int_t & NDF() const
void ConstructGammaBz(const KFParticleBase &daughter1, const KFParticleBase &daughter2, double Bz)
void TransportToDecayVertex()
Double_t & Covariance(Int_t i)
void TransportToDS(Double_t dS)
Int_t GetPt(Double_t &Pt, Double_t &SigmaPt) const
void ConstructGamma(const KFParticle &daughter1, const KFParticle &daughter2)
void GetDStoParticleXY(const KFParticleBase &p, Double_t &DS, Double_t &DSp) const
Bool_t GetDistanceFromVertexXY(const Double_t vtx[], Double_t &val, Double_t &err) const
static void GetExternalTrackParam(const KFParticleBase &p, Double_t &X, Double_t &Alpha, Double_t P[5])
const Double_t & Px() const
void TransportToDecayVertex()
const Double_t & Pz() const
Double_t * CovarianceMatrix()
Double_t GetDeviationFromVertexXY(const Double_t v[], const Double_t Cv[]=0) const
Double_t GetTheta() const
Double_t GetDeviationFromParticleXY(const KFParticle &p) const
void SetAtProductionVertex(Bool_t b)
void GetFieldValue(const Double_t xyz[], Double_t B[]) const
void Transport(Double_t dS, Double_t P[], Double_t C[]) const
const Double_t & Y() const
const Double_t & S() const
Double_t GetErrMomentum() const
const Int_t & NDF() const
void SetProductionVertex(const KFParticle &Vtx)
const Double_t & Py() const
Double_t GetAngle(const KFParticle &p) const
Double_t GetDecayLengthXY() const
Double_t GetDeviationFromVertex(const Double_t v[], const Double_t Cv[]=0) const
Double_t GetPseudoProperDecayTime(const KFParticle &primVertex, const Double_t &mass, Double_t *timeErr2=0) const
Double_t GetErrPhi() const
void SetVtxGuess(Double_t x, Double_t y, Double_t z)
void SetMassConstraint(Double_t Mass, Double_t SigmaMass=0)
const Double_t & E() const
Double_t GetErrEta() const
void TransportToParticle(const KFParticle &p)
void TransportToDS(Double_t dS)
Double_t GetMomentum() const
Double_t GetDistanceFromVertex(const Double_t vtx[]) const
Double_t GetDeviationFromParticle(const KFParticle &p) const
Double_t & Parameter(int i)
Double_t GetDistanceFromParticleXY(const KFParticle &p) const
void SubtractFromVertex(KFParticle &v) const
Double_t GetErrDecayLength() const
Double_t GetAngleXY(const KFParticle &p) const
Double_t GetErrPy() const
Double_t GetAngleRZ(const KFParticle &p) const
const Double_t & X() const
void TransportToProductionVertex()
Double_t GetErrDecayLengthXY() const
Double_t & Covariance(int i)
Bool_t GetAtProductionVertex() const
Double_t GetDStoPoint(const Double_t xyz[]) const
void SetFieldCoeff(float c, int i)
Double_t GetErrMass() const
Double_t GetErrPx() const
const Double_t & Z() const
void SetNDaughters(int n)
Double_t GetDistanceFromParticle(const KFParticle &p) const
void GetDStoParticle(const KFParticle &p, Double_t &DS, Double_t &DSp) const
const Double_t & Chi2() const
Double_t GetCovariance(int i) const
Double_t GetParameter(int i) const
void Construct(const KFParticle *vDaughters[], int nDaughters, const KFParticle *ProdVtx=0, Double_t Mass=-1, Bool_t IsConstrained=0)
Double_t GetDecayLength() const
Double_t GetErrPt() const
void TransportToPoint(const Double_t xyz[])
void operator+=(const KFParticle &Daughter)
Double_t GetErrLifeTime() const
Double_t GetErrPz() const
Double_t GetLifeTime() const
void Create(const Double_t Param[], const Double_t Cov[], Int_t Charge, Double_t mass)
Double_t GetRapidity() const
Double_t ATan2(Double_t y, Double_t x)
Double_t Sqrt(Double_t x)