AliRoot Core  v5-06-30 (35d6c57)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
AliTPCCalPad Class Reference

#include <AliTPCCalPad.h>

Inheritance diagram for AliTPCCalPad:

Public Types

enum  { kNsec = 72 }
 

Public Member Functions

 AliTPCCalPad ()
 
 AliTPCCalPad (const Text_t *name, const Text_t *title)
 
 AliTPCCalPad (const AliTPCCalPad &c)
 
 AliTPCCalPad (TObjArray *arrayROC)
 
virtual ~AliTPCCalPad ()
 
More...
 
AliTPCCalPadoperator= (const AliTPCCalPad &c)
 
virtual void Copy (TObject &c) const
 
AliTPCCalROCGetCalROC (Int_t sector) const
 
void SetCalROC (AliTPCCalROC *roc, Int_t sector=-1)
 
virtual void Draw (Option_t *option="")
 
void AddFriend (TTree *tree, const char *friendName, const char *fname=0)
 
Bool_t MedianFilter (Int_t deltaRow, Int_t deltaPad, AliTPCCalPad *outlierPad=0, Bool_t doEdge=kTRUE)
 
Bool_t LTMFilter (Int_t deltaRow, Int_t deltaPad, Float_t fraction, Int_t type, AliTPCCalPad *outlierPad=0, Bool_t doEdge=kTRUE)
 
Bool_t Convolute (Double_t sigmaPad, Double_t sigmaRow, AliTPCCalPad *outlierPad=0, TF1 *fpad=0, TF1 *frow=0)
 
void Add (Float_t c1)
 
void Multiply (Float_t c1)
 
void Add (const AliTPCCalPad *roc, Double_t c1=1)
 
void Multiply (const AliTPCCalPad *pad)
 
void Divide (const AliTPCCalPad *pad)
 
void Reset ()
 
Double_t GetMeanRMS (Double_t &rms)
 
Double_t GetMean (AliTPCCalPad *outlierPad=0)
 
Double_t GetRMS (AliTPCCalPad *outlierPad=0)
 
Double_t GetMedian (AliTPCCalPad *outlierPad=0)
 
Double_t GetLTM (Double_t *sigma=0, Double_t fraction=0.9, AliTPCCalPad *outlierPad=0)
 
TGraph * MakeGraph (Int_t type=0, Float_t ratio=0.7)
 
TH2F * MakeHisto2D (Int_t side=0)
 
TH1F * MakeHisto1D (Float_t min=4, Float_t max=-4, Int_t type=0, Int_t side=0)
 
AliTPCCalPadLocalFit (const char *padName, Int_t rowRadius, Int_t padRadius, AliTPCCalPad *Padoutliers=0, Bool_t robust=kFALSE, Double_t chi2Threshold=5, Double_t robustFraction=0.7, Bool_t printCurrentSector=kFALSE) const
 
AliTPCCalPadGlobalFit (const char *padName, AliTPCCalPad *Padoutliers=0, Bool_t robust=kFALSE, Int_t fitType=1, Double_t chi2Threshold=5, Double_t robustFraction=0.7, Double_t err=1, TObjArray *fitParArr=0x0, TObjArray *fitCovArr=0x0)
 
void GlobalSidesFit (const AliTPCCalPad *PadOutliers, const char *fitFormula, TVectorD &fitParamSideA, TVectorD &fitParamSideC, TMatrixD &covMatrixSideA, TMatrixD &covMatrixSideC, Float_t &chi2SideA, Float_t &chi2SideC, AliTPCCalPad *pointError=0, Bool_t robust=kFALSE, Double_t robustFraction=0.7)
 

Static Public Member Functions

static AliTPCCalPadMakePadFromTree (TTree *tree, const char *query, const char *name=0, Bool_t doFast=kFALSE)
 
static AliTPCCalPadCreateCalPadFit (const char *fitFormula, const TVectorD &fitParamSideA, const TVectorD &fitParamSideC)
 
static TObjArrayCreateFormulaArray (const char *fitFormula)
 
static void EvalFormulaArray (const TObjArray &arrFitFormulas, TVectorD &results, const Int_t sec, const Int_t row, const Int_t pad)
 
static TCanvas * MakeReportPadSector (TTree *chain, const char *varName, const char *varTitle, const char *axisTitle, Float_t min, Float_t max, const char *cutUser="")
 
static TCanvas * MakeReportPadSector2D (TTree *chain, const char *varName, const char *varTitle, const char *axisTitle, Float_t min, Float_t max, const char *cutUser="")
 
static AliTPCCalPadMakeCalPadFromHistoRPHI (TH2 *hisA, TH2 *hisC)
 

Protected Attributes

AliTPCCalROCfROC [kNsec]
 

Detailed Description

TPC calibration class for parameters which are saved per pad Each AliTPCCalPad consists of 72 AliTPCCalROC-objects

TPC calibration class for parameters which are saved per pad

Definition at line 32 of file AliTPCCalPad.h.

Member Enumeration Documentation

anonymous enum
Enumerator
kNsec 

Definition at line 34 of file AliTPCCalPad.h.

Constructor & Destructor Documentation

AliTPCCalPad::AliTPCCalPad ( )
AliTPCCalPad::AliTPCCalPad ( const Text_t *  name,
const Text_t *  title 
)

AliTPCCalPad constructor

Definition at line 66 of file AliTPCCalPad.cxx.

AliTPCCalPad::AliTPCCalPad ( const AliTPCCalPad c)

AliTPCCalPad copy constructor

Definition at line 78 of file AliTPCCalPad.cxx.

AliTPCCalPad::AliTPCCalPad ( TObjArray arrayROC)

AliTPCCalPad default constructor

Definition at line 90 of file AliTPCCalPad.cxx.

AliTPCCalPad::~AliTPCCalPad ( )
virtual


AliTPCCalPad destructor

Definition at line 102 of file AliTPCCalPad.cxx.

Member Function Documentation

void AliTPCCalPad::Add ( const AliTPCCalPad roc,
Double_t  c1 = 1 
)

multiply AliTPCCalPad 'pad' by c1 and add each channel to the coresponing channel in all ROCs

  • pad by pad -

Definition at line 215 of file AliTPCCalPad.cxx.

void AliTPCCalPad::AddFriend ( TTree *  tree,
const char *  friendName,
const char *  fname = 0 
)

Definition at line 937 of file AliTPCCalPad.cxx.

Bool_t AliTPCCalPad::Convolute ( Double_t  sigmaPad,
Double_t  sigmaRow,
AliTPCCalPad outlierPad = 0,
TF1 *  fpad = 0,
TF1 *  frow = 0 
)

replace constent with median in the neigborhood

Definition at line 176 of file AliTPCCalPad.cxx.

void AliTPCCalPad::Copy ( TObject &  c) const
virtual

Copy function

Definition at line 126 of file AliTPCCalPad.cxx.

Referenced by operator=().

AliTPCCalPad * AliTPCCalPad::CreateCalPadFit ( const char *  fitFormula,
const TVectorD &  fitParamSideA,
const TVectorD &  fitParamSideC 
)
static
TObjArray * AliTPCCalPad::CreateFormulaArray ( const char *  fitFormula)
static

create an array of TFormulas for the each parameter of the fit function

Definition at line 545 of file AliTPCCalPad.cxx.

Referenced by CreateCalPadFit(), and GlobalSidesFit().

void AliTPCCalPad::Divide ( const AliTPCCalPad pad)

divide each channel of all ROCs by the coresponding channel of 'pad'

  • pad by pad -

Definition at line 241 of file AliTPCCalPad.cxx.

Referenced by AliTPCdataQA::Analyse().

void AliTPCCalPad::Draw ( Option_t *  option = "")
virtual

Draw function - standard 2D view

Definition at line 825 of file AliTPCCalPad.cxx.

void AliTPCCalPad::EvalFormulaArray ( const TObjArray arrFitFormulas,
TVectorD &  results,
const Int_t  sec,
const Int_t  row,
const Int_t  pad 
)
static

evaluate the fit formulas

Definition at line 573 of file AliTPCCalPad.cxx.

Referenced by CreateCalPadFit(), and GlobalSidesFit().

AliTPCCalROC* AliTPCCalPad::GetCalROC ( Int_t  sector) const
inline
Double_t AliTPCCalPad::GetLTM ( Double_t *  sigma = 0,
Double_t  fraction = 0.9,
AliTPCCalPad outlierPad = 0 
)

return mean of the LTM and sigma of all ROCs

Definition at line 385 of file AliTPCCalPad.cxx.

Referenced by MakeGraph(), and MakeHisto1D().

Double_t AliTPCCalPad::GetMean ( AliTPCCalPad outlierPad = 0)

return mean of the mean of all ROCs

Definition at line 328 of file AliTPCCalPad.cxx.

Referenced by MakeGraph(), and MakeHisto1D().

Double_t AliTPCCalPad::GetMeanRMS ( Double_t &  rms)

Calculates mean and RMS of all ROCs

Definition at line 301 of file AliTPCCalPad.cxx.

Double_t AliTPCCalPad::GetMedian ( AliTPCCalPad outlierPad = 0)
Double_t AliTPCCalPad::GetRMS ( AliTPCCalPad outlierPad = 0)

return mean of the RMS of all ROCs

Definition at line 347 of file AliTPCCalPad.cxx.

Referenced by MakeHisto1D().

AliTPCCalPad * AliTPCCalPad::GlobalFit ( const char *  padName,
AliTPCCalPad Padoutliers = 0,
Bool_t  robust = kFALSE,
Int_t  fitType = 1,
Double_t  chi2Threshold = 5,
Double_t  robustFraction = 0.7,
Double_t  err = 1,
TObjArray fitParArr = 0x0,
TObjArray fitCovArr = 0x0 
)

Loops over all AliTPCCalROCs and performs a globalFit in each ROC AliTPCCalPad with fit-data is returned chi2Threshold: Threshold for chi2 when EvalRobust is called robustFraction: Fraction of data that will be used in EvalRobust chi2Threshold: Threshold for chi2 when EvalRobust is called robustFraction: Fraction of data that will be used in EvalRobust err: error of the data points if fitParArr and/or fitCovArr is given, write fitParameters and/or covariance Matrices into the array

Definition at line 516 of file AliTPCCalPad.cxx.

Referenced by MakeRes(), and RebuildData().

void AliTPCCalPad::GlobalSidesFit ( const AliTPCCalPad PadOutliers,
const char *  fitFormula,
TVectorD &  fitParamSideA,
TVectorD &  fitParamSideC,
TMatrixD &  covMatrixSideA,
TMatrixD &  covMatrixSideC,
Float_t &  chi2SideA,
Float_t &  chi2SideC,
AliTPCCalPad pointError = 0,
Bool_t  robust = kFALSE,
Double_t  robustFraction = 0.7 
)

Performs a fit on both sides. Valid information for the fitFormula are the variables

  • gx, gy, lx ,ly: meaning global x, global y, local x, local y value of the padName
  • sector: the sector number. eg. a formula might look 'gy' or '(sector<36) ++ gy' or 'gx ++ gy' or 'gx ++ gy ++ lx ++ lx^2' and so on

PadOutliers - pads with value !=0 are not used in fitting procedure chi2Threshold: Threshold for chi2 when EvalRobust is called robustFraction: Fraction of data that will be used in EvalRobust

Definition at line 594 of file AliTPCCalPad.cxx.

Referenced by AliTPCcalibDButil::CreatePadTime0CE(), and AliTPCcalibDButil::ProcessCEdata().

AliTPCCalPad * AliTPCCalPad::LocalFit ( const char *  padName,
Int_t  rowRadius,
Int_t  padRadius,
AliTPCCalPad Padoutliers = 0,
Bool_t  robust = kFALSE,
Double_t  chi2Threshold = 5,
Double_t  robustFraction = 0.7,
Bool_t  printCurrentSector = kFALSE 
) const

Loops over all AliTPCCalROCs and performs a localFit in each ROC AliTPCCalPad with fit-data is returned rowRadius and padRadius specifies a window around a given pad in one sector. The data of this window are fitted with a parabolic function. This function is evaluated at the pad's position. At the edges the window is shifted, so that the specified pad is not anymore in the center of the window. rowRadius - radius - rows to be used for smoothing padradius - radius - pads to be used for smoothing ROCoutlier - map of outliers - pads not to be used for local smoothing robust - robust method of fitting - (much slower) chi2Threshold: Threshold for chi2 when EvalRobust is called robustFraction: Fraction of data that will be used in EvalRobust

Definition at line 490 of file AliTPCCalPad.cxx.

Bool_t AliTPCCalPad::LTMFilter ( Int_t  deltaRow,
Int_t  deltaPad,
Float_t  fraction,
Int_t  type,
AliTPCCalPad outlierPad = 0,
Bool_t  doEdge = kTRUE 
)

replace constent with LTM statistic in neigborhood

Definition at line 163 of file AliTPCCalPad.cxx.

Referenced by UnitTestAliTPCCalPadTree().

AliTPCCalPad * AliTPCCalPad::MakeCalPadFromHistoRPHI ( TH2 *  hisA,
TH2 *  hisC 
)
static

Make cal pad from r-phi histograms

Definition at line 874 of file AliTPCCalPad.cxx.

TGraph * AliTPCCalPad::MakeGraph ( Int_t  type = 0,
Float_t  ratio = 0.7 
)

type=1 - mean 2 - median 3 - LTM

Definition at line 266 of file AliTPCCalPad.cxx.

TH1F * AliTPCCalPad::MakeHisto1D ( Float_t  min = 4,
Float_t  max = -4,
Int_t  type = 0,
Int_t  side = 0 
)

make 1D histo type -1 = user defined range 0 = nsigma cut nsigma=min

Definition at line 409 of file AliTPCCalPad.cxx.

Referenced by Draw().

TH2F * AliTPCCalPad::MakeHisto2D ( Int_t  side = 0)

Make 2D graph side - specify the side A = 0 C = 1 type - used types of determination of boundaries in z

Definition at line 459 of file AliTPCCalPad.cxx.

Referenced by CreateGainMap(), Draw(), and testRawReaderFastTPC().

AliTPCCalPad * AliTPCCalPad::MakePadFromTree ( TTree *  tree,
const char *  query,
const char *  name = 0,
Bool_t  doFast = kFALSE 
)
static

make cal pad from the tree

Definition at line 899 of file AliTPCCalPad.cxx.

Referenced by UnitTestAliTPCCalPadTree().

TCanvas * AliTPCCalPad::MakeReportPadSector ( TTree *  chain,
const char *  varName,
const char *  varTitle,
const char *  axisTitle,
Float_t  min,
Float_t  max,
const char *  cutUser = "" 
)
static

Make a report - cal pads per sector mean valeus per sector and local X

Definition at line 708 of file AliTPCCalPad.cxx.

TCanvas * AliTPCCalPad::MakeReportPadSector2D ( TTree *  chain,
const char *  varName,
const char *  varTitle,
const char *  axisTitle,
Float_t  min,
Float_t  max,
const char *  cutUser = "" 
)
static

Make a report - cal pads per sector 2D view Input tree should be created using AliPreprocesorOnline before

Definition at line 778 of file AliTPCCalPad.cxx.

Bool_t AliTPCCalPad::MedianFilter ( Int_t  deltaRow,
Int_t  deltaPad,
AliTPCCalPad outlierPad = 0,
Bool_t  doEdge = kTRUE 
)

replace constent with median in the neigborhood

Definition at line 150 of file AliTPCCalPad.cxx.

Referenced by UnitTestAliTPCCalPadTree().

void AliTPCCalPad::Multiply ( Float_t  c1)

multiply each channel of all ROCs with c1

Definition at line 203 of file AliTPCCalPad.cxx.

Referenced by AliTPCdataQA::Analyse(), and AliTPCcalibDButil::PulserOutlierMap().

void AliTPCCalPad::Multiply ( const AliTPCCalPad pad)

multiply each channel of all ROCs with the coresponding channel of 'pad'

  • pad by pad -

Definition at line 228 of file AliTPCCalPad.cxx.

AliTPCCalPad & AliTPCCalPad::operator= ( const AliTPCCalPad c)

Assignment operator

Definition at line 116 of file AliTPCCalPad.cxx.

void AliTPCCalPad::Reset ( void  )

Reset all cal Rocs

Definition at line 254 of file AliTPCCalPad.cxx.

Referenced by AliTPCdataQA::ResetData().

void AliTPCCalPad::SetCalROC ( AliTPCCalROC roc,
Int_t  sector = -1 
)

Set AliTPCCalROC copies values from 'roc' if sector == -1 the sector specified in 'roc' is used else sector specified in 'roc' is ignored and specified sector is filled

Definition at line 139 of file AliTPCCalPad.cxx.

Referenced by AliTPCPreprocessorOnline::AddComponent(), AliTPCPreprocessor::ExtractAltro(), AliTPCPreprocessor::ExtractCE(), AliTPCPreprocessor::ExtractPedestals(), AliTPCPreprocessor::ExtractPulser(), GlobalFit(), and LocalFit().

Member Data Documentation

AliTPCCalROC* AliTPCCalPad::fROC[kNsec]
protected

The documentation for this class was generated from the following files: