test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Member Functions | Private Attributes
TrackingRecoMaterialAnalyser Class Reference
Inheritance diagram for TrackingRecoMaterialAnalyser:
DQMEDAnalyzer edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > > edm::stream::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
virtual void bookHistograms (DQMStore::IBooker &i, edm::Run const &, edm::EventSetup const &) override
 
 TrackingRecoMaterialAnalyser (const edm::ParameterSet &)
 
virtual ~TrackingRecoMaterialAnalyser ()
 
- Public Member Functions inherited from DQMEDAnalyzer
virtual void beginRun (edm::Run const &, edm::EventSetup const &) final
 
virtual void beginStream (edm::StreamID id) final
 
virtual void dqmBeginRun (edm::Run const &, edm::EventSetup const &)
 
 DQMEDAnalyzer (void)
 
virtual void endLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, dqmDetails::NoCache *) const final
 
virtual void endRunSummary (edm::Run const &, edm::EventSetup const &, dqmDetails::NoCache *) const final
 
uint32_t streamId () const
 
- Public Member Functions inherited from edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > >
 EDAnalyzer ()=default
 
- Public Member Functions inherited from edm::stream::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
virtual ~EDAnalyzerBase ()
 
- Public Member Functions inherited from edm::EDConsumerBase
std::vector< ConsumesInfoconsumesInfo () const
 
 EDConsumerBase ()
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
 EDConsumerBase (EDConsumerBase &&)=default
 
ProductResolverIndexAndSkipBit indexFrom (EDGetToken, BranchType, TypeID const &) const
 
void itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
void itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const
 
std::vector
< ProductResolverIndexAndSkipBit >
const & 
itemsToGetFromEvent () const
 
void labelsForToken (EDGetToken iToken, Labels &oLabels) const
 
void modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

bool isDoubleSided (DetId, const TrackerTopology &)
 

Private Attributes

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_
 
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::EDGetTokenT
< reco::TrackCollection
tracksToken_
 

Additional Inherited Members

- Public Types inherited from edm::stream::EDAnalyzer< edm::RunSummaryCache< dqmDetails::NoCache >, edm::LuminosityBlockSummaryCache< dqmDetails::NoCache > >
typedef CacheContexts< T...> CacheTypes
 
typedef CacheTypes::GlobalCache GlobalCache
 
typedef AbilityChecker< T...> HasAbility
 
typedef
CacheTypes::LuminosityBlockCache 
LuminosityBlockCache
 
typedef
LuminosityBlockContextT
< LuminosityBlockCache,
RunCache, GlobalCache
LuminosityBlockContext
 
typedef
CacheTypes::LuminosityBlockSummaryCache 
LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache,
GlobalCache
RunContext
 
typedef CacheTypes::RunSummaryCache RunSummaryCache
 
- Public Types inherited from edm::stream::EDAnalyzerBase
typedef EDAnalyzerAdaptorBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from DQMEDAnalyzer
static std::shared_ptr
< dqmDetails::NoCache
globalBeginLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *)
 
static std::shared_ptr
< dqmDetails::NoCache
globalBeginRunSummary (edm::Run const &, edm::EventSetup const &, RunContext const *)
 
static void globalEndLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *, dqmDetails::NoCache *)
 
static void globalEndRunSummary (edm::Run const &, edm::EventSetup const &, RunContext const *, dqmDetails::NoCache *)
 
- Static Public Member Functions inherited from edm::stream::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from edm::EDConsumerBase
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken consumes (TypeToGet const &id, edm::InputTag const &tag)
 
ConsumesCollector consumesCollector ()
 Use a ConsumesCollector to gather consumes information from helper functions. More...
 
template<typename ProductType , BranchType B = InEvent>
void consumesMany ()
 
void consumesMany (const TypeToGet &id)
 
template<BranchType B>
void consumesMany (const TypeToGet &id)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 

Detailed Description

Definition at line 32 of file TrackingRecoMaterialAnalyser.cc.

Constructor & Destructor Documentation

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

Definition at line 62 of file TrackingRecoMaterialAnalyser.cc.

62  :
63  refitter_(iPSet),
64  tracksToken_(consumes<reco::TrackCollection>(iPSet.getParameter<edm::InputTag>("tracks"))),
65  histo_RZ_(0),
66  histo_RZ_Ori_(0),
77  P_vs_eta_2d_(0)
78 {
79 }
T getParameter(std::string const &) const
const edm::EDGetTokenT< reco::TrackCollection > tracksToken_
TrackingRecoMaterialAnalyser::~TrackingRecoMaterialAnalyser ( void  )
virtual

Definition at line 82 of file TrackingRecoMaterialAnalyser.cc.

83 {
84 }

Member Function Documentation

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

Implements edm::stream::EDAnalyzerBase.

Definition at line 150 of file TrackingRecoMaterialAnalyser.cc.

References funct::abs(), assert(), 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_, MonitorElement::Fill(), edm::EventSetup::get(), histo_RZ_, histo_RZ_Ori_, histosEta_, histosOriEta_, SurfaceOrientation::inner, isDoubleSided(), MediumProperties::isValid(), LogTrace, Surface::mediumProperties(), TrackingRecHit::missing, SurfaceOrientation::outer, p2, P_vs_eta_2d_, MediumProperties::radLen(), dt_dqm_sourceclient_common_cff::reco, refitter_, sDETS, TrackTransformer::setServices(), sLAYS, mathSSE::sqrt(), testEve_cfg::tracks, tracksToken_, TrackTransformer::transform(), TrackingRecHit::valid, and MediumProperties::xi().

152 {
153  using namespace edm;
154  using namespace reco;
155  using namespace std;
156 
157  refitter_.setServices(setup);
158 
160  ESHandle<TrackerTopology> trk_topology;
161 
162  // Get the TrackerTopology
163  setup.get<TrackerTopologyRcd>().get(trk_topology);
164 
165  event.getByToken(tracksToken_, tracks);
166  if (!tracks.isValid() || tracks->size() == 0) {
167  LogInfo("TrackingRecoMaterialAnalyser") << "Invalid or empty track collection" << endl;
168  return;
169  }
170  auto selector = [&](const Track &track) -> bool {
171  return (track.quality(track.qualityByName("highPurity"))
172  && track.dxy() < 0.01
173  && track.hitPattern().numberOfLostTrackerHits(HitPattern::MISSING_OUTER_HITS) == 0
174  && track.p() < 1.05 && track.p() > 0.95);
175  };
176 
177  // Main idea:
178  // * select first good tracks in input, according to reasonable criteria
179  // * refit the tracks so that we have access to the TrajectoryMeasurements
180  // that internally have all the information about the TSOS on all
181  // crossed layers. We need the refit track and not the original one so
182  // that we are able to correctly compute the path travelled by the track
183  // within the detector, using its updated TSOS. The material description
184  // can in principle be derived also directly from the rechits, via the
185  // det()[(->)GeomDet *]->mediumProperties chain, but that would simply give the
186  // face values, not the "real" ones used while propagating the track.
187  // * Loop on all measurements, extract the information about the TSOS,
188  // its surface and its mediumProperties
189  // * Make plots for the untouched material properties, but also for the
190  // ones corrected by the track direction, since the material properties,
191  // according to the documentation, should refer to normal incidence of
192  // the track, which is seldom the case, according to the current direction
193  TrajectoryStateOnSurface current_tsos;
194  DetId current_det;
195  for (auto const track : *tracks) {
196  if (!selector(track) and false)
197  continue;
198  auto const inner = track.innerMomentum();
199  auto const outer = track.outerMomentum();
200  deltaP_in_out_vs_eta_->Fill(inner.eta(), inner.R() - outer.R());
201  deltaP_in_out_vs_z_->Fill(track.outerZ(), inner.R() - outer.R());
202  deltaP_in_out_vs_eta_2d_->Fill(inner.eta(), inner.R() - outer.R());
203  deltaP_in_out_vs_eta_vs_phi_2d_->Fill(inner.eta(), inner.phi(), inner.R() - outer.R());
204  deltaP_in_out_vs_z_2d_->Fill(track.outerZ(), inner.R() - outer.R());
205  deltaPt_in_out_vs_eta_->Fill(inner.eta(), inner.rho() - outer.rho());
206  deltaPt_in_out_vs_z_->Fill(track.outerZ(), inner.rho() - outer.rho());
207  deltaPl_in_out_vs_eta_->Fill(inner.eta(), inner.z() - outer.z());
208  deltaPl_in_out_vs_z_->Fill(track.outerZ(), inner.z() - outer.z());
209  deltaPt_in_out_2d_->Fill(track.outerZ(), track.outerPosition().rho(), inner.rho() - outer.rho());
210  P_vs_eta_2d_->Fill(track.eta(), track.p());
211  vector<Trajectory> traj = refitter_.transform(track);
212  if (traj.size() > 1 || traj.size() == 0)
213  continue;
214  for (auto const &tm : traj.front().measurements()) {
215  if (tm.recHit().get() &&
216  (tm.recHitR().type() == TrackingRecHit::valid ||
217  tm.recHitR().type() == TrackingRecHit::missing)) {
218  current_tsos = tm.updatedState().isValid() ? tm.updatedState() : tm.forwardPredictedState();
219  auto const & localP = current_tsos.localMomentum();
220  current_det = tm.recHit()->geographicalId();
221  const Surface& surface = current_tsos.surface();
222  assert(tm.recHit()->surface() == &surface);
223  if (!surface.mediumProperties().isValid()) {
224  LogError("TrackingRecoMaterialAnalyser")
225  << "Medium properties for material linked to detector"
226  << " are invalid at: "
227  << current_tsos.globalPosition() << " "
228  << (SiStripDetId)current_det << endl;
229  assert(0);
230  continue;
231  }
232  float p2 = localP.mag2();
233  float xf = std::abs(std::sqrt(p2)/localP.z());
234 // float e2 = p2 + m2;
235 // float beta2 = p2/e2;
236  float ori_xi = surface.mediumProperties().xi();
237  float ori_radLen = surface.mediumProperties().radLen();
238  float xi = ori_xi*xf;
239  float radLen = ori_radLen*xf;
240 
241  // Since there are double-sided (glued) modules all over the tracker,
242  // the material budget has been internally partitioned in two equal
243  // components, so that each single layer will receive half of the
244  // correct radLen. For this reason, only for the double-sided
245  // components, we rescale the obtained radLen by 2.
246  // In particular see code here: http://cmslxr.fnal.gov/dxr/CMSSW_8_0_5/source/Geometry/TrackerGeometryBuilder/src/TrackerGeomBuilderFromGeometricDet.cc#213
247  // where, in the SiStrip Tracker, if the module has a partner
248  // (i.e. it's a glued detector) the plane is built with a scaling of
249  // 0.5. The actual plane is built few lines below:
250  // http://cmslxr.fnal.gov/dxr/CMSSW_8_0_5/source/Geometry/TrackerGeometryBuilder/src/TrackerGeomBuilderFromGeometricDet.cc#287
251 
252  if (isDoubleSided(current_det, *trk_topology)) {
253  LogTrace("TrackingRecoMaterialAnalyser") << "Eta: " << track.eta() << " "
254  << sDETS[current_det.subdetId()]+sLAYS[trk_topology->layer(current_det)]
255  << " has ori_radLen: " << ori_radLen << " and ori_xi: " << xi
256  << " and has radLen: " << radLen << " and xi: " << xi << endl;
257  ori_radLen *= 2.;
258  radLen *= 2.;
259  }
260 
261  histosOriEta_[sDETS[current_det.subdetId()]+sLAYS[trk_topology->layer(current_det)]]->Fill(current_tsos.globalPosition().eta(), ori_radLen);
262  histosEta_[sDETS[current_det.subdetId()]+sLAYS[trk_topology->layer(current_det)]]->Fill(current_tsos.globalPosition().eta(), radLen);
263  histo_RZ_Ori_->Fill(current_tsos.globalPosition().z(), current_tsos.globalPosition().perp(), ori_radLen);
264  histo_RZ_->Fill(current_tsos.globalPosition().z(), current_tsos.globalPosition().perp(), radLen);
265  LogInfo("TrackingRecoMaterialAnalyser") << "Eta: " << track.eta() << " "
266  << sDETS[current_det.subdetId()]+sLAYS[trk_topology->layer(current_det)]
267  << " has ori_radLen: " << ori_radLen << " and ori_xi: " << xi
268  << " and has radLen: " << radLen << " and xi: " << xi << endl;
269  }
270  }
271  }
272 }
float radLen() const
bool isDoubleSided(DetId, const TrackerTopology &)
assert(m_qm.get())
std::unordered_map< std::string, MonitorElement * > histosEta_
const edm::EDGetTokenT< reco::TrackCollection > tracksToken_
static const std::vector< std::string > sDETS
void Fill(long long x)
std::unordered_map< std::string, MonitorElement * > histosOriEta_
T sqrt(T t)
Definition: SSEVec.h:18
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
virtual void setServices(const edm::EventSetup &)
set the services needed by the TrackTransformer
double p2[4]
Definition: TauolaWrapper.h:90
#define LogTrace(id)
Detector identifier class for the strip tracker.
Definition: SiStripDetId.h:17
Definition: DetId.h:18
tuple tracks
Definition: testEve_cfg.py:39
float xi() const
const T & get() const
Definition: EventSetup.h:56
virtual std::vector< Trajectory > transform(const reco::Track &) const
Convert a reco::Track into Trajectory.
static const std::vector< std::string > sLAYS
bool isValid() const
const MediumProperties & mediumProperties() const
Definition: Surface.h:112
void TrackingRecoMaterialAnalyser::bookHistograms ( DQMStore::IBooker i,
edm::Run const &  ,
edm::EventSetup const &  setup 
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 87 of file TrackingRecoMaterialAnalyser.cc.

References DQMStore::IBooker::book2D(), DQMStore::IBooker::bookProfile(), DQMStore::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_, edm::EventSetup::get(), histo_RZ_, histo_RZ_Ori_, histosEta_, histosOriEta_, relval_steps::key, P_vs_eta_2d_, sDETS, DQMStore::IBooker::setCurrentFolder(), and SiPixelPhase1TrackClusters_cfi::title.

89  {
90  using namespace std;
91  edm::ESHandle<TrackerGeometry> trackerGeometry;
92  setup.get<TrackerDigiGeometryRecord>().get(trackerGeometry);
93 
94  ibook.setCurrentFolder("RecoMaterialFromRecoTracks");
95  histo_RZ_Ori_ = ibook.bookProfile2D("OriRadLen", "Original_RadLen",
96  600, -300., 300, 120, 0., 120., 0., 1.);
97  histo_RZ_ = ibook.bookProfile2D("RadLen", "RadLen",
98  600, -300., 300, 120, 0., 120., 0., 1.);
99  deltaP_in_out_vs_eta_vs_phi_2d_ = ibook.bookProfile2D("DeltaP_in_out_vs_eta_vs_phi_2d",
100  "DeltaP_in_out_vs_eta_vs_phi_2d",
101  100, -3.0, 3.0,
102  100, -3.15, 3.15,
103  0., 100.);
104  deltaP_in_out_vs_eta_2d_ = ibook.book2D("DeltaP_in_out_vs_eta_2d", "DeltaP_in_out_vs_eta_2d",
105  100, -3.0, 3.0, 100, 0., 1);
106  deltaP_in_out_vs_z_2d_ = ibook.book2D("DeltaP_in_out_vs_z_2d", "DeltaP_in_out_vs_z_2d",
107  600, -300, 300, 200., -1, 1.);
108  deltaP_in_out_vs_eta_ = ibook.bookProfile("DeltaP_in_out_vs_eta", "DeltaP_in_out_vs_eta",
109  100, -3.0, 3.0, -100., 100.);
110  deltaP_in_out_vs_z_ = ibook.bookProfile("DeltaP_in_out_vs_z", "DeltaP_in_out_vs_z",
111  600, -300, 300, -100., 100.);
112  deltaPt_in_out_vs_eta_ = ibook.bookProfile("DeltaPt_in_out_vs_eta", "DeltaPt_in_out_vs_eta",
113  100, -3.0, 3.0, -100., 100.);
114  deltaPt_in_out_vs_z_ = ibook.bookProfile("DeltaPt_in_out_vs_z", "DeltaPt_in_out_vs_z",
115  600, -300, 300, -100., 100);
116  deltaPl_in_out_vs_eta_ = ibook.bookProfile("DeltaPz_in_out_vs_eta", "DeltaPz_in_out_vs_eta",
117  100, -3.0, 3.0, -100., 100.);
118  deltaPl_in_out_vs_z_ = ibook.bookProfile("DeltaPz_in_out_vs_z", "DeltaPz_in_out_vs_z",
119  600, -300, 300, -100., 100.);
120  deltaPt_in_out_2d_ = ibook.bookProfile2D("DeltaPt 2D", "DeltaPt 2D",
121  600, -300., 300, 120, 0., 120., -100., 100.);
122  P_vs_eta_2d_ = ibook.book2D("P_vs_eta_2d", "P_vs_eta_2d",
123  100, -3.0, 3.0, 100., 0., 5.);
124  char title[50];
125  char key[20];
126  for (unsigned int det = 1; det < sDETS.size(); ++det ) {
127  for (unsigned int sub_det = 1;
128  sub_det <= trackerGeometry->numberOfLayers(det); ++sub_det) {
129  memset(title, 0, sizeof(title));
130  snprintf(title, sizeof(title), "Original_RadLen_vs_Eta_%s%d", sDETS[det].data(), sub_det);
131  snprintf(key, sizeof(key), "%s%d", sDETS[det].data(), sub_det);
132  histosOriEta_.insert(make_pair<string, MonitorElement*>(key,
133  ibook.bookProfile(title, title, 250, -5.0, 5.0, 0., 1.)));
134  snprintf(title, sizeof(title), "RadLen_vs_Eta_%s%d", sDETS[det].data(), sub_det);
135  histosEta_.insert(make_pair<string, MonitorElement*>(key,
136  ibook.bookProfile(title, title, 250, -5.0, 5.0, 0., 1.)));
137  }
138  }
139 }
std::unordered_map< std::string, MonitorElement * > histosEta_
static const std::vector< std::string > sDETS
std::unordered_map< std::string, MonitorElement * > histosOriEta_
string key
FastSim: produces sample of signal events, overlayed with premixed minbias events.
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
bool TrackingRecoMaterialAnalyser::isDoubleSided ( DetId  id,
const TrackerTopology trk_topology 
)
private

Definition at line 141 of file TrackingRecoMaterialAnalyser.cc.

References SiStripDetId::glued(), SiStripDetId::subDetector(), SiStripDetId::TEC, SiStripDetId::TIB, SiStripDetId::TID, and SiStripDetId::TOB.

Referenced by analyze().

141  {
142  SiStripDetId strip_id(id);
143  return (((strip_id.subDetector() == SiStripDetId::TIB) ||
144  (strip_id.subDetector() == SiStripDetId::TOB) ||
145  (strip_id.subDetector() == SiStripDetId::TID) ||
146  (strip_id.subDetector() == SiStripDetId::TEC)) && strip_id.glued());
147 }
Detector identifier class for the strip tracker.
Definition: SiStripDetId.h:17

Member Data Documentation

MonitorElement* TrackingRecoMaterialAnalyser::deltaP_in_out_vs_eta_
private

Definition at line 49 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

MonitorElement* TrackingRecoMaterialAnalyser::deltaP_in_out_vs_eta_2d_
private

Definition at line 51 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

MonitorElement* TrackingRecoMaterialAnalyser::deltaP_in_out_vs_eta_vs_phi_2d_
private

Definition at line 52 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

MonitorElement* TrackingRecoMaterialAnalyser::deltaP_in_out_vs_z_
private

Definition at line 50 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

MonitorElement* TrackingRecoMaterialAnalyser::deltaP_in_out_vs_z_2d_
private

Definition at line 53 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

MonitorElement* TrackingRecoMaterialAnalyser::deltaPl_in_out_vs_eta_
private

Definition at line 56 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

MonitorElement* TrackingRecoMaterialAnalyser::deltaPl_in_out_vs_z_
private

Definition at line 57 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

MonitorElement* TrackingRecoMaterialAnalyser::deltaPt_in_out_2d_
private

Definition at line 48 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

MonitorElement* TrackingRecoMaterialAnalyser::deltaPt_in_out_vs_eta_
private

Definition at line 54 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

MonitorElement* TrackingRecoMaterialAnalyser::deltaPt_in_out_vs_z_
private

Definition at line 55 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

MonitorElement* TrackingRecoMaterialAnalyser::histo_RZ_
private

Definition at line 46 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

MonitorElement* TrackingRecoMaterialAnalyser::histo_RZ_Ori_
private

Definition at line 47 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

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

Definition at line 45 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

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

Definition at line 44 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

MonitorElement* TrackingRecoMaterialAnalyser::P_vs_eta_2d_
private

Definition at line 58 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze(), and bookHistograms().

TrackTransformer TrackingRecoMaterialAnalyser::refitter_
private

Definition at line 42 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze().

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

Definition at line 43 of file TrackingRecoMaterialAnalyser.cc.

Referenced by analyze().