4 #include "impact_parameter_distribution.h" 
   25       if (par[0] == 0) 
return 0;
 
   29          if (
x[0] <= par[1]) 
return par[0] * 
x[0];
 
   33       return par[0] * 
x[0] / (1. + 
TMath::Exp((
x[0] - par[1]) / par[2]));
 
   70       if (b0 <= 0) 
return 0;
 
   78       double exp_b_minus_b0_over_db = 
TMath::Exp((
b - b0) / db);
 
   79       double db_sqr = db * db;
 
   82                   + (
b * 
b - b0 * b0) / 2. / db_sqr
 
   97         fIPdist(
"smooth_pb", 
smooth_pb, 0., 20., 3),
 
  120         fIPdist(
Form(
"%s_smooth_pb", 
h->GetName()), 
smooth_pb, 0., 50., 3),
 
  233        TH1 *centb_histo = 
nullptr;
 
  240        else Warning(
"GetCentralityFromHisto", 
"histogram containing impact parameter distribution is EMPTY");
 
winID h TVirtualViewer3D TVirtualGLPainter p
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t b
 
char * Form(const char *fmt,...)
 
Class implementing parametrizable impact parameter distributions.
 
TF1 fIPdist
impact parameter distribution
 
TH1 * fHisto
! last fitted histogram
 
Double_t GetDeltaB() const
 
void SetDeltaB(Double_t x)
 
TF1 fSigmaR
total reaction cross section
 
Double_t Calculate_b(Double_t centrality) const
 
TF1 fCentrality
centrality as function of impact parameter
 
TH1 * GetCentralityFromHisto()
 
Double_t GetCrossSectionPerEvent() const
 
Double_t GetCrossSection() const
 
impact_parameter_distribution()
 
void SetDeltaB_WithConstantCrossSection(Double_t deltab, Double_t sigmaR=0)
 
virtual Double_t GetBinLowEdge(Int_t bin) const
 
virtual Double_t GetBinUpEdge(Int_t bin) const
 
virtual void SetParLimits(Int_t ipar, Double_t parmin, Double_t parmax)
 
virtual Double_t GetX(Double_t y, Double_t xmin=0, Double_t xmax=0, Double_t epsilon=1.E-10, Int_t maxiter=100, Bool_t logx=false) const
 
virtual void SetParName(Int_t ipar, const char *name)
 
virtual void SetParameters(const Double_t *params)
 
virtual void SetParNames(const char *name0="p0", const char *name1="p1", const char *name2="p2", const char *name3="p3", const char *name4="p4", const char *name5="p5", const char *name6="p6", const char *name7="p7", const char *name8="p8", const char *name9="p9", const char *name10="p10")
 
virtual Double_t Eval(Double_t x, Double_t y=0, Double_t z=0, Double_t t=0) const
 
virtual void SetParameter(const TString &name, Double_t value)
 
virtual Double_t GetBinCenter(Int_t bin) const
 
TH1 * GetCumulative(Bool_t forward=kTRUE, const char *suffix="_cumulative") const
 
virtual TFitResultPtr Fit(const char *formula, Option_t *option="", Option_t *goption="", Double_t xmin=0, Double_t xmax=0)
 
virtual Double_t GetMaximum(Double_t maxval=FLT_MAX) const
 
virtual Double_t GetEntries() const
 
virtual Double_t Integral(Int_t binx1, Int_t binx2, Option_t *option="") const
 
virtual Int_t GetMaximumBin() const
 
virtual void Scale(Double_t c1=1, Option_t *option="")
 
TObject * Clone(const char *newname="") const override
 
virtual void Warning(const char *method, const char *msgfmt,...) const
 
Double_t sigma_inel(Double_t *x, Double_t *p)
 
double ana_centrality(double *x, double *par)
 
Double_t smooth_pb(Double_t *x, Double_t *par)
 
Double_t DiLog(Double_t x)
 
Double_t Power(Double_t x, Double_t y)
 
constexpr Double_t TwoPi()