]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/FEMTOSCOPY/AliFemto/AliFemtoModelWeightGenerator.cxx
Adding Lednicky's weight generator
[u/mrichter/AliRoot.git] / PWG2 / FEMTOSCOPY / AliFemto / AliFemtoModelWeightGenerator.cxx
CommitLineData
d0e92d9a 1////////////////////////////////////////////////////////////////////////////////
2/// ///
3/// AliFemtoModelWeightGenerator - abstract base class for femtoscopic ///
4/// weight generator ///
5/// Authors: Adam Kisiel kisiel@mps.ohio-state.edu ///
6/// ///
7////////////////////////////////////////////////////////////////////////////////
8#ifdef __ROOT__
9 ClassImp(AliFemtoModelGausLCMSFreezeOutGenerator, 1)
10#endif
11
12#include "AliFemtoModelWeightGenerator.h"
13#include "AliFemtoModelHiddenInfo.h"
14
15const Int_t AliFemtoModelWeightGenerator::fgkPionPlusPionPlus = 1;
16const Int_t AliFemtoModelWeightGenerator::fgkPionPlusPionMinus = 2;
17const Int_t AliFemtoModelWeightGenerator::fgkKaonPlusKaonPlus = 3;
18const Int_t AliFemtoModelWeightGenerator::fgkKaonPlusKaonMinus = 4;
19const Int_t AliFemtoModelWeightGenerator::fgkProtonProton = 5;
20const Int_t AliFemtoModelWeightGenerator::fgkProtonAntiproton = 6;
21const Int_t AliFemtoModelWeightGenerator::fgkPionPlusKaonPlus = 7;
22const Int_t AliFemtoModelWeightGenerator::fgkPionPlusKaonMinus = 8;
23const Int_t AliFemtoModelWeightGenerator::fgkPionPlusProton = 9;
24const Int_t AliFemtoModelWeightGenerator::fgkPionPlusAntiproton = 10;
25const Int_t AliFemtoModelWeightGenerator::fgkKaonPlusProton = 11;
26const Int_t AliFemtoModelWeightGenerator::fgkKaonPlusAntiproton = 12;
27
28//_____________________________________________
29AliFemtoModelWeightGenerator::AliFemtoModelWeightGenerator() :
30 fPairType(0),
31 fKStarOut(0), fKStarSide(0), fKStarLong(0), fKStar(0),
32 fRStarOut(0), fRStarSide(0), fRStarLong(0), fRStar(0)
33{}
34//_____________________________________________
35AliFemtoModelWeightGenerator::AliFemtoModelWeightGenerator(const AliFemtoModelWeightGenerator &aModel) :
36 fPairType(0),
37 fKStarOut(0), fKStarSide(0), fKStarLong(0), fKStar(0),
38 fRStarOut(0), fRStarSide(0), fRStarLong(0), fRStar(0)
39{
40 fPairType = aModel.fPairType;
41}
42//_____________________________________________
43AliFemtoModelWeightGenerator::~AliFemtoModelWeightGenerator(){/* no-op */}
44//_____________________________________________
45void AliFemtoModelWeightGenerator::SetPairType(Int_t aPairType)
46{
47 fPairType = aPairType;
48}
49
50//_____________________________________________
51Int_t AliFemtoModelWeightGenerator::GetPairType() const
52{
53 return fPairType;
54}
55
56//_____________________________________________
57void AliFemtoModelWeightGenerator::SetPairTypeFromPair(AliFemtoPair *aPair)
58{
59 AliFemtoModelHiddenInfo *inf1 = ( AliFemtoModelHiddenInfo *) aPair->Track1()->HiddenInfo();
60 AliFemtoModelHiddenInfo *inf2 = ( AliFemtoModelHiddenInfo *) aPair->Track2()->HiddenInfo();
61
62 const Int_t ktPid1 = inf1->GetPDGPid();
63 const Int_t ktPid2 = inf2->GetPDGPid();
64
65 if (((ktPid1 == 211) && (ktPid2 == 211)) ||
66 ((ktPid1 == -211) && (ktPid2 == -211)))
67 fPairType = fgkPionPlusPionPlus;
68 else if (((ktPid1 == -211) && (ktPid2 == 211)) ||
69 ((ktPid1 == 211) && (ktPid2 == -211)))
70 fPairType = fgkPionPlusPionMinus;
71 else if (((ktPid1 == 321) && (ktPid2 == 321)) ||
72 ((ktPid1 == -321) && (ktPid2 == -321)))
73 fPairType = fgkKaonPlusKaonPlus;
74 else if (((ktPid1 == -321) && (ktPid2 == 321)) ||
75 ((ktPid1 == 321) && (ktPid2 == -321)))
76 fPairType = fgkKaonPlusKaonMinus;
77 else if (((ktPid1 == 2212) && (ktPid2 == 2212)) ||
78 ((ktPid1 == -2212) && (ktPid2 == -2212)))
79 fPairType = fgkProtonProton;
80 else if (((ktPid1 == -2212) && (ktPid2 == 2212)) ||
81 ((ktPid1 == 2212) && (ktPid2 == -2212)))
82 fPairType = fgkProtonAntiproton;
83 else if (((ktPid1 == 211) && (ktPid2 == 321)) ||
84 ((ktPid1 == -211) && (ktPid2 == -321)))
85 fPairType = fgkPionPlusKaonPlus;
86 else if (((ktPid1 == -211) && (ktPid2 == 321)) ||
87 ((ktPid1 == 211) && (ktPid2 == -321)))
88 fPairType = fgkPionPlusKaonMinus;
89 else if (((ktPid1 == 211) && (ktPid2 == 2212)) ||
90 ((ktPid1 == -211) && (ktPid2 == -2212)))
91 fPairType = fgkPionPlusProton;
92 else if (((ktPid1 == -211) && (ktPid2 == 2212)) ||
93 ((ktPid1 == 211) && (ktPid2 == -2212)))
94 fPairType = fgkPionPlusAntiproton;
95 else if (((ktPid1 == 321) && (ktPid2 == 2212)) ||
96 ((ktPid1 == -321) && (ktPid2 == -2212)))
97 fPairType = fgkKaonPlusProton;
98 else if (((ktPid1 == -321) && (ktPid2 == 2212)) ||
99 ((ktPid1 == 321) && (ktPid2 == -2212)))
100 fPairType = fgkKaonPlusAntiproton;
101}
102
103//_____________________________________________
104AliFemtoModelWeightGenerator* AliFemtoModelWeightGenerator::Clone() const
105{
106 return 0;
107}