38 float kBarrelSize = 61200;
39 float kEndcapSize = 2*7324;
40 float skipped_channels_EB = 0;
41 float skipped_channels_EE = 0;
48 edm::LogWarning(
"MissingMonitorElement")<<
"failed to find MonitorElement "<<hname;
72 skipped_channels_EB++;
92 edm::LogWarning(
"MissingMonitorElement")<<
"failed to find MonitorElement "<<hname;
116 skipped_channels_EE++;
129 bool enough_stat =
false;
144 edm::LogError(
"Large Variations found wrt to old pedestals, no file created");
149 if (!enough_stat)
return;
155 throw std::runtime_error(
"PoolDBService required.");
198 std::vector<int>::const_iterator
res =
212 if (dbstatus ==0 )
return true;
220 uint32_t nAnomaliesEB =0;
221 uint32_t nAnomaliesEE =0;
260 MonitorElement * pmeb = ibooker.
book2D(
"meaneb",
"Pedestal Means EB",360, 1., 361., 171, -85., 86.);
261 MonitorElement * preb = ibooker.
book2D(
"rmseb",
"Pedestal RMS EB ",360, 1., 361., 171, -85., 86.);
269 MonitorElement * pmebd = ibooker.
book2D(
"meanebdiff",
"Abs Rel Pedestal Means Diff EB",360,1., 361., 171, -85., 86.);
270 MonitorElement * prebd = ibooker.
book2D(
"rmsebdiff",
"Abs Rel Pedestal RMS Diff E ",360, 1., 361., 171, -85., 86.);
272 MonitorElement * pmeepd = ibooker.
book2D(
"meaneepdiff",
"Abs Rel Pedestal Means Diff EEP",100,1,101,100,1,101);
273 MonitorElement * preepd = ibooker.
book2D(
"rmseepdiff",
"Abs Rel Pedestal RMS Diff EEP",100,1,101,100,1,101);
275 MonitorElement * pmeemd = ibooker.
book2D(
"meaneemdiff",
"Abs Rel Pedestal Means Diff EEM",100,1,101,100,1,101);
276 MonitorElement * preemd = ibooker.
book2D(
"rmseemdiff",
"Abs RelPedestal RMS Diff EEM",100,1,101,100,1,101);
289 float mean= newpeds[di].mean_x12;
290 float rms = newpeds[di].rms_x12;
292 float cmean = (*currentPedestals_)[di].mean_x12;
293 float crms = (*currentPedestals_)[di].rms_x12;
295 if (!
isGood(di) )
continue;
302 hdiffeb->
Fill(mean-cmean);
309 float mean= newpeds[di].mean_x12;
310 float rms = newpeds[di].rms_x12;
311 float cmean = (*currentPedestals_)[di].mean_x12;
312 float crms = (*currentPedestals_)[di].rms_x12;
314 if (!
isGood(di) )
continue;
329 hdiffee->
Fill(mean-cmean);
static EEDetId detIdFromDenseIndex(uint32_t din)
T getParameter(std::string const &) const
double thresholdAnomalies_
const self & getMap() const
int entriesEE_[EEDetId::kSizeForDenseIndexing]
MonitorElement * get(const std::string &path)
bool checkVariation(const EcalPedestalsMap &oldPedestals, const EcalPedestalsMap &newPedestals)
bool isGood(const DetId &id)
double getMean(int axis=1) const
get mean value of histogram along x, y or z axis (axis=1, 2, 3 respectively)
float threshChannelsAnalyzed_
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
void dqmEndJob(DQMStore::IBooker &ibooker_, DQMStore::IGetter &igetter_) override
int iphi() const
get the crystal iphi
static EBDetId detIdFromDenseIndex(uint32_t di)
void setValue(const uint32_t id, const Item &item)
ECALpedestalPCLHarvester(const edm::ParameterSet &ps)
void addDefault(ParameterSetDescription const &psetDescription)
const EcalPedestals * g6g1Pedestals_
std::vector< int > chStatusToExclude_
MonitorElement * book1D(Args &&...args)
Abs< T >::type abs(const T &t)
void writeOne(T *payload, Time_t time, const std::string &recordName, bool withlogging=false)
int ieta() const
get the crystal ieta
void dqmPlots(const EcalPedestals &newpeds, DQMStore::IBooker &ibooker)
double getEntries() const
get # of entries
void setCurrentFolder(const std::string &fullpath)
MonitorElement * book2D(Args &&...args)
const EcalChannelStatus * channelStatus_
std::vector< Item >::const_iterator const_iterator
bool checkStatusCode(const DetId &id)
const EcalPedestals * currentPedestals_
double getRMS(int axis=1) const
get RMS of histogram along x, y or z axis (axis=1, 2, 3 respectively)
cond::Time_t currentTime() const
const_iterator find(uint32_t rawId) const
const_iterator end() const
void endRun(edm::Run const &run, edm::EventSetup const &isetup) override
int entriesEB_[EBDetId::kSizeForDenseIndexing]
T const * product() const
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)