515ab870f97d8f2afb64b322ff1597647e05baa3
[u/mrichter/AliRoot.git] / HBTAN / AliHBTLLWeightTheorFctn.cxx
1 /* $Id$ */
2
3 //-----------------------------------------------------------
4 // This class introduces the weights calculated according 
5 // with functions of efficiency of identification (TPC+TOF) 
6 // (calculated by B.V. Batyunia).
7 // Author: Ludmila Malinina, JINR (malinina@sunhe.jinr.ru)
8 //-----------------------------------------------------------
9
10 #include "AliHBTLLWeightTheorFctn.h"
11
12 //--for test--AliHBTLLWeightQInvFctn* yyy= new AliHBTLLWeightQInvFctn();
13 /*************************************************************/
14 /*************************************************************/
15 /*************************************************************/
16
17 ClassImp(AliHBTLLWeightTheorQInvFctn)  
18 /*************************************************************/
19
20 AliHBTLLWeightTheorQInvFctn::
21 AliHBTLLWeightTheorQInvFctn(Int_t nbins, Double_t maxXval, Double_t minXval):
22   AliHBTOnePairFctn1D(nbins,maxXval,minXval)
23 {
24   //ctor
25  fWriteNumAndDen = kTRUE;//change default behaviour
26  Rename("wqinvtheorcf","Q_{inv} Weight Theoretical Correlation Function");
27 }
28 /****************************************************************/
29 void  AliHBTLLWeightTheorQInvFctn::ProcessSameEventParticles(AliHBTPair* partpair)
30 {
31   //Processes Particles and tracks Same different even
32   partpair  = CheckPair(partpair);
33   if (partpair == 0x0) return;
34   Double_t weight = partpair->GetLLWeight();
35   if(TMath::Abs(weight)<=10.) fNumerator->Fill(partpair->GetQInv(),weight);
36
37
38 /**************************************************************/
39 TH1* AliHBTLLWeightTheorQInvFctn::GetResult() 
40 {
41   //returns ratio of numerator and denominator
42   return GetRatio(Scale());
43 }                    
44                                                               
45 /*************************************************************/
46 /*************************************************************/
47 /*************************************************************/
48
49 ClassImp(AliHBTLLWeightTheorQOutFctn)  
50 /*************************************************************/
51
52 AliHBTLLWeightTheorQOutFctn::
53 AliHBTLLWeightTheorQOutFctn(Int_t nbins, Double_t maxXval, Double_t minXval):
54   AliHBTOnePairFctn1D(nbins,maxXval,minXval)
55 {
56   //ctor
57  fWriteNumAndDen = kTRUE;//change default behaviour
58  Rename("wqouttheorcf","Q_{out} Weight Theoretical Correlation Function");
59 }
60 /****************************************************************/
61 void  AliHBTLLWeightTheorQOutFctn::ProcessSameEventParticles(AliHBTPair* partpair)
62 {
63   //Processes Particles and tracks Same different even
64   partpair  = CheckPair(partpair);
65   if (partpair == 0x0) return;
66   Double_t weight = partpair->GetLLWeight();
67   if(TMath::Abs(weight)<=10.) fNumerator->Fill(partpair->GetQOutCMSLC(),weight);
68
69
70 /**************************************************************/
71 TH1* AliHBTLLWeightTheorQOutFctn::GetResult() 
72 {
73   //returns ratio of numerator and denominator
74   return GetRatio(Scale());
75 }                    
76
77 /*************************************************************/
78 /*************************************************************/
79 /*************************************************************/
80
81 ClassImp(AliHBTLLWeightTheorQSideFctn)  
82 /*************************************************************/
83
84 AliHBTLLWeightTheorQSideFctn::
85 AliHBTLLWeightTheorQSideFctn(Int_t nbins, Double_t maxXval, Double_t minXval):
86   AliHBTOnePairFctn1D(nbins,maxXval,minXval)
87 {
88   //ctor
89  fWriteNumAndDen = kTRUE;//change default behaviour
90  Rename("wqsidetheorcf","Q_{side} Weight Theoretical Correlation Function");
91 }
92 /****************************************************************/
93 void  AliHBTLLWeightTheorQSideFctn::ProcessSameEventParticles(AliHBTPair* partpair)
94 {
95   //Processes Particles and tracks Same different even
96   partpair  = CheckPair(partpair);
97   if (partpair == 0x0) return;
98   Double_t weight = partpair->GetLLWeight();
99   if(TMath::Abs(weight)<=10.) fNumerator->Fill(partpair->GetQSideCMSLC(),weight);
100
101
102 /**************************************************************/
103 TH1* AliHBTLLWeightTheorQSideFctn::GetResult() 
104 {
105   //returns ratio of numerator and denominator
106   return GetRatio(Scale());
107 }                    
108
109 /*************************************************************/
110 /*************************************************************/
111 /*************************************************************/
112
113 ClassImp(AliHBTLLWeightTheorQLongFctn)  
114 /*************************************************************/
115
116 AliHBTLLWeightTheorQLongFctn::
117 AliHBTLLWeightTheorQLongFctn(Int_t nbins, Double_t maxXval, Double_t minXval):
118   AliHBTOnePairFctn1D(nbins,maxXval,minXval)
119 {
120   //ctor
121  fWriteNumAndDen = kTRUE;//change default behaviour
122  Rename("wqlongtheorcf","Q_{long} Weight Theoretical Correlation Function");
123 }
124 /****************************************************************/
125 void  AliHBTLLWeightTheorQLongFctn::ProcessSameEventParticles(AliHBTPair* partpair)
126 {
127   //Processes Particles and tracks Same different even
128   partpair  = CheckPair(partpair);
129   if (partpair == 0x0) return;
130   Double_t weight = partpair->GetLLWeight();
131   if(TMath::Abs(weight)<=10.) fNumerator->Fill(partpair->GetQLongCMSLC(),weight);
132
133
134 /**************************************************************/
135 TH1* AliHBTLLWeightTheorQLongFctn::GetResult() 
136 {
137   //returns ratio of numerator and denominator
138   return GetRatio(Scale());
139 }