CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
HRes2DHit Class Reference

#include <Histograms.h>

Public Types

typedef dqm::legacy::DQMStore DQMStore
 
typedef dqm::legacy::MonitorElement MonitorElement
 

Public Member Functions

void fill (float angleSimSegment, float angleRecSegment, float posSimSegment, float posRecSegment, float etaSimSegment, float phiSimSegment, float sigmaPos, float sigmaAngle)
 
 HRes2DHit (const std::string &name, DQMStore::IBooker &booker, bool doall=true, bool local=true)
 

Private Attributes

bool doall_
 
dqm::reco::MonitorElementhPullAngle
 
dqm::reco::MonitorElementhPullPos
 
dqm::reco::MonitorElementhRecAngle
 
dqm::reco::MonitorElementhRecVsSimAngle
 
dqm::reco::MonitorElementhResAngle
 
dqm::reco::MonitorElementhResAngleVsEta
 
dqm::reco::MonitorElementhResAngleVsPhi
 
dqm::reco::MonitorElementhResPos
 
dqm::reco::MonitorElementhResPosVsEta
 
dqm::reco::MonitorElementhResPosVsPhi
 
dqm::reco::MonitorElementhResPosVsResAngle
 
dqm::reco::MonitorElementhSimAngle
 
std::string name_
 

Detailed Description

Definition at line 217 of file Histograms.h.

Member Typedef Documentation

◆ DQMStore

Definition at line 219 of file Histograms.h.

◆ MonitorElement

Definition at line 220 of file Histograms.h.

Constructor & Destructor Documentation

◆ HRes2DHit()

HRes2DHit::HRes2DHit ( const std::string &  name,
DQMStore::IBooker booker,
bool  doall = true,
bool  local = true 
)
inline

Definition at line 222 of file Histograms.h.

References dqm::implementation::IBooker::book1D(), dqm::implementation::IBooker::book2D(), DTRecHitClients_cfi::doall, doall_, hPullAngle, hPullPos, hRecAngle, hRecVsSimAngle, hResAngle, hResAngleVsEta, hResAngleVsPhi, hResPos, hResPosVsEta, hResPosVsPhi, hResPosVsResAngle, hSimAngle, mergeVDriftHistosByStation::name, findAndChange::pre, dqm::implementation::NavigatorBase::setCurrentFolder(), and AlCaHLTBitMon_QueryRunRegistry::string.

222  {
223  doall_ = doall;
224  std::string pre = "2D_";
225  pre += name;
226  booker.setCurrentFolder("DT/2DSegments/Res/");
227  if (doall) {
228  hRecAngle = booker.book1D(pre + "_hRecAngle", "Distribution of Rec segment angles;angle (rad)", 100, -1.5, 1.5);
229  hSimAngle =
230  booker.book1D(pre + "_hSimAngle", "Distribution of segment angles from SimHits;angle (rad)", 100, -1.5, 1.5);
232  booker.book2D(pre + "_hRecVsSimAngle", "Rec angle vs sim angle;angle (rad)", 100, -1.5, 1.5, 100, -1.5, 1.5);
233  hResAngleVsEta = booker.book2D(pre + "_hResAngleVsEta",
234  "Residual on 2D segment angle vs Eta; #eta; res (rad)",
235  100,
236  -2.5,
237  2.5,
238  200,
239  -0.2,
240  0.2);
241  hResAngleVsPhi = booker.book2D(pre + "_hResAngleVsPhi",
242  "Residual on 2D segment angle vs Phi; #phi (rad);res (rad)",
243  100,
244  -3.2,
245  3.2,
246  150,
247  -0.2,
248  0.2);
249  hResPosVsEta = booker.book2D(
250  pre + "_hResPosVsEta", "Residual on 2D segment position vs Eta;#eta;res (cm)", 100, -2.5, 2.5, 150, -0.2, 0.2);
251  hResPosVsPhi = booker.book2D(pre + "_hResPosVsPhi",
252  "Residual on 2D segment position vs Phi;#phi (rad);res (cm)",
253  100,
254  -3.2,
255  3.2,
256  150,
257  -0.2,
258  0.2);
259  hResPosVsResAngle = booker.book2D(pre + "_hResPosVsResAngle",
260  "Residual on 2D segment position vs Residual on 2D "
261  "segment angle;angle (rad);res (cm)",
262  100,
263  -0.3,
264  0.3,
265  150,
266  -0.2,
267  0.2);
268  }
269  hResAngle = booker.book1D(
270  pre + "_hResAngle", "Residual on 2D segment angle;angle_{rec}-angle_{sim} (rad)", 50, -0.01, 0.01);
271  hResPos = booker.book1D(
272  pre + "_hResPos", "Residual on 2D segment position (x at SL center);x_{rec}-x_{sim} (cm)", 150, -0.2, 0.2);
273 
274  booker.setCurrentFolder("DT/2DSegments/Pull/");
275  hPullAngle = booker.book1D(
276  pre + "_hPullAngle", "Pull on 2D segment angle;(angle_{rec}-angle_{sim})/#sigma (rad)", 150, -5, 5);
277  hPullPos = booker.book1D(pre + "_hPullPos",
278  "Pull on 2D segment position (x at SL "
279  "center);(x_{rec}-x_{sim} (cm))/#sigma",
280  150,
281  -5,
282  5);
283  }
virtual void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:36
dqm::reco::MonitorElement * hResAngleVsEta
Definition: Histograms.h:316
dqm::reco::MonitorElement * hResAngle
Definition: Histograms.h:315
dqm::reco::MonitorElement * hResAngleVsPhi
Definition: Histograms.h:317
dqm::reco::MonitorElement * hResPosVsResAngle
Definition: Histograms.h:321
dqm::reco::MonitorElement * hRecAngle
Definition: Histograms.h:312
dqm::reco::MonitorElement * hPullPos
Definition: Histograms.h:323
dqm::reco::MonitorElement * hResPos
Definition: Histograms.h:318
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY, FUNC onbooking=NOOP())
Definition: DQMStore.h:221
dqm::reco::MonitorElement * hResPosVsEta
Definition: Histograms.h:319
dqm::reco::MonitorElement * hSimAngle
Definition: Histograms.h:313
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX, FUNC onbooking=NOOP())
Definition: DQMStore.h:98
dqm::reco::MonitorElement * hResPosVsPhi
Definition: Histograms.h:320
bool doall_
Definition: Histograms.h:326
dqm::reco::MonitorElement * hPullAngle
Definition: Histograms.h:322
dqm::reco::MonitorElement * hRecVsSimAngle
Definition: Histograms.h:314

Member Function Documentation

◆ fill()

void HRes2DHit::fill ( float  angleSimSegment,
float  angleRecSegment,
float  posSimSegment,
float  posRecSegment,
float  etaSimSegment,
float  phiSimSegment,
float  sigmaPos,
float  sigmaAngle 
)
inline

Definition at line 285 of file Histograms.h.

References doall_, dqm::impl::MonitorElement::Fill(), hPullAngle, hPullPos, hRecAngle, hRecVsSimAngle, hResAngle, hResAngleVsEta, hResAngleVsPhi, hResPos, hResPosVsEta, hResPosVsPhi, hResPosVsResAngle, hSimAngle, and DTHitQualityUtils::sigmaAngle().

292  {
293  float resAngle = angleRecSegment - angleSimSegment;
294  hResAngle->Fill(resAngle);
295  float resPos = posRecSegment - posSimSegment;
296  hResPos->Fill(resPos);
297  hPullAngle->Fill(resAngle / sigmaAngle);
298  hPullPos->Fill(resPos / sigmaPos);
299  if (doall_) {
300  hRecAngle->Fill(angleRecSegment);
301  hSimAngle->Fill(angleSimSegment);
302  hRecVsSimAngle->Fill(angleSimSegment, angleRecSegment);
303  hResAngleVsEta->Fill(etaSimSegment, resAngle);
304  hResAngleVsPhi->Fill(phiSimSegment, resAngle);
305  hResPosVsEta->Fill(etaSimSegment, resPos);
306  hResPosVsPhi->Fill(phiSimSegment, resPos);
307  hResPosVsResAngle->Fill(resAngle, resPos);
308  }
309  }
dqm::reco::MonitorElement * hResAngleVsEta
Definition: Histograms.h:316
dqm::reco::MonitorElement * hResAngle
Definition: Histograms.h:315
dqm::reco::MonitorElement * hResAngleVsPhi
Definition: Histograms.h:317
void Fill(long long x)
dqm::reco::MonitorElement * hResPosVsResAngle
Definition: Histograms.h:321
dqm::reco::MonitorElement * hRecAngle
Definition: Histograms.h:312
dqm::reco::MonitorElement * hPullPos
Definition: Histograms.h:323
dqm::reco::MonitorElement * hResPos
Definition: Histograms.h:318
dqm::reco::MonitorElement * hResPosVsEta
Definition: Histograms.h:319
dqm::reco::MonitorElement * hSimAngle
Definition: Histograms.h:313
double sigmaAngle(double Angle, double sigma2TanAngle)
dqm::reco::MonitorElement * hResPosVsPhi
Definition: Histograms.h:320
bool doall_
Definition: Histograms.h:326
dqm::reco::MonitorElement * hPullAngle
Definition: Histograms.h:322
dqm::reco::MonitorElement * hRecVsSimAngle
Definition: Histograms.h:314

Member Data Documentation

◆ doall_

bool HRes2DHit::doall_
private

Definition at line 326 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ hPullAngle

dqm::reco::MonitorElement* HRes2DHit::hPullAngle
private

Definition at line 322 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ hPullPos

dqm::reco::MonitorElement* HRes2DHit::hPullPos
private

Definition at line 323 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ hRecAngle

dqm::reco::MonitorElement* HRes2DHit::hRecAngle
private

Definition at line 312 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ hRecVsSimAngle

dqm::reco::MonitorElement* HRes2DHit::hRecVsSimAngle
private

Definition at line 314 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ hResAngle

dqm::reco::MonitorElement* HRes2DHit::hResAngle
private

Definition at line 315 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ hResAngleVsEta

dqm::reco::MonitorElement* HRes2DHit::hResAngleVsEta
private

Definition at line 316 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ hResAngleVsPhi

dqm::reco::MonitorElement* HRes2DHit::hResAngleVsPhi
private

Definition at line 317 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ hResPos

dqm::reco::MonitorElement* HRes2DHit::hResPos
private

Definition at line 318 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ hResPosVsEta

dqm::reco::MonitorElement* HRes2DHit::hResPosVsEta
private

Definition at line 319 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ hResPosVsPhi

dqm::reco::MonitorElement* HRes2DHit::hResPosVsPhi
private

Definition at line 320 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ hResPosVsResAngle

dqm::reco::MonitorElement* HRes2DHit::hResPosVsResAngle
private

Definition at line 321 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ hSimAngle

dqm::reco::MonitorElement* HRes2DHit::hSimAngle
private

Definition at line 313 of file Histograms.h.

Referenced by fill(), and HRes2DHit().

◆ name_

std::string HRes2DHit::name_
private

Definition at line 325 of file Histograms.h.