CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
TrackingRecoMaterialAnalyser Class Reference
Inheritance diagram for TrackingRecoMaterialAnalyser:
DQMEDAnalyzer edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void bookHistograms (DQMStore::IBooker &i, edm::Run const &, edm::EventSetup const &) override
 
 TrackingRecoMaterialAnalyser (const edm::ParameterSet &)
 
 ~TrackingRecoMaterialAnalyser () override
 
- Public Member Functions inherited from DQMEDAnalyzer
void accumulate (edm::Event const &event, edm::EventSetup const &setup) final
 
void beginLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void beginRun (edm::Run const &run, edm::EventSetup const &setup) final
 
void beginStream (edm::StreamID id) final
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQMEDAnalyzer ()
 
void endLuminosityBlock (edm::LuminosityBlock const &lumi, edm::EventSetup const &setup) final
 
void endRun (edm::Run const &run, edm::EventSetup const &setup) final
 
virtual bool getCanSaveByLumi ()
 
- Public Member Functions inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
 EDProducer ()=default
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 

Private Member Functions

bool isDoubleSided (const TrackerTopology *tTopo, DetId id)
 

Private Attributes

const edm::EDGetTokenT< reco::BeamSpotbeamspotToken_
 
MonitorElementdeltaP_in_out_vs_eta_
 
MonitorElementdeltaP_in_out_vs_eta_2d_
 
MonitorElementdeltaP_in_out_vs_eta_vs_phi_2d_
 
MonitorElementdeltaP_in_out_vs_z_
 
MonitorElementdeltaP_in_out_vs_z_2d_
 
MonitorElementdeltaPl_in_out_vs_eta_
 
MonitorElementdeltaPl_in_out_vs_z_
 
MonitorElementdeltaPt_in_out_2d_
 
MonitorElementdeltaPt_in_out_vs_eta_
 
MonitorElementdeltaPt_in_out_vs_z_
 
std::string folder_
 
MonitorElementhisto_RZ_
 
MonitorElementhisto_RZ_Ori_
 
std::unordered_map< std::string, MonitorElement * > histosEta_
 
std::unordered_map< std::string, MonitorElement * > histosOriEta_
 
MonitorElementP_vs_eta_2d_
 
TrackTransformer refitter_
 
const edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecordtrackerGeometryTokenRun_
 
const edm::EDGetTokenT< reco::TrackCollectiontracksToken_
 
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcdtTopoToken_
 
bool usePV_
 
const edm::EDGetTokenT< reco::VertexCollectionverticesToken_
 

Additional Inherited Members

- Public Types inherited from DQMEDAnalyzer
typedef dqm::reco::DQMStore DQMStore
 
typedef dqm::reco::MonitorElement MonitorElement
 
- Public Types inherited from edm::stream::EDProducer< edm::GlobalCache< DQMEDAnalyzerGlobalCache >, edm::EndRunProducer, edm::EndLuminosityBlockProducer, edm::Accumulator >
typedef CacheContexts< T... > CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T... > HasAbility
 
typedef CacheTypes::LuminosityBlockCache LuminosityBlockCache
 
typedef LuminosityBlockContextT< LuminosityBlockCache, RunCache, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static void globalEndJob (DQMEDAnalyzerGlobalCache const *)
 
static void globalEndLuminosityBlockProduce (edm::LuminosityBlock &lumi, edm::EventSetup const &setup, LuminosityBlockContext const *context)
 
static void globalEndRunProduce (edm::Run &run, edm::EventSetup const &setup, RunContext const *context)
 
static std::unique_ptr< DQMEDAnalyzerGlobalCacheinitializeGlobalCache (edm::ParameterSet const &)
 
- Protected Member Functions inherited from DQMEDAnalyzer
uint64_t meId () const
 
- Protected Attributes inherited from DQMEDAnalyzer
edm::EDPutTokenT< DQMTokenlumiToken_
 
edm::EDPutTokenT< DQMTokenrunToken_
 
unsigned int streamId_
 

Detailed Description

Definition at line 33 of file TrackingRecoMaterialAnalyser.cc.

Constructor & Destructor Documentation

◆ TrackingRecoMaterialAnalyser()

TrackingRecoMaterialAnalyser::TrackingRecoMaterialAnalyser ( const edm::ParameterSet iPSet)
explicit

Definition at line 68 of file TrackingRecoMaterialAnalyser.cc.

69  : refitter_(iPSet, consumesCollector()),
70  tracksToken_(consumes<reco::TrackCollection>(iPSet.getParameter<edm::InputTag>("tracks"))),
71  beamspotToken_(consumes<reco::BeamSpot>(iPSet.getParameter<edm::InputTag>("beamspot"))),
72  verticesToken_(mayConsume<reco::VertexCollection>(iPSet.getParameter<edm::InputTag>("vertices"))),
73  trackerGeometryTokenRun_(esConsumes<edm::Transition::BeginRun>()),
74  tTopoToken_(esConsumes()),
75  usePV_(iPSet.getParameter<bool>("usePV")),
76  folder_(iPSet.getParameter<std::string>("folder")),
77  histo_RZ_(nullptr),
78  histo_RZ_Ori_(nullptr),
79  deltaPt_in_out_2d_(nullptr),
80  deltaP_in_out_vs_eta_(nullptr),
81  deltaP_in_out_vs_z_(nullptr),
82  deltaP_in_out_vs_eta_2d_(nullptr),
84  deltaP_in_out_vs_z_2d_(nullptr),
85  deltaPt_in_out_vs_eta_(nullptr),
86  deltaPt_in_out_vs_z_(nullptr),
87  deltaPl_in_out_vs_eta_(nullptr),
88  deltaPl_in_out_vs_z_(nullptr),
89  P_vs_eta_2d_(nullptr) {}

◆ ~TrackingRecoMaterialAnalyser()

TrackingRecoMaterialAnalyser::~TrackingRecoMaterialAnalyser ( void  )
override

Definition at line 92 of file TrackingRecoMaterialAnalyser.cc.

92 {}

Member Function Documentation

◆ analyze()

void TrackingRecoMaterialAnalyser::analyze ( const edm::Event event,
const edm::EventSetup setup 
)
overridevirtual

Reimplemented from DQMEDAnalyzer.

Definition at line 172 of file TrackingRecoMaterialAnalyser.cc.

172  {
173  using namespace edm;
174  using namespace reco;
175  using namespace std;
176 
178 
181 
182  // Get the TrackerTopology
183  const TrackerTopology *const tTopo = &setup.getData(tTopoToken_);
184 
185  // Get Tracks
186  event.getByToken(tracksToken_, tracks);
187  if (!tracks.isValid() || tracks->empty()) {
188  LogInfo("TrackingRecoMaterialAnalyser") << "Invalid or empty track collection" << endl;
189  return;
190  }
191 
192  // Track Selector
193  auto selector = [](const Track &track, const reco::Vertex::Point &pv) -> bool {
194  return (track.quality(track.qualityByName("highPurity")) && track.dxy(pv) < 0.01 &&
195  track.hitPattern().numberOfLostTrackerHits(HitPattern::MISSING_OUTER_HITS) == 0);
196  };
197 
198  // Get BeamSpot
200  event.getByToken(beamspotToken_, beamSpot);
201  // Bail out if missing
202  if (!beamSpot.isValid())
203  return;
204 
205  reco::Vertex::Point pv(beamSpot->position());
206  if (usePV_) {
207  event.getByToken(verticesToken_, vertices);
208  if (vertices.isValid() && !vertices->empty()) {
209  // Since we need to use eta and Z information from the tracks, in
210  // order not to have the reco material distribution washed out due
211  // to geometrical effects, we need to confine the PV to some small
212  // region.
213  const Vertex &v = (*vertices)[0];
214  if (!v.isFake() && v.ndof() > 4 && std::fabs(v.z()) < 24 && std::fabs(v.position().rho()) < 2)
215  pv = v.position();
216  }
217  }
218 
219  // Main idea:
220  // * select first good tracks in input, according to reasonable criteria
221  // * refit the tracks so that we have access to the TrajectoryMeasurements
222  // that internally have all the information about the TSOS on all
223  // crossed layers. We need the refit track and not the original one so
224  // that we are able to correctly compute the path travelled by the track
225  // within the detector, using its updated TSOS. The material description
226  // can in principle be derived also directly from the rechits, via the
227  // det()[(->)GeomDet *]->mediumProperties chain, but that would simply give the
228  // face values, not the "real" ones used while propagating the track.
229  // * Loop on all measurements, extract the information about the TSOS,
230  // its surface and its mediumProperties
231  // * Make plots for the untouched material properties, but also for the
232  // ones corrected by the track direction, since the material properties,
233  // according to the documentation, should refer to normal incidence of
234  // the track, which is seldom the case, according to the current direction
235  TrajectoryStateOnSurface current_tsos;
236  DetId current_det;
237  for (auto const &track : *tracks) {
238  if (!selector(track, pv))
239  continue;
240  auto const &inner = track.innerMomentum();
241  auto const &outer = track.outerMomentum();
242  deltaP_in_out_vs_eta_->Fill(inner.eta(), inner.R() - outer.R());
243  deltaP_in_out_vs_z_->Fill(track.outerZ(), inner.R() - outer.R());
244  deltaP_in_out_vs_eta_2d_->Fill(inner.eta(), inner.R() - outer.R());
245  deltaP_in_out_vs_eta_vs_phi_2d_->Fill(inner.eta(), inner.phi(), inner.R() - outer.R());
246  deltaP_in_out_vs_z_2d_->Fill(track.outerZ(), inner.R() - outer.R());
247  deltaPt_in_out_vs_eta_->Fill(inner.eta(), inner.rho() - outer.rho());
248  deltaPt_in_out_vs_z_->Fill(track.outerZ(), inner.rho() - outer.rho());
249  deltaPl_in_out_vs_eta_->Fill(inner.eta(), inner.z() - outer.z());
250  deltaPl_in_out_vs_z_->Fill(track.outerZ(), inner.z() - outer.z());
251  deltaPt_in_out_2d_->Fill(track.outerZ(), track.outerPosition().rho(), inner.rho() - outer.rho());
252  P_vs_eta_2d_->Fill(track.eta(), track.p());
253  vector<Trajectory> traj = refitter_.transform(track);
254  if (traj.size() > 1 || traj.empty())
255  continue;
256  for (auto const &tm : traj.front().measurements()) {
257  if (tm.recHit().get() &&
258  (tm.recHitR().type() == TrackingRecHit::valid || tm.recHitR().type() == TrackingRecHit::missing)) {
259  current_tsos = tm.updatedState().isValid() ? tm.updatedState() : tm.forwardPredictedState();
260  auto const &localP = current_tsos.localMomentum();
261  current_det = tm.recHit()->geographicalId();
262  const Surface &surface = current_tsos.surface();
263  assert(tm.recHit()->surface() == &surface);
264  if (!surface.mediumProperties().isValid()) {
265  LogError("TrackingRecoMaterialAnalyser")
266  << "Medium properties for material linked to detector"
267  << " are invalid at: " << current_tsos.globalPosition() << " " << (SiStripDetId)current_det << endl;
268  assert(0);
269  continue;
270  }
271  float p2 = localP.mag2();
272  float xf = std::abs(std::sqrt(p2) / localP.z());
273  float ori_xi = surface.mediumProperties().xi();
274  float ori_radLen = surface.mediumProperties().radLen();
275  float xi = ori_xi * xf;
276  float radLen = ori_radLen * xf;
277 
278  // NOTA BENE: THIS ASSUMES THAT THE TRACKS HAVE BEEN PRODUCED
279  // WITH SPLITTING, AS IS THE CASE FOR THE generalTracks
280  // collection.
281 
282  // Since there are double-sided (glued) modules all over the
283  // tracker, the material budget has been internally
284  // partitioned in two equal components, so that each single
285  // layer will receive half of the correct radLen. For this
286  // reason, only for the double-sided components, we rescale
287  // the obtained radLen by 2.
288 
289  // In particular see code here:
290  // http://cmslxr.fnal.gov/dxr/CMSSW_8_0_5/source/Geometry/TrackerGeometryBuilder/src/TrackerGeomBuilderFromGeometricDet.cc#213
291  // where, in the SiStrip Tracker, if the module has a partner
292  // (i.e. it's a glued detector) the plane is built with a
293  // scaling of 0.5. The actual plane is built few lines below:
294  // http://cmslxr.fnal.gov/dxr/CMSSW_8_0_5/source/Geometry/TrackerGeometryBuilder/src/TrackerGeomBuilderFromGeometricDet.cc#287
295 
296  if (isDoubleSided(tTopo, current_det)) {
297  LogTrace("TrackingRecoMaterialAnalyser")
298  << "Eta: " << track.eta() << " " << sDETS[current_det.subdetId()] << tTopo->layer(current_det)
299  << " has ori_radLen: " << ori_radLen << " and ori_xi: " << xi << " and has radLen: " << radLen
300  << " and xi: " << xi << endl;
301  ori_radLen *= 2.;
302  radLen *= 2.;
303  }
304 
305  histosOriEta_[sDETS[current_det.subdetId()] + to_string(tTopo->layer(current_det))]->Fill(
306  current_tsos.globalPosition().eta(), ori_radLen);
307  histosEta_[sDETS[current_det.subdetId()] + to_string(tTopo->layer(current_det))]->Fill(
308  current_tsos.globalPosition().eta(), radLen);
309  histo_RZ_Ori_->Fill(current_tsos.globalPosition().z(), current_tsos.globalPosition().perp(), ori_radLen);
310  histo_RZ_->Fill(current_tsos.globalPosition().z(), current_tsos.globalPosition().perp(), radLen);
311  LogInfo("TrackingRecoMaterialAnalyser")
312  << "Eta: " << track.eta() << " " << sDETS[current_det.subdetId()] << tTopo->layer(current_det)
313  << " has ori_radLen: " << ori_radLen << " and ori_xi: " << xi << " and has radLen: " << radLen
314  << " and xi: " << xi << endl;
315  }
316  }
317  }
318 }

References funct::abs(), cms::cuda::assert(), pwdgSkimBPark_cfi::beamSpot, beamspotToken_, deltaP_in_out_vs_eta_, deltaP_in_out_vs_eta_2d_, deltaP_in_out_vs_eta_vs_phi_2d_, deltaP_in_out_vs_z_, deltaP_in_out_vs_z_2d_, deltaPl_in_out_vs_eta_, deltaPl_in_out_vs_z_, deltaPt_in_out_2d_, deltaPt_in_out_vs_eta_, deltaPt_in_out_vs_z_, PV3DBase< T, PVType, FrameType >::eta(), dqm::impl::MonitorElement::Fill(), HcalObjRepresent::Fill(), TrajectoryStateOnSurface::globalPosition(), histo_RZ_, histo_RZ_Ori_, histosEta_, histosOriEta_, SurfaceOrientation::inner, isDoubleSided(), MediumProperties::isValid(), TrajectoryStateOnSurface::isValid(), TrackerTopology::layer(), TrajectoryStateOnSurface::localMomentum(), LogTrace, Surface::mediumProperties(), TrackingRecHit::missing, SurfaceOrientation::outer, p2, P_vs_eta_2d_, PV3DBase< T, PVType, FrameType >::perp(), MetAnalyzer::pv(), MediumProperties::radLen(), fastSimProducer_cff::radLen, refitter_, sDETS, TrackTransformer::setServices(), singleTopDQM_cfi::setup, mathSSE::sqrt(), DetId::subdetId(), TrajectoryStateOnSurface::surface(), HLT_FULL_cff::track, PDWG_EXOHSCP_cff::tracks, tracksToken_, TrackTransformer::transform(), tTopoToken_, usePV_, findQualityFiles::v, TrackingRecHit::valid, pwdgSkimBPark_cfi::vertices, verticesToken_, hybridSuperClusters_cfi::xi, MediumProperties::xi(), and PV3DBase< T, PVType, FrameType >::z().

◆ bookHistograms()

void TrackingRecoMaterialAnalyser::bookHistograms ( DQMStore::IBooker i,
edm::Run const &  ,
edm::EventSetup const &  setup 
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 95 of file TrackingRecoMaterialAnalyser.cc.

97  {
98  using namespace std;
99  const TrackerGeometry &trackerGeometry = setup.getData(trackerGeometryTokenRun_);
100 
101  ibook.setCurrentFolder(folder_);
102 
103  // Histogram to store the radiation length map, in the R-Z plane,
104  // gathering numbers directly from the trackerRecoMaterial.xml
105  // file. The numbers are not corrected for the track angle.
106  histo_RZ_Ori_ = ibook.bookProfile2D("OriRadLen", "Original_RadLen", 600, -300., 300, 120, 0., 120., 0., 1.);
107 
108  // Histogram to store the radiation length map, as before, but
109  // correcting the numbers with the track angle. This represents the
110  // real material seen by the track.
111  histo_RZ_ = ibook.bookProfile2D("RadLen", "RadLen", 600, -300., 300, 120, 0., 120., 0., 1.);
112 
113  // Histogram to show the deltaP Out-In in the eta-phi plane.
114  deltaP_in_out_vs_eta_vs_phi_2d_ = ibook.bookProfile2D(
115  "DeltaP_in_out_vs_eta_vs_phi_2d", "DeltaP_in_out_vs_eta_vs_phi_2d", 100, -3.0, 3.0, 100, -3.15, 3.15, 0., 100.);
116 
117  // Histogram to show the deltaP Out-In vs eta.
119  ibook.book2D("DeltaP_in_out_vs_eta_2d", "DeltaP_in_out_vs_eta_2d", 100, -3.0, 3.0, 100, 0., 1);
120 
121  // Histogram to show the deltaP Out-In vs Z. The Z coordinate is the
122  // one computed at the outermost hit.
123  deltaP_in_out_vs_z_2d_ = ibook.book2D("DeltaP_in_out_vs_z_2d", "DeltaP_in_out_vs_z_2d", 600, -300, 300, 200., -1, 1.);
124 
125  // Histogram to show the deltaP Out-In vs eta. The eta is the one
126  // computed at the innermost hit.
128  ibook.bookProfile("DeltaP_in_out_vs_eta", "DeltaP_in_out_vs_eta", 100, -3.0, 3.0, -100., 100.);
129  deltaP_in_out_vs_z_ = ibook.bookProfile("DeltaP_in_out_vs_z", "DeltaP_in_out_vs_z", 600, -300, 300, -100., 100.);
130 
131  // Histogram to show the delta_Pt Out-In vs eta. The eta is the one
132  // computed at the innermost hit.
134  ibook.bookProfile("DeltaPt_in_out_vs_eta", "DeltaPt_in_out_vs_eta", 100, -3.0, 3.0, -100., 100.);
135 
136  // Histogram to show the delta_Pt Out-In vs Z. The Z is the one
137  // computed at the outermost hit.
138  deltaPt_in_out_vs_z_ = ibook.bookProfile("DeltaPt_in_out_vs_z", "DeltaPt_in_out_vs_z", 600, -300, 300, -100., 100);
139 
140  // Histogram to show the delta_Pl Out-In vs eta. The eta is the one
141  // computed at the innermost hit.
143  ibook.bookProfile("DeltaPz_in_out_vs_eta", "DeltaPz_in_out_vs_eta", 100, -3.0, 3.0, -100., 100.);
144 
145  // Histogram to show the delta_Pl Out-In vs Z. The Z is the one
146  // computed at the outermost hit.
147  deltaPl_in_out_vs_z_ = ibook.bookProfile("DeltaPz_in_out_vs_z", "DeltaPz_in_out_vs_z", 600, -300, 300, -100., 100.);
148 
149  // Histogram to show the delta_Pt Out-In in the Z-R plane. Z and R
150  // are related to the outermost hit.
151  deltaPt_in_out_2d_ = ibook.bookProfile2D("DeltaPt 2D", "DeltaPt 2D", 600, -300., 300, 120, 0., 120., -100., 100.);
152 
153  // Histogram to show the distribution of p vs eta for all tracks.
154  P_vs_eta_2d_ = ibook.book2D("P_vs_eta_2d", "P_vs_eta_2d", 100, -3.0, 3.0, 100., 0., 5.);
155  char title[50];
156  char key[20];
157  for (unsigned int det = 1; det < sDETS.size(); ++det) {
158  for (unsigned int sub_det = 1; sub_det <= trackerGeometry.numberOfLayers(det); ++sub_det) {
159  memset(title, 0, sizeof(title));
160  snprintf(title, sizeof(title), "Original_RadLen_vs_Eta_%s%d", sDETS[det].data(), sub_det);
161  snprintf(key, sizeof(key), "%s%d", sDETS[det].data(), sub_det);
162  histosOriEta_.insert(
163  make_pair<string, MonitorElement *>(key, ibook.bookProfile(title, title, 250, -5.0, 5.0, 0., 1.)));
164  snprintf(title, sizeof(title), "RadLen_vs_Eta_%s%d", sDETS[det].data(), sub_det);
165  histosEta_.insert(
166  make_pair<string, MonitorElement *>(key, ibook.bookProfile(title, title, 250, -5.0, 5.0, 0., 1.)));
167  }
168  }
169 }

References dqm::implementation::IBooker::book2D(), dqm::implementation::IBooker::bookProfile(), dqm::implementation::IBooker::bookProfile2D(), data, deltaP_in_out_vs_eta_, deltaP_in_out_vs_eta_2d_, deltaP_in_out_vs_eta_vs_phi_2d_, deltaP_in_out_vs_z_, deltaP_in_out_vs_z_2d_, deltaPl_in_out_vs_eta_, deltaPl_in_out_vs_z_, deltaPt_in_out_2d_, deltaPt_in_out_vs_eta_, deltaPt_in_out_vs_z_, folder_, histo_RZ_, histo_RZ_Ori_, histosEta_, histosOriEta_, crabWrapper::key, TrackerGeometry::numberOfLayers(), P_vs_eta_2d_, sDETS, dqm::implementation::NavigatorBase::setCurrentFolder(), singleTopDQM_cfi::setup, runGCPTkAlMap::title, and trackerGeometryTokenRun_.

◆ isDoubleSided()

bool TrackingRecoMaterialAnalyser::isDoubleSided ( const TrackerTopology tTopo,
DetId  id 
)
inlineprivate

Definition at line 41 of file TrackingRecoMaterialAnalyser.cc.

41 { return (tTopo->glued(id)); }

References TrackerTopology::glued().

Referenced by analyze().

Member Data Documentation

◆ beamspotToken_

const edm::EDGetTokenT<reco::BeamSpot> TrackingRecoMaterialAnalyser::beamspotToken_
private

Definition at line 44 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze().

◆ deltaP_in_out_vs_eta_

MonitorElement* TrackingRecoMaterialAnalyser::deltaP_in_out_vs_eta_
private

Definition at line 55 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ deltaP_in_out_vs_eta_2d_

MonitorElement* TrackingRecoMaterialAnalyser::deltaP_in_out_vs_eta_2d_
private

Definition at line 57 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ deltaP_in_out_vs_eta_vs_phi_2d_

MonitorElement* TrackingRecoMaterialAnalyser::deltaP_in_out_vs_eta_vs_phi_2d_
private

Definition at line 58 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ deltaP_in_out_vs_z_

MonitorElement* TrackingRecoMaterialAnalyser::deltaP_in_out_vs_z_
private

Definition at line 56 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ deltaP_in_out_vs_z_2d_

MonitorElement* TrackingRecoMaterialAnalyser::deltaP_in_out_vs_z_2d_
private

Definition at line 59 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ deltaPl_in_out_vs_eta_

MonitorElement* TrackingRecoMaterialAnalyser::deltaPl_in_out_vs_eta_
private

Definition at line 62 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ deltaPl_in_out_vs_z_

MonitorElement* TrackingRecoMaterialAnalyser::deltaPl_in_out_vs_z_
private

Definition at line 63 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ deltaPt_in_out_2d_

MonitorElement* TrackingRecoMaterialAnalyser::deltaPt_in_out_2d_
private

Definition at line 54 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ deltaPt_in_out_vs_eta_

MonitorElement* TrackingRecoMaterialAnalyser::deltaPt_in_out_vs_eta_
private

Definition at line 60 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ deltaPt_in_out_vs_z_

MonitorElement* TrackingRecoMaterialAnalyser::deltaPt_in_out_vs_z_
private

Definition at line 61 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ folder_

std::string TrackingRecoMaterialAnalyser::folder_
private

Definition at line 49 of file TrackingRecoMaterialAnalyser.cc.

Referenced by bookHistograms().

◆ histo_RZ_

MonitorElement* TrackingRecoMaterialAnalyser::histo_RZ_
private

Definition at line 52 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ histo_RZ_Ori_

MonitorElement* TrackingRecoMaterialAnalyser::histo_RZ_Ori_
private

Definition at line 53 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ histosEta_

std::unordered_map<std::string, MonitorElement *> TrackingRecoMaterialAnalyser::histosEta_
private

Definition at line 51 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ histosOriEta_

std::unordered_map<std::string, MonitorElement *> TrackingRecoMaterialAnalyser::histosOriEta_
private

Definition at line 50 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ P_vs_eta_2d_

MonitorElement* TrackingRecoMaterialAnalyser::P_vs_eta_2d_
private

Definition at line 64 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

◆ refitter_

TrackTransformer TrackingRecoMaterialAnalyser::refitter_
private

Definition at line 42 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze().

◆ trackerGeometryTokenRun_

const edm::ESGetToken<TrackerGeometry, TrackerDigiGeometryRecord> TrackingRecoMaterialAnalyser::trackerGeometryTokenRun_
private

Definition at line 46 of file TrackingRecoMaterialAnalyser.cc.

Referenced by bookHistograms().

◆ tracksToken_

const edm::EDGetTokenT<reco::TrackCollection> TrackingRecoMaterialAnalyser::tracksToken_
private

Definition at line 43 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze().

◆ tTopoToken_

const edm::ESGetToken<TrackerTopology, TrackerTopologyRcd> TrackingRecoMaterialAnalyser::tTopoToken_
private

Definition at line 47 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze().

◆ usePV_

bool TrackingRecoMaterialAnalyser::usePV_
private

Definition at line 48 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze().

◆ verticesToken_

const edm::EDGetTokenT<reco::VertexCollection> TrackingRecoMaterialAnalyser::verticesToken_
private

Definition at line 45 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze().

TrackingRecoMaterialAnalyser::deltaPt_in_out_2d_
MonitorElement * deltaPt_in_out_2d_
Definition: TrackingRecoMaterialAnalyser.cc:54
PDWG_EXOHSCP_cff.tracks
tracks
Definition: PDWG_EXOHSCP_cff.py:28
TrackingRecoMaterialAnalyser::refitter_
TrackTransformer refitter_
Definition: TrackingRecoMaterialAnalyser.cc:42
runGCPTkAlMap.title
string title
Definition: runGCPTkAlMap.py:94
TrajectoryStateOnSurface::localMomentum
LocalVector localMomentum() const
Definition: TrajectoryStateOnSurface.h:75
pwdgSkimBPark_cfi.beamSpot
beamSpot
Definition: pwdgSkimBPark_cfi.py:5
HLT_FULL_cff.track
track
Definition: HLT_FULL_cff.py:11713
TrackTransformer::setServices
void setServices(const edm::EventSetup &) override
set the services needed by the TrackTransformer
Definition: TrackTransformer.cc:79
MediumProperties::radLen
float radLen() const
Definition: MediumProperties.h:20
TrackingRecoMaterialAnalyser::P_vs_eta_2d_
MonitorElement * P_vs_eta_2d_
Definition: TrackingRecoMaterialAnalyser.cc:64
edm
HLT enums.
Definition: AlignableModifier.h:19
TrackerTopology
Definition: TrackerTopology.h:16
TrajectoryStateOnSurface::globalPosition
GlobalPoint globalPosition() const
Definition: TrajectoryStateOnSurface.h:65
TrackingRecoMaterialAnalyser::deltaP_in_out_vs_eta_vs_phi_2d_
MonitorElement * deltaP_in_out_vs_eta_vs_phi_2d_
Definition: TrackingRecoMaterialAnalyser.cc:58
hybridSuperClusters_cfi.xi
xi
Definition: hybridSuperClusters_cfi.py:10
TrackTransformer::transform
std::vector< Trajectory > transform(const reco::Track &) const override
Convert a reco::Track into Trajectory.
Definition: TrackTransformer.cc:182
cms::cuda::assert
assert(be >=bs)
Surface
Definition: Surface.h:36
TrackerTopology::layer
unsigned int layer(const DetId &id) const
Definition: TrackerTopology.cc:47
TrackingRecoMaterialAnalyser::beamspotToken_
const edm::EDGetTokenT< reco::BeamSpot > beamspotToken_
Definition: TrackingRecoMaterialAnalyser.cc:44
TrackingRecoMaterialAnalyser::histosOriEta_
std::unordered_map< std::string, MonitorElement * > histosOriEta_
Definition: TrackingRecoMaterialAnalyser.cc:50
reco
fixed size matrix
Definition: AlignmentAlgorithmBase.h:45
edm::LogInfo
Log< level::Info, false > LogInfo
Definition: MessageLogger.h:125
TrackingRecoMaterialAnalyser::tracksToken_
const edm::EDGetTokenT< reco::TrackCollection > tracksToken_
Definition: TrackingRecoMaterialAnalyser.cc:43
findQualityFiles.v
v
Definition: findQualityFiles.py:179
edm::Handle
Definition: AssociativeIterator.h:50
TrackingRecoMaterialAnalyser::isDoubleSided
bool isDoubleSided(const TrackerTopology *tTopo, DetId id)
Definition: TrackingRecoMaterialAnalyser.cc:41
TrackingRecoMaterialAnalyser::usePV_
bool usePV_
Definition: TrackingRecoMaterialAnalyser.cc:48
Surface::mediumProperties
const MediumProperties & mediumProperties() const
Definition: Surface.h:83
singleTopDQM_cfi.setup
setup
Definition: singleTopDQM_cfi.py:37
TrackerGeometry::numberOfLayers
unsigned int numberOfLayers(int subdet) const
Definition: TrackerGeometry.cc:211
TrackingRecoMaterialAnalyser::histo_RZ_Ori_
MonitorElement * histo_RZ_Ori_
Definition: TrackingRecoMaterialAnalyser.cc:53
PV3DBase::z
T z() const
Definition: PV3DBase.h:61
DetId
Definition: DetId.h:17
TrackingRecoMaterialAnalyser::tTopoToken_
const edm::ESGetToken< TrackerTopology, TrackerTopologyRcd > tTopoToken_
Definition: TrackingRecoMaterialAnalyser.cc:47
TrajectoryStateOnSurface
Definition: TrajectoryStateOnSurface.h:16
TrackingRecoMaterialAnalyser::deltaPl_in_out_vs_z_
MonitorElement * deltaPl_in_out_vs_z_
Definition: TrackingRecoMaterialAnalyser.cc:63
TrackerTopology::glued
uint32_t glued(const DetId &id) const
Definition: TrackerTopology.cc:85
TrackingRecoMaterialAnalyser::deltaP_in_out_vs_eta_2d_
MonitorElement * deltaP_in_out_vs_eta_2d_
Definition: TrackingRecoMaterialAnalyser.cc:57
SurfaceOrientation::inner
Definition: Surface.h:19
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
dqm::impl::MonitorElement::Fill
void Fill(long long x)
Definition: MonitorElement.h:290
reco::Track
Definition: Track.h:27
p2
double p2[4]
Definition: TauolaWrapper.h:90
fastSimProducer_cff.radLen
radLen
Definition: fastSimProducer_cff.py:62
DetId::subdetId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Definition: DetId.h:48
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
sDETS
static const std::vector< std::string > sDETS
Definition: TrackingRecoMaterialAnalyser.cc:31
TrackingRecHit::missing
Definition: TrackingRecHit.h:47
PV3DBase::eta
T eta() const
Definition: PV3DBase.h:73
TrackingRecoMaterialAnalyser::deltaPt_in_out_vs_z_
MonitorElement * deltaPt_in_out_vs_z_
Definition: TrackingRecoMaterialAnalyser.cc:61
MetAnalyzer.pv
def pv(vc)
Definition: MetAnalyzer.py:7
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
TrackingRecoMaterialAnalyser::deltaPl_in_out_vs_eta_
MonitorElement * deltaPl_in_out_vs_eta_
Definition: TrackingRecoMaterialAnalyser.cc:62
TrackingRecoMaterialAnalyser::deltaP_in_out_vs_eta_
MonitorElement * deltaP_in_out_vs_eta_
Definition: TrackingRecoMaterialAnalyser.cc:55
TrackingRecHit::valid
Definition: TrackingRecHit.h:46
HcalObjRepresent::Fill
void Fill(HcalDetId &id, double val, std::vector< TH2F > &depth)
Definition: HcalObjRepresent.h:1053
MediumProperties::isValid
bool isValid() const
Definition: MediumProperties.h:26
TrackingRecoMaterialAnalyser::deltaPt_in_out_vs_eta_
MonitorElement * deltaPt_in_out_vs_eta_
Definition: TrackingRecoMaterialAnalyser.cc:60
reco::Vertex::Point
math::XYZPoint Point
point in the space
Definition: Vertex.h:40
std
Definition: JetResolutionObject.h:76
MediumProperties::xi
float xi() const
Definition: MediumProperties.h:24
TrackingRecoMaterialAnalyser::histo_RZ_
MonitorElement * histo_RZ_
Definition: TrackingRecoMaterialAnalyser.cc:52
TrackingRecoMaterialAnalyser::deltaP_in_out_vs_z_2d_
MonitorElement * deltaP_in_out_vs_z_2d_
Definition: TrackingRecoMaterialAnalyser.cc:59
TrackingRecoMaterialAnalyser::trackerGeometryTokenRun_
const edm::ESGetToken< TrackerGeometry, TrackerDigiGeometryRecord > trackerGeometryTokenRun_
Definition: TrackingRecoMaterialAnalyser.cc:46
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
data
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79
TrajectoryStateOnSurface::surface
const SurfaceType & surface() const
Definition: TrajectoryStateOnSurface.h:78
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
LogTrace
#define LogTrace(id)
Definition: MessageLogger.h:224
TrackingRecoMaterialAnalyser::verticesToken_
const edm::EDGetTokenT< reco::VertexCollection > verticesToken_
Definition: TrackingRecoMaterialAnalyser.cc:45
SiStripDetId
Detector identifier class for the strip tracker.
Definition: SiStripDetId.h:18
SurfaceOrientation::outer
Definition: Surface.h:19
crabWrapper.key
key
Definition: crabWrapper.py:19
TrackingRecoMaterialAnalyser::folder_
std::string folder_
Definition: TrackingRecoMaterialAnalyser.cc:49
PV3DBase::perp
T perp() const
Definition: PV3DBase.h:69
edm::InputTag
Definition: InputTag.h:15
reco::Vertex
Definition: Vertex.h:35
TrackingRecoMaterialAnalyser::deltaP_in_out_vs_z_
MonitorElement * deltaP_in_out_vs_z_
Definition: TrackingRecoMaterialAnalyser.cc:56
TrajectoryStateOnSurface::isValid
bool isValid() const
Definition: TrajectoryStateOnSurface.h:54
pwdgSkimBPark_cfi.vertices
vertices
Definition: pwdgSkimBPark_cfi.py:7
TrackerGeometry
Definition: TrackerGeometry.h:14
TrackingRecoMaterialAnalyser::histosEta_
std::unordered_map< std::string, MonitorElement * > histosEta_
Definition: TrackingRecoMaterialAnalyser.cc:51