]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONQAIndices.h
modify systematic r-phi plotting
[u/mrichter/AliRoot.git] / MUON / AliMUONQAIndices.h
1 #ifndef ALIMUONQAINDICES_H
2 #define ALIMUONQAINDICES_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice                               */
6
7 // $Id$
8
9 /// \ingroup base
10 /// 
11 /// Definition of enums needed by the MUON QA data makers and checkers (both
12 /// tracker and trigger)
13 ///
14 /// \author Laurent Aphecetche and Diego Stocco, Subatech
15
16 namespace AliMUONQAIndices
17 {
18   /// Histogram indices common to raw and digits and/or recpoints.
19   ///
20   /// WARNING ! Those ones should not be reused anywhere else below.
21   /// Numbers from 1 to 50 are thus reserved for ECommon enum !
22   ///
23   enum ECommon {
24     kTrackerBusPatchOccupancy         =  1, ///< Bus patch occupancies
25     kTrackerBusPatchParityErrors      =  2, ///< Parity errors during readout of the tracker
26     kTrackerBusPatchTokenLostErrors   =  3, ///< Token lost errors during readout of the tracker
27     kTrackerBusPatchPaddingErrors     =  4, ///< Padding errors during readout of the tracker
28     kTrackerNofPhysicsEventsSeen      =  5, ///< Number of events seen 
29     kTrackerNofGoodPhysicsEventsUsed  =  6, ///< Number of good physics events seen (and used)
30     kTrackerBusPatchConfig            =  7, ///< Configuration of the tracker
31     kTrackerDDLOccupancy              =  8, ///< DDL occupancy in percent
32     kTrackerDDLNofEventsUsed          =  9, ///< nof of events per DDL (used) *WARNING* : same as above
33     kTrackerDDLNofEventsSeen          = 10,  ///< nof of events per DDL (seen)
34     kTrackerData                      = 11 ///< Accumulated data
35   };
36   
37   /// Raw/digits histograms indices
38   enum ERaw { 
39     
40     kTrackerReadoutStatusPerEvent     = 51, ///< as kTrackerReadoutStatus but normalized by the number of events
41     kTrackerReadoutStatus             = 52, ///< Status of readout (errors, missing pads, etc...)
42     kTrackerDDLEventSize             =  53, ///< event size per DDL
43     kTrackerDDLEventSizePerEvent     =  54, ///< event size per DDL per event
44
45     kTriggerScalersTime       = 60, ///< Trigger scalers acquisition time index
46     kTriggerScalers           = 61, ///< Trigger scalers histogram per plane index
47     kTriggerScalersDisplay    = 62, ///< Trigger scalers display histogram per plane index
48     kTriggerCalibSummary      = 63, ///< Number of responding strips/boards and noisy strips 
49     kTriggerCalibSummaryNorm  = 64, ///< Percentage of responding strips/boards and noisy strips
50     kTriggerErrorLocalXPos = 65, ///< Local board: Number of XPos Error vs Local Board Id
51     kTriggerErrorLocalYPos = 66, ///< Local board: Number of YPos Error vs Local Board Id
52     kTriggerErrorLocalDev  = 67, ///< Local board: Number of Deviation Error vs Local Board
53     kTriggerErrorLocalTriggerDec = 68, ///< Local board: Number of Trigger Decision (All Pt) Error vs Local Board Id
54     kTriggerErrorLocalLPtLSB = 69, ///< Local board: Number of LSB Low Pt Error vs Local Board Id
55     kTriggerErrorLocalLPtMSB = 70, ///< Local board: Number of MSB Low Pt Error vs Local Board Id
56     kTriggerErrorLocalHPtLSB = 71, ///< Local board: Number of LSB High Pt Error vs Local Board Id
57     kTriggerErrorLocalHPtMSB = 72, ///< Local board: Number of MSB High Pt Error vs Local Board Id
58     kTriggerErrorLocalTrigY  = 73, ///< Local board: Number of TrigY Error vs Local Board Id
59     kTriggerErrorLocal2RegionalLPtLSB  = 74, ///< Local to Regional: Number of LPt LSB error vs Local Board Id
60     kTriggerErrorLocal2RegionalLPtMSB  = 75, ///< Local to Regional: Number of LPt MSB error vs Local Board Id
61     kTriggerErrorLocal2RegionalHPtLSB  = 76, ///< Local to Regional: Number of HPt LSB error vs Local Board Id
62     kTriggerErrorLocal2RegionalHPtMSB  = 77, ///< Local to Regional: Number of HPt MSB error vs Local Board Id
63     kTriggerErrorOutGlobalFromInGlobal = 78, ///< Global board: Number of error vs output bit    with a re-reconstruction from Global inputs
64     kTriggerErrorOutGlobalFromInLocal = 79, ///< Global board: Number of error vs output bit  with a re-reconstruction from Local inputs
65     kTriggerErrorSummary      = 80,  ///< Number of errors for each trigger decision level (Local, Reg->Local, Reg, Reg->Glob, Global)
66     kTriggerErrorSummaryNorm  = 81,  ///< Percentage of errors for each trigger decision level
67     kTriggerErrorLocalYCopy     = 82, ///< Local board: Number of Y Copy Error vs Local Board Id
68     kTriggerErrorLocalYCopyTest = 83, ///< Local Board: Number of Y copy error tests (for normalization)
69     kTriggerErrorLocalYCopyNorm = 84, ///< Local Board: Number of Y Copy Error vs Local Board Id Normalized to the number of tests
70     kTriggeredBoards          = 85,  ///< Triggered boards histogram index
71     kTriggerBoardsDisplay     = 86,  ///< Triggered boards display histogram index
72     kTriggerReadOutErrors     = 87,  ///< Number of read-out errors
73     kTriggerReadOutErrorsNorm = 88,  ///< Percentage of read-out errors
74     kTriggerGlobalOutput      = 90,  ///< Number of Global outputs and Global algo errors
75     kTriggerGlobalOutputNorm  = 91,  ///< Percentage of Global outputs and Global algo errors
76     kTriggerRawNAnalyzedEvents= 100,  ///< Number of analyzed events per event specie
77     kTriggerLocalRatio4434           = 101,  ///< Ratio 44/34 vs Local Board Id
78     kTriggerRatio4434AllEvents       = 102,  ///< Ratio 44/34 since the beginning of the run vs Event Number
79     kTriggerRatio4434SinceLastUpdate = 103,  ///< Ratio 44/34 for the last kUpdateRatio4434 events vs Event Number
80     kTriggerNumberOf34Dec            = 104,  ///< Number of Decision in coincidence 3/4 vs Local Board
81     kTriggerNumberOf44Dec            = 105   ///< Number of Decision in coincidence 4/4 vs Local Board
82     
83   };
84   
85   /// Rec points histograms indices
86   enum ERecPoints { 
87     kTrackerNumberOfClustersPerChamber    = 100, ///< Tracker: number of clusters per chamber
88     kTrackerClusterMultiplicityPerChMean  = 101, ///< cluster size per Ch: mean
89     kTrackerClusterMultiplicityPerChSigma = 102, ///< cluster size per Ch: dispersion
90     kTrackerClusterChargePerChMean        = 103, ///< cluster charge per Ch: mean
91     kTrackerClusterChargePerChSigma       = 104, ///< cluster charge per Ch: dispersion
92     
93     kTrackerRecPoints = 105, ///< Tracker : tracker data of clusters (all and mono-cathode ones)
94     
95     kTrackerClusterMultiplicityPerChamber = 200, ///< Tracker: cluster multiplicity per chamber
96     kTrackerClusterChargePerChamber       = 300, ///< Tracker: cluster charge per chamber
97     kTrackerClusterHitMapPerChamber       = 400, ///< Tracker: cluster position distribution per chamber
98     
99     kTrackerNumberOfClustersPerDE        = 500, ///< Tracker : number of clusters per DE                
100     kTrackerClusterMultiplicityPerDEMean = 501, ///< cluster size per DE: mean
101     kTrackerClusterChargePerDEMean       = 502, ///< cluster charge per DE: mean
102     
103     kTrackerClusterMultiplicityPerDE = 3000, ///< Tracker : cluster multiplicity per DE         
104     kTrackerClusterChargePerDE       = 5000,  ///< Tracker : cluster charge per DE
105     
106     kTriggerNAnalyzedEvents           = 50, ///< Number of analyzed events per event specie
107     kTriggerRPCtrips           = 51, ///< Trips in trigger chambers
108     kTriggerRPChv              = 52  ///< Trigger chamber HV index
109     
110   };
111   
112   /// ESD histograms indices
113   enum EESD { 
114     kESDnTracks                 =  50,  ///< number of tracks
115     kESDMatchTrig               =  51,  ///< number of tracks matched with trigger
116     kESDMomentum                =  52,  ///< P distribution
117     kESDPt                      =  53,  ///< Pt distribution
118     kESDRapidity                =  54,  ///< rapidity distribution
119     kESDChi2                    =  55,  ///< normalized chi2 distribution
120     kESDProbChi2                =  56,  ///< distribution of probability of chi2
121     
122     kESDClusterHitMap           =  57,  ///< cluster position distribution in chamber i
123     kESDnClustersPerTrack       =  67, ///< number of clusters per track
124     kESDnClustersPerCh          =  68, ///< number of clusters per chamber per track
125     kESDnClustersPerDE          =  69, ///< number of clusters per DE per track
126     kESDClusterChargeInCh       =  70, ///< cluster charge distribution in chamber i
127     kESDClusterChargePerChMean  =  80, ///< cluster charge per Ch: mean
128     kESDClusterChargePerChSigma =  81, ///< cluster charge per Ch: dispersion
129     kESDClusterChargePerDE      =  82, ///< cluster charge per DE: mean
130     kESDClusterSizeInCh         =  83, ///< cluster size distribution in chamber i
131     kESDClusterSizePerChMean    =  93, ///< cluster size per Ch: mean
132     kESDClusterSizePerChSigma   =  94, ///< cluster size per Ch: dispersion
133     kESDClusterSizePerDE        =  95, ///< cluster size per DE: mean
134     
135     kESDResidualXInCh           =  96, ///< cluster-track residual-X distribution in chamber i
136     kESDResidualYInCh           = 106, ///< cluster-track residual-Y distribution in chamber i
137     kESDResidualXPerChMean      = 116, ///< cluster-track residual-X per Ch: mean
138     kESDResidualYPerChMean      = 117, ///< cluster-track residual-Y per Ch: mean
139     kESDResidualXPerChSigma     = 118, ///< cluster-track residual-X per Ch: dispersion
140     kESDResidualYPerChSigma     = 119, ///< cluster-track residual-Y per Ch: dispersion
141     kESDResidualXPerDEMean      = 120, ///< cluster-track residual-X per DE: mean
142     kESDResidualYPerDEMean      = 121, ///< cluster-track residual-Y per DE: mean
143     kESDResidualXPerDESigma     = 122, ///< cluster-track residual-X per DE: dispersion
144     kESDResidualYPerDESigma     = 123, ///< cluster-track residual-Y per DE: dispersion
145     kESDLocalChi2XInCh          = 124, ///< local chi2-X distribution in chamber i
146     kESDLocalChi2YInCh          = 134, ///< local chi2-Y distribution in chamber i
147     kESDLocalChi2XPerChMean     = 144, ///< local chi2-X per Ch: mean
148     kESDLocalChi2YPerChMean     = 145, ///< local chi2-Y per Ch: mean
149     kESDLocalChi2XPerDEMean     = 146, ///< local chi2-X per DE: mean
150     kESDLocalChi2YPerDEMean     = 147, ///< local chi2-Y per DE: mean
151     kESDLocalChi2InCh           = 148, ///< local chi2-X distribution in chamber i
152     kESDLocalChi2PerChMean      = 158, ///< local chi2 per Ch: mean
153     kESDLocalChi2PerDEMean      = 159, ///< local chi2 per DE: mean
154     
155     kESDThetaX                  = 160, ///< thetaX distribution
156     kESDThetaY                  = 161, ///< thetaY distribution
157     
158     kESDnTotClustersPerCh       = 1000, ///< total number of associated clusters per chamber
159     kESDnTotClustersPerDE       = 1001, ///< total number of associated clusters per DE
160     kESDnTotFullClustersPerDE   = 1002, ///< total number of associated clusters containing pad info per DE
161     kESDSumClusterChargePerDE   = 1003, ///< sum of cluster charge per DE
162     kESDSumClusterSizePerDE     = 1004, ///< sum of cluster size per DE
163     kESDSumResidualXPerDE       = 1005, ///< sum of cluster-track residual-X per DE
164     kESDSumResidualYPerDE       = 1006, ///< sum of cluster-track residual-Y per DE
165     kESDSumResidualX2PerDE      = 1007, ///< sum of cluster-track residual-X**2 per DE
166     kESDSumResidualY2PerDE      = 1008, ///< sum of cluster-track residual-Y**2 per DE
167     kESDSumLocalChi2XPerDE      = 1009, ///< sum of local chi2-X per DE
168     kESDSumLocalChi2YPerDE      = 1010, ///< sum of local chi2-Y per DE
169     kESDSumLocalChi2PerDE       = 1011  ///< sum of local chi2 per DE
170   };
171   
172   // Bins for summary histos
173   enum {
174     kTriggerRespStrips,    ///< Bin for % of responding trigger strips
175     kTriggerRespLocal,     ///< Bin for % of responding trigger local boards
176     kTriggerRespRegional,  ///< Bin for % of responding trigger regional boards
177     kTriggerRespGlobal,    ///< Bin for % of responding trigger global boards
178     kTriggerNoisyStrips,   ///< Bin for % of noisy trigger strips
179     kNtrigCalibSummaryBins ///< Total number of bins for trigger calibration summary
180   };
181   
182   // Bins for algorithm error histos
183   enum {
184     kAlgoLocalX,             ///< Bin for % of local board X pos errors
185     kAlgoLocalY,             ///< Bin for % of local board Y pos errors
186     kAlgoLocalLUT,           ///< Bin for % of local board deviation errors
187     kAlgoLocalYCopy,         ///< Bin for % of local board Y copy errors
188     kAlgoLocalToRegional,    ///< Bin for % of local to regional errors
189     kAlgoRegional,           ///< Bin for % of regional board errors 
190     kAlgoRegionalToGlobal,   ///< Bin for % of regional to global errors 
191     kAlgoGlobalFromGlobal,   ///< Bin for % of global from global board errors 
192     kAlgoGlobalFromLocal,    ///< Bin for % of global from local board errors 
193     kAlgoGlobalFromRegional, ///< Bin for % of global from regional board errors 
194     kNtrigAlgoErrorBins      ///< Total number of bins for trigger error summary
195   };
196   
197   enum {
198     kLocalStructError,    ///< Bin for % of errors in local struct
199     kRegionalStructError, ///< Bin for % of errors in regional struct
200     kGlobalStructError,   ///< Bin for % of errors in global struct
201     kDarcStructError,     ///< Bin for % of errors in darc struct
202     kNtrigStructErrorBins ///< Total number of bins for struct error summary
203   };
204     
205   // Bins for tracker readout errors
206   enum ETrackerReadoutStatus
207   {
208     kTrackerRawNofGlitchErrors = 0, ///< Bin for number of glitch errors
209     kTrackerRawNofTokenLostErrors = 1, ///< Bin for number of token lost errors
210     kTrackerRawNofParityErrors = 2, ///< Bin for number of parity errors
211     kTrackerRawNofPaddingErrors = 3, ///< Bin for number of padding errors
212     kTrackerRawNofEmptyEvents = 4, ///< Bin for number of empty events
213     kTrackerRawNofMissingBusPatchesFromConfig = 5 , ///< Bin for number of missing bus patches (in config)
214     kTrackerRawNofMissingBusPatchesFromDataStream = 6 ///< Bin for number of missing bus patches (in actual data)
215   };
216   
217 }
218
219 #endif