1 #ifndef RecoLocalMuon_CSCValidation_H 2 #define RecoLocalMuon_CSCValidation_H 103 #include "TProfile2D.h" 112 ~CSCValidation()
override;
173 float fitX(
const CLHEP::HepMatrix &sp,
const CLHEP::HepMatrix &
ep);
182 void fillEfficiencyHistos(
int bin,
int flag);
183 void getEfficiency(
float bin,
float Norm, std::vector<float> &eff);
184 void histoEfficiency(TH1F *readHisto, TH1F *writeHisto);
185 double lineParametrization(
double z1Position,
double z2Position,
double z1Direction) {
186 double parameterLine = (z2Position - z1Position) / z1Direction;
187 return parameterLine;
189 double extrapolate1D(
double initPosition,
double initDirection,
double parameterOfTheLine) {
190 double extrapolatedPosition = initPosition + initDirection * parameterOfTheLine;
191 return extrapolatedPosition;
193 bool withinSensitiveRegion(
LocalPoint localPos,
194 const std::array<const float, 4> &layerBounds,
198 float shiftFromDeadZone);
216 bool makeComparisonPlots;
218 bool writeTreeToFile;
226 bool useQualityFilter;
227 bool useTriggerFilter;
232 int nCSCHitsMin, nCSCHitsMax;
233 double lengthMin, lengthMax;
235 double polarMin, polarMax;
260 bool makeOccupancyPlots;
261 bool makeTriggerPlots;
264 bool makeRecHitPlots;
265 bool makeSimHitPlots;
266 bool makeSegmentPlots;
267 bool makeResolutionPlots;
268 bool makePedNoisePlots;
269 bool makeEfficiencyPlots;
270 bool makeGasGainPlots;
271 bool makeAFEBTimingPlots;
272 bool makeCompTimingPlots;
273 bool makeADCTimingPlots;
274 bool makeRHNoisePlots;
276 bool makeStandalonePlots;
277 bool makeTimeMonitorPlots;
295 TH2F *hEffDenominator;
296 TH2F *hSensitiveAreaEvt;
302 TH2F *hStripSTE2Tight;
303 TH2F *hWireSTE2Tight;
304 TH2F *hEffDenominatorTight;
313 std::vector<int> nmbhvsegm;
314 std::map<int, std::vector<int> > m_wire_hvsegm;
315 std::map<int, int> m_single_wire_layer;
318 std::multimap<CSCDetId, CSCRecHit2D> AllRechits;
319 std::multimap<CSCDetId, CSCRecHit2D> SegRechits;
320 std::multimap<CSCDetId, CSCRecHit2D> NonAssociatedRechits;
321 std::map<CSCRecHit2D, float, ltrh> distRHmap;
327 index =
id.ring() + 1;
331 index =
id.station() * 2 +
id.ring();
virtual void analyze(Event const &, EventSetup const &)=0
LocalPoint localPosition() const override
constexpr std::size_t typeIndex
strips
#turn off noise in all subdetectors simHcalUnsuppressedDigis.doNoise = False mix.digitizers.hcal.doNoise = False simEcalUnsuppressedDigis.doNoise = False mix.digitizers.ecal.doNoise = False simEcalUnsuppressedDigis.doESNoise = False simSiPixelDigis.AddNoise = False mix.digitizers.pixel.AddNoise = False simSiStripDigis.Noise = False mix.digitizers.strip.AddNoise = False
void makePlots(Int_t nFiles, TString *files, TString *names, TString misalignment, Double_t *values, Double_t *phases, TString directory, Bool_t matrix[xsize][ysize])