12 : _currdir(
nullptr), _histoParameters(), _rhm(iC) {}
25 if (!dirname.empty()) {
33 "BeamSpot X position",
39 "BeamSpot Y position",
45 "BeamSpot Z position",
69 _rhm.
makeTProfile(
"bsxvsorbrun",
"BeamSpot X position vs orbit number", 1600, 0.5, 1600. * 16384 + 0.5);
71 _rhm.
makeTProfile(
"bsyvsorbrun",
"BeamSpot Y position vs orbit number", 1600, 0.5, 1600. * 16384 + 0.5);
73 _rhm.
makeTProfile(
"bszvsorbrun",
"BeamSpot Z position vs orbit number", 1600, 0.5, 1600. * 16384 + 0.5);
75 _rhm.
makeTProfile(
"bssigmaxvsorbrun",
"BeamSpot sigmaX vs orbit number", 1600, 0.5, 1600. * 16384 + 0.5);
77 _rhm.
makeTProfile(
"bssigmayvsorbrun",
"BeamSpot sigmaY vs orbit number", 1600, 0.5, 1600. * 16384 + 0.5);
79 _rhm.
makeTProfile(
"bssigmazvsorbrun",
"BeamSpot sigmaZ vs orbit number", 1600, 0.5, 1600. * 16384 + 0.5);
84 sprintf(runname,
"run_%d", nrun);
87 if (currdir ==
nullptr) {
94 (*_hbsxrun)->GetXaxis()->SetTitle(
"X [cm]");
95 (*_hbsxrun)->GetYaxis()->SetTitle(
"Events");
96 (*_hbsyrun)->GetXaxis()->SetTitle(
"Y [cm]");
97 (*_hbsyrun)->GetYaxis()->SetTitle(
"Events");
98 (*_hbszrun)->GetXaxis()->SetTitle(
"Z [cm]");
99 (*_hbszrun)->GetYaxis()->SetTitle(
"Events");
100 (*_hbssigmaxrun)->GetXaxis()->SetTitle(
"sigmaX [cm]");
101 (*_hbssigmaxrun)->GetYaxis()->SetTitle(
"Events");
102 (*_hbssigmayrun)->GetXaxis()->SetTitle(
"sigmaY [cm]");
103 (*_hbssigmayrun)->GetYaxis()->SetTitle(
"Events");
104 (*_hbssigmazrun)->GetXaxis()->SetTitle(
"sigmaZ [cm]");
105 (*_hbssigmazrun)->GetYaxis()->SetTitle(
"Events");
107 (*_hbsxvsorbrun)->GetXaxis()->SetTitle(
"time [orbit#]");
108 (*_hbsxvsorbrun)->GetYaxis()->SetTitle(
"X [cm]");
109 (*_hbsxvsorbrun)->SetCanExtend(TH1::kAllAxes);
110 (*_hbsyvsorbrun)->GetXaxis()->SetTitle(
"time [orbit#]");
111 (*_hbsyvsorbrun)->GetYaxis()->SetTitle(
"Y [cm]");
112 (*_hbsyvsorbrun)->SetCanExtend(TH1::kAllAxes);
113 (*_hbszvsorbrun)->GetXaxis()->SetTitle(
"time [orbit#]");
114 (*_hbszvsorbrun)->GetYaxis()->SetTitle(
"Z [cm]");
115 (*_hbszvsorbrun)->SetCanExtend(TH1::kAllAxes);
116 (*_hbssigmaxvsorbrun)->GetXaxis()->SetTitle(
"time [orbit#]");
117 (*_hbssigmaxvsorbrun)->GetYaxis()->SetTitle(
"sigmaX [cm]");
118 (*_hbssigmaxvsorbrun)->SetCanExtend(TH1::kAllAxes);
119 (*_hbssigmayvsorbrun)->GetXaxis()->SetTitle(
"time [orbit#]");
120 (*_hbssigmayvsorbrun)->GetYaxis()->SetTitle(
"sigmaY [cm]");
121 (*_hbssigmayvsorbrun)->SetCanExtend(TH1::kAllAxes);
122 (*_hbssigmazvsorbrun)->GetXaxis()->SetTitle(
"time [orbit#]");
123 (*_hbssigmazvsorbrun)->GetYaxis()->SetTitle(
"sigmaZ [cm]");
124 (*_hbssigmazvsorbrun)->SetCanExtend(TH1::kAllAxes);
129 (*_hbsxrun)->Fill(bs.
x0());
131 (*_hbsxvsorbrun)->Fill(orbit, bs.
x0());
134 (*_hbsyrun)->Fill(bs.
y0());
136 (*_hbsyvsorbrun)->Fill(orbit, bs.
y0());
139 (*_hbszrun)->Fill(bs.
z0());
141 (*_hbszvsorbrun)->Fill(orbit, bs.
z0());
148 (*_hbssigmazrun)->Fill(bs.
sigmaZ());
150 (*_hbssigmaxvsorbrun)->Fill(orbit, bs.
BeamWidthX());
152 (*_hbssigmayvsorbrun)->Fill(orbit, bs.
BeamWidthY());
154 (*_hbssigmazvsorbrun)->Fill(orbit, bs.
sigmaZ());
BeamSpotHistogramMaker(edm::ConsumesCollector &&iC)
TProfile ** _hbssigmaxvsorbrun
double z0() const
z coordinate
T getUntrackedParameter(std::string const &, T const &) const
TProfile ** _hbsxvsorbrun
TFileDirectory * _currdir
void book(const std::string dirname="")
TProfile ** _hbssigmayvsorbrun
void beginRun(const unsigned int nrun)
TFileDirectory & tFileDirectory()
TH1F ** makeTH1F(const char *name, const char *title, const unsigned int nbinx, const double xmin, const double xmax)
TProfile ** _hbsyvsorbrun
TProfile ** _hbszvsorbrun
void fill(const unsigned int orbit, const reco::BeamSpot &bs)
TProfile ** makeTProfile(const char *name, const char *title, const unsigned int nbinx, const double xmin, const double xmax)
double BeamWidthX() const
beam width X
~BeamSpotHistogramMaker()
TFileDirectory mkdir(const std::string &dir, const std::string &descr="")
create a new subdirectory
void beginRun(const edm::Run &iRun)
double sigmaZ() const
sigma z
double BeamWidthY() const
beam width Y
double y0() const
y coordinate
const edm::ParameterSet _histoParameters
TProfile ** _hbssigmazvsorbrun
double x0() const
x coordinate