]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/FEMTOSCOPY/AliFemto/AliFemtoXi.cxx
Update runBatch.C for the new AddTask.C macro
[u/mrichter/AliRoot.git] / PWG2 / FEMTOSCOPY / AliFemto / AliFemtoXi.cxx
CommitLineData
d0e92d9a 1///////////////////////////////////////////////////////////////////////////
2// //
3// AliFemtoXi: special type of particle desling with the specifics //
4// of the Xi type of particle //
5// It stores the information both about the Xi itself and about it's //
6// daughters, as well as the bachelor particle from first decay vertex //
7// so that the caut betwen the daughter characteristics and the bachelor //
8// is possible. //
9// //
10///////////////////////////////////////////////////////////////////////////
11#include "AliFemtoXi.h"
67427ff7 12#include "phys_constants.h"
13
0215f606 14// -----------------------------------------------------------------------
15AliFemtoXi::AliFemtoXi():
16 fCharge(0), fDecayLengthXi(0),
17 fDecayVertexXi(0),
18 fDcaXiDaughters(0), fDcaXiToPrimVertex(0), fDcaBachelorToPrimVertex(0),
19 fMomBachelor(0), fKeyBachelor(0),
20 fTpcHitsBac(0), fChi2Xi(0), fClXi(0), fChi2Bachelor(0), fClBachelor(0),
21 fDedxBachelor(0), fNufDedxBachelor(0), fMomXi(0),
22 fAlphaXi(0), fPtArmXi(0),
23 fEXi(0), fEOmega(0), fEBacPion(0), fEBacKaon(0),
24 fMassXi(0), fMassOmega(0), fRapXi(0), fRapOmega(0),
25 fCTauXi(0), fCTauOmega(0),
26 fPtXi(0), fPtotXi(0), fPtBac(0), fPtotBac(0),
27 fKeyBac(0)
28{/* no-op */}
67427ff7 29// -----------------------------------------------------------------------
30void AliFemtoXi::UpdateXi(){
31 //Calc. derived members of the xi class
d0e92d9a 32 float tMomV0AlongXi, tMomBacAlongXi;
67427ff7 33
d0e92d9a 34 fMomXi = MomV0() + MomBac();
67427ff7 35 fPtXi = fMomXi.perp();
36 fPtotXi = fMomXi.mag();
d0e92d9a 37 fPtBac = MomBac().perp();
38 fPtotBac= MomBac().mag();
67427ff7 39 fEXi= ::sqrt(fPtotXi*fPtotXi+M_XI_MINUS*M_XI_MINUS);
40 fEOmega= ::sqrt(fPtotXi*fPtotXi+M_OMEGA_MINUS*M_OMEGA_MINUS);
d0e92d9a 41 fEBacPion = ::sqrt(PtotBac()*PtotBac()+M_PION_MINUS*M_PION_MINUS);
42 fEBacKaon = ::sqrt(PtotBac()*PtotBac()+M_KAON_MINUS*M_KAON_MINUS);
67427ff7 43
d0e92d9a 44 tMomV0AlongXi = MomV0()*fMomXi / ::sqrt(::pow(fPtotXi,2));
45 tMomBacAlongXi = MomBac()*fMomXi / ::sqrt(::pow(fPtotXi,2));
67427ff7 46
d0e92d9a 47 fAlphaXi = (tMomBacAlongXi-tMomV0AlongXi)/(tMomBacAlongXi+tMomV0AlongXi);
48 fPtArmXi = ::sqrt(PtotBac()*PtotBac() - tMomBacAlongXi*tMomBacAlongXi);
49 fMassXi = ::sqrt(::pow(EBacPion()+ELambda(),2)-::pow(fPtotXi,2));
50 fMassOmega = ::sqrt(::pow(EBacKaon()+ELambda(),2)-::pow(fPtotXi,2));
67427ff7 51
d0e92d9a 52 fRapXi = 0.5*::log( (EXi()+fMomXi.z()) / (EXi()-fMomXi.z()) );
67427ff7 53 fCTauXi = M_XI_MINUS*(fDecayLengthXi) / ::sqrt( ::pow((double)fMomXi.mag(),2.) );
54
d0e92d9a 55 fRapOmega = 0.5*::log( (EOmega()+fMomXi.z()) / (EOmega()-fMomXi.z()) );// eO,
67427ff7 56 fCTauOmega = M_OMEGA_MINUS*(fDecayLengthXi) / ::sqrt( ::pow((double)fMomXi.mag(),2.) );
57}
58// -----------------------------------------------------------------------
59#ifdef __ROOT__
60#ifndef __NO_STAR_DEPENDENCE_ALLOWED__
61#include "StStrangeMuDstMaker/StXiMuDst.h"
62AliFemtoXi::AliFemtoXi( StXiMuDst& xiFromMuDst) : AliFemtoV0(xiFromMuDst) { // from strangess micro dst structure
63 UpdateV0(); // the v0 stuff
64
65
66 fCharge = xiFromMuDst.charge();
67 fDecayLengthXi = xiFromMuDst.decayLengthXi(); // 12/07/2001 Gael
68 fDecayVertexXi.setX(xiFromMuDst.decayVertexXiX());
69 fDecayVertexXi.setY(xiFromMuDst.decayVertexXiY());
70 fDecayVertexXi.setZ(xiFromMuDst.decayVertexXiZ());
71 fDcaXiDaughters = xiFromMuDst.dcaXiDaughters();
72 fDcaBachelorToPrimVertex = xiFromMuDst.dcaBachelorToPrimVertex();
73 fDcaXiToPrimVertex = xiFromMuDst.dcaXiToPrimVertex();
74 fMomBachelor.setX(xiFromMuDst.momBachelorX());
75 fMomBachelor.setY(xiFromMuDst.momBachelorY());
76 fMomBachelor.setZ(xiFromMuDst.momBachelorZ());
77
78 fKeyBachelor = xiFromMuDst.keyBachelor();
79 fTopologyMapBachelor[0] = xiFromMuDst.topologyMapBachelor().data(1);
80 fTopologyMapBachelor[1] = xiFromMuDst.topologyMapBachelor().data(2);
81 fTpcHitsBac = xiFromMuDst.topologyMapBachelor().numberOfHits(kTpcId); // 12/07/2001 Gael
82
83 fChi2Xi = xiFromMuDst.chi2Xi();//nulle
84 fClXi = xiFromMuDst.clXi();//nulle
85 fChi2Bachelor = xiFromMuDst.chi2Bachelor();
86 fClBachelor = xiFromMuDst.clBachelor();
87
88 fDedxBachelor = xiFromMuDst.dedxBachelor();
89 fNufDedxBachelor = xiFromMuDst.nufDedxBachelor();
90
91 UpdateXi(); // the xi stuff
92
93}
94
95#endif // __NO_STAR_DEPENDENCE_ALLOWED__
96#endif // __ROOT__
97