27 "Global representation of ECAL",
44 std::cout <<
"LM region=" << ilmr <<
" reg/sm/dcc/side " << ireg <<
"/" <<
ism <<
"/" << idcc <<
"/" << side
47 TString hname =
"LMR=";
70 rootfile = TFile::Open(
"ebgeom.root");
102 rootfile = TFile::Open(
"eegeom_1.root");
105 rootfile = TFile::Open(
"eegeom_2.root");
134 h_->GetXaxis()->SetTitle(
"ix");
135 h_->GetXaxis()->CenterTitle();
136 h_->GetYaxis()->SetTitle(
"iy");
137 h_->GetYaxis()->CenterTitle();
159 rootfile = TFile::Open(
"ebgeom.root");
174 rootfile = TFile::Open(
"eegeom_1.root");
177 rootfile = TFile::Open(
"eegeom_2.root");
200 TH2*
h = getHist(ilmr, histtype);
202 TString
tname =
h->GetTitle();
207 tname +=
" Monitoring Regions";
210 tname +=
" Monitoring Modules";
213 tname +=
" Super Crystals";
216 tname +=
" Crystals";
219 tname +=
" Electronic Channels";
222 tname +=
" HV Channels";
225 tname +=
" LV Channels";
229 if (canv ==
nullptr) {
230 TString cname =
tname;
231 cname.ReplaceAll(
" ",
"_");
232 canv =
new TCanvas(cname, cname, 10, 10, 500, 500);
234 canv->SetTitle(
tname);
241 gsect->SetLineWidth(1);
242 gsect->Draw(
"LSame");
245 gside->SetLineWidth(2);
246 gside->Draw(
"LSame");
250 TH2*
h = (TH2*)_h->Clone(
name);
257 TAxis* ax =
h->GetXaxis();
258 TAxis* ay =
h->GetYaxis();
259 assert(ax->GetNbins() == _nbinx && ay->GetNbins() == _nbiny);
260 assert(ax->GetXmax() == _xmax && ax->GetXmin() == _xmin);
261 assert(ay->GetXmax() == _ymax && ay->GetXmin() == _ymin);
272 ibinx = ax->FindBin(
ieta);
273 ibiny = ay->FindBin(
iphi);
274 }
else if (iz == -1) {
275 assert(ix >= 1 && ix <= 100 && iy >= 1 && iy <= 100);
276 ibinx = (_nbuf + 100 + 1) - ix;
277 ibiny = (_nbuf + 180 + 50 + 1) - iy;
278 }
else if (iz == 1) {
279 assert(ix >= 1 && ix <= 100 && iy >= 1 && iy <= 100);
280 ibinx = _nbinx + 1 - ((_nbuf + 100 + 1) - ix);
281 ibiny = (_nbuf + 180 + 50 + 1) - iy;
283 h->SetBinContent(ibinx, ibiny,
val);
297 TGraph* grm = (TGraph*)gr->Clone();
298 TGraph* grp = (TGraph*)gr->Clone();
301 for (
int ii = 0;
ii <
n;
ii++) {
303 gr->GetPoint(
ii, x_, y_);
312 grm->SetPoint(
ii, xx_, yy_);
317 grp->SetPoint(
ii, xx_, yy_);
320 grm->SetLineWidth(2);
323 grp->SetLineWidth(2);
static void drawHist(int ilmr, int unit, TCanvas *canv=nullptr)
static void regionAndSector(int ilmr, int &ireg, int &isect, int &idcc, int &iside)
static void drawGlobalBoundaries(int lineColor)
static TString smName(int ism)
static TH2 * getHist(int ilmr, int unit)
static TGraph * getBoundary(int ilmr, int unit)
static void setBinGlobalHist(TH2 *h, int ix, int iy, int iz, float val)
static TString smName(int ism)
static TGraph * getGraphBoundary(int type, int num, bool global=false)
Abs< T >::type abs(const T &t)
Basic3DVector unit() const
static TGraph * getGraphBoundary(int type, int num, int iz=-1, int xside=0)
static TH2 * getGlobalHist(const char *name=nullptr)
std::string tname(const std::string &tableName, const std::string &schemaVersion)
The Signals That Services Can Subscribe To This is based on ActivityRegistry h
Helper function to determine trigger accepts.
int ism(int ieta, int iphi)