From f66991438db2d9602009d0623d6fc7dd1edf6d64 Mon Sep 17 00:00:00 2001 From: Emanuele Di Marco Date: Wed, 10 Jun 2015 11:36:35 +0200 Subject: [PATCH] * make the minimum number of entries of the time plots configurable * change the cut on the min number of entries of the time plots to fill the calib maps --- EcalTiming/plugins/EcalTimingCalibProducer.cc | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/EcalTiming/plugins/EcalTimingCalibProducer.cc b/EcalTiming/plugins/EcalTimingCalibProducer.cc index 9a77c3d..b421f02 100644 --- a/EcalTiming/plugins/EcalTimingCalibProducer.cc +++ b/EcalTiming/plugins/EcalTimingCalibProducer.cc @@ -145,7 +145,8 @@ class EcalTimingCalibProducer : public edm::ESProducerLooper edm::InputTag _ecalRecHitsEETAG; std::vector _recHitFlags; ///< vector containing list of valid rec hit flags for calibration unsigned int _recHitMin; ///< require at least this many rec hits to count the event - float _minRecHitEnergy; ///< minimum energy for the recHit to be considered for timing studies + double _minRecHitEnergy; ///< minimum energy for the recHit to be considered for timing studies + unsigned int _minEntries; ///< require a minimum number of entries in a ring to do averages float _globalOffset; ///< time to subtract from every event bool _produceNewCalib; ///< true if you don't want to use the values in DB and what to extract new absolute calibrations, if false iteration does not work std::string _outputDumpFileName; ///< name of the output file for the calibration constants' dump @@ -298,7 +299,8 @@ EcalTimingCalibProducer::EcalTimingCalibProducer(const edm::ParameterSet& iConfi _ecalRecHitsEETAG(iConfig.getParameter("recHitEECollection")), _recHitFlags(iConfig.getParameter >("recHitFlags")), _recHitMin(iConfig.getParameter("recHitMinimumN")), - _minRecHitEnergy(iConfig.getParameter("minRecHitEnergy")), + _minRecHitEnergy(iConfig.getParameter("minRecHitEnergy")), + _minEntries(iConfig.getParameter("minEntries")), _globalOffset(iConfig.getParameter("globalOffset")), _produceNewCalib(iConfig.getParameter("produceNewCalib")), _outputDumpFileName(iConfig.getParameter("outputDumpFile")), @@ -418,10 +420,8 @@ bool EcalTimingCalibProducer::addRecHit(const EcalRecHit& recHit) void EcalTimingCalibProducer::plotRecHit(const EcalTimingEvent& recHit) { - std::cout<<"I'm in PlotrecHit"<Fill(id.ieta(), id.iphi(), recHit.energy()); // 2D energy map Event_TimeMapEB_->Fill(id.ieta(), id.iphi(), recHit.time()); // 2D time map @@ -429,7 +429,6 @@ void EcalTimingCalibProducer::plotRecHit(const EcalTimingEvent& recHit) } else { // create EEDetId EEDetId id(recHit.detid()); - std::cout<<"filling histos for rechit: "<Fill(id.ix(), id.iy(), recHit.energy()); Event_TimeMapEEM_->Fill(id.ix(), id.iy(), recHit.time()); @@ -510,9 +509,10 @@ EcalTimingCalibProducer::Status EcalTimingCalibProducer::duringLoop(const edm::E #endif // If we got less than the minimum recHits, continue if(eventTimeMap_.size() < _recHitMin) return kContinue; - if(timeEB.num() < 4) return kContinue; - if(timeEEM.num() < 4 && timeEEP.num() < 4) return kContinue; + if(timeEB.num() + timeEEM.num() + timeEEP.num() < _minEntries) return kContinue; +#ifdef DEBUG std::cout << "[DUMP]\t" << timeEB << "\t" << timeEEM << "\t" << timeEEP << std::endl; +#endif // Make a new directory for Histograms for each event char eventDirName[100]; if(_makeEventPlots) { @@ -539,8 +539,7 @@ EcalTimingCalibProducer::Status EcalTimingCalibProducer::duringLoop(const edm::E continue; } - plotRecHit(event); - //if(_makeEventPlots) plotRecHit(event); + if(_makeEventPlots) plotRecHit(event); _timeCalibMap[it.first].add(event); }