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
 
 EDProducer (const EDProducer &)=delete
 
bool hasAbilityToProduceInBeginLumis () const final
 
bool hasAbilityToProduceInBeginProcessBlocks () const final
 
bool hasAbilityToProduceInBeginRuns () const final
 
bool hasAbilityToProduceInEndLumis () const final
 
bool hasAbilityToProduceInEndProcessBlocks () const final
 
bool hasAbilityToProduceInEndRuns () const final
 
const EDProduceroperator= (const EDProducer &)=delete
 

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

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, tracks, tracksToken_, TrackTransformer::transform(), tTopoToken_, usePV_, findQualityFiles::v, TrackingRecHit::valid, AlignmentTracksFromVertexSelector_cfi::vertices, verticesToken_, MediumProperties::xi(), protons_cff::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
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:11724
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
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:46
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
AlignmentTracksFromVertexSelector_cfi.vertices
vertices
Definition: AlignmentTracksFromVertexSelector_cfi.py:5
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
sDETS
static const std::vector< std::string > sDETS
Definition: TrackingRecoMaterialAnalyser.cc:31
tracks
const uint32_t *__restrict__ const HitContainer *__restrict__ TkSoA *__restrict__ tracks
Definition: CAHitNtupletGeneratorKernelsImpl.h:176
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
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
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
protons_cff.xi
xi
Definition: protons_cff.py:31
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:234
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
DeDxTools::esConsumes
ESGetTokenH3DDVariant esConsumes(std::string const &Reccord, edm::ConsumesCollector &)
Definition: DeDxTools.cc:283
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
TrackerGeometry
Definition: TrackerGeometry.h:14
TrackingRecoMaterialAnalyser::histosEta_
std::unordered_map< std::string, MonitorElement * > histosEta_
Definition: TrackingRecoMaterialAnalyser.cc:51