13 #include "dEdxParameterization.h"
14 class tpcCorrection_st;
17 enum EParTypes {kP10, kBichsel, kPAI, kTotal};
19 static TString m_Tags[kTotal];
26 Bichsel(
const Char_t *tag=
"P10", Int_t keep3D=0);
27 virtual ~
Bichsel() {fgBichsel = 0;};
28 static Bichsel* Instance(
const Char_t *tag=
"P10", Int_t keep3D=0);
29 static Double_t GetdEdxResolution(Int_t k=1, Double_t TrackLengthInTPC=60);
30 static Double_t GetdEdxResolution(Double_t *x, Double_t *p);
31 static Double_t CalcCorrection(
const tpcCorrection_st *cor,
const Double_t x);
32 static Double_t SumSeries(
const Double_t &X,
const Int_t &N,
const Double_t *
params);
34 Double_t GetMostProbableZ(Double_t log10bg, Double_t log2dx = 1.) {
35 return m_dEdxParameterization->GetMostProbableZ(log10bg,log2dx);
37 Double_t GetMostProbableZM(Double_t log10bg, Double_t log2dx = 1.) {
38 return m_dEdxParameterization->GetMostProbableZM(log10bg,log2dx);
40 Double_t GetAverageZ(Double_t log10bg, Double_t log2dx = 1.) {
41 return m_dEdxParameterization->GetAverageZ(log10bg,log2dx);
43 Double_t GetAverageZM(Double_t log10bg, Double_t log2dx = 1.) {
44 return m_dEdxParameterization->GetAverageZM(log10bg,log2dx);
46 Double_t GetRmsZ(Double_t log10bg, Double_t log2dx = 1.) {
47 return m_dEdxParameterization->GetRmsZ(log10bg,log2dx);
49 Double_t GetI70(Double_t log10bg, Double_t log2dx = 1.) {
50 return m_dEdxParameterization->GetI70(log10bg,log2dx);
52 Double_t GetI70M(Double_t log10bg, Double_t log2dx = 1.) {
53 return m_dEdxParameterization->GetI70M(log10bg,log2dx);
55 Double_t GetI60(Double_t log10bg, Double_t log2dx = 1.) {
56 return m_dEdxParameterization->GetI60(log10bg,log2dx);
58 Double_t GetMostProbabledEdx(Double_t log10bg, Double_t log2dx = 1.) {
59 return m_dEdxParameterization->GetMostProbabledEdx(log10bg,log2dx);
61 Double_t GetdEdxWidth(Double_t log10bg, Double_t log2dx = 1.) {
62 return m_dEdxParameterization->GetdEdxWidth(log10bg,log2dx);
64 Double_t GetProbability(Double_t log10bg, Double_t log2dx, Double_t z) {
65 return m_dEdxParameterization->GetProbability(log10bg,log2dx,z);}
68 const Char_t *Tag()
const {
return m_dEdxParameterization->Tag();}
69 const TProfile2D *P()
const {
return m_dEdxParameterization->P();}
70 const TProfile2D *A()
const {
return m_dEdxParameterization->A();}
71 const TProfile2D *I70()
const {
return m_dEdxParameterization->I70();}
72 const TProfile2D *I60()
const {
return m_dEdxParameterization->I60();}
73 const TProfile2D *D()
const {
return m_dEdxParameterization->D();}
74 const TProfile2D *Rms()
const {
return m_dEdxParameterization->Rms();}
75 const TProfile2D *W()
const {
return m_dEdxParameterization->W();}
76 const TH3D *Phi()
const {
return m_dEdxParameterization->Phi();}
77 const TH1D *I70Trs (Int_t part = KPidParticles)
const {
return m_dEdxParameterization->I70Trs( part);}
78 const TH1D *I70TrsB (Int_t part = KPidParticles)
const {
return m_dEdxParameterization->I70TrsB(part);}
79 const TH1D *I70TrsS (Int_t part = KPidParticles)
const {
return m_dEdxParameterization->I70TrsS(part);}
80 const TH1D *IfitTrs (Int_t part = KPidParticles)
const {
return m_dEdxParameterization->IfitTrs(part);}
81 const TH1D *IfitTrsB(Int_t part = KPidParticles)
const {
return m_dEdxParameterization->IfitTrsB(part);}
82 const TH1D *IfitTrsS(Int_t part = KPidParticles)
const {
return m_dEdxParameterization->IfitTrsS(part);}
83 Double_t I70Trs (Int_t part, Double_t log10bg)
const {
return m_dEdxParameterization->Get(I70Trs (part), log10bg);}
84 Double_t I70TrsB (Int_t part, Double_t log10bg)
const {
return m_dEdxParameterization->Get(I70TrsB (part), log10bg);}
85 Double_t I70TrsS (Int_t part, Double_t log10bg)
const {
return m_dEdxParameterization->Get(I70TrsS (part), log10bg);}
86 Double_t IfitTrs (Int_t part, Double_t log10bg)
const {
return m_dEdxParameterization->Get(IfitTrs (part), log10bg);}
87 Double_t IfitTrsB(Int_t part, Double_t log10bg)
const {
return m_dEdxParameterization->Get(IfitTrsB(part), log10bg);}
88 Double_t IfitTrsS(Int_t part, Double_t log10bg)
const {
return m_dEdxParameterization->Get(IfitTrsS(part), log10bg);}
89 Double_t MostProbableZShift() {
return m_dEdxParameterization->MostProbableZShift();}
90 Double_t AverageZShift () {
return m_dEdxParameterization->AverageZShift();}
91 Double_t I70Shift () {
return m_dEdxParameterization->I70Shift();}
92 Double_t I60Shift () {
return m_dEdxParameterization->I60Shift();}
Bichsel(const Char_t *tag="P10", Int_t keep3D=0)
last instance