Heavy ion Analysis Libriares
Loading...
Searching...
No Matches
CorrFit3DCFBowlerSinyukov.h
1/*
2 * CorrFit3DCFBowlerSinyukov.h
3 *
4 * Created on: 22 sty 2018
5 * Author: Daniel Wielanek
6 * E-mail: daniel.wielanek@gmail.com
7 * Warsaw University of Technology, Faculty of Physics
8 */
9#ifndef HALCORRFIT3DCFBOWLERSINYUKOV_H_
10#define HALCORRFIT3DCFBOWLERSINYUKOV_H_
11
12#include "CorrFit3DCF.h"
13#include "Splines.h"
14
15#include "TF1.h"
16
17namespace Hal {
18 class Femto3DCF;
23 protected:
24 Spline2D* fCFs;
25 Spline3D* fQinvMap;
26 Bool_t fTStarZero;
27 mutable Double_t fRinv;
28 Double_t fAverageBeta;
29 Double_t fGamma;
30 Double_t fQSMode;
31 const Double_t fSqrt3;
32 Femto::EKinematics fFrame;
33 // Double_t Integral(Double_t *x, Double_t *params)const;
34 virtual void Fit(TObject* histo);
35 virtual void FitDummy(TObject* histo);
36 virtual Double_t GetRoutPRF(Double_t r_out, Double_t tau) const;
37 inline Double_t Gaus(Double_t r, Double_t R) const { return TMath::Exp(-r * r / (4.0 * R * R)) * r * r; }
38 virtual Double_t CalculateCF(const Double_t* x, const Double_t* params) const;
39 virtual void RecalculateFunction() const;
40 CorrFit3DCFBowlerSinyukov(Int_t extra_params);
41
42 public:
47 void AsFermions() { fQSMode = -0.5; };
51 void AsBosons() { fQSMode = 1; }
55 void AsNonIdentical() { fQSMode = 0.0; };
64 void LoadMap(TH2D* h, Option_t* opt = "");
70 void SetAveragePairBeta(Double_t beta);
78 void SetAveragePairBeta(Double_t m1, Double_t m2, Double_t avkt);
79 void SetTStarZero() { fTStarZero = kTRUE; };
80 Spline2D* GetKqMap() const { return fCFs; };
86 Femto3DCF* UnBowlerize() const;
87 static Int_t Tau() { return 5; };
88 virtual ~CorrFit3DCFBowlerSinyukov();
89 ClassDef(CorrFit3DCFBowlerSinyukov, 1)
90 };
91} // namespace Hal
92#endif /* HALCORRFIT3DCFBOWLERSINYUKOV_H_ */
virtual Double_t CalculateCF(const Double_t *x, const Double_t *params) const
void LoadMap(TH2D *h, Option_t *opt="")