![]() |
AliRoot Core
3dc7879 (3dc7879)
|
#include <AliTPCCalPad.h>
Public Types | |
enum | { kNsec = 72, kNsecSplit = 108 } |
Public Member Functions | |
AliTPCCalPad () | |
AliTPCCalPad (const Text_t *name, const Text_t *title) | |
AliTPCCalPad (const AliTPCCalPad &c) | |
AliTPCCalPad (TObjArray *arrayROC) | |
virtual | ~AliTPCCalPad () |
More... | |
AliTPCCalPad & | operator= (const AliTPCCalPad &c) |
virtual void | Copy (TObject &c) const |
virtual void | Print (Option_t *option="") const |
AliTPCCalROC * | GetCalROC (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) const |
Double_t | GetStats (AliTPCCalROC::EStatType statType, AliTPCCalPad *const outlierPad=0, AliTPCCalROC::EPadType padType=AliTPCCalROC::kAll) const |
Double_t | GetMean (AliTPCCalPad *outlierPad=0, AliTPCCalROC::EPadType padType=AliTPCCalROC::kAll) const |
Double_t | GetRMS (AliTPCCalPad *outlierPad=0, AliTPCCalROC::EPadType padType=AliTPCCalROC::kAll) const |
Double_t | GetMedian (AliTPCCalPad *outlierPad=0, AliTPCCalROC::EPadType padType=AliTPCCalROC::kAll) const |
Double_t | GetMinElement (AliTPCCalPad *outlierPad=0, AliTPCCalROC::EPadType padType=AliTPCCalROC::kAll) const |
Double_t | GetMaxElement (AliTPCCalPad *outlierPad=0, AliTPCCalROC::EPadType padType=AliTPCCalROC::kAll) const |
Double_t | GetLTM (Double_t *sigma=0, Double_t fraction=0.9, AliTPCCalPad *outlierPad=0, AliTPCCalROC::EPadType epadType=AliTPCCalROC::kAll) const |
TGraph * | MakeGraph (Int_t type=0, Float_t ratio=0.7, AliTPCCalROC::EPadType padType=AliTPCCalROC::kAll) |
TH2F * | MakeHisto2D (Int_t side=0) |
TH1F * | MakeHisto1D (Float_t min=4, Float_t max=-4, Int_t type=0, Int_t side=0) |
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 |
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, AliTPCCalROC::EPadType padType=AliTPCCalROC::kAll) |
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) |
void | DumpUnitTestTrees (const TString fileName="") |
Static Public Member Functions | |
static AliTPCCalPad * | MakePadFromTree (TTree *tree, const char *query, const char *name=0, Bool_t doFast=kFALSE) |
static AliTPCCalPad * | CreateCalPadFit (const char *fitFormula, const TVectorD &fitParamSideA, const TVectorD &fitParamSideC) |
static TObjArray * | CreateFormulaArray (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 AliTPCCalPad * | MakeCalPadFromHistoRPHI (TH2 *hisA, TH2 *hisC) |
Protected Attributes | |
AliTPCCalROC * | fROC [kNsec] |
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 27 of file AliTPCCalPad.h.
anonymous enum |
Enumerator | |
---|---|
kNsec | |
kNsecSplit |
Definition at line 29 of file AliTPCCalPad.h.
AliTPCCalPad::AliTPCCalPad | ( | ) |
Definition at line 56 of file AliTPCCalPad.cxx.
Referenced by CreateCalPadFit(), GlobalFit(), LocalFit(), MakeCalPadFromHistoRPHI(), and MakePadFromTree().
AliTPCCalPad::AliTPCCalPad | ( | const Text_t * | name, |
const Text_t * | title | ||
) |
AliTPCCalPad constructor
Definition at line 69 of file AliTPCCalPad.cxx.
AliTPCCalPad::AliTPCCalPad | ( | const AliTPCCalPad & | c | ) |
AliTPCCalPad copy constructor
Definition at line 81 of file AliTPCCalPad.cxx.
AliTPCCalPad::AliTPCCalPad | ( | TObjArray * | arrayROC | ) |
AliTPCCalPad default constructor
Definition at line 93 of file AliTPCCalPad.cxx.
|
virtual |
void AliTPCCalPad::Add | ( | Float_t | c1 | ) |
add constant c1 to all channels of all ROCs
Definition at line 214 of file AliTPCCalPad.cxx.
Referenced by AliTPCPreprocessorOnline::AddComponent(), AliTPCCalibViewer::CreateObjectList(), AliTPCcalibDB::CreateObjectList(), AliTPCcalibDButil::CreatePadTime0(), AliTPCcalibDButil::CreatePadTime0CE(), AliTPCCalibViewer::GetArrayOfCalPads(), GetCalROC(), MakeRes(), AliTPCdataQA::Merge(), and testRawReaderFastTPC().
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
Definition at line 238 of file AliTPCCalPad.cxx.
void AliTPCCalPad::AddFriend | ( | TTree * | tree, |
const char * | friendName, | ||
const char * | fname = 0 |
||
) |
Definition at line 1038 of file AliTPCCalPad.cxx.
Referenced by GetCalROC().
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 199 of file AliTPCCalPad.cxx.
Referenced by GetCalROC().
|
virtual |
|
static |
Definition at line 771 of file AliTPCCalPad.cxx.
Referenced by AliTPCcalibDButil::CreatePadTime0(), AliTPCcalibDButil::CreatePadTime0CE(), and GetCalROC().
|
static |
create an array of TFormulas for the each parameter of the fit function
Definition at line 646 of file AliTPCCalPad.cxx.
Referenced by CreateCalPadFit(), GetCalROC(), and GlobalSidesFit().
void AliTPCCalPad::Divide | ( | const AliTPCCalPad * | pad | ) |
divide each channel of all ROCs by the coresponding channel of 'pad'
Definition at line 264 of file AliTPCCalPad.cxx.
Referenced by AliTPCdataQA::Analyse(), and GetCalROC().
|
virtual |
Draw function - standard 2D view
Definition at line 926 of file AliTPCCalPad.cxx.
Referenced by GetCalROC().
void AliTPCCalPad::DumpUnitTestTrees | ( | const TString | fileName = "" | ) |
Dump a unit test tree with most derived variables If filename is empty, then the "<ClassName>_UnitTest.root" is used
Definition at line 1052 of file AliTPCCalPad.cxx.
Referenced by GetCalROC().
|
static |
evaluate the fit formulas
Definition at line 674 of file AliTPCCalPad.cxx.
Referenced by CreateCalPadFit(), GetCalROC(), and GlobalSidesFit().
|
inline |
Definition at line 39 of file AliTPCCalPad.h.
Referenced by Add(), Convolute(), CreateCalPadFit(), AliTPCcalibDButil::CreateCEOutlyerMap(), CreateGainMap(), CreatePadObject(), AliTPCcalibDButil::CreatePadTime0(), AliTPCcalibDButil::CreatePadTime0CE(), AliTPCcalibDButil::CreatePulserOutlyerMap(), Divide(), AliTPCPreprocessor::ExtractAltro(), AliTPCPreprocessor::ExtractPedestals(), AliTPCPreprocessor::ExtractPulser(), AliTPCdataQA::FindLocalMaxima(), AliTPCCalibPulser::FindPedestal(), AliTPCCalibCE::FindPedestal(), AliTPCCalibPulser::FindPulserSignal(), AliTPCCalibViewer::GetCalPad(), AliTPCCalibViewer::GetCalPadOld(), AliTPCcalibDB::GetGain(), GetLTM(), GetStats(), GlobalFit(), GlobalSidesFit(), AliTPCcalibDB::InitAltroData(), AliTPCcalibDB::InitDeadMap(), LocalFit(), LTMFilter(), MakeCalPadFromHistoRPHI(), AliTPCcalibDB::MakeDeadMap(), MakePadFromTree(), MakeRes(), AliTPCCalibViewer::MakeTree(), AliTPCcalibDB::MakeTree(), AliTPCCalibViewer::MakeTreeWithObjects(), MedianFilter(), Multiply(), AliTPCcalibDButil::ProcessALTROConfig(), AliTPCcalibDButil::ProcessCEdata(), AliTPCcalibDButil::ProcessNoiseData(), AliTPCcalibDButil::ProcessNoiseVariations(), AliTPCcalibDButil::ProcessPedestalVariations(), AliTPCcalibDButil::ProcessPulser(), AliTPCcalibDButil::ProcessPulserVariations(), AliTPCcalibDButil::ProcessQAData(), AliTPCcalibDButil::PulserOutlierMap(), RebuildData(), testRawReaderFastTPC(), AliTPCTransform::Transform(), and AliTPCdataQA::Update().
Double_t AliTPCCalPad::GetLTM | ( | Double_t * | sigma = 0 , |
Double_t | fraction = 0.9 , |
||
AliTPCCalPad * | outlierPad = 0 , |
||
AliTPCCalROC::EPadType | epadType = AliTPCCalROC::kAll |
||
) | const |
return mean of the LTM and sigma of all ROCs
Definition at line 451 of file AliTPCCalPad.cxx.
Referenced by DumpUnitTestTrees(), GetCalROC(), MakeGraph(), and MakeHisto1D().
Double_t AliTPCCalPad::GetMaxElement | ( | AliTPCCalPad * | outlierPad = 0 , |
AliTPCCalROC::EPadType | padType = AliTPCCalROC::kAll |
||
) | const |
return MaxElement of all ROCs
Definition at line 443 of file AliTPCCalPad.cxx.
Referenced by DumpUnitTestTrees(), and GetCalROC().
Double_t AliTPCCalPad::GetMean | ( | AliTPCCalPad * | outlierPad = 0 , |
AliTPCCalROC::EPadType | padType = AliTPCCalROC::kAll |
||
) | const |
return mean of the mean of all ROCs
Definition at line 411 of file AliTPCCalPad.cxx.
Referenced by DumpUnitTestTrees(), GetCalROC(), MakeGraph(), MakeHisto1D(), and Print().
Double_t AliTPCCalPad::GetMeanRMS | ( | Double_t & | rms | ) | const |
Calculates mean and RMS of all ROCs
Definition at line 352 of file AliTPCCalPad.cxx.
Referenced by GetCalROC().
Double_t AliTPCCalPad::GetMedian | ( | AliTPCCalPad * | outlierPad = 0 , |
AliTPCCalROC::EPadType | padType = AliTPCCalROC::kAll |
||
) | const |
return mean of the median of all ROCs
Definition at line 427 of file AliTPCCalPad.cxx.
Referenced by AliTPCcalibDButil::CreateCEOutlyerMap(), AliTPCcalibDButil::CreatePadTime0(), AliTPCcalibDButil::CreatePadTime0CE(), DumpUnitTestTrees(), GetCalROC(), MakeGraph(), MakeHisto1D(), MakeRes(), and Print().
Double_t AliTPCCalPad::GetMinElement | ( | AliTPCCalPad * | outlierPad = 0 , |
AliTPCCalROC::EPadType | padType = AliTPCCalROC::kAll |
||
) | const |
return MinElement all ROCs
Definition at line 435 of file AliTPCCalPad.cxx.
Referenced by DumpUnitTestTrees(), and GetCalROC().
Double_t AliTPCCalPad::GetRMS | ( | AliTPCCalPad * | outlierPad = 0 , |
AliTPCCalROC::EPadType | padType = AliTPCCalROC::kAll |
||
) | const |
return mean of the RMS of all ROCs
Definition at line 419 of file AliTPCCalPad.cxx.
Referenced by DumpUnitTestTrees(), GetCalROC(), MakeHisto1D(), and Print().
Double_t AliTPCCalPad::GetStats | ( | AliTPCCalROC::EStatType | statType, |
AliTPCCalPad *const | outlierPad = 0 , |
||
AliTPCCalROC::EPadType | padType = AliTPCCalROC::kAll |
||
) | const |
return mean of statType(kMean,kMedian,kRMS) for padType(kAll,kOROCmedium,kOROClong)
Definition at line 378 of file AliTPCCalPad.cxx.
Referenced by GetCalROC(), GetMaxElement(), GetMean(), GetMedian(), GetMinElement(), and GetRMS().
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 , |
||
AliTPCCalROC::EPadType | padType = AliTPCCalROC::kAll |
||
) |
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 padType shows whether full oroc or splited oroc is taken into account
Definition at line 591 of file AliTPCCalPad.cxx.
Referenced by DumpUnitTestTrees(), GetCalROC(), 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
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 695 of file AliTPCCalPad.cxx.
Referenced by AliTPCcalibDButil::CreatePadTime0CE(), GetCalROC(), 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 565 of file AliTPCCalPad.cxx.
Referenced by DumpUnitTestTrees(), and GetCalROC().
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 186 of file AliTPCCalPad.cxx.
Referenced by GetCalROC(), and UnitTestAliTPCCalPadTree().
|
static |
Make cal pad from r-phi histograms
Definition at line 975 of file AliTPCCalPad.cxx.
Referenced by GetCalROC().
TGraph * AliTPCCalPad::MakeGraph | ( | Int_t | type = 0 , |
Float_t | ratio = 0.7 , |
||
AliTPCCalROC::EPadType | padType = AliTPCCalROC::kAll |
||
) |
type=1 - mean 2 - median 3 - LTM padType = AliTPCCalROC::kAll full oroc sectors kOROCmedium,kOROClong split oroc sector
Definition at line 289 of file AliTPCCalPad.cxx.
Referenced by GetCalROC().
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 484 of file AliTPCCalPad.cxx.
Referenced by Draw(), and GetCalROC().
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 534 of file AliTPCCalPad.cxx.
Referenced by CreateGainMap(), Draw(), GetCalROC(), and testRawReaderFastTPC().
|
static |
make cal pad from the tree
Definition at line 1000 of file AliTPCCalPad.cxx.
Referenced by GetCalROC(), and UnitTestAliTPCCalPadTree().
|
static |
Make a report - cal pads per sector mean valeus per sector and local X
Definition at line 809 of file AliTPCCalPad.cxx.
Referenced by GetCalROC().
|
static |
Make a report - cal pads per sector 2D view Input tree should be created using AliPreprocesorOnline before
Definition at line 879 of file AliTPCCalPad.cxx.
Referenced by GetCalROC().
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 173 of file AliTPCCalPad.cxx.
Referenced by GetCalROC(), and UnitTestAliTPCCalPadTree().
void AliTPCCalPad::Multiply | ( | Float_t | c1 | ) |
multiply each channel of all ROCs with c1
Definition at line 226 of file AliTPCCalPad.cxx.
Referenced by AliTPCdataQA::Analyse(), GetCalROC(), AliTPCdataQA::Init(), and AliTPCcalibDButil::PulserOutlierMap().
void AliTPCCalPad::Multiply | ( | const AliTPCCalPad * | pad | ) |
multiply each channel of all ROCs with the coresponding channel of 'pad'
Definition at line 251 of file AliTPCCalPad.cxx.
AliTPCCalPad & AliTPCCalPad::operator= | ( | const AliTPCCalPad & | c | ) |
Assignment operator
Definition at line 119 of file AliTPCCalPad.cxx.
|
virtual |
Print summary content
option | - differnt level supported - used in the OCDB print |
Definition at line 142 of file AliTPCCalPad.cxx.
Referenced by AliTPCPreprocessorOnline::DumpToFile().
void AliTPCCalPad::Reset | ( | void | ) |
Reset all cal Rocs
Definition at line 277 of file AliTPCCalPad.cxx.
Referenced by GetCalROC(), and 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 162 of file AliTPCCalPad.cxx.
Referenced by AliTPCPreprocessorOnline::AddComponent(), AliTPCPreprocessor::ExtractAltro(), AliTPCPreprocessor::ExtractCE(), AliTPCPreprocessor::ExtractPedestals(), AliTPCPreprocessor::ExtractPulser(), GetCalROC(), GlobalFit(), and LocalFit().
|
protected |
Array of ROC objects which contain the values per pad
Definition at line 94 of file AliTPCCalPad.h.
Referenced by Add(), AliTPCCalPad(), Convolute(), Copy(), Divide(), GetCalROC(), GetLTM(), GetMeanRMS(), GetStats(), LTMFilter(), MakeGraph(), MakeHisto1D(), MakeHisto2D(), MedianFilter(), Multiply(), Print(), Reset(), SetCalROC(), and ~AliTPCCalPad().