#include "AliMUONTriggerEfficiencyCells.h"
#include "AliMpConstants.h"
#include "AliMUONTriggerDisplay.h"
#include "AliCDBManager.h"
#include "AliMpDDLStore.h"
#include "AliLog.h"
#include "TRandom.h"
#include "Riostream.h"
#include "TH1F.h"
#include "TObjArray.h"
#include "TGraphAsymmErrors.h"
#include "TH2F.h"
#include "TCanvas.h"
#include "TROOT.h"
#include "AliMUONTriggerChamberEfficiency.h"
ClassImp(AliMUONTriggerChamberEfficiency)
AliMUONTriggerChamberEfficiency::AliMUONTriggerChamberEfficiency(AliMUONTriggerEfficiencyCells* effCells)
:
TObject(),
fIsOwner(kFALSE),
fEfficiencyMap(effCells),
fEfficiencyObjects(0x0),
fDisplayList(0x0)
{
FillFromList();
}
AliMUONTriggerChamberEfficiency::AliMUONTriggerChamberEfficiency(const Char_t* filename, const Char_t* listname)
:
TObject(),
fIsOwner(kTRUE),
fEfficiencyMap(0x0),
fEfficiencyObjects(0x0),
fDisplayList(0x0)
{
fEfficiencyMap = new AliMUONTriggerEfficiencyCells(filename, listname);
FillFromList();
}
AliMUONTriggerChamberEfficiency::AliMUONTriggerChamberEfficiency(const AliMUONTriggerChamberEfficiency& other)
:
TObject(other),
fIsOwner(other.fIsOwner),
fEfficiencyMap(other.fEfficiencyMap),
fEfficiencyObjects(other.fEfficiencyObjects),
fDisplayList(other.fDisplayList)
{
}
AliMUONTriggerChamberEfficiency& AliMUONTriggerChamberEfficiency::operator=(const AliMUONTriggerChamberEfficiency& other)
{
if (this == &other)
return *this;
fIsOwner = other.fIsOwner;
fEfficiencyMap = other.fEfficiencyMap;
fEfficiencyObjects = other.fEfficiencyObjects;
fDisplayList = other.fDisplayList;
return *this;
}
AliMUONTriggerChamberEfficiency::~AliMUONTriggerChamberEfficiency()
{
if ( fIsOwner )
delete fEfficiencyMap;
delete fEfficiencyObjects;
delete fDisplayList;
}
Float_t AliMUONTriggerChamberEfficiency::GetCellEfficiency(Int_t detElemId, Int_t localBoard, Int_t hType) const
{
Int_t chamber = FindChamberIndex(detElemId);
Int_t index = GetIndex(kHboardEff, hType, chamber);
TGraphAsymmErrors* effGraph = ((TGraphAsymmErrors*)fEfficiencyObjects->At(index));
if ( ! effGraph ) return -1.;
Double_t xpt, ypt;
effGraph->GetPoint(localBoard-1, xpt, ypt);
return ypt;
}
Float_t AliMUONTriggerChamberEfficiency::GetCellEfficiencyError(Int_t detElemId, Int_t localBoard, Int_t hType, Int_t errType) const
{
Int_t chamber = FindChamberIndex(detElemId);
Int_t index = GetIndex(kHboardEff, hType, chamber);
TGraphAsymmErrors* effGraph = ((TGraphAsymmErrors*)fEfficiencyObjects->At(index));
if ( ! effGraph ) return -1.;
Float_t err = -1.;
if ( errType == 0 ) {
err = effGraph->GetErrorYlow(localBoard-1);
}
else if ( errType == 1 ) {
err = effGraph->GetErrorYhigh(localBoard-1);
}
return err;
}
void
AliMUONTriggerChamberEfficiency::IsTriggered(Int_t detElemId, Int_t localBoard, Bool_t &trigBend, Bool_t &trigNonBend) const
{
Float_t effBend = GetCellEfficiency(detElemId, localBoard, AliMUONTriggerEfficiencyCells::kBendingEff);
Float_t effBoth = GetCellEfficiency(detElemId, localBoard, AliMUONTriggerEfficiencyCells::kBothPlanesEff);
trigBend = ( gRandom->Rndm() > effBend ) ? kFALSE : kTRUE;
Float_t effNonBend = GetCellEfficiency(detElemId, localBoard, AliMUONTriggerEfficiencyCells::kNonBendingEff);
if ( effBoth > 0 ) {
effNonBend = ( trigBend ) ?
effBoth / effBend :
( effNonBend - effBoth ) / ( 1. - effBend );
}
trigNonBend = ( gRandom->Rndm() > effNonBend ) ? kFALSE : kTRUE;
AliDebug(2,Form("Ch %i board %i resp (%i, %i) prob (%.2f, %.2f) effNB %.2f effBoth %.2f\n", detElemId/100, localBoard, trigBend, trigNonBend, effBend, effNonBend, GetCellEfficiency(detElemId, localBoard, AliMUONTriggerEfficiencyCells::kNonBendingEff), effBoth));
}
Int_t AliMUONTriggerChamberEfficiency::FindChamberIndex(Int_t detElemId) const
{
Int_t iChamber = detElemId/100 - 1;
return iChamber-AliMpConstants::NofTrackingChambers();
}
void
AliMUONTriggerChamberEfficiency::FillFromList(Bool_t useMeanValues)
{
if ( fEfficiencyObjects )
delete fEfficiencyObjects;
const Int_t kNeffHistos =
2 * ( AliMUONTriggerEfficiencyCells::kNcounts - 1 ) * AliMpConstants::NofTriggerChambers();
fEfficiencyObjects = new TObjArray(kNeffHistos);
fEfficiencyObjects->SetOwner();
TH1F *histoNum = 0x0, *histoDen=0x0;
TString histoName = "";
Int_t deType[2] = {AliMUONTriggerEfficiencyCells::kHboardCount,
AliMUONTriggerEfficiencyCells::kHslatCount};
Int_t deTypeEff[2] = {kHboardEff, kHslatEff};
Int_t index = -1;
Bool_t rebuildEfficiency = kTRUE;
for ( Int_t ide=0; ide<2; ide++){
Int_t currDe = deType[ide];
if ( useMeanValues && currDe == AliMUONTriggerEfficiencyCells::kHboardCount )
continue;
for(Int_t ich=0; ich<AliMpConstants::NofTriggerChambers(); ich++){
histoName = fEfficiencyMap->GetHistoName(currDe, AliMUONTriggerEfficiencyCells::kAllTracks, ich);
if ( fEfficiencyMap->GetHistoList() ) {
histoDen = (TH1F*)fEfficiencyMap->GetHistoList()->FindObject(histoName.Data());
if ( !histoDen ) {
AliWarning(Form("Histogram %s not found. Efficiency won't be re-build", histoName.Data()));
rebuildEfficiency = kFALSE;
}
}
else {
AliWarning("Histogram list not present: efficiency won't be re-build");
rebuildEfficiency = kFALSE;
}
Int_t nTypes = ( rebuildEfficiency ) ? AliMUONTriggerEfficiencyCells::kNcounts-1 : 2;
for(Int_t hType=0; hType<nTypes; hType++){
histoName = fEfficiencyMap->GetHistoName(currDe, hType, ich);
histoNum = ( rebuildEfficiency ) ?
(TH1F*)fEfficiencyMap->GetHistoList()->FindObject(histoName.Data()) :
fEfficiencyMap->GetOldEffHisto(currDe, ich, hType);
if ( !histoNum ) {
AliWarning(Form("Histogram %s not found. Skip to next", histoName.Data()));
continue;
}
index = GetIndex(deTypeEff[ide], hType, ich);
TGraphAsymmErrors* effGraph = GetEfficiencyGraph(histoNum,histoDen);
fEfficiencyObjects->AddAt(effGraph, index);
TString debugString = Form("Adding object %s",effGraph->GetName());
if ( histoDen ) debugString += Form(" (%s/%s)",histoNum->GetName(),histoDen->GetName());
debugString += Form(" index %i",index);
AliDebug(5,debugString.Data());
if ( useMeanValues && rebuildEfficiency ){
Int_t currChamber = ich + AliMpConstants::NofTrackingChambers();
histoName = fEfficiencyMap->GetHistoName(AliMUONTriggerEfficiencyCells::kHboardCount, hType, ich);
TH1F* auxHistoNum = (TH1F*)fEfficiencyMap->GetHistoList()->FindObject(histoName.Data())->Clone("tempHistoNum");
TH1F* auxHistoDen = (TH1F*)fEfficiencyMap->GetHistoList()->FindObject(histoName.Data())->Clone("tempHistoDen");
for ( Int_t iBinBoard = 1; iBinBoard<=AliMpConstants::NofLocalBoards(); iBinBoard++){
Int_t detElemId = AliMpDDLStore::Instance()->GetDEfromLocalBoard(iBinBoard, currChamber);
Int_t iBin = histoNum->FindBin(detElemId%100);
auxHistoNum->SetBinContent(iBinBoard, histoNum->GetBinContent(iBin));
auxHistoDen->SetBinContent(iBinBoard, histoDen->GetBinContent(iBin));
}
index = GetIndex(kHboardEff, hType, ich);
effGraph = GetEfficiencyGraph(auxHistoNum,auxHistoDen);
fEfficiencyObjects->AddAt(effGraph, index);
AliDebug(5,Form("Adding object %s (%s/%s) at index %i",effGraph->GetName(),histoNum->GetName(),histoDen->GetName(),index));
delete auxHistoNum;
delete auxHistoDen;
}
}
}
}
}
void AliMUONTriggerChamberEfficiency::DisplayEfficiency(Bool_t perSlat, Bool_t show2Dhisto)
{
if ( !AliCDBManager::Instance()->GetDefaultStorage() ){
AliWarning("Please set default CDB storage (needed for mapping).");
return;
}
if ( AliCDBManager::Instance()->GetRun() < 0 ){
AliWarning("Please set CDB run number (needed for mapping).");
return;
}
TString baseCanName = "MTRtrigChEffCan";
TString histoName;
TCanvas* can = 0x0;
TIter next(gROOT->GetListOfCanvases());
while ((can = (TCanvas *)next())) {
histoName = can->GetName();
if ( histoName.Contains(baseCanName.Data()))
delete can;
}
delete fDisplayList;
fDisplayList = new TList();
fDisplayList->SetOwner();
TH2F* displayHisto = 0x0;
AliMUONTriggerDisplay triggerDisplay;
Int_t deType = ( perSlat ) ? kHslatEff : kHboardEff;
AliMUONTriggerDisplay::EDisplayType displayType = ( perSlat ) ?
AliMUONTriggerDisplay::kDisplaySlats : AliMUONTriggerDisplay::kDisplayBoards;
Int_t index = -1;
TGraph* graph = 0x0;
for(Int_t ich=0; ich<AliMpConstants::NofTriggerChambers(); ich++){
Int_t currCh = 11 + ich;
for(Int_t hType=0; hType<AliMUONTriggerEfficiencyCells::kNcounts - 1; hType++){
index = GetIndex(deType, hType, ich);
graph = (TGraph*)fEfficiencyObjects->At(index);
if ( ! graph ) continue;
histoName = graph->GetName();
histoName += baseCanName;
Int_t shift = 10*(index%((AliMUONTriggerEfficiencyCells::kNcounts - 1)*
AliMpConstants::NofTriggerChambers()));
can = new TCanvas(histoName.Data(), histoName.Data(), 100+shift, shift, 700, 700);
can->SetRightMargin(0.14);
can->SetLeftMargin(0.12);
histoName.ReplaceAll(baseCanName.Data(), "Display");
if ( show2Dhisto ) {
displayHisto =
(TH2F*)triggerDisplay.GetDisplayHistogram(graph, histoName,
displayType,
hType,currCh,histoName,
AliMUONTriggerDisplay::kShowZeroes);
displayHisto->SetDirectory(0);
}
if ( show2Dhisto ){
displayHisto->GetZaxis()->SetRangeUser(0.,1.);
displayHisto->GetYaxis()->SetTitleOffset(1.4);
displayHisto->SetStats(kFALSE);
displayHisto->DrawCopy("COLZ");
delete displayHisto;
if ( deType == kHboardEff ){
histoName = Form("labels%iChamber%i", hType, currCh);
displayHisto =
(TH2F*)triggerDisplay.GetBoardNumberHisto(histoName,currCh);
displayHisto->SetDirectory(0);
displayHisto->DrawCopy("textsame");
delete displayHisto;
}
}
else {
TGraphAsymmErrors* drawGraph = (TGraphAsymmErrors*)graph->Clone(histoName.Data());
drawGraph->SetMarkerStyle(20);
drawGraph->SetMarkerSize(0.7);
drawGraph->SetMarkerColor(kRed);
fDisplayList->Add(drawGraph);
drawGraph->Draw("ap");
}
}
}
}
Bool_t AliMUONTriggerChamberEfficiency::LowStatisticsSettings(Bool_t useMeanValues)
{
if ( useMeanValues )
AliInfo("Boards filled with the average efficiency of the RPC");
FillFromList(useMeanValues);
return kTRUE;
}
Int_t
AliMUONTriggerChamberEfficiency::GetIndex(Int_t histoType, Int_t countType,
Int_t chamber) const
{
const Int_t kNtypes = AliMUONTriggerEfficiencyCells::kNcounts - 1;
const Int_t kNchambers = AliMpConstants::NofTriggerChambers();
return
histoType * kNtypes * kNchambers +
chamber * kNtypes +
countType;
}
TObject* AliMUONTriggerChamberEfficiency::GetEffObject(Int_t histoType, Int_t countType,
Int_t chamber)
{
Int_t index = GetIndex(histoType, countType, chamber);
return fEfficiencyObjects->At(index);
}
TGraphAsymmErrors* AliMUONTriggerChamberEfficiency::GetEfficiencyGraph(TH1* histoNum, TH1* histoDen)
{
TGraphAsymmErrors* auxGraph = 0x0;
if ( histoDen ) auxGraph = new TGraphAsymmErrors(histoNum,histoDen,"cp");
else auxGraph = new TGraphAsymmErrors(histoNum);
Int_t npoints = histoNum->GetNbinsX();
TGraphAsymmErrors* effGraph = new TGraphAsymmErrors(npoints);
TString histoName = histoNum->GetName();
histoName.ReplaceAll("Count","Eff");
effGraph->SetName(histoName.Data());
effGraph->SetTitle(histoName.Data());
Double_t oldX, oldY;
for ( Int_t ibin=0; ibin<npoints; ibin++ ) {
Int_t foundPoint = -1;
for (Int_t ipt=0; ipt<auxGraph->GetN(); ipt++) {
auxGraph->GetPoint(ipt, oldX, oldY);
if ( oldX > histoNum->GetBinLowEdge(ibin+1) &&
oldX < histoNum->GetBinLowEdge(ibin+2) ) {
foundPoint = ipt;
break;
}
}
Double_t currX = ( foundPoint < 0 ) ? histoNum->GetBinCenter(ibin+1) : oldX;
Double_t currY = ( foundPoint < 0 ) ? 0. : oldY;
Double_t eyl = ( foundPoint < 0 ) ? 0. : auxGraph->GetErrorYlow(foundPoint);
Double_t eyh = ( foundPoint < 0 ) ? 0. : auxGraph->GetErrorYhigh(foundPoint);
effGraph->SetPoint(ibin, currX, currY);
effGraph->SetPointError(ibin, 0., 0., eyl, eyh);
}
delete auxGraph;
return effGraph;
}
AliMUONTriggerChamberEfficiency.cxx:1 AliMUONTriggerChamberEfficiency.cxx:2 AliMUONTriggerChamberEfficiency.cxx:3 AliMUONTriggerChamberEfficiency.cxx:4 AliMUONTriggerChamberEfficiency.cxx:5 AliMUONTriggerChamberEfficiency.cxx:6 AliMUONTriggerChamberEfficiency.cxx:7 AliMUONTriggerChamberEfficiency.cxx:8 AliMUONTriggerChamberEfficiency.cxx:9 AliMUONTriggerChamberEfficiency.cxx:10 AliMUONTriggerChamberEfficiency.cxx:11 AliMUONTriggerChamberEfficiency.cxx:12 AliMUONTriggerChamberEfficiency.cxx:13 AliMUONTriggerChamberEfficiency.cxx:14 AliMUONTriggerChamberEfficiency.cxx:15 AliMUONTriggerChamberEfficiency.cxx:16 AliMUONTriggerChamberEfficiency.cxx:17 AliMUONTriggerChamberEfficiency.cxx:18 AliMUONTriggerChamberEfficiency.cxx:19 AliMUONTriggerChamberEfficiency.cxx:20 AliMUONTriggerChamberEfficiency.cxx:21 AliMUONTriggerChamberEfficiency.cxx:22 AliMUONTriggerChamberEfficiency.cxx:23 AliMUONTriggerChamberEfficiency.cxx:24 AliMUONTriggerChamberEfficiency.cxx:25 AliMUONTriggerChamberEfficiency.cxx:26 AliMUONTriggerChamberEfficiency.cxx:27 AliMUONTriggerChamberEfficiency.cxx:28 AliMUONTriggerChamberEfficiency.cxx:29 AliMUONTriggerChamberEfficiency.cxx:30 AliMUONTriggerChamberEfficiency.cxx:31 AliMUONTriggerChamberEfficiency.cxx:32 AliMUONTriggerChamberEfficiency.cxx:33 AliMUONTriggerChamberEfficiency.cxx:34 AliMUONTriggerChamberEfficiency.cxx:35 AliMUONTriggerChamberEfficiency.cxx:36 AliMUONTriggerChamberEfficiency.cxx:37 AliMUONTriggerChamberEfficiency.cxx:38 AliMUONTriggerChamberEfficiency.cxx:39 AliMUONTriggerChamberEfficiency.cxx:40 AliMUONTriggerChamberEfficiency.cxx:41 AliMUONTriggerChamberEfficiency.cxx:42 AliMUONTriggerChamberEfficiency.cxx:43 AliMUONTriggerChamberEfficiency.cxx:44 AliMUONTriggerChamberEfficiency.cxx:45 AliMUONTriggerChamberEfficiency.cxx:46 AliMUONTriggerChamberEfficiency.cxx:47 AliMUONTriggerChamberEfficiency.cxx:48 AliMUONTriggerChamberEfficiency.cxx:49 AliMUONTriggerChamberEfficiency.cxx:50 AliMUONTriggerChamberEfficiency.cxx:51 AliMUONTriggerChamberEfficiency.cxx:52 AliMUONTriggerChamberEfficiency.cxx:53 AliMUONTriggerChamberEfficiency.cxx:54 AliMUONTriggerChamberEfficiency.cxx:55 AliMUONTriggerChamberEfficiency.cxx:56 AliMUONTriggerChamberEfficiency.cxx:57 AliMUONTriggerChamberEfficiency.cxx:58 AliMUONTriggerChamberEfficiency.cxx:59 AliMUONTriggerChamberEfficiency.cxx:60 AliMUONTriggerChamberEfficiency.cxx:61 AliMUONTriggerChamberEfficiency.cxx:62 AliMUONTriggerChamberEfficiency.cxx:63 AliMUONTriggerChamberEfficiency.cxx:64 AliMUONTriggerChamberEfficiency.cxx:65 AliMUONTriggerChamberEfficiency.cxx:66 AliMUONTriggerChamberEfficiency.cxx:67 AliMUONTriggerChamberEfficiency.cxx:68 AliMUONTriggerChamberEfficiency.cxx:69 AliMUONTriggerChamberEfficiency.cxx:70 AliMUONTriggerChamberEfficiency.cxx:71 AliMUONTriggerChamberEfficiency.cxx:72 AliMUONTriggerChamberEfficiency.cxx:73 AliMUONTriggerChamberEfficiency.cxx:74 AliMUONTriggerChamberEfficiency.cxx:75 AliMUONTriggerChamberEfficiency.cxx:76 AliMUONTriggerChamberEfficiency.cxx:77 AliMUONTriggerChamberEfficiency.cxx:78 AliMUONTriggerChamberEfficiency.cxx:79 AliMUONTriggerChamberEfficiency.cxx:80 AliMUONTriggerChamberEfficiency.cxx:81 AliMUONTriggerChamberEfficiency.cxx:82 AliMUONTriggerChamberEfficiency.cxx:83 AliMUONTriggerChamberEfficiency.cxx:84 AliMUONTriggerChamberEfficiency.cxx:85 AliMUONTriggerChamberEfficiency.cxx:86 AliMUONTriggerChamberEfficiency.cxx:87 AliMUONTriggerChamberEfficiency.cxx:88 AliMUONTriggerChamberEfficiency.cxx:89 AliMUONTriggerChamberEfficiency.cxx:90 AliMUONTriggerChamberEfficiency.cxx:91 AliMUONTriggerChamberEfficiency.cxx:92 AliMUONTriggerChamberEfficiency.cxx:93 AliMUONTriggerChamberEfficiency.cxx:94 AliMUONTriggerChamberEfficiency.cxx:95 AliMUONTriggerChamberEfficiency.cxx:96 AliMUONTriggerChamberEfficiency.cxx:97 AliMUONTriggerChamberEfficiency.cxx:98 AliMUONTriggerChamberEfficiency.cxx:99 AliMUONTriggerChamberEfficiency.cxx:100 AliMUONTriggerChamberEfficiency.cxx:101 AliMUONTriggerChamberEfficiency.cxx:102 AliMUONTriggerChamberEfficiency.cxx:103 AliMUONTriggerChamberEfficiency.cxx:104 AliMUONTriggerChamberEfficiency.cxx:105 AliMUONTriggerChamberEfficiency.cxx:106 AliMUONTriggerChamberEfficiency.cxx:107 AliMUONTriggerChamberEfficiency.cxx:108 AliMUONTriggerChamberEfficiency.cxx:109 AliMUONTriggerChamberEfficiency.cxx:110 AliMUONTriggerChamberEfficiency.cxx:111 AliMUONTriggerChamberEfficiency.cxx:112 AliMUONTriggerChamberEfficiency.cxx:113 AliMUONTriggerChamberEfficiency.cxx:114 AliMUONTriggerChamberEfficiency.cxx:115 AliMUONTriggerChamberEfficiency.cxx:116 AliMUONTriggerChamberEfficiency.cxx:117 AliMUONTriggerChamberEfficiency.cxx:118 AliMUONTriggerChamberEfficiency.cxx:119 AliMUONTriggerChamberEfficiency.cxx:120 AliMUONTriggerChamberEfficiency.cxx:121 AliMUONTriggerChamberEfficiency.cxx:122 AliMUONTriggerChamberEfficiency.cxx:123 AliMUONTriggerChamberEfficiency.cxx:124 AliMUONTriggerChamberEfficiency.cxx:125 AliMUONTriggerChamberEfficiency.cxx:126 AliMUONTriggerChamberEfficiency.cxx:127 AliMUONTriggerChamberEfficiency.cxx:128 AliMUONTriggerChamberEfficiency.cxx:129 AliMUONTriggerChamberEfficiency.cxx:130 AliMUONTriggerChamberEfficiency.cxx:131 AliMUONTriggerChamberEfficiency.cxx:132 AliMUONTriggerChamberEfficiency.cxx:133 AliMUONTriggerChamberEfficiency.cxx:134 AliMUONTriggerChamberEfficiency.cxx:135 AliMUONTriggerChamberEfficiency.cxx:136 AliMUONTriggerChamberEfficiency.cxx:137 AliMUONTriggerChamberEfficiency.cxx:138 AliMUONTriggerChamberEfficiency.cxx:139 AliMUONTriggerChamberEfficiency.cxx:140 AliMUONTriggerChamberEfficiency.cxx:141 AliMUONTriggerChamberEfficiency.cxx:142 AliMUONTriggerChamberEfficiency.cxx:143 AliMUONTriggerChamberEfficiency.cxx:144 AliMUONTriggerChamberEfficiency.cxx:145 AliMUONTriggerChamberEfficiency.cxx:146 AliMUONTriggerChamberEfficiency.cxx:147 AliMUONTriggerChamberEfficiency.cxx:148 AliMUONTriggerChamberEfficiency.cxx:149 AliMUONTriggerChamberEfficiency.cxx:150 AliMUONTriggerChamberEfficiency.cxx:151 AliMUONTriggerChamberEfficiency.cxx:152 AliMUONTriggerChamberEfficiency.cxx:153 AliMUONTriggerChamberEfficiency.cxx:154 AliMUONTriggerChamberEfficiency.cxx:155 AliMUONTriggerChamberEfficiency.cxx:156 AliMUONTriggerChamberEfficiency.cxx:157 AliMUONTriggerChamberEfficiency.cxx:158 AliMUONTriggerChamberEfficiency.cxx:159 AliMUONTriggerChamberEfficiency.cxx:160 AliMUONTriggerChamberEfficiency.cxx:161 AliMUONTriggerChamberEfficiency.cxx:162 AliMUONTriggerChamberEfficiency.cxx:163 AliMUONTriggerChamberEfficiency.cxx:164 AliMUONTriggerChamberEfficiency.cxx:165 AliMUONTriggerChamberEfficiency.cxx:166 AliMUONTriggerChamberEfficiency.cxx:167 AliMUONTriggerChamberEfficiency.cxx:168 AliMUONTriggerChamberEfficiency.cxx:169 AliMUONTriggerChamberEfficiency.cxx:170 AliMUONTriggerChamberEfficiency.cxx:171 AliMUONTriggerChamberEfficiency.cxx:172 AliMUONTriggerChamberEfficiency.cxx:173 AliMUONTriggerChamberEfficiency.cxx:174 AliMUONTriggerChamberEfficiency.cxx:175 AliMUONTriggerChamberEfficiency.cxx:176 AliMUONTriggerChamberEfficiency.cxx:177 AliMUONTriggerChamberEfficiency.cxx:178 AliMUONTriggerChamberEfficiency.cxx:179 AliMUONTriggerChamberEfficiency.cxx:180 AliMUONTriggerChamberEfficiency.cxx:181 AliMUONTriggerChamberEfficiency.cxx:182 AliMUONTriggerChamberEfficiency.cxx:183 AliMUONTriggerChamberEfficiency.cxx:184 AliMUONTriggerChamberEfficiency.cxx:185 AliMUONTriggerChamberEfficiency.cxx:186 AliMUONTriggerChamberEfficiency.cxx:187 AliMUONTriggerChamberEfficiency.cxx:188 AliMUONTriggerChamberEfficiency.cxx:189 AliMUONTriggerChamberEfficiency.cxx:190 AliMUONTriggerChamberEfficiency.cxx:191 AliMUONTriggerChamberEfficiency.cxx:192 AliMUONTriggerChamberEfficiency.cxx:193 AliMUONTriggerChamberEfficiency.cxx:194 AliMUONTriggerChamberEfficiency.cxx:195 AliMUONTriggerChamberEfficiency.cxx:196 AliMUONTriggerChamberEfficiency.cxx:197 AliMUONTriggerChamberEfficiency.cxx:198 AliMUONTriggerChamberEfficiency.cxx:199 AliMUONTriggerChamberEfficiency.cxx:200 AliMUONTriggerChamberEfficiency.cxx:201 AliMUONTriggerChamberEfficiency.cxx:202 AliMUONTriggerChamberEfficiency.cxx:203 AliMUONTriggerChamberEfficiency.cxx:204 AliMUONTriggerChamberEfficiency.cxx:205 AliMUONTriggerChamberEfficiency.cxx:206 AliMUONTriggerChamberEfficiency.cxx:207 AliMUONTriggerChamberEfficiency.cxx:208 AliMUONTriggerChamberEfficiency.cxx:209 AliMUONTriggerChamberEfficiency.cxx:210 AliMUONTriggerChamberEfficiency.cxx:211 AliMUONTriggerChamberEfficiency.cxx:212 AliMUONTriggerChamberEfficiency.cxx:213 AliMUONTriggerChamberEfficiency.cxx:214 AliMUONTriggerChamberEfficiency.cxx:215 AliMUONTriggerChamberEfficiency.cxx:216 AliMUONTriggerChamberEfficiency.cxx:217 AliMUONTriggerChamberEfficiency.cxx:218 AliMUONTriggerChamberEfficiency.cxx:219 AliMUONTriggerChamberEfficiency.cxx:220 AliMUONTriggerChamberEfficiency.cxx:221 AliMUONTriggerChamberEfficiency.cxx:222 AliMUONTriggerChamberEfficiency.cxx:223 AliMUONTriggerChamberEfficiency.cxx:224 AliMUONTriggerChamberEfficiency.cxx:225 AliMUONTriggerChamberEfficiency.cxx:226 AliMUONTriggerChamberEfficiency.cxx:227 AliMUONTriggerChamberEfficiency.cxx:228 AliMUONTriggerChamberEfficiency.cxx:229 AliMUONTriggerChamberEfficiency.cxx:230 AliMUONTriggerChamberEfficiency.cxx:231 AliMUONTriggerChamberEfficiency.cxx:232 AliMUONTriggerChamberEfficiency.cxx:233 AliMUONTriggerChamberEfficiency.cxx:234 AliMUONTriggerChamberEfficiency.cxx:235 AliMUONTriggerChamberEfficiency.cxx:236 AliMUONTriggerChamberEfficiency.cxx:237 AliMUONTriggerChamberEfficiency.cxx:238 AliMUONTriggerChamberEfficiency.cxx:239 AliMUONTriggerChamberEfficiency.cxx:240 AliMUONTriggerChamberEfficiency.cxx:241 AliMUONTriggerChamberEfficiency.cxx:242 AliMUONTriggerChamberEfficiency.cxx:243 AliMUONTriggerChamberEfficiency.cxx:244 AliMUONTriggerChamberEfficiency.cxx:245 AliMUONTriggerChamberEfficiency.cxx:246 AliMUONTriggerChamberEfficiency.cxx:247 AliMUONTriggerChamberEfficiency.cxx:248 AliMUONTriggerChamberEfficiency.cxx:249 AliMUONTriggerChamberEfficiency.cxx:250 AliMUONTriggerChamberEfficiency.cxx:251 AliMUONTriggerChamberEfficiency.cxx:252 AliMUONTriggerChamberEfficiency.cxx:253 AliMUONTriggerChamberEfficiency.cxx:254 AliMUONTriggerChamberEfficiency.cxx:255 AliMUONTriggerChamberEfficiency.cxx:256 AliMUONTriggerChamberEfficiency.cxx:257 AliMUONTriggerChamberEfficiency.cxx:258 AliMUONTriggerChamberEfficiency.cxx:259 AliMUONTriggerChamberEfficiency.cxx:260 AliMUONTriggerChamberEfficiency.cxx:261 AliMUONTriggerChamberEfficiency.cxx:262 AliMUONTriggerChamberEfficiency.cxx:263 AliMUONTriggerChamberEfficiency.cxx:264 AliMUONTriggerChamberEfficiency.cxx:265 AliMUONTriggerChamberEfficiency.cxx:266 AliMUONTriggerChamberEfficiency.cxx:267 AliMUONTriggerChamberEfficiency.cxx:268 AliMUONTriggerChamberEfficiency.cxx:269 AliMUONTriggerChamberEfficiency.cxx:270 AliMUONTriggerChamberEfficiency.cxx:271 AliMUONTriggerChamberEfficiency.cxx:272 AliMUONTriggerChamberEfficiency.cxx:273 AliMUONTriggerChamberEfficiency.cxx:274 AliMUONTriggerChamberEfficiency.cxx:275 AliMUONTriggerChamberEfficiency.cxx:276 AliMUONTriggerChamberEfficiency.cxx:277 AliMUONTriggerChamberEfficiency.cxx:278 AliMUONTriggerChamberEfficiency.cxx:279 AliMUONTriggerChamberEfficiency.cxx:280 AliMUONTriggerChamberEfficiency.cxx:281 AliMUONTriggerChamberEfficiency.cxx:282 AliMUONTriggerChamberEfficiency.cxx:283 AliMUONTriggerChamberEfficiency.cxx:284 AliMUONTriggerChamberEfficiency.cxx:285 AliMUONTriggerChamberEfficiency.cxx:286 AliMUONTriggerChamberEfficiency.cxx:287 AliMUONTriggerChamberEfficiency.cxx:288 AliMUONTriggerChamberEfficiency.cxx:289 AliMUONTriggerChamberEfficiency.cxx:290 AliMUONTriggerChamberEfficiency.cxx:291 AliMUONTriggerChamberEfficiency.cxx:292 AliMUONTriggerChamberEfficiency.cxx:293 AliMUONTriggerChamberEfficiency.cxx:294 AliMUONTriggerChamberEfficiency.cxx:295 AliMUONTriggerChamberEfficiency.cxx:296 AliMUONTriggerChamberEfficiency.cxx:297 AliMUONTriggerChamberEfficiency.cxx:298 AliMUONTriggerChamberEfficiency.cxx:299 AliMUONTriggerChamberEfficiency.cxx:300 AliMUONTriggerChamberEfficiency.cxx:301 AliMUONTriggerChamberEfficiency.cxx:302 AliMUONTriggerChamberEfficiency.cxx:303 AliMUONTriggerChamberEfficiency.cxx:304 AliMUONTriggerChamberEfficiency.cxx:305 AliMUONTriggerChamberEfficiency.cxx:306 AliMUONTriggerChamberEfficiency.cxx:307 AliMUONTriggerChamberEfficiency.cxx:308 AliMUONTriggerChamberEfficiency.cxx:309 AliMUONTriggerChamberEfficiency.cxx:310 AliMUONTriggerChamberEfficiency.cxx:311 AliMUONTriggerChamberEfficiency.cxx:312 AliMUONTriggerChamberEfficiency.cxx:313 AliMUONTriggerChamberEfficiency.cxx:314 AliMUONTriggerChamberEfficiency.cxx:315 AliMUONTriggerChamberEfficiency.cxx:316 AliMUONTriggerChamberEfficiency.cxx:317 AliMUONTriggerChamberEfficiency.cxx:318 AliMUONTriggerChamberEfficiency.cxx:319 AliMUONTriggerChamberEfficiency.cxx:320 AliMUONTriggerChamberEfficiency.cxx:321 AliMUONTriggerChamberEfficiency.cxx:322 AliMUONTriggerChamberEfficiency.cxx:323 AliMUONTriggerChamberEfficiency.cxx:324 AliMUONTriggerChamberEfficiency.cxx:325 AliMUONTriggerChamberEfficiency.cxx:326 AliMUONTriggerChamberEfficiency.cxx:327 AliMUONTriggerChamberEfficiency.cxx:328 AliMUONTriggerChamberEfficiency.cxx:329 AliMUONTriggerChamberEfficiency.cxx:330 AliMUONTriggerChamberEfficiency.cxx:331 AliMUONTriggerChamberEfficiency.cxx:332 AliMUONTriggerChamberEfficiency.cxx:333 AliMUONTriggerChamberEfficiency.cxx:334 AliMUONTriggerChamberEfficiency.cxx:335 AliMUONTriggerChamberEfficiency.cxx:336 AliMUONTriggerChamberEfficiency.cxx:337 AliMUONTriggerChamberEfficiency.cxx:338 AliMUONTriggerChamberEfficiency.cxx:339 AliMUONTriggerChamberEfficiency.cxx:340 AliMUONTriggerChamberEfficiency.cxx:341 AliMUONTriggerChamberEfficiency.cxx:342 AliMUONTriggerChamberEfficiency.cxx:343 AliMUONTriggerChamberEfficiency.cxx:344 AliMUONTriggerChamberEfficiency.cxx:345 AliMUONTriggerChamberEfficiency.cxx:346 AliMUONTriggerChamberEfficiency.cxx:347 AliMUONTriggerChamberEfficiency.cxx:348 AliMUONTriggerChamberEfficiency.cxx:349 AliMUONTriggerChamberEfficiency.cxx:350 AliMUONTriggerChamberEfficiency.cxx:351 AliMUONTriggerChamberEfficiency.cxx:352 AliMUONTriggerChamberEfficiency.cxx:353 AliMUONTriggerChamberEfficiency.cxx:354 AliMUONTriggerChamberEfficiency.cxx:355 AliMUONTriggerChamberEfficiency.cxx:356 AliMUONTriggerChamberEfficiency.cxx:357 AliMUONTriggerChamberEfficiency.cxx:358 AliMUONTriggerChamberEfficiency.cxx:359 AliMUONTriggerChamberEfficiency.cxx:360 AliMUONTriggerChamberEfficiency.cxx:361 AliMUONTriggerChamberEfficiency.cxx:362 AliMUONTriggerChamberEfficiency.cxx:363 AliMUONTriggerChamberEfficiency.cxx:364 AliMUONTriggerChamberEfficiency.cxx:365 AliMUONTriggerChamberEfficiency.cxx:366 AliMUONTriggerChamberEfficiency.cxx:367 AliMUONTriggerChamberEfficiency.cxx:368 AliMUONTriggerChamberEfficiency.cxx:369 AliMUONTriggerChamberEfficiency.cxx:370 AliMUONTriggerChamberEfficiency.cxx:371 AliMUONTriggerChamberEfficiency.cxx:372 AliMUONTriggerChamberEfficiency.cxx:373 AliMUONTriggerChamberEfficiency.cxx:374 AliMUONTriggerChamberEfficiency.cxx:375 AliMUONTriggerChamberEfficiency.cxx:376 AliMUONTriggerChamberEfficiency.cxx:377 AliMUONTriggerChamberEfficiency.cxx:378 AliMUONTriggerChamberEfficiency.cxx:379 AliMUONTriggerChamberEfficiency.cxx:380 AliMUONTriggerChamberEfficiency.cxx:381 AliMUONTriggerChamberEfficiency.cxx:382 AliMUONTriggerChamberEfficiency.cxx:383 AliMUONTriggerChamberEfficiency.cxx:384 AliMUONTriggerChamberEfficiency.cxx:385 AliMUONTriggerChamberEfficiency.cxx:386 AliMUONTriggerChamberEfficiency.cxx:387 AliMUONTriggerChamberEfficiency.cxx:388 AliMUONTriggerChamberEfficiency.cxx:389 AliMUONTriggerChamberEfficiency.cxx:390 AliMUONTriggerChamberEfficiency.cxx:391 AliMUONTriggerChamberEfficiency.cxx:392 AliMUONTriggerChamberEfficiency.cxx:393 AliMUONTriggerChamberEfficiency.cxx:394 AliMUONTriggerChamberEfficiency.cxx:395 AliMUONTriggerChamberEfficiency.cxx:396 AliMUONTriggerChamberEfficiency.cxx:397 AliMUONTriggerChamberEfficiency.cxx:398 AliMUONTriggerChamberEfficiency.cxx:399 AliMUONTriggerChamberEfficiency.cxx:400 AliMUONTriggerChamberEfficiency.cxx:401 AliMUONTriggerChamberEfficiency.cxx:402 AliMUONTriggerChamberEfficiency.cxx:403 AliMUONTriggerChamberEfficiency.cxx:404 AliMUONTriggerChamberEfficiency.cxx:405 AliMUONTriggerChamberEfficiency.cxx:406 AliMUONTriggerChamberEfficiency.cxx:407 AliMUONTriggerChamberEfficiency.cxx:408 AliMUONTriggerChamberEfficiency.cxx:409 AliMUONTriggerChamberEfficiency.cxx:410 AliMUONTriggerChamberEfficiency.cxx:411 AliMUONTriggerChamberEfficiency.cxx:412 AliMUONTriggerChamberEfficiency.cxx:413 AliMUONTriggerChamberEfficiency.cxx:414 AliMUONTriggerChamberEfficiency.cxx:415 AliMUONTriggerChamberEfficiency.cxx:416 AliMUONTriggerChamberEfficiency.cxx:417 AliMUONTriggerChamberEfficiency.cxx:418 AliMUONTriggerChamberEfficiency.cxx:419 AliMUONTriggerChamberEfficiency.cxx:420 AliMUONTriggerChamberEfficiency.cxx:421 AliMUONTriggerChamberEfficiency.cxx:422 AliMUONTriggerChamberEfficiency.cxx:423 AliMUONTriggerChamberEfficiency.cxx:424 AliMUONTriggerChamberEfficiency.cxx:425 AliMUONTriggerChamberEfficiency.cxx:426 AliMUONTriggerChamberEfficiency.cxx:427 AliMUONTriggerChamberEfficiency.cxx:428 AliMUONTriggerChamberEfficiency.cxx:429 AliMUONTriggerChamberEfficiency.cxx:430 AliMUONTriggerChamberEfficiency.cxx:431 AliMUONTriggerChamberEfficiency.cxx:432 AliMUONTriggerChamberEfficiency.cxx:433 AliMUONTriggerChamberEfficiency.cxx:434 AliMUONTriggerChamberEfficiency.cxx:435 AliMUONTriggerChamberEfficiency.cxx:436 AliMUONTriggerChamberEfficiency.cxx:437 AliMUONTriggerChamberEfficiency.cxx:438 AliMUONTriggerChamberEfficiency.cxx:439 AliMUONTriggerChamberEfficiency.cxx:440 AliMUONTriggerChamberEfficiency.cxx:441 AliMUONTriggerChamberEfficiency.cxx:442 AliMUONTriggerChamberEfficiency.cxx:443 AliMUONTriggerChamberEfficiency.cxx:444 AliMUONTriggerChamberEfficiency.cxx:445 AliMUONTriggerChamberEfficiency.cxx:446 AliMUONTriggerChamberEfficiency.cxx:447 AliMUONTriggerChamberEfficiency.cxx:448 AliMUONTriggerChamberEfficiency.cxx:449 AliMUONTriggerChamberEfficiency.cxx:450 AliMUONTriggerChamberEfficiency.cxx:451 AliMUONTriggerChamberEfficiency.cxx:452 AliMUONTriggerChamberEfficiency.cxx:453 AliMUONTriggerChamberEfficiency.cxx:454 AliMUONTriggerChamberEfficiency.cxx:455 AliMUONTriggerChamberEfficiency.cxx:456 AliMUONTriggerChamberEfficiency.cxx:457 AliMUONTriggerChamberEfficiency.cxx:458 AliMUONTriggerChamberEfficiency.cxx:459 AliMUONTriggerChamberEfficiency.cxx:460 AliMUONTriggerChamberEfficiency.cxx:461 AliMUONTriggerChamberEfficiency.cxx:462 AliMUONTriggerChamberEfficiency.cxx:463 AliMUONTriggerChamberEfficiency.cxx:464 AliMUONTriggerChamberEfficiency.cxx:465 AliMUONTriggerChamberEfficiency.cxx:466 AliMUONTriggerChamberEfficiency.cxx:467 AliMUONTriggerChamberEfficiency.cxx:468 AliMUONTriggerChamberEfficiency.cxx:469 AliMUONTriggerChamberEfficiency.cxx:470 AliMUONTriggerChamberEfficiency.cxx:471 AliMUONTriggerChamberEfficiency.cxx:472 AliMUONTriggerChamberEfficiency.cxx:473 AliMUONTriggerChamberEfficiency.cxx:474 AliMUONTriggerChamberEfficiency.cxx:475 AliMUONTriggerChamberEfficiency.cxx:476 AliMUONTriggerChamberEfficiency.cxx:477 AliMUONTriggerChamberEfficiency.cxx:478 AliMUONTriggerChamberEfficiency.cxx:479 AliMUONTriggerChamberEfficiency.cxx:480 AliMUONTriggerChamberEfficiency.cxx:481 AliMUONTriggerChamberEfficiency.cxx:482 AliMUONTriggerChamberEfficiency.cxx:483 AliMUONTriggerChamberEfficiency.cxx:484 AliMUONTriggerChamberEfficiency.cxx:485