![]() |
AliRoot Core
3dc7879 (3dc7879)
|
Pad response function object in two dimesions. More...
#include <AliTPCPRF2D.h>
Public Member Functions | |
AliTPCPRF2D () | |
virtual | ~AliTPCPRF2D () |
virtual void | Update () |
Float_t | GetGRF (Float_t xin, Float_t yin) |
virtual TF2 * | GetGRF () |
virtual Float_t | GetPRF (Float_t xin, Float_t yin) |
virtual void | DrawX (Float_t x1, Float_t x2, Float_t y1, Float_t y2=0, Int_t N=1) |
virtual void | DrawPRF (Float_t x1, Float_t x2, Float_t y1, Float_t y2, Int_t Nx=20, Int_t Ny=20) |
virtual void | DrawDist (Float_t x1, Float_t x2, Float_t y1, Float_t y2, Int_t Nx=20, Int_t Ny=20, Float_t thr=0) |
TH1F * | GenerDrawXHisto (Float_t x1, Float_t x2, Float_t y) |
AliH2F * | GenerDrawHisto (Float_t x1, Float_t x2, Float_t y1, Float_t y2, Int_t Nx=20, Int_t Ny=20) |
AliH2F * | GenerDrawDistHisto (Float_t x1, Float_t x2, Float_t y1, Float_t y2, Int_t Nx=20, Int_t Ny=20, Float_t thr=0) |
virtual void | SetPad (Float_t width, Float_t height) |
virtual void | SetChevron (Float_t hstep, Float_t shifty, Float_t fac) |
virtual void | SetChParam (Float_t width, Float_t height, Float_t hstep, Float_t shifty, Float_t fac) |
virtual void | SetY (Float_t y1, Float_t y2, Int_t nYdiv) |
virtual void | SetChargeAngle (Float_t angle) |
virtual void | SetCurrentAngle (Float_t) |
virtual void | SetPadAngle (Float_t angle) |
void | SetInterpolationType (Int_t interx, Int_t intery) |
virtual void | SetGauss (Float_t sigmaX, Float_t sigmaY, Float_t kNorm=1) |
virtual void | SetCosh (Float_t sigmaX, Float_t sigmaY, Float_t kNorm=1) |
virtual void | SetGati (Float_t K3X, Float_t K3Y, Float_t padDistance, Float_t kNorm=1) |
void | SetParam (TF2 *const GRF, Float_t kNorm, Float_t sigmaX=0, Float_t sigmaY=0) |
void | SetNdiv (Int_t Ndiv) |
virtual Float_t | GetSigmaX () const |
virtual Float_t | GetSigmaY () const |
Protected Member Functions | |
void | Update1 () |
virtual void | UpdateSigma () |
Float_t | GetPRFActiv (Float_t xin) |
void | DrawComment (TPaveText *comment) |
Protected Attributes | |
Float_t * | fcharge |
! field with PRF More... | |
Float_t | fY1 |
position of first "virtual" vire More... | |
Float_t | fY2 |
position of last virtual vire More... | |
Int_t | fNYdiv |
number of wires More... | |
Int_t | fNChargeArray |
Float_t * | fChargeArray |
pointer to array of arrays More... | |
Float_t | fHeightFull |
height of the full pad More... | |
Float_t | fHeightS |
height of the one step More... | |
Float_t | fShiftY |
shift of the step More... | |
Float_t | fWidth |
width of the pad More... | |
Float_t | fK |
k factor of the chewron More... | |
Double_t | funParam [5] |
parameters of used charge function More... | |
Int_t | fNPRF |
number of interpolations point More... | |
Int_t | fNdiv |
number of division to calculate integral More... | |
Float_t | fDStep |
element step for point More... | |
Float_t | fKNorm |
normalisation factor of the charge integral More... | |
Float_t | fInteg |
integral of GRF on +- infinity More... | |
TF2 * | fGRF |
charge distribution function More... | |
Float_t | fK3X |
KX parameter (only for Gati parametrization) More... | |
Float_t | fK3Y |
KY parameter (only for Gati parametrisation) More... | |
Float_t | fPadDistance |
pad anode distnce (only for Gati parametrisation) More... | |
Float_t | fOrigSigmaX |
sigma of original distribution; More... | |
Float_t | fOrigSigmaY |
sigma of original distribution; More... | |
Float_t | fChargeAngle |
'angle' of charge distribution refernce system to pad reference system More... | |
Float_t | fPadAngle |
'angle' of the pad assymetry More... | |
Float_t | fSigmaX |
sigma X of PAD response function More... | |
Float_t | fSigmaY |
sigma Y of PAD response function More... | |
Float_t | fMeanX |
mean X value More... | |
Float_t | fMeanY |
mean Y value More... | |
Int_t | fInterX |
interpolation in X More... | |
Int_t | fInterY |
interpolation in Y More... | |
char | fType [5] |
charge type More... | |
Float_t | fCurrentY |
in reality we calculate PRF only for one fixed y More... | |
Float_t | fDYtoWire |
! used to make PRF calculation faster in GetPRF More... | |
Float_t | fDStepM1 |
! used in GetPRFActiv to make calculation faster More... | |
Static Protected Attributes | |
static const Double_t | fgkDegtoRad = 0.01745329251994 |
numeric constant More... | |
static const Double_t | fgkSQRT12 =3.464101 |
numeric constant More... | |
static const Int_t | fgkNPRF = 100 |
default number of division More... | |
Private Member Functions | |
AliTPCPRF2D (const AliTPCPRF2D &prf) | |
AliTPCPRF2D & | operator= (const AliTPCPRF2D &) |
Pad response function object in two dimesions.
Manager class for AliTPCPRF2D.
This class contains the basic functions for the calculation of PRF according generic charge distribution In Update function object calculate table of response function in discrete x and y position This table is used for interpolation od response function in any position (function GetPRF)
This is to generate the 2-dimensional pad-response function
Definition at line 19 of file AliTPCPRF2D.h.
AliTPCPRF2D::AliTPCPRF2D | ( | ) |
Definition at line 101 of file AliTPCPRF2D.cxx.
|
virtual |
Definition at line 153 of file AliTPCPRF2D.cxx.
|
private |
|
protected |
function to write comment to picture
Definition at line 904 of file AliTPCPRF2D.cxx.
Referenced by DrawDist(), DrawPRF(), and DrawX().
|
virtual |
draw distortion of the COG method - for different threshold parameter
Definition at line 872 of file AliTPCPRF2D.cxx.
Referenced by GetGRF().
|
virtual |
Definition at line 851 of file AliTPCPRF2D.cxx.
Referenced by AliTPCCreatePRFGEM(), and GetGRF().
|
virtual |
draw pad response function at interval <x1,x2> at given y position
Definition at line 811 of file AliTPCPRF2D.cxx.
Referenced by GetGRF().
AliH2F * AliTPCPRF2D::GenerDrawDistHisto | ( | Float_t | x1, |
Float_t | x2, | ||
Float_t | y1, | ||
Float_t | y2, | ||
Int_t | Nx = 20 , |
||
Int_t | Ny = 20 , |
||
Float_t | thr = 0 |
||
) |
return histogram with distortion
Definition at line 762 of file AliTPCPRF2D.cxx.
Referenced by DrawDist(), and GetGRF().
AliH2F * AliTPCPRF2D::GenerDrawHisto | ( | Float_t | x1, |
Float_t | x2, | ||
Float_t | y1, | ||
Float_t | y2, | ||
Int_t | Nx = 20 , |
||
Int_t | Ny = 20 |
||
) |
gener two dimensional histogram with PRF
Definition at line 734 of file AliTPCPRF2D.cxx.
TH1F * AliTPCPRF2D::GenerDrawXHisto | ( | Float_t | x1, |
Float_t | x2, | ||
Float_t | y | ||
) |
gener one dimensional hist of pad response function at position y
Definition at line 711 of file AliTPCPRF2D.cxx.
Float_t AliTPCPRF2D::GetGRF | ( | Float_t | xin, |
Float_t | yin | ||
) |
function which returnoriginal charge distribution this function is just normalised for fKnorm
Definition at line 273 of file AliTPCPRF2D.cxx.
|
inlinevirtual |
Definition at line 26 of file AliTPCPRF2D.h.
Referenced by GetGRF().
|
virtual |
function which return pad response for the charge in distance xin return cubic aproximation of PRF or PRF at nearest virtual wire
Definition at line 195 of file AliTPCPRF2D.cxx.
Referenced by AliTPCParamSR::CalcResponse(), AliTPCParamSR::CalcResponseFast(), GenerDrawDistHisto(), GenerDrawHisto(), GenerDrawXHisto(), GetGRF(), and UpdateSigma().
|
protected |
GEt response function on given charege line return spline aproximaton
Definition at line 249 of file AliTPCPRF2D.cxx.
Referenced by GetPRF(), and GetSigmaY().
|
inlinevirtual |
Definition at line 67 of file AliTPCPRF2D.h.
Referenced by AliTPCParamSR::CalcResponse(), and AliTPCParamSR::GetClusterSize().
|
inlinevirtual |
Definition at line 68 of file AliTPCPRF2D.h.
Referenced by AliTPCParamSR::CalcResponse().
|
inlineprivate |
Definition at line 128 of file AliTPCPRF2D.h.
|
inlinevirtual |
Definition at line 51 of file AliTPCPRF2D.h.
|
virtual |
set shaping of chewron parameters
Definition at line 176 of file AliTPCPRF2D.cxx.
Referenced by AliTPCCreatePRF(), AliTPCCreatePRFGEM(), GetGRF(), and SetChParam().
|
virtual |
Definition at line 187 of file AliTPCPRF2D.cxx.
Referenced by GetGRF().
|
virtual |
set parameters for Cosh generic charge distribution
Definition at line 350 of file AliTPCPRF2D.cxx.
Referenced by SetInterpolationType().
|
inlinevirtual |
Definition at line 53 of file AliTPCPRF2D.h.
|
virtual |
set parameters for Gati generic charge distribution
Definition at line 380 of file AliTPCPRF2D.cxx.
Referenced by AliTPCCreatePRF(), and SetInterpolationType().
|
virtual |
set parameters for Gauss generic charge distribution
Definition at line 316 of file AliTPCPRF2D.cxx.
Referenced by AliTPCCreatePRFGEM(), and SetInterpolationType().
|
inline |
Definition at line 55 of file AliTPCPRF2D.h.
|
inline |
Definition at line 66 of file AliTPCPRF2D.h.
|
virtual |
set base chevron parameters
Definition at line 169 of file AliTPCPRF2D.cxx.
Referenced by AliTPCCreatePRF(), AliTPCCreatePRFGEM(), GetGRF(), and SetChParam().
|
inlinevirtual |
Definition at line 54 of file AliTPCPRF2D.h.
void AliTPCPRF2D::SetParam | ( | TF2 *const | GRF, |
Float_t | kNorm, | ||
Float_t | sigmaX = 0 , |
||
Float_t | sigmaY = 0 |
||
) |
adjust parameters of the original charge distribution and pad size parameters
Definition at line 285 of file AliTPCPRF2D.cxx.
Referenced by SetInterpolationType().
|
virtual |
set virtual line position first and last line and number of lines
Definition at line 159 of file AliTPCPRF2D.cxx.
Referenced by AliTPCCreatePRF(), AliTPCCreatePRFGEM(), and GetGRF().
|
virtual |
update fields with interpolated values for PRF calculation
Definition at line 417 of file AliTPCPRF2D.cxx.
Referenced by AliTPCCreatePRF(), and AliTPCCreatePRFGEM().
|
protected |
update fields with interpolated values for PRF calculation for given charge line
Definition at line 463 of file AliTPCPRF2D.cxx.
Referenced by GetSigmaY(), and Update().
|
protectedvirtual |
calulate effective sigma X and sigma y of PRF
Definition at line 645 of file AliTPCPRF2D.cxx.
Referenced by GetSigmaY(), and Update().
|
protected |
! field with PRF
Definition at line 75 of file AliTPCPRF2D.h.
Referenced by GetPRF(), GetPRFActiv(), Update(), and Update1().
|
protected |
'angle' of charge distribution refernce system to pad reference system
Definition at line 106 of file AliTPCPRF2D.h.
Referenced by SetChargeAngle(), and Update1().
|
protected |
pointer to array of arrays
Definition at line 81 of file AliTPCPRF2D.h.
Referenced by GetPRF(), Update(), and ~AliTPCPRF2D().
|
protected |
in reality we calculate PRF only for one fixed y
Definition at line 118 of file AliTPCPRF2D.h.
|
protected |
element step for point
Definition at line 94 of file AliTPCPRF2D.h.
Referenced by SetCosh(), SetGati(), SetGauss(), SetParam(), Update(), Update1(), and UpdateSigma().
|
protected |
! used in GetPRFActiv to make calculation faster
Definition at line 120 of file AliTPCPRF2D.h.
Referenced by GetPRFActiv(), Update(), and UpdateSigma().
|
protected |
! used to make PRF calculation faster in GetPRF
Definition at line 119 of file AliTPCPRF2D.h.
Referenced by GetPRF(), Update(), and UpdateSigma().
|
staticprotected |
numeric constant
Definition at line 122 of file AliTPCPRF2D.h.
Referenced by SetGauss(), SetParam(), and Update1().
|
staticprotected |
default number of division
Definition at line 124 of file AliTPCPRF2D.h.
|
staticprotected |
|
protected |
charge distribution function
Definition at line 97 of file AliTPCPRF2D.h.
Referenced by DrawComment(), GetGRF(), SetCosh(), SetGati(), SetGauss(), SetParam(), Update(), Update1(), UpdateSigma(), and ~AliTPCPRF2D().
|
protected |
height of the full pad
Definition at line 85 of file AliTPCPRF2D.h.
Referenced by DrawComment(), SetGauss(), SetPad(), SetParam(), and Update1().
|
protected |
height of the one step
Definition at line 86 of file AliTPCPRF2D.h.
Referenced by DrawComment(), SetChevron(), SetCosh(), SetGati(), SetGauss(), and Update1().
|
protected |
integral of GRF on +- infinity
Definition at line 96 of file AliTPCPRF2D.h.
|
protected |
interpolation in X
Definition at line 113 of file AliTPCPRF2D.h.
Referenced by SetInterpolationType().
|
protected |
interpolation in Y
Definition at line 114 of file AliTPCPRF2D.h.
Referenced by GetPRF(), and SetInterpolationType().
|
protected |
k factor of the chewron
Definition at line 89 of file AliTPCPRF2D.h.
Referenced by DrawComment(), SetChevron(), SetCosh(), SetGati(), SetGauss(), SetParam(), and Update1().
|
protected |
KX parameter (only for Gati parametrization)
Definition at line 99 of file AliTPCPRF2D.h.
Referenced by DrawComment(), and SetGati().
|
protected |
KY parameter (only for Gati parametrisation)
Definition at line 100 of file AliTPCPRF2D.h.
Referenced by DrawComment(), and SetGati().
|
protected |
normalisation factor of the charge integral
Definition at line 95 of file AliTPCPRF2D.h.
Referenced by DrawComment(), GetGRF(), SetCosh(), SetGati(), SetGauss(), SetParam(), and Update1().
|
protected |
|
protected |
|
protected |
number of charge interpolation points
Definition at line 79 of file AliTPCPRF2D.h.
Referenced by Update().
|
protected |
number of division to calculate integral
Definition at line 93 of file AliTPCPRF2D.h.
|
protected |
number of interpolations point
Definition at line 92 of file AliTPCPRF2D.h.
Referenced by GetPRF(), GetPRFActiv(), SetCosh(), SetGati(), SetGauss(), SetParam(), Update(), Update1(), and UpdateSigma().
|
protected |
number of wires
Definition at line 78 of file AliTPCPRF2D.h.
Referenced by GetPRF(), SetY(), Update(), and UpdateSigma().
|
protected |
sigma of original distribution;
Definition at line 103 of file AliTPCPRF2D.h.
Referenced by DrawComment(), SetCosh(), SetGati(), SetGauss(), SetParam(), Update(), and Update1().
|
protected |
sigma of original distribution;
Definition at line 104 of file AliTPCPRF2D.h.
Referenced by DrawComment(), SetCosh(), SetGati(), SetGauss(), SetParam(), Update(), and Update1().
|
protected |
'angle' of the pad assymetry
Definition at line 107 of file AliTPCPRF2D.h.
Referenced by DrawComment(), SetGauss(), SetPadAngle(), SetParam(), and Update1().
|
protected |
pad anode distnce (only for Gati parametrisation)
Definition at line 101 of file AliTPCPRF2D.h.
Referenced by DrawComment(), and SetGati().
|
protected |
shift of the step
Definition at line 87 of file AliTPCPRF2D.h.
Referenced by SetChevron(), and Update1().
|
protected |
sigma X of PAD response function
Definition at line 109 of file AliTPCPRF2D.h.
Referenced by GetSigmaX(), and UpdateSigma().
|
protected |
sigma Y of PAD response function
Definition at line 110 of file AliTPCPRF2D.h.
Referenced by GetSigmaY(), and UpdateSigma().
|
protected |
charge type
Definition at line 117 of file AliTPCPRF2D.h.
Referenced by DrawComment(), SetCosh(), SetGati(), SetGauss(), SetParam(), and UpdateSigma().
|
protected |
parameters of used charge function
Definition at line 91 of file AliTPCPRF2D.h.
Referenced by SetCosh(), SetGati(), SetGauss(), and UpdateSigma().
|
protected |
width of the pad
Definition at line 88 of file AliTPCPRF2D.h.
Referenced by DrawComment(), GenerDrawDistHisto(), SetCosh(), SetGati(), SetGauss(), SetPad(), SetParam(), and Update1().
|
protected |
position of first "virtual" vire
Definition at line 76 of file AliTPCPRF2D.h.
Referenced by GetPRF(), SetY(), Update(), and UpdateSigma().
|
protected |
position of last virtual vire
Definition at line 77 of file AliTPCPRF2D.h.
Referenced by SetY(), Update(), and UpdateSigma().