12Plot content of dbstore_CDCAlignment...root DB payload file
17from ROOT
import Belle2
22 sys.exit(
"No input .root file specified!")
24inputroot = str(sys.argv[1])
25file = ROOT.TFile(inputroot,
"OPEN")
26cdc = file.Get(
"CDCAlignment")
29 160, 160, 160, 160, 160, 160, 160, 160,
30 160, 160, 160, 160, 160, 160,
31 192, 192, 192, 192, 192, 192,
32 224, 224, 224, 224, 224, 224,
33 256, 256, 256, 256, 256, 256,
34 288, 288, 288, 288, 288, 288,
35 320, 320, 320, 320, 320, 320,
36 352, 352, 352, 352, 352, 352,
37 384, 384, 384, 384, 384, 384]
39n_wires = sum(wires_in_layer)
43params = [1, 2, 6, 11, 12, 16]
44param_names = [
'X',
'Y',
'Phi',
'dX',
'dY',
'dPhi']
45param_scales = [0.02, 0.02, 0.001, 0.02, 0.02, 0.001]
48for i
in range(0, len(params)):
49 histosL.append(ROOT.TGraph(56))
50 histosL[-1].SetName(
"g{}".format(i))
51 histosL[-1].SetTitle(param_names[i])
53for ipar
in range(0, len(params)):
54 for layer
in range(0, 56):
56 val = cdc.getGlobalParam(
Belle2.WireID(layer, 511).getEWire(), param)
57 histosL[ipar].SetPoint(layer, layer, val)
59cL = ROOT.TCanvas(
"cL",
"CDCAlignment - Layers", 1600, 1200)
62for i, h
in enumerate(histosL):
65 if params[i]
in [1, 2, 11, 12]:
66 h.GetHistogram().SetMaximum(0.02)
67 h.GetHistogram().SetMinimum(-0.02)
69 h.GetHistogram().SetMaximum(0.0005)
70 h.GetHistogram().SetMinimum(-0.0005)
73cL.SaveAs(inputroot +
".png")
76params = [0, 1, 2, 4, 5, 6, 21]
77param_names = [
'bX',
'bY',
'bZ',
'fX',
'fY',
'fZ',
'sagging']
78scales = [0.03, 0.03, 0.3, 0.03, 0.03, 0.3, 200]
79histosW = [ROOT.TH2F(
"histo_wire_{}".format(ipar),
"histo_{}".format(param_names[ipar]), n_wires, 0,
80 n_wires, 2000, -scales[ipar], scales[ipar])
for ipar
in range(0, len(params))]
82for ipar
in range(0, len(params)):
84 for layer
in range(0, 56):
85 for wire
in range(0, wires_in_layer[layer]):
87 val = cdc.getGlobalParam(
Belle2.WireID(layer, wire).getEWire(), param)
88 histosW[ipar].Fill(wireindex, val)
91cW = ROOT.TCanvas(
"cW",
"CDCAlignment - Wires", 1600, 1200)
94for i, h
in enumerate(histosW):
98cW.SaveAs(inputroot +
"_wires.png")
Class to identify a wire inside the CDC.