6 #include <boost/regex.hpp> 49 m_dqm_merge(
config.getUntrackedParameter<
bool>(
"createSummary")),
50 m_fillEveryLumiSection(
config.getParameter<
bool>(
"fillEveryLumiSection")) {}
67 std::vector<std::string>
folders;
72 static const boost::regex running_n_processes(
".*/Running .*");
76 if (boost::regex_match(
subdir, running_n_processes)) {
77 if (getter.
get(
subdir +
"/throughput_sourced")) {
106 unsigned int nbins = sourced->GetXaxis()->GetNbins();
107 double range = sourced->GetXaxis()->GetXmax();
110 TH1F *concurrent = booker.
book1D(
"concurrent",
"Concurrent events being processed",
nbins, 0.,
range)->
getTH1F();
113 for (
unsigned int i = 0;
i <=
nbins + 1; ++
i) {
114 sum += sourced->GetBinContent(
i) - retired->GetBinContent(
i);
115 concurrent->Fill(concurrent->GetXaxis()->GetBinCenter(
i), sum);
119 double avg_min =
std::min(sourced->GetMinimum(0.), retired->GetMinimum(0.));
120 double avg_max =
std::max(sourced->GetMaximum(), retired->GetMaximum());
121 double width = avg_max - avg_min;
122 avg_min = std::floor(avg_min -
width * 0.2);
126 width = avg_max - avg_min;
129 auto first = sourced->FindFirstBinAbove(0.);
130 auto last = sourced->FindLastBinAbove(0.);
136 average->Fill(sourced->GetBinContent(
i));
139 first = retired->FindFirstBinAbove(0.);
140 last = retired->FindLastBinAbove(0.);
146 average->Fill(retired->GetBinContent(
i));
153 desc.addUntracked<
bool>(
"createSummary",
true);
154 desc.add<
bool>(
"fillEveryLumiSection",
true);
155 descriptions.
add(
"throughputServiceClient",
desc);
constexpr int32_t ceil(float num)
virtual void setCurrentFolder(std::string const &fullpath)
const bool m_fillEveryLumiSection
void fillSummaryPlots(DQMStore::IBooker &booker, DQMStore::IGetter &getter)
ThroughputServiceClient(edm::ParameterSet const &)
void dqmEndLuminosityBlock(DQMStore::IBooker &booker, DQMStore::IGetter &getter, edm::LuminosityBlock const &, edm::EventSetup const &) override
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle otherwise a larger ***bin number will have no effects or even make the ***precision lower than before *********************************************************************************************************it lies in three folders
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
void dqmEndJob(DQMStore::IBooker &booker, DQMStore::IGetter &getter) override
#define DEFINE_FWK_MODULE(type)
const std::string m_dqm_path
virtual TH1F * getTH1F() const
void add(std::string const &label, ParameterSetDescription const &psetDescription)
~ThroughputServiceClient() override=default
virtual MonitorElement * get(std::string const &fullpath) const
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
virtual DQM_DEPRECATED std::vector< std::string > getSubdirs() const