![]() |
KaliVeda
Toolkit for HIC analysis
|
Impact parameter distribution reconstruction from experimental data.
FittingFunction | Class implementing a parameterization of the relationship between mean value of observables as a function of centrality, \bar{X}(c_b) |
FluctuationKernel | Class implementing fluctuations of the observable according to a given PDF |
Implementation of the method of estimating impact parameter distributions for experimental data presented in the articles Das et al., Phys. Rev. C 97, 014905(2018) and Rogly et al., Phys. Rev. C 98, 024902(2018).
The aim is to reproduce the inclusive distribution P(X) of an observable assumed to have a monotonic dependence on impact parameter by adjusting the parameters of a fitting function defined by
P(X) = \int P(X|b) P(b) db = \int P(X|c_b) dc_b
where c_b is the centrality defined by
c_b = \int_0^b P(b) db
P(X|c_b) is the probability distribution of the observable as a function of the centrality, which is given by some FluctuationKernel which is a PDF for any value of X given the expected mean \bar{X} and reduced variance \sigma^2/\bar{X}.
The FittingFunction class has to provide the functions
which describe how \bar{X} and \sigma^2/\bar{X}. depend on centrality. It must also provide the following methods:
We provide the following FittingFunctions and FluctuationKernels:
FittingFunction | Function |
---|---|
algebraic_fitting_function | k(c_b) = (k_{\mathrm{max}}-k_{\mathrm{min}})\left[ 1 - {c_b}^{\alpha}\right]^{\gamma} + k_{\mathrm{min}} |
rogly_fitting_function | k(c_b) = k_0 \exp{\left(-\sum_{i=1}^{N} a_i c_b^i\right)} |
FluctuationKernel | Distribution | Function |
---|---|---|
gamma_kernel | Gamma | f(X) = \frac{1}{\Gamma(k)\theta^k} X^{k-1} \exp{(-X/\theta)} |
BD_kernel | Binomial | f(X) = \frac{n!}{X!(n-X)!} p^{X}(1-p)^{n-X} |
NBD_kernel | Negative binomial | f(X) = \frac{(X+n-1)!}{X!(n-1)!} p^{n}(1-p)^{X} |
In all of the the following, the namespace prefix KVImpactParameters::
can be dropped if the following instruction is used:
First initialize the estimator with the required fitting function and kernel, such as for example:
See rogly_fitting_function, algebraic_fitting_function, gamma_kernel and NBD_kernel for more details.
Assumng a pointer TH1* h
to a histogram containing the inclusive distribution for an observable filled from data, the first step is to transform the histogram into a correctly normalized probability distribution (taking bin widths into account):
Then to begin the fitting process, call the method
(if the histogram to fit was already correctly normalised, you can skip the first method and call this one giving the histogram pointer as argument). This will prepare initial parameter values for the fit based on the histogram data, then perform a first fit attempt. As this first attempt is never successful, you should then open the Fit Panel by right-clicking on the histogram in the canvas, and continue fitting using "Previous Fit", adjusting the range of the fit, and if necessary the parameter limits, until a satisfactory fit is achieved.
Once a fit has been successful, the bayesian_estimator object can be used to deduce impact parameter distributions etc. for the fitted observable. This can be just after performing the fit as in the previous section (after first calling update_fit_params() - otherwise the internal fit parameter values are not necessarily consistent with the last performed fit), or using the already known parameters from a previous fit. In the latter case, you should initialize the object using the appropriate FittingFunction constructor, e.g. for algebraic_fitting_function which requires 5 parameters \alpha,\gamma,\theta,X_{min},X_{max}, you can initialise the estimator like so:
See the list of methods below which can then be used in order to exploit the fit result.
Definition at line 221 of file bayesian_estimator.h.
#include <bayesian_estimator.h>
Public Member Functions | |
bayesian_estimator (Bool_t integer_variable=false) | |
bayesian_estimator (const FittingFunction &previous_fit, Bool_t integer_variable=false) | |
virtual | ~bayesian_estimator () |
void | DrawBDistForSelection (TH1 *sel, TH1 *incl, double &mean, double &sigma, Option_t *opt="", Color_t color=kRed, const TString &title="") |
void | DrawBDistForSelectionFromIPHisto (TH1 *sel, TH1 *incl, double &mean, double &sigma, Option_t *opt="", Color_t color=kRed, const TString &title="") |
double | DrawBDistForXSelection (KVValueRange< double > Xrange, Option_t *opt="", Color_t color=kRed, const TString &title="") |
void | DrawCbDistForSelection (TH1 *sel, TH1 *incl, double &mean_cb, double &sigma_cb, Option_t *opt="", Color_t color=kRed, const TString &title="") |
double | DrawCbDistForXSelection (double X1, double X2, Option_t *opt="", Color_t color=kRed, const TString &title="") |
void | DrawFittedP_X (double norm=1.0, Option_t *opt="", Color_t color=kRed, const TString &title="") |
void | DrawMeanXvsCb (const TString &title="", Color_t color=-1, Option_t *opt="") |
void | DrawNormalisedMeanXvsb (const TString &title, Color_t color, Option_t *opt) |
void | FitHisto (TH1 *h=nullptr) |
TF1 & | GetB_dist_for_X_select () |
KVNameValueList | GetFitParameters () const |
TF1 * | GetFittedP_X (double norm=1.0) |
impact_parameter_distribution & | GetIPDist () |
TF2 * | GetJointProbabilityDistribution (KVValueRange< double > b_range, KVValueRange< double > X_range) |
void | GetMeanAndSigmaBDistForSelection (TH1 *sel, TH1 *incl, double &mean, double &sigma) |
void | GetMeanAndSigmaBDistForXSelection (KVValueRange< double > Xrange, double &mean, double &sigma) |
TF1 & | GetMeanXvsCb () |
TGraph * | GraphBDistForXSelection (KVValueRange< double > Xrange, int npts=500) |
TGraphErrors * | GraphMeanbvsX () |
TGraph * | GraphMeanXvsb (int npts=500) |
TGraph * | GraphP_XForGivenB (double b, KVValueRange< double > Xrange, int npts=500) |
void | Print (Option_t *="") const |
void | RenormaliseHisto (TH1 *h) |
void | SetIPDistFromHisto (TH1 *ip_histo) |
void | SetIPDistParams (double sigmaR, double deltab) |
TH2 * | TransformXaxisToBaxis (const TH2 *obs_vs_X, int baxis_nbins=100, double baxis_bmin=0, double baxis_bmax=1) |
void | update_fit_params () |
![]() | |
KVBase () | |
Default constructor. More... | |
KVBase (const Char_t *name, const Char_t *title="") | |
Ctor for object with given name and type. More... | |
KVBase (const KVBase &) | |
copy ctor More... | |
void | Clear (Option_t *opt="") override |
Clear object properties : name, type/title, number, label. More... | |
void | Copy (TObject &) const override |
Make a copy of this object. More... | |
const Char_t * | GetLabel () const |
UInt_t | GetNumber () const |
virtual TObject * | GetObject () const |
virtual const Char_t * | GetType () const |
Bool_t | HasLabel () const |
virtual Bool_t | IsCalled (const Char_t *name) const |
Bool_t | IsLabelled (const Char_t *l) const |
virtual Bool_t | IsType (const Char_t *typ) const |
virtual void | List () |
KVBase & | operator= (const KVBase &) |
copy assignment operator More... | |
void | Print (Option_t *option="") const override |
Double_t | ProtectedGetX (const TF1 *func, Double_t val, int &status, Double_t xmin=0.0, Double_t xmax=0.0) const |
void | SetLabel (const Char_t *lab) |
virtual void | SetNumber (UInt_t num) |
virtual void | SetType (const Char_t *str) |
Private Member Functions | |
double | b_dist_for_arb_X_selection (double *x, double *p) |
double | b_dist_for_arb_X_selection_from_histo (double *x, double *p) |
double | b_dist_for_X_selection (double *x, double *p) |
double | cb_dist_for_arb_X_selection (double *x, double *p) |
double | cb_dist_for_X_selection (double *x, double *p) |
double | cb_integrated_P_X (double *x, double *p) |
double | mean_X_vs_b (double *x, double *par) |
double | mean_X_vs_cb (double *x, double *par) |
double | P_X_cb (double X, double cb) |
double | P_X_cb_for_integral (double *x, double *par) |
double | P_X_cb_for_TF2_obs_vs_b (double *x, double *) |
double | P_X_cb_for_X_integral (double *x, double *par) |
double | P_X_cb_for_X_integral_with_selection (double *x, double *par) |
double | P_X_from_fit (double *x, double *par) |
Private Attributes | |
TF1 | B_dist_for_arb_X_select |
TF1 | B_dist_for_arb_X_select_from_histo |
TF1 | B_dist_for_X_select |
TF1 | Cb_dist_for_arb_X_select |
TF1 | Cb_dist_for_X_select |
Bool_t | fIntegerVariable |
impact_parameter_distribution | fIPDist |
TF1 | fitted_P_X |
TH1 * | h_selection |
TH1 * | histo |
TF1 | mean_X_vs_b_function |
TF1 | mean_X_vs_cb_function |
TF1 | p_X_cb_integrator |
TF1 | P_X_fit_function |
TF1 | p_X_X_integrator |
TF1 | p_X_X_integrator_with_selection |
std::vector< double > | sel_rapp |
FittingFunction | theFitter |
FluctuationKernel | theKernel |
Additional Inherited Members | |
![]() | |
enum | EKaliVedaBits { kIsKaliVedaObject = BIT(23) } |
![]() | |
static Bool_t | AreEqual (Double_t x, Double_t y, Long64_t maxdif=1) |
Comparison between two 64-bit floating-point values. More... | |
static void | BackupFileWithDate (const Char_t *path) |
static void | CombineFiles (const Char_t *file1, const Char_t *file2, const Char_t *newfilename, Bool_t keep=kTRUE) |
static void | Deprecated (const char *method, const char *advice) |
static Bool_t | FindClassSourceFiles (const KVString &class_name, KVString &imp_file, KVString &dec_file, const KVString &dir_name=".") |
static Bool_t | FindExecutable (TString &exec, const Char_t *path="$(PATH)") |
static const Char_t * | FindFile (const Char_t *search, TString &wfil) |
static const Char_t * | GetBINDIRFilePath (const Char_t *namefile="") |
static const Char_t * | GetDATABASEFilePath () |
static const Char_t * | GetDATADIRFilePath (const Char_t *namefile="") |
static KVString | GetDataSetEnv (const KVString &dataset, const KVString &type, const char *defval) |
template<typename ValType > | |
static ValType | GetDataSetEnv (const KVString &dataset, const KVString &type, const ValType &defval) |
static const Char_t * | GetETCDIRFilePath (const Char_t *namefile="") |
static const Char_t * | GetExampleFilePath (const Char_t *library, const Char_t *namefile) |
Return full path to example file for given library (="KVMultiDet", "BackTrack", etc.) More... | |
static const Char_t * | GetINCDIRFilePath (const Char_t *namefile="") |
static const Char_t * | GetKVBuildDate () |
Returns KaliVeda build date. More... | |
static const Char_t * | GetKVBuildDir () |
Returns top-level directory used for build. More... | |
static const Char_t * | GetKVBuildTime () |
Returns KaliVeda build time. More... | |
static const Char_t * | GetKVBuildType () |
Returns KaliVeda build type (cmake build: Release, Debug, RelWithDebInfo, ...) More... | |
static const Char_t * | GetKVBuildUser () |
Returns username of person who performed build. More... | |
static int | GetKVMajorVersion () |
static int | GetKVMinorVersion () |
static const Char_t * | GetKVSourceDir () |
Returns top-level directory of source tree used for build. More... | |
static const Char_t * | GetKVVersion () |
Returns KaliVeda version string. More... | |
static const Char_t * | GetLIBDIRFilePath (const Char_t *namefile="") |
static const Char_t * | GetListOfPlugins (const Char_t *base) |
static const Char_t * | GetListOfPluginURIs (const Char_t *base) |
static const Char_t * | GetPluginURI (const Char_t *base, const Char_t *plugin) |
static void | GetTempFileName (TString &base) |
static const Char_t * | GetTEMPLATEDIRFilePath (const Char_t *namefile="") |
static const Char_t * | GetWORKDIRFilePath (const Char_t *namefile="") |
static const Char_t * | gitBranch () |
Returns git branch of sources. More... | |
static const Char_t * | gitCommit () |
Returns last git commit of sources. More... | |
static void | InitEnvironment () |
static bool | is_gnuinstall () |
static Bool_t | IsEnvInit () |
static Bool_t | IsThisAPlugin (const TString &uri, TString &base) |
static TPluginHandler * | LoadPlugin (const Char_t *base, const Char_t *uri="0") |
static Bool_t | OpenContextMenu (const char *method, TObject *obj, const char *alt_method_name="") |
static void | OpenTempFile (TString &base, std::ofstream &fp) |
static void | PrintSplashScreen () |
Prints welcome message and infos on version etc. More... | |
static Bool_t | SearchAndOpenKVFile (const Char_t *name, KVSQLite::database &dbfile, const Char_t *kvsubdir="") |
static Bool_t | SearchAndOpenKVFile (const Char_t *name, std::ifstream &file, const Char_t *kvsubdir="", KVLockfile *locks=0) |
static Bool_t | SearchAndOpenKVFile (const Char_t *name, std::ofstream &file, const Char_t *kvsubdir="", KVLockfile *locks=0) |
static Bool_t | SearchKVFile (const Char_t *name, TString &fullpath, const Char_t *kvsubdir="") |
static const Char_t * | WorkingDirectory () |
|
inline |
Initialise estimator for fitting the inclusive distribution of an observable.
[in] | integer_variable | [default:false] set true if the observable to be fitted only takes integer values |
Definition at line 427 of file bayesian_estimator.h.
|
inline |
Initialise estimator with results of a previous fit.
[in] | previous_fit | parameters of a previous fit |
[in] | integer_variable | [default:false] set true if the observable to be fitted only takes integer values |
Definition at line 453 of file bayesian_estimator.h.
|
inlinevirtual |
Definition at line 480 of file bayesian_estimator.h.
|
inlineprivate |
Function implementing the calculation of the impact parameter distribution P(b|\mathbb{S}) for an arbitrary selection of events \mathbb{S}
P(b|\mathbb{S})=P(b)\frac{\int P(X|b)\frac{P(X|\mathbb{S})}{P(X)}\,\mathrm{d}X}{\int P(X|\mathbb{S})\,\mathrm{d}X}
[in] | x[0] | impact parameter b |
[in] | p[0],p[1] | integration limits for X, [X_1,X_2] |
Definition at line 393 of file bayesian_estimator.h.
|
inlineprivate |
Function implementing the calculation of the impact parameter distribution P(b|\mathbb{S}) for an arbitrary selection of events \mathbb{S}
P(b|\mathbb{S})=P(b)\frac{\int P(X|b)\frac{P(X|\mathbb{S})}{P(X)}\,\mathrm{d}X}{\int P(X|\mathbb{S})\,\mathrm{d}X}
[in] | x[0] | impact parameter b |
[in] | p[0],p[1] | integration limits for X, [X_1,X_2] |
Definition at line 408 of file bayesian_estimator.h.
|
inlineprivate |
Function implementing the calculation of the impact parameter distribution P(b|X_{1}<X<X_{2}) for events selected by cuts in X, X_{1}<X<X_{2}
P(b|X_{1}<X<X_{2})=\frac{P(b)}{c_{X_{1}}-c_{X_{2}}}\int_{X_{1}}^{X_{2}}P(X|b)\,\mathrm{d}X
[in] | x[0] | impact parameter b |
[in] | p[0],p[1] | X_1, X_2 |
Definition at line 377 of file bayesian_estimator.h.
|
inlineprivate |
Function implementing the calculation of the centrality distribution P(c_b|\mathbb{S}) for an arbitrary selection of events \mathbb{S}
P(c_b|\mathbb{S})=\frac{\int P(X|c_b)\frac{P(X|\mathbb{S})}{P(X)}\,\mathrm{d}X}{\int P(X|\mathbb{S})\,\mathrm{d}X}
[in] | x[0] | centrality c_b |
[in] | p[0],p[1] | integration limits for X, [X_1,X_2] |
num*=(1./histo->Integral("width"));
Definition at line 360 of file bayesian_estimator.h.
|
inlineprivate |
Function implementing the calculation of the centrality distribution P(c_b|X_{1}<X<X_{2}) for events selected by cuts in X, X_{1}<X<X_{2}
P(c_b|X_{1}<X<X_{2})=\frac{1}{c_{X_{1}}-c_{X_{2}}}\int_{X_{1}}^{X_{2}}P(X|c_b)\,\mathrm{d}X
[in] | x[0] | centrality c_b |
[in] | p[0],p[1] | X_1, X_2 |
Definition at line 342 of file bayesian_estimator.h.
|
inlineprivate |
Function used to fit experimental P(X) distribution by integrating the distribution P(X|c_b)
P(X)=\int P(X|c_b)\,\mathrm{d}c_b
[in] | x[0] | X |
[in] | p[0],p[1],...,p[Npar-1] | parameters of fitting function |
Definition at line 319 of file bayesian_estimator.h.
|
inline |
Draw impact parameter distribution (as differential cross-section) for an arbitrary selection \mathbb{S} of data,
\frac{\mathrm{d}\sigma}{\mathrm{d}b}=\sigma_{\mathrm{tot}}P(b|\mathbb{S})=P(b)\frac{\int P(X|b)\frac{P(X|\mathbb{S})}{P(X)}\,\mathrm{d}X}{\int P(X|\mathbb{S})\,\mathrm{d}X}
[in] | sel | pointer to histogram containing observable distribution for selected events |
[in] | incl | pointer to histogram containing inclusive observable distribution |
[out] | mean | mean value of b distribution |
[out] | sigma | standard deviation of b distribution |
[in] | opt | drawing option if required, e.g. "same" |
[in] | color | colour to use for drawing distribution |
[in] | title | title to affect to the drawn distribution |
Definition at line 847 of file bayesian_estimator.h.
|
inline |
Draw impact parameter distribution (as differential cross-section) for an arbitrary selection \mathbb{S} of data,
\frac{\mathrm{d}\sigma}{\mathrm{d}b}=\sigma_{\mathrm{tot}}P(b|\mathbb{S})=P(b)\frac{\int P(X|b)\frac{P(X|\mathbb{S})}{P(X)}\,\mathrm{d}X}{\int P(X|\mathbb{S})\,\mathrm{d}X}
[in] | sel | pointer to histogram containing observable distribution for selected events |
[in] | incl | pointer to histogram containing inclusive observable distribution |
[out] | mean | mean value of b distribution |
[out] | sigma | standard deviation of b distribution |
[in] | opt | drawing option if required, e.g. "same" |
[in] | color | colour to use for drawing distribution |
[in] | title | title to affect to the drawn distribution |
Definition at line 914 of file bayesian_estimator.h.
|
inline |
Draw impact parameter distribution (as differential cross-section) for observable cuts X_1<X<X_2
\frac{\mathrm{d}\sigma}{\mathrm{d}b}=\sigma_{\mathrm{tot}}P(b|X_{1}<X<X_{2})=\frac{P(b)}{c_{X_{1}}-c_{X_{2}}}\int_{X_{1}}^{X_{2}}P(X|b)\,\mathrm{d}X
[in] | X1 | lower limit for observable cut |
[in] | X2 | upper limit for observable cut |
[in] | opt | drawing option if required, e.g. "same" |
[in] | color | colour to use for drawing distribution |
[in] | title | title to affect to the drawn distribution |
Definition at line 781 of file bayesian_estimator.h.
|
inline |
Draw centrality distribution for an arbitrary selection \mathbb{S} of data,
P(c_b|\mathbb{S})=\frac{\int P(X|c_b)\frac{P(X|\mathbb{S})}{P(X)}\,\mathrm{d}X}{\int P(X|\mathbb{S})\,\mathrm{d}X}
[in] | sel | pointer to histogram containing observable distribution for selected events |
[in] | incl | pointer to histogram containing inclusive observable distribution |
[out] | mean_cb | mean value of c_b distribution |
[out] | sigma_cb | standard deviation of c_b distribution |
[in] | opt | drawing option if required, e.g. "same" |
[in] | color | colour to use for drawing distribution |
[in] | title | title to affect to the drawn distribution |
Definition at line 710 of file bayesian_estimator.h.
|
inline |
Draw centrality distribution for observable cuts X_1<X<X_2
P(c_b|X_{1}<X<X_{2})=\frac{1}{c_{X_{1}}-c_{X_{2}}}\int_{X_{1}}^{X_{2}}P(X|c_b)\,\mathrm{d}X
[in] | X1 | lower limit for observable cut |
[in] | X2 | upper limit for observable cut |
[in] | opt | drawing option if required, e.g. "same" |
[in] | color | colour to use for drawing distribution |
[in] | title | title to affect to the drawn distribution |
Definition at line 687 of file bayesian_estimator.h.
|
inline |
Draw the distribution P(X) resulting from the fit to the experimental distribution
[in] | norm | optional normalisation parameter e.g. if differential cross-section required: norm= \sigma_R |
[in] | opt | drawing option if required, e.g. "same" |
[in] | color | colour to use for drawing distribution |
[in] | title | title to affect to the drawn distribution |
Definition at line 1058 of file bayesian_estimator.h.
|
inline |
Draw the dependence of the mean value of the observable with centrality, \bar{X}(c_b), given by
\bar{X}(c_b)=\theta k(c_b)
[in] | title | title to affect to the drawn function |
[in] | color | colour to use for drawing function |
[in] | opt | drawing option if required, e.g. "same" |
Definition at line 567 of file bayesian_estimator.h.
|
inline |
Draw the dependence of the mean value of the observable with impact parameter, \bar{X}(b), given by
\bar{X}(b)=\theta k(b)
but with \bar{X} normalised so that X_{\mathrm{min}}=0 and X_{\mathrm{max}}=1, allowing to compare shapes for different fits
[in] | title | title to affect to the drawn function |
[in] | color | colour to use for drawing function |
[in] | opt | drawing option if required, e.g. "same" |
Definition at line 1104 of file bayesian_estimator.h.
|
inline |
Method used to fit a data histogram of P(X) in order to deduce the parameters of P(X|b).
Prepare initial parameter values for fit based on data in histogram, then perform a first fit attempt. As this first attempt is never successful, you should then open the Fit Panel by right-clicking on the histogram in the canvas, and continue fitting using "Previous Fit", adjusting the range of the fit, and if necessary the parameter limits, until a satisfactory fit is achieved.
[in] | h | pointer to histogram to fit. if not given, use internal histogram set by previous call to RenormaliseHisto() |
Definition at line 494 of file bayesian_estimator.h.
|
inline |
Definition at line 817 of file bayesian_estimator.h.
|
inline |
Returns list of fit parameters as named values
Definition at line 1099 of file bayesian_estimator.h.
|
inline |
Access the distribution P(X) resulting from the fit to the experimental distribution
[in] | norm | optional normalisation parameter e.g. if differential cross-section required: norm= \sigma_R |
Definition at line 1073 of file bayesian_estimator.h.
|
inline |
Access the impact parameter distribution assumed to correspond to the full inclusive distribution of X, P(X).
Definition at line 556 of file bayesian_estimator.h.
|
inline |
Create and return a 2D function representing the joint probability P(X,b) with b on the abscissa and the observable on the ordinate
Definition at line 1135 of file bayesian_estimator.h.
|
inline |
Calculate mean and standard deviation of impact parameter distribution for an arbitrary selection \mathbb{S} of data
P(b|\mathbb{S})=P(b)\frac{\int P(X|b)\frac{P(X|\mathbb{S})}{P(X)}\,\mathrm{d}X}{\int P(X|\mathbb{S})\,\mathrm{d}X}
[in] | sel | pointer to histogram containing observable distribution for selected events |
[in] | incl | pointer to histogram containing inclusive observable distribution |
[out] | mean | mean value of impact parameter for selection, \langle b\rangle |
[out] | sigma | standard deviation of impact parameter distribution |
Definition at line 978 of file bayesian_estimator.h.
|
inline |
Calculate mean and standard deviation of impact parameter distribution for observable cuts X_1<X<X_2
P(b|X_{1}<X<X_{2})=\frac{P(b)}{c_{X_{1}}-c_{X_{2}}}\int_{X_{1}}^{X_{2}}P(X|b)\,\mathrm{d}X
[in] | X1 | lower limit for observable cut |
[in] | X2 | upper limit for observable cut |
[out] | mean | mean value of impact parameter for selection, \langle b\rangle |
[out] | sigma | standard deviation of impact parameter distribution |
Definition at line 1023 of file bayesian_estimator.h.
|
inline |
Access the function implementing the dependence of the mean value of the observable with centrality, \bar{X}(c_b), given by
\bar{X}(c_b)=\theta k(c_b)
Definition at line 580 of file bayesian_estimator.h.
|
inline |
Graph impact parameter distribution (as differential cross-section) for observable cuts X_1<X<X_2
\frac{\mathrm{d}\sigma}{\mathrm{d}b}=\sigma_{\mathrm{tot}}P(b|X_{1}<X<X_{2})=\frac{P(b)}{c_{X_{1}}-c_{X_{2}}}\int_{X_{1}}^{X_{2}}P(X|b)\,\mathrm{d}X
[in] | Xrange | range of X for observable cut |
Definition at line 821 of file bayesian_estimator.h.
|
inline |
Produce a graph of mean impact parameter vs. X
Definition at line 642 of file bayesian_estimator.h.
|
inline |
Create a graph of the dependence of the mean value of the observable with impact parameter, \bar{X}(b), given by
\bar{X}(b)=\theta k(b)
Definition at line 594 of file bayesian_estimator.h.
|
inline |
Draw conditional probability distribution of observable, P(X|b), for a single value of b.
[in] | b | impact parameter |
[in] | Xrange | range of values of observable for graph |
[in] | npts | number of points used in graph |
Definition at line 1082 of file bayesian_estimator.h.
|
inlineprivate |
Function used to fit/draw dependence of mean observable on impact parameter, \bar{X}(b)
[in] | x[0] | impact parameter b |
[in] | p[0],p[1],...,p[Npar-1] | parameters of fitting function |
Definition at line 256 of file bayesian_estimator.h.
|
inlineprivate |
Function used to fit/draw dependence of mean observable on centrality, \bar{X}(c_b)
[in] | x[0] | centrality c_b |
[in] | p[0],p[1],...,p[Npar-1] | parameters of fitting function |
Definition at line 246 of file bayesian_estimator.h.
|
inlineprivate |
[in] | X | the value of the observable X |
[in] | cb | the centrality c_b |
Definition at line 266 of file bayesian_estimator.h.
|
inlineprivate |
Function used for the integrand of
P(X)=\int P(X|c_b)\,\mathrm{d}c_b
[in] | x[0] | centrality c_b |
[in] | par[0] | observable value, X |
Definition at line 284 of file bayesian_estimator.h.
|
inlineprivate |
[in] | x[0] | impact parameter b |
[in] | x[1] | value of observable X |
Definition at line 274 of file bayesian_estimator.h.
|
inlineprivate |
Function used for the integrand of
\int P(X|c_b)\,\mathrm{d}X
used to calculate centrality distributions for data.
[in] | x[0] | observable X |
[in] | par[0] | centrality value c_b |
Definition at line 294 of file bayesian_estimator.h.
|
inlineprivate |
Function used for the integrand of
\int P(X|c_b)\frac{P(X|\mathbb{S})}{P(X)}\,\mathrm{d}X
used to calculate centrality distributions for data selection \mathbb{S}
[in] | x[0] | observable X |
[in] | par[0] | centrality value c_b |
Definition at line 305 of file bayesian_estimator.h.
|
inlineprivate |
Same as cb_integrated_P_X(), but just using current values of parameters. Used to display fit result.
[in] | x[0] | X |
[in] | par[0] | normalisation factor |
Definition at line 333 of file bayesian_estimator.h.
|
inline |
Print informations on current values of fit parameters
Definition at line 1094 of file bayesian_estimator.h.
|
inline |
Turn data histogram for observable into probability distribution P(X) (taking account of binning).
After calling this method, the histogram fitting procedure can be started by calling FitHisto().
[in] | h | pointer to histogram to normalise |
Definition at line 482 of file bayesian_estimator.h.
|
inline |
Any distributions of b deduced from data depend on the impact parameter distribution P(b) which is assumed for the full inclusive dataset, i.e. for all collisions contributing to the P(X) distribution fitted in order to deduce the parameters for k(c_b) and \theta.
By default this is a triangular distribution between b=0 & b=1 fm with cross-section 31.4 mb, which can be treated as though it were the sharp cut-off distribution for \hat{b}=b/b_{\mathrm{max}}.
To obtain absolute impact parameters, call this method with
[in] | ip_histo | the impact parameter distribution in [mb] |
Definition at line 537 of file bayesian_estimator.h.
|
inline |
Any distributions of b deduced from data depend on the impact parameter distribution P(b) which is assumed for the full inclusive dataset, i.e. for all collisions contributing to the P(X) distribution fitted in order to deduce the parameters for k(c_b) and \theta.
By default this is a triangular distribution between b=0 & b=1 fm with cross-section 31.4 mb, which can be treated as though it were the sharp cut-off distribution for \hat{b}=b/b_{\mathrm{max}}.
To obtain absolute impact parameters, call this method with
[in] | sigmaR | total reaction cross-section \sigma_R in [mb] |
[in] | deltab | fall-off parameter for distribution \Delta b in [fm] |
Definition at line 515 of file bayesian_estimator.h.
|
inline |
Take a 2D histogram of some observable as a function of X. Generate a new 2D histogram of the observable's dependence on b.
From an original idea by Caterina Ciampi.
Definition at line 614 of file bayesian_estimator.h.
|
inline |
Retrieve latest values of fit parameters from fitting function stored with histogram, in case the internal parameters do not correspond to them.
Definition at line 669 of file bayesian_estimator.h.
|
private |
Definition at line 239 of file bayesian_estimator.h.
|
private |
Definition at line 240 of file bayesian_estimator.h.
|
private |
Definition at line 238 of file bayesian_estimator.h.
|
private |
Definition at line 237 of file bayesian_estimator.h.
|
private |
Definition at line 236 of file bayesian_estimator.h.
|
private |
Definition at line 242 of file bayesian_estimator.h.
|
private |
Definition at line 244 of file bayesian_estimator.h.
|
private |
Definition at line 235 of file bayesian_estimator.h.
|
private |
Definition at line 227 of file bayesian_estimator.h.
|
private |
Definition at line 226 of file bayesian_estimator.h.
|
private |
Definition at line 232 of file bayesian_estimator.h.
|
private |
Definition at line 231 of file bayesian_estimator.h.
|
private |
Definition at line 229 of file bayesian_estimator.h.
|
private |
Definition at line 230 of file bayesian_estimator.h.
|
private |
Definition at line 233 of file bayesian_estimator.h.
|
private |
Definition at line 234 of file bayesian_estimator.h.
|
private |
Definition at line 228 of file bayesian_estimator.h.
|
private |
Definition at line 223 of file bayesian_estimator.h.
|
private |
Definition at line 224 of file bayesian_estimator.h.