New classes for two track efficiency analysis implemented
authorskowron <skowron@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 18 Mar 2004 15:47:12 +0000 (15:47 +0000)
committerskowron <skowron@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 18 Mar 2004 15:47:12 +0000 (15:47 +0000)
HBTAN/AliHBTTwoTrackEffFctn.cxx
HBTAN/AliHBTTwoTrackEffFctn.h

index c9ea761..4df67d1 100644 (file)
@@ -50,15 +50,35 @@ TH1* AliHBTTwoTrackEffFctn::GetResult()
 /******************************************************************/
 /******************************************************************/
 /******************************************************************/
-ClassImp(AliHBTTwoTrackEffFctn3D)
+ClassImp(AliHBTTwoTrackEffFctnPxPyPz)
 
-AliHBTTwoTrackEffFctn3D::AliHBTTwoTrackEffFctn3D()
+AliHBTTwoTrackEffFctnPxPyPz::AliHBTTwoTrackEffFctnPxPyPz(Int_t nXbins, Double_t maxXval, Double_t minXval,
+                                                   Int_t nYbins, Double_t maxYval, Double_t minYval,
+                                                   Int_t nZbins, Double_t maxZval, Double_t minZval):
+ AliHBTOnePairFctn3D(nXbins,maxXval,minXval,nYbins,maxYval,minYval,nZbins,maxZval,minZval)
 {
+//ctor
 //Set Axis Title
+ fWriteNumAndDen = kTRUE;
+ Rename("tteffpxpypz","P_{x} P_{y} P_{z} Two Track Efficiency Function");
+ if(fNumerator)
+  {
+   fNumerator->GetXaxis()->SetTitle("\\Delta P_{x} [GeV]");
+   fNumerator->GetYaxis()->SetTitle("\\Delta P_{y} [GeV]");
+   fNumerator->GetZaxis()->SetTitle("\\Delta P_{z} [GeV]");
+  }
+
+ if(fDenominator)
+  {
+   fDenominator->GetXaxis()->SetTitle("\\Delta P_{x} [GeV]");
+   fDenominator->GetYaxis()->SetTitle("\\Delta P_{y} [GeV]");
+   fDenominator->GetZaxis()->SetTitle("\\Delta P_{z} [GeV]");
+  }
+
 }
 /******************************************************************/
 
-void AliHBTTwoTrackEffFctn3D::GetValues(AliHBTPair* pair, Double_t& x, Double_t&y ,Double_t& z)
+void AliHBTTwoTrackEffFctnPxPyPz::GetValues(AliHBTPair* pair, Double_t& x, Double_t&y ,Double_t& z)
 {
 //Returns values to be histogrammed
 //it does not 
@@ -66,3 +86,66 @@ void AliHBTTwoTrackEffFctn3D::GetValues(AliHBTPair* pair, Double_t& x, Double_t&
  y = pair->GetDeltaPy();
  z = pair->GetDeltaPz();
 }
+/******************************************************************/
+
+TH1* AliHBTTwoTrackEffFctnPxPyPz::GetResult()
+{
+//returns ratio of numerator and denominator
+ delete fRatio;
+ fRatio = GetRatio(Scale());
+ return fRatio;
+}
+
+/******************************************************************/
+/******************************************************************/
+/******************************************************************/
+ClassImp(AliHBTTwoTrackEffFctnPtThetaPhi)
+
+AliHBTTwoTrackEffFctnPtThetaPhi::AliHBTTwoTrackEffFctnPtThetaPhi(Int_t nXbins, Double_t maxXval, Double_t minXval,
+                                                   Int_t nYbins, Double_t maxYval, Double_t minYval,
+                                                   Int_t nZbins, Double_t maxZval, Double_t minZval):
+ AliHBTOnePairFctn3D(nXbins,maxXval,minXval,nYbins,maxYval,minYval,nZbins,maxZval,minZval)
+{
+//ctor
+//Set Axis Title
+ fWriteNumAndDen = kTRUE;
+ Rename("tteffptthetaphi","P_{t} \\theta \\phi Two Track Efficiency Function");
+ if(fNumerator)
+  {
+   fNumerator->GetXaxis()->SetTitle("\\Delta P_{t} [GeV]");
+   fNumerator->GetYaxis()->SetTitle("\\Delta \\theta [rad]");
+   fNumerator->GetZaxis()->SetTitle("\\Delta \\phi [rad]");
+  }
+
+ if(fDenominator)
+  {
+   fDenominator->GetXaxis()->SetTitle("\\Delta P_{t} [GeV]");
+   fDenominator->GetYaxis()->SetTitle("\\Delta \\theta [rad]");
+   fDenominator->GetZaxis()->SetTitle("\\Delta \\phi [rad]");
+  }
+}
+/******************************************************************/
+
+void AliHBTTwoTrackEffFctnPtThetaPhi::GetValues(AliHBTPair* pair, Double_t& x, Double_t&y ,Double_t& z)
+{
+//Returns values to be histogrammed
+//it does not 
+ x = pair->GetDeltaPt();
+ y = pair->GetDeltaTheta();
+ z = pair->GetDeltaPhi();
+}
+/******************************************************************/
+
+TH1* AliHBTTwoTrackEffFctnPtThetaPhi::GetResult()
+{
+//returns ratio of numerator and denominator
+ delete fRatio;
+ fRatio = GetRatio(Scale());
+ if(fRatio)
+  {
+   fRatio->GetXaxis()->SetTitle("\\Delta P_{t} [GeV]");
+   fRatio->GetYaxis()->SetTitle("\\Delta \\theta [rad]");
+   fRatio->GetZaxis()->SetTitle("\\Delta \\phi [rad]");
+  }
+ return fRatio;
+}
index 94688aa..33ba4b8 100644 (file)
@@ -27,19 +27,35 @@ class AliHBTTwoTrackEffFctn: public AliHBTOnePairFctn1D, public AliHBTCorrelFunc
   private:
     ClassDef(AliHBTTwoTrackEffFctn,2)
  };
+/******************************************************************/
 
-class AliHBTTwoTrackEffFctn3D: public AliHBTOnePairFctn3D, public AliHBTCorrelFunction
+class AliHBTTwoTrackEffFctnPxPyPz: public AliHBTOnePairFctn3D, public AliHBTCorrelFunction
  {
   public:
-    AliHBTTwoTrackEffFctn3D();
-    virtual ~AliHBTTwoTrackEffFctn3D(){}
-
-    void ProcessSameEventParticles(AliHBTPair* /*pair*/){}
-    void ProcessDiffEventParticles(AliHBTPair* /*pair*/){}
+    AliHBTTwoTrackEffFctnPxPyPz(Int_t nXbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0,
+                                Int_t nYbins = 100, Double_t maxYval = 0.15, Double_t minYval = 0.0,
+                   Int_t nZbins = 100, Double_t maxZval = 0.15, Double_t minZval = 0.0);
+    virtual ~AliHBTTwoTrackEffFctnPxPyPz(){}
+    TH1* GetResult();
+  protected:
+    void GetValues(AliHBTPair* pair,Double_t& x, Double_t& y,Double_t& z);
+  private:
+    ClassDef(AliHBTTwoTrackEffFctnPxPyPz,2)
+ };
+/******************************************************************/
 
+class AliHBTTwoTrackEffFctnPtThetaPhi: public AliHBTOnePairFctn3D, public AliHBTCorrelFunction
+ {
+  public:
+    AliHBTTwoTrackEffFctnPtThetaPhi(Int_t nXbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0,
+                                    Int_t nYbins = 100, Double_t maxYval = 0.5, Double_t minYval = 0.0,
+                       Int_t nZbins = 100, Double_t maxZval = 0.5, Double_t minZval = 0.0);
+    virtual ~AliHBTTwoTrackEffFctnPtThetaPhi(){}
+    TH1* GetResult();
   protected:
-    void GetValues(AliHBTPair*,Double_t&, Double_t&,Double_t&);
+    void GetValues(AliHBTPair* pair,Double_t& x, Double_t& y,Double_t& z);
   private:
-    ClassDef(AliHBTTwoTrackEffFctn3D,2)
+    ClassDef(AliHBTTwoTrackEffFctnPtThetaPhi,1)
  };
+
 #endif