![]() |
AliPhysics
a4b41ad (a4b41ad)
|
Output for Trig chamber effieincy. More...
#include <AliMTRChEffAnalysis.h>
Classes | |
class | AliMTRChEffInnerObj |
Public Member Functions | |
AliMTRChEffAnalysis () | |
AliMTRChEffAnalysis (const char *localFileList, const char *outputName="testMTRChamberEff") | |
TArrayI | GetHomogeneousRanges (Double_t chi2Cut=3, Int_t maxNRanges=4, Double_t minEffVariation=0.005, Bool_t perRPC=kTRUE, TArrayI *forcedChanges=0x0, Double_t minEff=0.85, Double_t maxEff=1.01) |
TArrayI | GetHomogeneousRanges (TGraphAsymmErrors *trendGraph, Double_t chi2Cut=3, Int_t maxNRanges=4, Double_t minEffVariation=0.005, TArrayI *forcedChanges=0x0, Bool_t returnIndex=kFALSE) |
void | DrawEffTrend (Int_t itype, Int_t irpc, Double_t maxNsigmasOutliers=-1., Double_t minEff=0.8, Double_t maxEff=1.01) const |
void | DrawStatContribution (Int_t itype, Int_t irpc, Double_t maxNsigmaOutliers=-1., Double_t minY=0., Double_t maxY=0.15) const |
Double_t | GetAverageStat (Int_t firstRun, Int_t lastRun, Int_t itype=AliTrigChEffOutput::kHboardEff, Bool_t excludePeriphericBoards=kTRUE) const |
TGraphAsymmErrors * | GetOutliers (TGraphAsymmErrors *graph, Double_t maxNsigmas=3.) const |
TH1 * | GetTrend (Int_t itype, Int_t icount, Int_t ichamber, Int_t idetelem) const |
TGraphAsymmErrors * | GetTrendEff (Int_t itype, Int_t icount, Int_t ichamber, Int_t idetelem) const |
Int_t | CompareEfficiencies (const char *sources, const char *titles, const char *opt, const char *canvasNameSuffix="") const |
Int_t | CompareEfficiencyMethods (const char *source, const char *opt, const char *canvasNameSuffix="") const |
void | CompareMergedEfficiencies (const char *opt) const |
Int_t | ComputeAndCompareEfficiencies (const char *sources, const char *titles, const char *opt, const char *canvasNameSuffix="") const |
Bool_t | AddSystematicCondition (const char *physSel, const char *trigClassName, const char *centrality, Int_t itrackSel, Int_t imatch, Int_t imethod) |
Bool_t | SetDefaultEffConditions () |
Bool_t | SetEffConditions (const char *physSel, const char *trigClassName, const char *centrality, Int_t itrackSel, Int_t imatch, Int_t imethod) |
Bool_t | MergeOutput (TArrayI runRanges, Double_t averageStatError=0.01, Bool_t isIndex=kFALSE) |
Bool_t | SetResultsFromGrid (const char *runList, const char *path, const char *pattern, const char *localFileList="localFileList.txt", const char *outDir="", const char *directory="MTR_ChamberEffMap", const char *outputName="testMTRChamberEff") |
Bool_t | SetResultsFromWeb (const char *runList, const char *path, const char *localFileList="localFileList.txt", const char *outDir="", const char *directory="MTR_ChamberEffMap", const char *outputName="testMTRChamberEff") |
Bool_t | WriteMergedToOCDB (const char *outputCDB="CDB", Bool_t writeSystematics=kFALSE) const |
Bool_t | DrawSystematicEnvelope (Bool_t perRPC=kFALSE) const |
Bool_t | BuildSystematicMap () |
Bool_t | RecoverEfficiency (const char *runList, const char *ocdb, const char *systOcdb, Int_t referenceRun=-1) |
virtual | ~AliMTRChEffAnalysis () |
Private Member Functions | |
Bool_t | AddToList (const char *filename, const char *outputName) |
TArrayI | BoardsInRPC (Int_t irpc) const |
void | CopyDir (TDirectory *source) const |
Bool_t | CopyLocally (const char *runList, const char *path, const char *pattern, const char *localFileList, const char *outDir, const char *directory) const |
Int_t | CompareEfficiencies (TObjArray *effHistoLists, const char *titles, const char *opt, const char *canvasNameSuffix) const |
TList * | CloneEffHistoList (TList *effHistos) const |
Bool_t | ExecCommand (TString command, Bool_t prompt) const |
Double_t | FitRangesFunc (Double_t *x, Double_t *par) |
Double_t | GetError (Double_t errLow, Double_t errHigh) const |
TList * | GetEffHistoList (AliTrigChEffOutput *trigOut, TObjArray *condition) const |
TH1 * | GetHisto (TList *effHistoList, Int_t itype, Int_t icount, Int_t ichamber) const |
Int_t | GetIndexFromRun (Int_t runNumber) const |
Int_t | GetRunNumber (Int_t ipt) const |
TList * | GetRunList (const char *runList) const |
TString | GetId (const char *condition, Int_t minRun, Int_t maxRun=-1) const |
TString | GetShortConditionTitle (const char *conditionName) const |
AliTrigChEffOutput * | Namer () const |
TH1 * | GetSum (AliTrigChEffOutput *trigOut, TObjArray *condition, Int_t itype, Int_t icount, Int_t ichamber) const |
Double_t | GetThreeOfFour (TArrayD eff, TArrayD effErr, Double_t &probErr) const |
Bool_t | HasMergedResults () const |
TArrayI | MergeRangesForStat (TArrayI runRanges, Double_t averageStatError, Bool_t excludePeriphericBoards=kTRUE) const |
TList * | ReadEffHistoList (const char *src) const |
Bool_t | SetCondition (const char *physSel, const char *trigClassName, const char *centrality, Int_t itrackSel, Int_t imatch, Int_t imethod, Bool_t isBasic) |
Bool_t | SetOutList (const char *localFileList, const char *outputName) |
AliMTRChEffAnalysis (const AliMTRChEffAnalysis &) | |
Dummy. More... | |
AliMTRChEffAnalysis & | operator= (const AliMTRChEffAnalysis &) |
Dummy. More... | |
Private Attributes | |
TObjArray * | fConditions |
! List of conditions for trigger efficiency More... | |
AliTrigChEffOutput * | fNamer |
! Namer for histograms More... | |
std::vector < AliMTRChEffAnalysis::AliMTRChEffInnerObj * > | fRunMap |
! Map of internal objects per run More... | |
std::vector < AliMTRChEffAnalysis::AliMTRChEffInnerObj * > | fMergedMap |
! Map of merged internal objects More... | |
Output for Trig chamber effieincy.
The class manipulates the output of AliAnalysisTaskTrigChEff in order to build the trigger chamber efficiency object to be plugged in the OCDB for simulations
Definition at line 29 of file AliMTRChEffAnalysis.h.
AliMTRChEffAnalysis::AliMTRChEffAnalysis | ( | ) |
Default Ctor.
Definition at line 72 of file AliMTRChEffAnalysis.cxx.
AliMTRChEffAnalysis::AliMTRChEffAnalysis | ( | const char * | localFileList, |
const char * | outputName = "testMTRChamberEff" |
||
) |
Ctor.
Definition at line 82 of file AliMTRChEffAnalysis.cxx.
|
virtual |
Destructor
Definition at line 92 of file AliMTRChEffAnalysis.cxx.
|
private |
Dummy.
Bool_t AliMTRChEffAnalysis::AddSystematicCondition | ( | const char * | physSel, |
const char * | trigClassName, | ||
const char * | centrality, | ||
Int_t | itrackSel, | ||
Int_t | imatch, | ||
Int_t | imethod | ||
) |
Add conditions for the systematic uncertainty estimation
Definition at line 104 of file AliMTRChEffAnalysis.cxx.
|
private |
Add to output list
Definition at line 111 of file AliMTRChEffAnalysis.cxx.
Referenced by SetCondition(), and SetOutList().
Return boards contained in the specified RPC
Definition at line 147 of file AliMTRChEffAnalysis.cxx.
Referenced by DrawEffTrend(), DrawStatContribution(), and GetHomogeneousRanges().
Bool_t AliMTRChEffAnalysis::BuildSystematicMap | ( | ) |
Get systematic envelop for merged efficiencies
Definition at line 237 of file AliMTRChEffAnalysis.cxx.
Clone efficinecy histo list
Definition at line 223 of file AliMTRChEffAnalysis.cxx.
Referenced by BuildSystematicMap(), ReadEffHistoList(), RecoverEfficiency(), and WriteMergedToOCDB().
Int_t AliMTRChEffAnalysis::CompareEfficiencies | ( | const char * | sources, |
const char * | titles, | ||
const char * | opt, | ||
const char * | canvasNameSuffix = "" |
||
) | const |
Compare efficiency objects
Definition at line 343 of file AliMTRChEffAnalysis.cxx.
Referenced by CompareEfficiencyMethods(), CompareMergedEfficiencies(), ComputeAndCompareEfficiencies(), and DrawSystematicEnvelope().
|
private |
Compare efficiency objects
Definition at line 367 of file AliMTRChEffAnalysis.cxx.
Int_t AliMTRChEffAnalysis::CompareEfficiencyMethods | ( | const char * | source, |
const char * | opt, | ||
const char * | canvasNameSuffix = "" |
||
) | const |
Compare efficiency methods
Definition at line 492 of file AliMTRChEffAnalysis.cxx.
void AliMTRChEffAnalysis::CompareMergedEfficiencies | ( | const char * | opt | ) | const |
Definition at line 523 of file AliMTRChEffAnalysis.cxx.
Int_t AliMTRChEffAnalysis::ComputeAndCompareEfficiencies | ( | const char * | sources, |
const char * | titles, | ||
const char * | opt, | ||
const char * | canvasNameSuffix = "" |
||
) | const |
Copute the efficiency for the selected condition and compare them
Definition at line 549 of file AliMTRChEffAnalysis.cxx.
|
private |
copy all objects and subdirs of directory source as a subdir of the current directory
Definition at line 618 of file AliMTRChEffAnalysis.cxx.
Referenced by CopyLocally().
|
private |
Copy files from QA repository or from grid
Definition at line 656 of file AliMTRChEffAnalysis.cxx.
Referenced by SetResultsFromGrid(), and SetResultsFromWeb().
void AliMTRChEffAnalysis::DrawEffTrend | ( | Int_t | itype, |
Int_t | irpc, | ||
Double_t | maxNsigmasOutliers = -1. , |
||
Double_t | minEff = 0.8 , |
||
Double_t | maxEff = 1.01 |
||
) | const |
Draw trenidng
Definition at line 768 of file AliMTRChEffAnalysis.cxx.
void AliMTRChEffAnalysis::DrawStatContribution | ( | Int_t | itype, |
Int_t | irpc, | ||
Double_t | maxNsigmaOutliers = -1. , |
||
Double_t | minY = 0. , |
||
Double_t | maxY = 0.15 |
||
) | const |
Draw statistical contribution of the element efficiency
Definition at line 847 of file AliMTRChEffAnalysis.cxx.
Get systematic envelop for merged efficiencies
Definition at line 929 of file AliMTRChEffAnalysis.cxx.
Execute command
Definition at line 1106 of file AliMTRChEffAnalysis.cxx.
Referenced by CopyLocally(), and WriteMergedToOCDB().
Function with multiple constant fixes Parameters are: [0] = number of break points dividing 2 sub ranges [1] = value of efficiency in the first (or only) subrange [2*ipar] (for ipar>=1) = position in x where efficiency value can change [2*ipar+1] = value of efficiency in the subrange above [2*ipar]
Definition at line 1129 of file AliMTRChEffAnalysis.cxx.
Referenced by GetHomogeneousRanges().
Double_t AliMTRChEffAnalysis::GetAverageStat | ( | Int_t | firstRun, |
Int_t | lastRun, | ||
Int_t | itype = AliTrigChEffOutput::kHboardEff , |
||
Bool_t | excludePeriphericBoards = kTRUE |
||
) | const |
Get the average statistics per local board in the specified run range
Definition at line 1157 of file AliMTRChEffAnalysis.cxx.
Referenced by MergeRangesForStat().
|
private |
Get the list of objects for the efficiency calculation
Definition at line 1206 of file AliMTRChEffAnalysis.cxx.
Referenced by AddToList(), CompareEfficiencyMethods(), ComputeAndCompareEfficiencies(), and MergeOutput().
Get error from the asymmetric error on efficiency
Definition at line 1217 of file AliMTRChEffAnalysis.cxx.
Referenced by CompareEfficiencies(), and DrawSystematicEnvelope().
|
private |
Get histogram
Definition at line 1224 of file AliMTRChEffAnalysis.cxx.
Referenced by GetAverageStat(), and GetTrend().
TArrayI AliMTRChEffAnalysis::GetHomogeneousRanges | ( | Double_t | chi2Cut = 3 , |
Int_t | maxNRanges = 4 , |
||
Double_t | minEffVariation = 0.005 , |
||
Bool_t | perRPC = kTRUE , |
||
TArrayI * | forcedChanges = 0x0 , |
||
Double_t | minEff = 0.85 , |
||
Double_t | maxEff = 1.01 |
||
) |
Get run ranges with an efficiency compatible with constant
Definition at line 1232 of file AliMTRChEffAnalysis.cxx.
TArrayI AliMTRChEffAnalysis::GetHomogeneousRanges | ( | TGraphAsymmErrors * | trendGraph, |
Double_t | chi2Cut = 3 , |
||
Int_t | maxNRanges = 4 , |
||
Double_t | minEffVariation = 0.005 , |
||
TArrayI * | forcedChanges = 0x0 , |
||
Bool_t | returnIndex = kFALSE |
||
) |
Get run ranges with an efficiency compatible with constant
Definition at line 1378 of file AliMTRChEffAnalysis.cxx.
|
private |
Get identifier for object in internal map
Definition at line 1496 of file AliMTRChEffAnalysis.cxx.
Get index from run number
Definition at line 1504 of file AliMTRChEffAnalysis.cxx.
Referenced by AddToList(), and GetHomogeneousRanges().
TGraphAsymmErrors * AliMTRChEffAnalysis::GetOutliers | ( | TGraphAsymmErrors * | graph, |
Double_t | maxNsigmas = 3. |
||
) | const |
Get outliers
Definition at line 1517 of file AliMTRChEffAnalysis.cxx.
Referenced by DrawEffTrend(), and DrawStatContribution().
|
private |
Get run number in string
Definition at line 1550 of file AliMTRChEffAnalysis.cxx.
Referenced by CopyLocally(), and RecoverEfficiency().
Get run number from graph
Definition at line 1542 of file AliMTRChEffAnalysis.cxx.
Referenced by GetHomogeneousRanges(), and MergeOutput().
|
private |
Get short condition title
Definition at line 1581 of file AliMTRChEffAnalysis.cxx.
Referenced by CompareEfficiencyMethods(), and DrawSystematicEnvelope().
|
private |
Get sum histogram
Definition at line 1609 of file AliMTRChEffAnalysis.cxx.
|
private |
Get probability of firing 3 chambers out of 4
Definition at line 1680 of file AliMTRChEffAnalysis.cxx.
Referenced by DrawSystematicEnvelope().
TH1 * AliMTRChEffAnalysis::GetTrend | ( | Int_t | itype, |
Int_t | icount, | ||
Int_t | ichamber, | ||
Int_t | idetelem | ||
) | const |
Get trending histogram
Definition at line 1620 of file AliMTRChEffAnalysis.cxx.
Referenced by DrawStatContribution(), and GetTrendEff().
TGraphAsymmErrors * AliMTRChEffAnalysis::GetTrendEff | ( | Int_t | itype, |
Int_t | icount, | ||
Int_t | ichamber, | ||
Int_t | idetelem | ||
) | const |
Get trending histogram
Definition at line 1655 of file AliMTRChEffAnalysis.cxx.
Referenced by DrawEffTrend(), and GetHomogeneousRanges().
|
private |
Check if merged results are present
Definition at line 1702 of file AliMTRChEffAnalysis.cxx.
Referenced by BuildSystematicMap(), CompareMergedEfficiencies(), DrawSystematicEnvelope(), RecoverEfficiency(), and WriteMergedToOCDB().
Bool_t AliMTRChEffAnalysis::MergeOutput | ( | TArrayI | runRanges, |
Double_t | averageStatError = 0.01 , |
||
Bool_t | isIndex = kFALSE |
||
) |
Merge efficiency output
Definition at line 1713 of file AliMTRChEffAnalysis.cxx.
|
private |
Definition at line 1776 of file AliMTRChEffAnalysis.cxx.
Referenced by MergeOutput().
|
private |
Get histo namer
Definition at line 1824 of file AliMTRChEffAnalysis.cxx.
Referenced by BuildSystematicMap(), CompareEfficiencies(), DrawSystematicEnvelope(), RecoverEfficiency(), and SetCondition().
|
private |
Dummy.
|
private |
Read efficiency map from OCDB or from file
Definition at line 1837 of file AliMTRChEffAnalysis.cxx.
Referenced by CompareEfficiencies(), and RecoverEfficiency().
Bool_t AliMTRChEffAnalysis::RecoverEfficiency | ( | const char * | runList, |
const char * | ocdb, | ||
const char * | systOcdb, | ||
Int_t | referenceRun = -1 |
||
) |
Search for chambers with unknown efficiencies (this happens when one local board is dead) and attribute the efficiency measured in the past In particular, the efficiency of the run referenceRun will be used. If this vaue is negative, then the last run in the runList will be used for the new efficiency Include the fluctuation of efficiency over the specified run list as an additional systematic uncertainty
Definition at line 1883 of file AliMTRChEffAnalysis.cxx.
|
private |
Select the conditions for the efficiency estimation
Definition at line 2001 of file AliMTRChEffAnalysis.cxx.
Referenced by AddSystematicCondition(), and SetEffConditions().
Bool_t AliMTRChEffAnalysis::SetDefaultEffConditions | ( | ) |
Set default conditions for efficiency estimation
Definition at line 2063 of file AliMTRChEffAnalysis.cxx.
Referenced by SetOutList().
Bool_t AliMTRChEffAnalysis::SetEffConditions | ( | const char * | physSel, |
const char * | trigClassName, | ||
const char * | centrality, | ||
Int_t | itrackSel, | ||
Int_t | imatch, | ||
Int_t | imethod | ||
) |
Select the conditions for the efficiency estimation
Definition at line 2071 of file AliMTRChEffAnalysis.cxx.
Referenced by SetDefaultEffConditions().
|
private |
Initialize output list
Definition at line 2078 of file AliMTRChEffAnalysis.cxx.
Referenced by AliMTRChEffAnalysis(), SetResultsFromGrid(), and SetResultsFromWeb().
Bool_t AliMTRChEffAnalysis::SetResultsFromGrid | ( | const char * | runList, |
const char * | path, | ||
const char * | pattern, | ||
const char * | localFileList = "localFileList.txt" , |
||
const char * | outDir = "" , |
||
const char * | directory = "MTR_ChamberEffMap" , |
||
const char * | outputName = "testMTRChamberEff" |
||
) |
Search for results on grid
Definition at line 2109 of file AliMTRChEffAnalysis.cxx.
Bool_t AliMTRChEffAnalysis::SetResultsFromWeb | ( | const char * | runList, |
const char * | path, | ||
const char * | localFileList = "localFileList.txt" , |
||
const char * | outDir = "" , |
||
const char * | directory = "MTR_ChamberEffMap" , |
||
const char * | outputName = "testMTRChamberEff" |
||
) |
Search for results on grid
Definition at line 2117 of file AliMTRChEffAnalysis.cxx.
Bool_t AliMTRChEffAnalysis::WriteMergedToOCDB | ( | const char * | outputCDB = "CDB" , |
Bool_t | writeSystematics = kFALSE |
||
) | const |
Create the OCDB objects
Definition at line 2125 of file AliMTRChEffAnalysis.cxx.
|
private |
! List of conditions for trigger efficiency
Definition at line 109 of file AliMTRChEffAnalysis.h.
Referenced by AddToList(), BuildSystematicMap(), CompareEfficiencyMethods(), CompareMergedEfficiencies(), ComputeAndCompareEfficiencies(), GetAverageStat(), GetShortConditionTitle(), GetTrend(), MergeOutput(), RecoverEfficiency(), SetCondition(), SetOutList(), WriteMergedToOCDB(), and ~AliMTRChEffAnalysis().
|
private |
! Map of merged internal objects
Definition at line 137 of file AliMTRChEffAnalysis.h.
Referenced by BuildSystematicMap(), CompareMergedEfficiencies(), DrawSystematicEnvelope(), HasMergedResults(), MergeOutput(), RecoverEfficiency(), WriteMergedToOCDB(), and ~AliMTRChEffAnalysis().
|
mutableprivate |
! Namer for histograms
Definition at line 111 of file AliMTRChEffAnalysis.h.
Referenced by Namer(), and ~AliMTRChEffAnalysis().
|
private |
! Map of internal objects per run
Definition at line 136 of file AliMTRChEffAnalysis.h.
Referenced by AddToList(), GetAverageStat(), GetHomogeneousRanges(), GetIndexFromRun(), GetRunNumber(), GetTrend(), MergeOutput(), SetCondition(), and ~AliMTRChEffAnalysis().