A++ » INCLUDE » TF1Convolution

class TF1Convolution

Function Members (Methods)

public:
~TF1Convolution()
Int_tGetNpar() const
const char*GetParName(Int_t ipar) const
Double_tGetXmax() const
Double_tGetXmin() const
Double_toperator()(Double_t* t, Double_t* p)
TF1Convolution&operator=(TF1Convolution&&)
TF1Convolution&operator=(const TF1Convolution&)
voidSetExtraRange(Double_t percentage)
voidSetNofPointsFFT(Int_t n)
voidSetNumConv(Bool_t flag = true)
voidSetParameters(Double_t* p)
voidSetParameters(Double_t p0, Double_t p1, Double_t p2 = 0., Double_t p3 = 0., Double_t p4 = 0., Double_t p5 = 0., Double_t p6 = 0., Double_t p7 = 0.)
voidSetRange(Double_t a, Double_t b)
TF1Convolution(TF1Convolution&&)
TF1Convolution(const TF1Convolution&)
TF1Convolution(TF1* function1, TF1* function2, Bool_t useFFT = true)
TF1Convolution(TString formula, Double_t xmin = 1., Double_t xmax = 0., Bool_t useFFT = true)
TF1Convolution(TF1* function1, TF1* function2, Double_t xmin, Double_t xmax, Bool_t useFFT = true)
TF1Convolution(TString formula1, TString formula2, Double_t xmin = 1., Double_t xmax = 0., Bool_t useFFT = true)
private:
Double_tEvalFFTConv(Double_t t)
Double_tEvalNumConv(Double_t t)
voidInitializeDataMembers(TF1* function1, TF1* function2, Bool_t useFFT)
voidMakeFFTConv()

Data Members

private:
Int_tfCstIndexindex of the constant parameter f the first function
Bool_tfFlagFFTchoose fft or numerical convolution
Bool_tfFlagGraphtells if the graph is already done or not
shared_ptr<TF1>fFunction1
shared_ptr<TF1>fFunction2
shared_ptr<TGraph>fGraphConv
Int_tfNofParams1
Int_tfNofParams2
Int_tfNofPointsnumber of point for FFT array
vector<TString>fParNamesparameter names
vector<Double_t>fParams1
vector<Double_t>fParams2
Double_tfXmaxmaximal bound of the range of the convolution
Double_tfXminminimal bound of the range of the convolution

Class Charts

Inheritance Chart:
TF1Convolution

Function documentation

Double_t EvalNumConv(Double_t t)
Double_t EvalFFTConv(Double_t t)
void InitializeDataMembers(TF1* function1, TF1* function2, Bool_t useFFT)
void MakeFFTConv()
TF1Convolution(TF1* function1, TF1* function2, Bool_t useFFT = true)
TF1Convolution(TF1* function1, TF1* function2, Double_t xmin, Double_t xmax, Bool_t useFFT = true)
TF1Convolution(TString formula, Double_t xmin = 1., Double_t xmax = 0., Bool_t useFFT = true)
TF1Convolution(TString formula1, TString formula2, Double_t xmin = 1., Double_t xmax = 0., Bool_t useFFT = true)
void SetParameters(Double_t* p)
void SetParameters(Double_t p0, Double_t p1, Double_t p2 = 0., Double_t p3 = 0., Double_t p4 = 0., Double_t p5 = 0., Double_t p6 = 0., Double_t p7 = 0.)
void SetExtraRange(Double_t percentage)
void SetNofPointsFFT(Int_t n)
void SetNumConv(Bool_t flag = true)
{fFlagFFT=!flag;}
Int_t GetNpar() const
Double_t GetXmin() const
{return fXmin;}
Double_t GetXmax() const
{return fXmax;}
const char * GetParName(Int_t ipar) const
{ return fParNames.at(ipar).Data(); }
Double_t operator()(Double_t* t, Double_t* p)