X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=HBTAN%2FAliHBTWeightFctn.h;h=ef7e62cc1a44c5cadad6318c412f3426dcf7a9da;hb=616eb17046ad985e16102447525d817292fed1d6;hp=278eb5c115eae1f967c95c74ad38f84572a94981;hpb=dd82cadcabd7d7498b1652c0136ecaf406c3c50c;p=u%2Fmrichter%2FAliRoot.git diff --git a/HBTAN/AliHBTWeightFctn.h b/HBTAN/AliHBTWeightFctn.h index 278eb5c115e..ef7e62cc1a4 100644 --- a/HBTAN/AliHBTWeightFctn.h +++ b/HBTAN/AliHBTWeightFctn.h @@ -2,13 +2,30 @@ #define ALIHBTWeightQINVFCTN_H /* $Id$ */ - +//_________________________________________________________________________ +// +// class AliHBTWeightQInvFctn +// class AliHBTWeightQOutFctn +// class AliHBTWeightQSideFctn +// class AliHBTWeightQLongFctn +// +// This class allows to obtain Q_inv correlation function with weights +// calculated by Lednicky's alghorithm. +// Numerator is filled with weighted events. Weights are attributed to reconstructed tracks. +// Weights are calculated with corresponding simulated particles momenta. +// Denominator is filled with mixing unweighted reconstructed tracks. +// One needs both pairs +// (simulated and recontructed), thus function is of class AliHBTTwoPairFctn1D. +// Author: Ludmila Malinina, JINR (malinina@sunhe.jinr.ru) +// +//////////////////////////////////////////////////////////////////////////////// #include "AliHBTFunction.h" class AliHBTWeights; -class AliHBTWeightQInvFctn: public AliHBTTwoPairFctn1D + +class AliHBTWeightQInvFctn: public AliHBTTwoPairFctn1D, public AliHBTCorrelFunction { public: AliHBTWeightQInvFctn(Int_t nbins = 100, Double_t maxXval = 0.15, Double_t minXval = 0.0); @@ -19,13 +36,13 @@ class AliHBTWeightQInvFctn: public AliHBTTwoPairFctn1D void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); protected: - Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* partpair) + Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* partpair) const { return trackpair->GetQInv()-partpair->GetQInv();} //isn't use - ClassDef(AliHBTWeightQInvFctn,1) + ClassDef(AliHBTWeightQInvFctn,3) }; /*************************************************************************************/ -class AliHBTWeightQOutFctn: public AliHBTTwoPairFctn1D +class AliHBTWeightQOutFctn: public AliHBTTwoPairFctn1D, public AliHBTCorrelFunction { // friend class AliHBTOnePairFctn1D; @@ -37,14 +54,14 @@ class AliHBTWeightQOutFctn: public AliHBTTwoPairFctn1D void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); protected: - Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* partpair) - { return trackpair->GetQOutCMSLC()-partpair->GetQOutCMSLC();} //isn't use - ClassDef(AliHBTWeightQOutFctn,1) + Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* partpair) const + { return trackpair->GetQOutLCMS()-partpair->GetQOutLCMS();} //isn't use + ClassDef(AliHBTWeightQOutFctn,3) }; /*************************************************************************************/ -class AliHBTWeightQLongFctn: public AliHBTTwoPairFctn1D +class AliHBTWeightQLongFctn: public AliHBTTwoPairFctn1D, public AliHBTCorrelFunction { // friend class AliHBTOnePairFctn1D; public: @@ -55,15 +72,15 @@ class AliHBTWeightQLongFctn: public AliHBTTwoPairFctn1D void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); protected: - Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* partpair) - { return trackpair->GetQLongCMSLC()-partpair->GetQLongCMSLC();} //isn't used + Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* partpair) const + { return trackpair->GetQLongLCMS()-partpair->GetQLongLCMS();} //isn't used - ClassDef(AliHBTWeightQLongFctn,1) + ClassDef(AliHBTWeightQLongFctn,3) }; /*************************************************************************************/ -class AliHBTWeightQSideFctn: public AliHBTTwoPairFctn1D +class AliHBTWeightQSideFctn: public AliHBTTwoPairFctn1D, public AliHBTCorrelFunction { // friend class AliHBTOnePairFctn1D; public: @@ -74,14 +91,14 @@ class AliHBTWeightQSideFctn: public AliHBTTwoPairFctn1D void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); protected: - Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* partpair) - { return trackpair->GetQLongCMSLC()-partpair->GetQLongCMSLC();} //isn't used + Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* partpair) const + { return trackpair->GetQLongLCMS()-partpair->GetQLongLCMS();} //isn't used - ClassDef(AliHBTWeightQSideFctn,1) + ClassDef(AliHBTWeightQSideFctn,3) }; /*************************************************************************************/ -class AliHBTWeightTwoKStarFctn: public AliHBTTwoPairFctn1D +class AliHBTWeightTwoKStarFctn: public AliHBTTwoPairFctn1D, public AliHBTCorrelFunction { // friend class AliHBTOnePairFctn1D; public: @@ -92,14 +109,14 @@ class AliHBTWeightTwoKStarFctn: public AliHBTTwoPairFctn1D void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); protected: - Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* partpair) + Double_t GetValue(AliHBTPair* trackpair, AliHBTPair* partpair) const { return trackpair->GetKStar()-partpair->GetKStar();} //isn't used - ClassDef(AliHBTWeightTwoKStarFctn,1) + ClassDef(AliHBTWeightTwoKStarFctn,3) }; /*************************************************************************************/ -class AliHBTWeightQOutQSideFctn: public AliHBTTwoPairFctn2D +class AliHBTWeightQOutQSideFctn: public AliHBTTwoPairFctn2D, public AliHBTCorrelFunction { // friend class AliHBTOnePairFctn1D; @@ -112,13 +129,13 @@ class AliHBTWeightQOutQSideFctn: public AliHBTTwoPairFctn2D void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); protected: - void GetValues(AliHBTPair* /*trackpair*/, AliHBTPair* /*partpair*/, Double_t& /*x*/, Double_t& /*y*/){} - ClassDef(AliHBTWeightQOutQSideFctn,1) + void GetValues(AliHBTPair* /*trackpair*/, AliHBTPair* /*partpair*/, Double_t& /*x*/, Double_t& /*y*/) const{} + ClassDef(AliHBTWeightQOutQSideFctn,3) }; /*************************************************************************************/ -class AliHBTWeightQOutQLongFctn: public AliHBTTwoPairFctn2D +class AliHBTWeightQOutQLongFctn: public AliHBTTwoPairFctn2D, public AliHBTCorrelFunction { // friend class AliHBTOnePairFctn1D; @@ -131,29 +148,50 @@ class AliHBTWeightQOutQLongFctn: public AliHBTTwoPairFctn2D void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); protected: - void GetValues(AliHBTPair* /*trackpair*/, AliHBTPair* /*partpair*/, Double_t& /*x*/, Double_t& /*y*/){} - ClassDef(AliHBTWeightQOutQLongFctn,1) + void GetValues(AliHBTPair* /*trackpair*/, AliHBTPair* /*partpair*/, Double_t& /*x*/, Double_t& /*y*/) const{} + ClassDef(AliHBTWeightQOutQLongFctn,3) }; - /*************************************************************************************/ -class AliHBTWeightQSideQLongFctn: public AliHBTTwoPairFctn2D +class AliHBTWeightQSideQLongFctn: public AliHBTTwoPairFctn2D, public AliHBTCorrelFunction { // friend class AliHBTOnePairFctn1D; public: AliHBTWeightQSideQLongFctn(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 nybins = 100, Double_t maxYval = 0.15, Double_t minYval = 0.0); virtual ~AliHBTWeightQSideQLongFctn(){}; TH1* GetResult(); void ProcessSameEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); protected: - void GetValues(AliHBTPair* /*trackpair*/, AliHBTPair* /*partpair*/, Double_t& /*x*/, Double_t& /*y*/){} - ClassDef(AliHBTWeightQSideQLongFctn,1) + void GetValues(AliHBTPair* /*trackpair*/, AliHBTPair* /*partpair*/, Double_t& /*x*/, Double_t& /*y*/) const{} + ClassDef(AliHBTWeightQSideQLongFctn,3) }; +/*************************************************************************************/ + +class AliHBTWeightQOutSQideQLongFctn: public AliHBTTwoPairFctn3D, public AliHBTCorrelFunction +{ + + public: + AliHBTWeightQOutSQideQLongFctn(Int_t nXbins = 100, Double_t maxXval = 0.3, Double_t minXval = 0.0, + Int_t nYbins = 100, Double_t maxYval = 0.3, Double_t minYval = 0.0, + Int_t nZbins = 100, Double_t maxZval = 0.3, Double_t minZval = 0.0); + virtual ~AliHBTWeightQOutSQideQLongFctn(){} + + TH1* GetResult(); + void ProcessSameEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); + void ProcessDiffEventParticles(AliHBTPair* trackpair, AliHBTPair* partpair); + + protected: + void GetValues(AliHBTPair* /*trackpair*/, AliHBTPair* /*partpair*/, + Double_t& /*x*/, Double_t& /*y*/, Double_t& /*z*/) const{ } + + ClassDef(AliHBTWeightQOutSQideQLongFctn,1) +}; + #endif