
AliPWGFunc
This class implements several function useful to fit pt spectra,
including but not limited to blast wave models.
It can return the same functional for as a function of different
variables: dNdpt vs pt, 1/pt dNdpt vs pt, 1/mt dNdmt vs mt.
Before getting the function you need, you have to chose the
variable you want to use calling AliPWGFunc::SetVarType with one of
the elements of the VarType_t enum.
TODO: code cleaup, make the naming convention of function more transparent
Warning: not all variables are implemented for all the functions.
Author: M. Floris, CERN
| AliPWGFunc() | |
| virtual | ~AliPWGFunc() |
| void | TObject::AbstractMethod(const char* method) const |
| virtual void | TObject::AppendPad(Option_t* option = "") |
| virtual void | TObject::Browse(TBrowser* b) |
| static TClass* | Class() |
| virtual const char* | TObject::ClassName() const |
| virtual void | TObject::Clear(Option_t* = "") |
| virtual TObject* | TObject::Clone(const char* newname = "") const |
| virtual Int_t | TObject::Compare(const TObject* obj) const |
| virtual void | TObject::Copy(TObject& object) const |
| virtual void | TObject::Delete(Option_t* option = "")MENU |
| virtual Int_t | TObject::DistancetoPrimitive(Int_t px, Int_t py) |
| virtual void | TObject::Draw(Option_t* option = "") |
| virtual void | TObject::DrawClass() constMENU |
| virtual TObject* | TObject::DrawClone(Option_t* option = "") constMENU |
| virtual void | TObject::Dump() constMENU |
| virtual void | TObject::Error(const char* method, const char* msgfmt) const |
| virtual void | TObject::Execute(const char* method, const char* params, Int_t* error = 0) |
| virtual void | TObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0) |
| virtual void | TObject::ExecuteEvent(Int_t event, Int_t px, Int_t py) |
| virtual void | TObject::Fatal(const char* method, const char* msgfmt) const |
| virtual TObject* | TObject::FindObject(const char* name) const |
| virtual TObject* | TObject::FindObject(const TObject* obj) const |
| TF1* | GetBGBW(Double_t mass, Double_t beta, Double_t T, Double_t n, Double_t norm, const char* name = "fBGBW") |
| TF1* | GetBoltzmann(Double_t mass, Double_t T, Double_t norm, const char* name = "fBoltzmann") |
| TF1* | GetBoseEinstein(Double_t mass, Double_t T, Double_t norm, const char* name = "fBoseEinstein") |
| virtual Option_t* | TObject::GetDrawOption() const |
| static Long_t | TObject::GetDtorOnly() |
| TF1* | GetFermiDirac(Double_t mass, Double_t T, Double_t norm, const char* name = "fFermiDirac") |
| TF1* | GetGraphFunc(TGraph* h, const char* name = "fHisto") |
| TF1* | GetHistoFunc(TH1* h, const char* name = "fHisto") |
| virtual const char* | TObject::GetIconName() const |
| TF1* | GetLevi(Double_t mass, Double_t T, Double_t n, Double_t norm, const char* name = "fLevi") |
| TF1* | GetMTExp(Double_t mass, Double_t T, Double_t norm, const char* name = "fMtExp") |
| virtual const char* | TObject::GetName() const |
| virtual char* | TObject::GetObjectInfo(Int_t px, Int_t py) const |
| static Bool_t | TObject::GetObjectStat() |
| virtual Option_t* | TObject::GetOption() const |
| TF1* | GetPowerLaw(Double_t pt0, Double_t n, Double_t norm, const char* name = "fPowerLaw") |
| TF1* | GetPTExp(Double_t T, Double_t norm, const char* name = "fPtExp") |
| virtual const char* | TObject::GetTitle() const |
| TF1* | GetTsallis(Double_t mass, Double_t T, Double_t q, Double_t norm, const char* name = "fTsallis") |
| TF1* | GetTsallisBW(Double_t mass, Double_t beta, Double_t T, Double_t q, Double_t norm, Double_t ymax = 0.5, const char* name = "fTsallisBW") |
| TF1* | GetUA1(Double_t mass, Double_t p0star, Double_t pt0, Double_t n, Double_t T, Double_t norm, const char* name = "fUA1") |
| virtual UInt_t | TObject::GetUniqueID() const |
| virtual Bool_t | TObject::HandleTimer(TTimer* timer) |
| virtual ULong_t | TObject::Hash() const |
| virtual void | TObject::Info(const char* method, const char* msgfmt) const |
| virtual Bool_t | TObject::InheritsFrom(const char* classname) const |
| virtual Bool_t | TObject::InheritsFrom(const TClass* cl) const |
| virtual void | TObject::Inspect() constMENU |
| void | TObject::InvertBit(UInt_t f) |
| virtual TClass* | IsA() const |
| virtual Bool_t | TObject::IsEqual(const TObject* obj) const |
| virtual Bool_t | TObject::IsFolder() const |
| Bool_t | TObject::IsOnHeap() const |
| virtual Bool_t | TObject::IsSortable() const |
| Bool_t | TObject::IsZombie() const |
| virtual void | TObject::ls(Option_t* option = "") const |
| void | TObject::MayNotUse(const char* method) const |
| virtual Bool_t | TObject::Notify() |
| void | TObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const |
| static void | TObject::operator delete(void* ptr) |
| static void | TObject::operator delete(void* ptr, void* vp) |
| static void | TObject::operator delete[](void* ptr) |
| static void | TObject::operator delete[](void* ptr, void* vp) |
| void* | TObject::operator new(size_t sz) |
| void* | TObject::operator new(size_t sz, void* vp) |
| void* | TObject::operator new[](size_t sz) |
| void* | TObject::operator new[](size_t sz, void* vp) |
| virtual void | TObject::Paint(Option_t* option = "") |
| virtual void | TObject::Pop() |
| virtual void | TObject::Print(Option_t* option = "") const |
| virtual Int_t | TObject::Read(const char* name) |
| virtual void | TObject::RecursiveRemove(TObject* obj) |
| void | TObject::ResetBit(UInt_t f) |
| virtual void | TObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU |
| virtual void | TObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "") |
| void | TObject::SetBit(UInt_t f) |
| void | TObject::SetBit(UInt_t f, Bool_t set) |
| virtual void | TObject::SetDrawOption(Option_t* option = "")MENU |
| static void | TObject::SetDtorOnly(void* obj) |
| static void | TObject::SetObjectStat(Bool_t stat) |
| virtual void | TObject::SetUniqueID(UInt_t uid) |
| void | SetVarType(AliPWGFunc::VarType_t tp) |
| virtual void | ShowMembers(TMemberInspector&) |
| virtual void | Streamer(TBuffer&) |
| void | StreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b) |
| virtual void | TObject::SysError(const char* method, const char* msgfmt) const |
| Bool_t | TObject::TestBit(UInt_t f) const |
| Int_t | TObject::TestBits(UInt_t f) const |
| virtual void | TObject::UseCurrentStyle() |
| virtual void | TObject::Warning(const char* method, const char* msgfmt) const |
| virtual Int_t | TObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) |
| virtual Int_t | TObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const |
| virtual void | TObject::DoError(int level, const char* location, const char* fmt, va_list va) const |
| TF1* | GetBGBWdNdpt(Double_t mass, Double_t beta, Double_t temp, Double_t n, Double_t norm, const char* name = "fBGBW") |
| TF1* | GetBGBWdNdptTimesMt(Double_t mass, Double_t beta, Double_t T, Double_t n, Double_t norm, const char* name = "fBGBWTimesMt") |
| TF1* | GetBGBWdNdptTimesPt(Double_t mass, Double_t beta, Double_t T, Double_t n, Double_t norm, const char* name = "fBGBWTimesPt") |
| TF1* | GetBoltzmanndNdptTimesPt(Double_t mass, Double_t T, Double_t norm, const char* name = "fBoltzmannTimesPt") |
| TF1* | GetBoseEinsteindNdpt(Double_t mass, Double_t T, Double_t norm, const char* name = "fBoseEinstein") |
| TF1* | GetBoseEinsteindNdptTimesPt(Double_t mass, Double_t T, Double_t norm, const char* name = "fBoseEinstein") |
| TF1* | GetFermiDiracdNdpt(Double_t mass, Double_t T, Double_t norm, const char* name = "fFermiDirac") |
| TF1* | GetFermiDiracdNdptTimesPt(Double_t mass, Double_t T, Double_t norm, const char* name = "fFermiDirac") |
| TF1* | GetLevidNdmt(Double_t mass, Double_t T, Double_t n, Double_t norm, const char* name = "fLeviMt", AliPWGFunc::VarType_t var = kOneOverMtdNdmt) |
| TF1* | GetLevidNdpt(Double_t mass, Double_t T, Double_t n, Double_t norm, const char* name = "fLevi") |
| TF1* | GetLevidNdptTimesPt(Double_t mass, Double_t T, Double_t n, Double_t norm, const char* name = "fLevi") |
| TF1* | GetMTExpdNdmt(Double_t mass, Double_t temp, Double_t norm, const char* name, AliPWGFunc::VarType_t var) |
| TF1* | GetMTExpdNdpt(Double_t mass, Double_t T, Double_t norm, const char* name = "fExp") |
| TF1* | GetMTExpdNdptTimesPt(Double_t mass, Double_t T, Double_t norm, const char* name = "fMtExpTimesPt") |
| TF1* | GetPowerLawdNdpt(Double_t pt0, Double_t n, Double_t norm, const char* name = "fLevi") |
| TF1* | GetPowerLawdNdptTimesPt(Double_t pt0, Double_t n, Double_t norm, const char* name = "fLevi") |
| TF1* | GetPTExpdNdptTimesPt(Double_t T, Double_t norm, const char* name = "fPtExpTimesPt") |
| TF1* | GetTestFunc(Double_t mass, Double_t T, Double_t norm, Double_t ymax, const char* name = "fTest") |
| TF1* | GetTsallisBWdNdpt(Double_t mass, Double_t beta, Double_t T, Double_t q, Double_t norm, Double_t ymax = 0.5, const char* name = "fTsallisBW") |
| TF1* | GetTsallisBWdNdptTimesPt(Double_t mass, Double_t beta, Double_t T, Double_t q, Double_t norm, Double_t ymax = 0.5, const char* name = "fTsallisBWTimesPt") |
| TF1* | GetTsallisdNdpt(Double_t mass, Double_t T, Double_t q, Double_t norm, const char* name = "fTsallis") |
| TF1* | GetTsallisdNdptTimesPt(Double_t mass, Double_t T, Double_t q, Double_t norm, const char* name = "fTsallisTimesPt") |
| TF1* | GetUA1dNdpt(Double_t pt0, Double_t n, Double_t norm, const char* name = "fLevi") |
| TF1* | GetUA1dNdptTimesPt(Double_t pt0, Double_t n, Double_t norm, const char* name = "fLevi") |
| static Double_t | IntegrandBG(const double* x, const double* p) |
| static Double_t | IntegrandTest(const double* x, const double* p) |
| static Double_t | IntegrandTsallis(const double* x, const double* p) |
| void | TObject::MakeZombie() |
| void | SetLineWidth(Width_t width) |
| static Double_t | StaticBGdNdMtTimesMt(const double* x, const double* p) |
| static Double_t | StaticBGdNdPt(const double* x, const double* p) |
| static Double_t | StaticBGdNdPtTimesPt(const double* x, const double* p) |
| static Double_t | StaticHistoFunc(const double* x, const double* p) |
| static Double_t | StaticTest(const double* x, const double* p) |
| static Double_t | StaticTsallisdNdPt(const double* x, const double* p) |
| static Double_t | StaticTsallisdNdPtTimesPt(const double* x, const double* p) |
| static Double_t | StaticUA1Func(const double* x, const double* p) |
| static Double_t | StaticUA1FuncOneOverPt(const double* x, const double* p) |
| AliPWGFunc(const AliPWGFunc&) | |
| AliPWGFunc& | operator=(const AliPWGFunc&) |
| enum VarType_t { | kdNdpt | |
| kOneOverPtdNdpt | ||
| kOneOverMtdNdmt | ||
| kdNdmt | ||
| kOneOverMtdNdmtMinusM | ||
| }; | ||
| enum TObject::EStatusBits { | kCanDelete | |
| kMustCleanup | ||
| kObjInCanvas | ||
| kIsReferenced | ||
| kHasUUID | ||
| kCannotPick | ||
| kNoContextMenu | ||
| kInvalidObject | ||
| }; | ||
| enum TObject::[unnamed] { | kIsOnHeap | |
| kNotDeleted | ||
| kZombie | ||
| kBitMask | ||
| kSingleKey | ||
| kOverwrite | ||
| kWriteDelete | ||
| }; |
| TF1* | fLastFunc | Last function returned |
| Width_t | fLineWidth | Line width |
| AliPWGFunc::VarType_t | fVarType | Variable types (e.g. dNdpt vs pt, 1/mt dNdmt vs mt...) |
| Inheritance Chart: | ||||||||
|
Boltzmann-Gibbs blast wave
Boltzmann
Tsallis blast wave
Levi function (aka Tsallis)
power law Nuclear Physics B, Vol. 335, No. 2. (7 May 1990), pp. 261-287. This is sometimes also called Hagedorn or modified Hagedorn
UA1 parametrization Nuclear Physics B, Vol. 335, No. 2. (7 May 1990), pp. 261-287.
integrand for boltzman-gibbs blast wave x[0] -> r (radius) p[0] -> mass p[1] -> pT (transverse momentum) p[2] -> beta_max (surface velocity) p[3] -> T (freezout temperature) p[4] -> n (velocity profile)
BGBW dNdpt implementation X0 is mt here
BGBW 1/pt dNdpt
tsallis BW, 1/pt dNdpt
BGBW, dNdpt
BGBW, dNdpt 1/Mt dN/dmt
Tsallis blast wave, dNdpt
Boltzmann (exp in 1/mt*dNdmT times mt) as a function of dNdpt
Simple exp in 1/mt dNdmt, as a function of dNdpt mt scaling
bose einstein
bose einstein
Tsallis (no BW, a la CMS)
{return GetLevi (mass,T,1/(q-1),norm,name);}Tsallis (no BW, a la CMS)
UA1 function
Tsallis (no BW, a la CMS)