AliPhysics  2c8507d (2c8507d)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliPicoV0RD.cxx
Go to the documentation of this file.
1 #include <TMath.h>
2 #include <TLorentzVector.h>
3 
4 #include "AliPicoV0RD.h"
5 
7 
8 //_____________________________________________________________________________
11 fPosPionSigmaTPC(0.),
12 fNegPionSigmaTPC(0.),
13 fPosProtonSigmaTPC(0.),
14 fNegProtonSigmaTPC(0.)
15 {
16 //
17 // AliPicoV0RD::AliPicoV0RD
18 //
19 }
20 
21 //_____________________________________________________________________________
23  Double_t dV0Radius,
24  Double_t dV0CosPA,
25  Double_t dV0DistToPVoverP,
26  Double_t dDausDCA,
27  Double_t dPosDCAtoPV,
28  Double_t dNegDCAtoPV,
29  Float_t dDauXrowsTPC,
30  Double_t dDauXrowsOverFindableClusTPC,
31  Double_t dPosPx, Double_t dPosPy, Double_t dPosPz,
32  Double_t dNegPx, Double_t dNegPy, Double_t dNegPz,
33  Bool_t bPosInJC, Bool_t bNegInJC,
34  Float_t dPosPionSigmaTPC, Float_t dPosProtonSigmaTPC,
35  Float_t dNegPionSigmaTPC, Float_t dNegProtonSigmaTPC) :
36 AliPicoV0Base(wMask,
37  dV0Radius,
38  dV0CosPA,
39  dV0DistToPVoverP,
40  dDausDCA,
41  dPosDCAtoPV,
42  dNegDCAtoPV,
43  dDauXrowsTPC,
44  dDauXrowsOverFindableClusTPC,
45  dPosPx, dPosPy, dPosPz,
46  dNegPx, dNegPy, dNegPz,
47  bPosInJC, bNegInJC),
48 fPosPionSigmaTPC(dPosPionSigmaTPC),
49 fNegPionSigmaTPC(dNegPionSigmaTPC),
50 fPosProtonSigmaTPC(dPosProtonSigmaTPC),
51 fNegProtonSigmaTPC(dNegProtonSigmaTPC)
52 {
53 //
54 // AliPicoV0RD::AliPicoV0RD
55 //
56 }
57 
58 //_____________________________________________________________________________
60 AliPicoV0Base(src),
61 fPosPionSigmaTPC(src.fPosPionSigmaTPC),
62 fNegPionSigmaTPC(src.fNegPionSigmaTPC),
63 fPosProtonSigmaTPC(src.fPosProtonSigmaTPC),
64 fNegProtonSigmaTPC(src.fNegProtonSigmaTPC)
65 {
66 //
67 // AliPicoV0RD::AliPicoV0RD
68 //
69 }
70 
71 //_____________________________________________________________________________
73 {
74 //
75 // AliPicoV0RD::operator=
76 //
77 
78  if (&src==this) return *this;
79 
81 
86 
87  return *this;
88 }
89 
90 //_____________________________________________________________________________
92 {
93 //
94 // AliPicoV0RD::~AliPicoV0RD
95 //
96 }
97 
98 //_____________________________________________________________________________
100 {
101 //
102 // AliPicoV0RD::IsKshort
103 //
104 
105  if (!AliPicoV0Base::IsKshort()) return kFALSE;
106 //=============================================================================
107 
108  if (dCuts[9]>0.) {
109  if (!((TMath::Abs(fPosPionSigmaTPC)<dCuts[9]) &&
110  (TMath::Abs(fNegPionSigmaTPC)<dCuts[9]))) return kFALSE;
111  }
112 
113  if (!IsKa(dCuts[0],dCuts[1],dCuts[2],dCuts[3],dCuts[4],dCuts[5],dCuts[6],dCuts[7],dCuts[8])) return kFALSE;
114 
115  return kTRUE;
116 }
117 
118 //_____________________________________________________________________________
120 {
121 //
122 // AliPicoV0RD::IsLambda
123 //
124 
125  if (!AliPicoV0Base::IsLambda()) return kFALSE;
126 //=============================================================================
127 
128  if (dCuts[9]>0.) {
129  if (!((TMath::Abs(fPosProtonSigmaTPC)<dCuts[9]) &&
130  (TMath::Abs(fNegPionSigmaTPC) <dCuts[9]))) return kFALSE;
131  }
132 
133  if (!IsLa(dCuts[0],dCuts[1],dCuts[2],dCuts[3],dCuts[4],dCuts[5],dCuts[6],dCuts[7],dCuts[8])) return kFALSE;
134 
135  return kTRUE;
136 }
137 
138 //_____________________________________________________________________________
140 {
141 //
142 // AliPicoV0RD::IsAntiLa
143 //
144 
145  if (!AliPicoV0Base::IsAntiLa()) return kFALSE;
146 //=============================================================================
147 
148  if (dCuts[9]>0.) {
149  if (!((TMath::Abs(fPosPionSigmaTPC) <dCuts[9]) &&
150  (TMath::Abs(fNegProtonSigmaTPC)<dCuts[9]))) return kFALSE;
151  }
152 
153  if (!IsLa(dCuts[0],dCuts[1],dCuts[2],dCuts[3],dCuts[4],dCuts[5],dCuts[6],dCuts[7],dCuts[8])) return kFALSE;
154 
155  return kTRUE;
156 }
157 
158 //_____________________________________________________________________________
160 {
161 //
162 // AliPicoV0RD::GetControlVariables
163 //
164 
165  d[ 0] = (Float_t)fV0Radius;
166  d[ 1] = (Float_t)fV0CosPA;
167  d[ 2] = (Float_t)fV0DistToPVoverP;
168  d[ 3] = (Float_t)fDausDCA;
169  d[ 4] = (Float_t)fPosDCAtoPV;
170  d[ 5] = (Float_t)fNegDCAtoPV;
171  d[ 6] = (Float_t)fDauXrowsTPC;
173  d[ 8] = (Float_t)fPosPionSigmaTPC;
174  d[ 9] = (Float_t)fNegPionSigmaTPC;
175  d[10] = (Float_t)fPosProtonSigmaTPC;
176  d[11] = (Float_t)fNegProtonSigmaTPC;
177  d[12] = (Float_t)KineRD().Pt();
178  d[13] = (Float_t)RapidityKa();
179  d[14] = (Float_t)RapidityLa();
180  d[15] = (Float_t)KineKshort().M();
181  d[16] = (Float_t)KineLambda().M();
182  d[17] = (Float_t)KineAntiLa().M();
183  d[18] = (Float_t)fP3Pos.Eta();
184  d[19] = (Float_t)fP3Neg.Eta();
185 
186  return;
187 }
void GetControlVariables(Float_t d[20])
Bool_t IsKa(Double_t dCutMinV0Radius=0.5, Double_t dCutMinV0CosPA=0.97, Double_t dCutMaxV0Ctau=20., Double_t dCutMaxDausDCA=1., Double_t dCutMinPosDCAtoPV=0.06, Double_t dCutMinNegDCAtoPV=0.06, Float_t dCutMinDauXrowsTPC=70., Double_t dCutMinDauXrowsOverFindableClusTPC=0.8, Double_t dCutMinDauDeltaM=0.005)
double Double_t
Definition: External.C:58
TLorentzVector KineAntiLa()
TLorentzVector KineKshort()
Float_t fDauXrowsTPC
Double_t RapidityKa()
Bool_t IsKshort() const
Definition: AliPicoV0Base.h:46
ClassImp(AliPicoV0RD) AliPicoV0RD
Definition: AliPicoV0RD.cxx:6
AliPicoV0Base & operator=(const AliPicoV0Base &src)
Double_t fV0Radius
TVector3 fP3Pos
Double_t RapidityLa()
unsigned int UInt_t
Definition: External.C:33
float Float_t
Definition: External.C:68
Double_t fDausDCA
Double_t fNegDCAtoPV
Double_t fV0CosPA
TVector3 KineRD() const
Definition: AliPicoV0Base.h:36
Float_t fNegProtonSigmaTPC
Definition: AliPicoV0RD.h:42
AliPicoV0RD & operator=(const AliPicoV0RD &src)
Definition: AliPicoV0RD.cxx:72
Bool_t IsAntiLa() const
Definition: AliPicoV0Base.h:48
Float_t fNegPionSigmaTPC
Definition: AliPicoV0RD.h:39
TVector3 fP3Neg
Double_t fDauXrowsOverFindableClusTPC
Double_t fPosDCAtoPV
TLorentzVector KineLambda()
virtual ~AliPicoV0RD()
Definition: AliPicoV0RD.cxx:91
Double_t fV0DistToPVoverP
Bool_t IsLa(Double_t dCutMinV0Radius=0.5, Double_t dCutMinV0CosPA=0.995, Double_t dCutMaxV0Ctau=30., Double_t dCutMaxDausDCA=1., Double_t dCutMinPosDCAtoPV=0.06, Double_t dCutMinNegDCAtoPV=0.06, Float_t dCutMinDauXrowsTPC=70., Double_t dCutMinDauXrowsOverFindableClusTPC=0.8, Double_t dCutMinDauDeltaM=0.01)
Float_t fPosProtonSigmaTPC
Definition: AliPicoV0RD.h:41
bool Bool_t
Definition: External.C:53
Bool_t IsLambda() const
Definition: AliPicoV0Base.h:47
Float_t fPosPionSigmaTPC
Definition: AliPicoV0RD.h:38