CMS 3D CMS Logo

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

#include <MuonSeedsAnalyzer.h>

Inheritance diagram for MuonSeedsAnalyzer:
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
 
void bookHistograms (DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
 
 MuonSeedsAnalyzer (const edm::ParameterSet &)
 Constructor. More...
 
virtual ~MuonSeedsAnalyzer ()
 Destructor. More...
 
- 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
 
void convertCurrentProcessAlias (std::string const &processName)
 Convert "@currentProcess" in InputTag process names to the actual current process name. More...
 
 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 & itemsToGetFrom (BranchType iType) 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 Attributes

int Chi2Bin
 
double Chi2Max
 
double Chi2Min
 
int EtaBin
 
int etaErrBin
 
double etaErrMax
 
double etaErrMin
 
double EtaMax
 
double EtaMin
 
std::string metname
 
MonitorElementNumberOfRecHitsPerSeed
 
edm::ParameterSet parameters
 
int pErrBin
 
double pErrMax
 
double pErrMin
 
int PhiBin
 
int phiErrBin
 
double phiErrMax
 
double phiErrMin
 
double PhiMax
 
double PhiMin
 
int pxyzErrBin
 
double pxyzErrMax
 
double pxyzErrMin
 
MonitorElementseedEta
 
MonitorElementseedEtaErr
 
int seedHitBin
 
double seedHitMax
 
double seedHitMin
 
MonitorElementseedPErr
 
MonitorElementseedPErrVsEta
 
MonitorElementseedPErrVsPhi
 
MonitorElementseedPErrVsPt
 
MonitorElementseedPhi
 
MonitorElementseedPhiErr
 
MonitorElementseedPt
 
int seedPtBin
 
MonitorElementseedPtErr
 
MonitorElementseedPtErrVsEta
 
MonitorElementseedPtErrVsPhi
 
MonitorElementseedPtErrVsPt
 
double seedPtMax
 
double seedPtMin
 
MonitorElementseedPx
 
MonitorElementseedPxErr
 
int seedPxyzBin
 
double seedPxyzMax
 
double seedPxyzMin
 
MonitorElementseedPy
 
MonitorElementseedPyErr
 
MonitorElementseedPz
 
MonitorElementseedPzErr
 
MonitorElementseedTheta
 
DQMStoretheDbe
 
edm::EDGetTokenT< TrajectorySeedCollectiontheSeedsCollectionLabel_
 
MuonServiceProxytheService
 
int ThetaBin
 
double ThetaMax
 
double ThetaMin
 

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, GlobalCacheLuminosityBlockContext
 
typedef CacheTypes::LuminosityBlockSummaryCache LuminosityBlockSummaryCache
 
typedef CacheTypes::RunCache RunCache
 
typedef RunContextT< RunCache, GlobalCacheRunContext
 
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::NoCacheglobalBeginLuminosityBlockSummary (edm::LuminosityBlock const &, edm::EventSetup const &, LuminosityBlockContext const *)
 
static std::shared_ptr< dqmDetails::NoCacheglobalBeginRunSummary (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

DQM monitoring source for muon track seeds

Author
G. Mila - INFN Torino

Definition at line 32 of file MuonSeedsAnalyzer.h.

Constructor & Destructor Documentation

MuonSeedsAnalyzer::MuonSeedsAnalyzer ( const edm::ParameterSet pSet)

Constructor.

Definition at line 37 of file MuonSeedsAnalyzer.cc.

References Gflash::EtaMax, Gflash::EtaMin, MuonServiceProxy_cff::MuonServiceProxy, and metProducer_cfi::parameters.

37  {
38  parameters = pSet;
39 
40  theService = new MuonServiceProxy(parameters.getParameter<ParameterSet>("ServiceParameters"));
41 
42  theSeedsCollectionLabel_ = consumes<TrajectorySeedCollection>(parameters.getParameter<InputTag>("SeedCollection"));
43 
44  seedHitBin = parameters.getParameter<int>("RecHitBin");
45  seedHitMin = parameters.getParameter<double>("RecHitMin");
46  seedHitMax = parameters.getParameter<double>("RecHitMax");
47  PhiBin = parameters.getParameter<int>("PhiBin");
48  PhiMin = parameters.getParameter<double>("PhiMin");
49  PhiMax = parameters.getParameter<double>("PhiMax");
50  EtaBin = parameters.getParameter<int>("EtaBin");
51  EtaMin = parameters.getParameter<double>("EtaMin");
52  EtaMax = parameters.getParameter<double>("EtaMax");
53  ThetaBin = parameters.getParameter<int>("ThetaBin");
54  ThetaMin = parameters.getParameter<double>("ThetaMin");
55  ThetaMax = parameters.getParameter<double>("ThetaMax");
56  seedPtBin = parameters.getParameter<int>("seedPtBin");
57  seedPtMin = parameters.getParameter<double>("seedPtMin");
58  seedPtMax = parameters.getParameter<double>("seedPtMax");
59  seedPxyzBin = parameters.getParameter<int>("seedPxyzBin");
60  seedPxyzMin = parameters.getParameter<double>("seedPxyzMin");
61  seedPxyzMax = parameters.getParameter<double>("seedPxyzMax");
62  pErrBin = parameters.getParameter<int>("pErrBin");
63  pErrMin = parameters.getParameter<double>("pErrMin");
64  pErrMax = parameters.getParameter<double>("pErrMax");
65  pxyzErrBin = parameters.getParameter<int>("pxyzErrBin");
66  pxyzErrMin = parameters.getParameter<double>("pxyzErrMin");
67  pxyzErrMax = parameters.getParameter<double>("pxyzErrMax");
68  phiErrBin = parameters.getParameter<int>("phiErrBin");
69  phiErrMin = parameters.getParameter<double>("phiErrMin");
70  phiErrMax = parameters.getParameter<double>("phiErrMax");
71  etaErrBin = parameters.getParameter<int>("etaErrBin");
72  etaErrMin = parameters.getParameter<double>("etaErrMin");
73  etaErrMax = parameters.getParameter<double>("etaErrMax");
74 }
T getParameter(std::string const &) const
edm::EDGetTokenT< TrajectorySeedCollection > theSeedsCollectionLabel_
edm::ParameterSet parameters
MuonServiceProxy * theService
MuonSeedsAnalyzer::~MuonSeedsAnalyzer ( )
virtual

Destructor.

Definition at line 75 of file MuonSeedsAnalyzer.cc.

75  {
76  delete theService;
77 }
MuonServiceProxy * theService

Member Function Documentation

void MuonSeedsAnalyzer::analyze ( const edm::Event iEvent,
const edm::EventSetup iSetup 
)
override

Definition at line 148 of file MuonSeedsAnalyzer.cc.

References funct::abs(), TrajectoryStateOnSurface::cartesianError(), TrajectoryStateOnSurface::curvilinearError(), PTrajectoryStateOnDet::detId(), benchmark_cfg::errors, PV3DBase< T, PVType, FrameType >::eta(), edm::Event::getByToken(), TrajectoryStateOnSurface::globalMomentum(), edm::HandleBase::isValid(), LogTrace, PV3DBase< T, PVType, FrameType >::mag(), CartesianTrajectoryError::matrix(), CurvilinearTrajectoryError::matrix(), metname, PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), funct::pow(), SurveyInfoScenario_cff::seed, funct::sin(), mathSSE::sqrt(), PV3DBase< T, PVType, FrameType >::theta(), trajectoryStateTransform::transientState(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

148  {
149  theService->update(iSetup);
150 
151  // Take the seeds container
153  iEvent.getByToken(theSeedsCollectionLabel_, seeds);
154 
155  // if not valid, skip
156  if (!seeds.isValid()) return;
157 
158  for(TrajectorySeedCollection::const_iterator seed = seeds->begin(); seed != seeds->end(); ++seed){
159  // const TrajectorySeed sd = *seed;
160 
161  // Get the Trajectory State on Det (persistent version of a TSOS) from the seed
162  PTrajectoryStateOnDet pTSOD = seed->startingState();
163 
164  // Transform it in a TrajectoryStateOnSurface
165  DetId seedDetId(pTSOD.detId());
166  const GeomDet* gdet = theService->trackingGeometry()->idToDet( seedDetId );
167  TrajectoryStateOnSurface seedTSOS = trajectoryStateTransform::transientState(pTSOD, &(gdet->surface()), &*(theService)->magneticField());
169  double partialPterror = errors(3,3)*pow(seedTSOS.globalMomentum().x(),2) + errors(4,4)*pow(seedTSOS.globalMomentum().y(),2);
170 
171  LogTrace(metname)<<"[MuonSeedAnalyzer] Filling the histos";
172 
173  // nhits
174  LogTrace(metname)<<"Number od recHits per seed: "<<seed->nHits();
175  NumberOfRecHitsPerSeed->Fill(seed->nHits());
176 
177  // pt
178  LogTrace(metname)<<"seed momentum: "<<seedTSOS.globalMomentum().perp();
179  seedPt->Fill(seedTSOS.globalMomentum().perp());
180 
181  // px
182  LogTrace(metname)<<"seed px: "<<seedTSOS.globalMomentum().x();
183  seedPx->Fill(seedTSOS.globalMomentum().x());
184 
185  // py
186  LogTrace(metname)<<"seed py: "<<seedTSOS.globalMomentum().y();
187  seedPy->Fill(seedTSOS.globalMomentum().y());
188 
189  // pz
190  LogTrace(metname)<<"seed pz: "<<seedTSOS.globalMomentum().z();
191  seedPz->Fill(seedTSOS.globalMomentum().z());
192 
193  // phi
194  LogTrace(metname)<<"seed phi: "<<seedTSOS.globalMomentum().phi();
195  seedPhi->Fill(seedTSOS.globalMomentum().phi());
196 
197  // theta
198  LogTrace(metname)<<"seed theta: "<<seedTSOS.globalMomentum().theta();
199  seedTheta->Fill(seedTSOS.globalMomentum().theta());
200 
201  // eta
202  LogTrace(metname)<<"seed eta: "<<seedTSOS.globalMomentum().eta();
203  seedEta->Fill(seedTSOS.globalMomentum().eta());
204 
205  // pt err
206  LogTrace(metname)<<"seed pt error: "<<sqrt(partialPterror)/seedTSOS.globalMomentum().perp();
207  seedPtErr->Fill(sqrt(partialPterror)/seedTSOS.globalMomentum().perp());
208 
209  // ptErr/pt Vs phi
210  seedPtErrVsPhi->Fill(seedTSOS.globalMomentum().phi(),
211  sqrt(partialPterror)/seedTSOS.globalMomentum().perp());
212  // ptErr/pt Vs eta
213  seedPtErrVsEta->Fill(seedTSOS.globalMomentum().eta(),
214  sqrt(partialPterror)/seedTSOS.globalMomentum().perp());
215  // ptErr/pt Vs pt
216  seedPtErrVsPt->Fill(seedTSOS.globalMomentum().perp(),
217  sqrt(partialPterror)/seedTSOS.globalMomentum().perp());
218 
219  // px err
220  LogTrace(metname)<<"seed px error: "<<sqrt(errors(3,3))/seedTSOS.globalMomentum().x();
221  seedPxErr->Fill(sqrt(errors(3,3))/seedTSOS.globalMomentum().x());
222 
223  // py err
224  LogTrace(metname)<<"seed py error: "<<sqrt(errors(4,4))/seedTSOS.globalMomentum().y();
225  seedPyErr->Fill(sqrt(errors(4,4))/seedTSOS.globalMomentum().y());
226 
227  // pz err
228  LogTrace(metname)<<"seed pz error: "<<sqrt(errors(5,5))/seedTSOS.globalMomentum().z();
229  seedPzErr->Fill(sqrt(errors(5,5))/seedTSOS.globalMomentum().z());
230 
231  // p err
232  LogTrace(metname)<<"seed p error: "<<sqrt(partialPterror+errors(5,5)*pow(seedTSOS.globalMomentum().z(),2))/seedTSOS.globalMomentum().mag();
233  seedPErr->Fill(sqrt(partialPterror+errors(5,5)*pow(seedTSOS.globalMomentum().z(),2))/seedTSOS.globalMomentum().mag());
234 
235  // pErr/p Vs phi
236  seedPErrVsPhi->Fill(seedTSOS.globalMomentum().phi(),
237  sqrt(partialPterror+errors(5,5)*pow(seedTSOS.globalMomentum().z(),2))/seedTSOS.globalMomentum().mag());
238  // pErr/p Vs eta
239  seedPErrVsEta->Fill(seedTSOS.globalMomentum().eta(),
240  sqrt(partialPterror+errors(5,5)*pow(seedTSOS.globalMomentum().z(),2))/seedTSOS.globalMomentum().mag());
241  // pErr/p Vs pt
242  seedPErrVsPt->Fill(seedTSOS.globalMomentum().perp(),
243  sqrt(partialPterror+errors(5,5)*pow(seedTSOS.globalMomentum().z(),2))/seedTSOS.globalMomentum().mag());
244 
245  // phi err
246  LogTrace(metname)<<"seed phi error: "<<sqrt(seedTSOS.curvilinearError().matrix()(2,2));
247  seedPhiErr->Fill(sqrt(seedTSOS.curvilinearError().matrix()(2,2)));
248 
249  // eta err
250  LogTrace(metname)<<"seed eta error: "<<sqrt(seedTSOS.curvilinearError().matrix()(1,1))*abs(sin(seedTSOS.globalMomentum().theta()));
251  seedEtaErr->Fill(sqrt(seedTSOS.curvilinearError().matrix()(1,1))*abs(sin(seedTSOS.globalMomentum().theta())));
252  }
253 }
MonitorElement * seedPx
T perp() const
Definition: PV3DBase.h:72
bool getByToken(EDGetToken token, Handle< PROD > &result) const
Definition: Event.h:460
MonitorElement * seedPyErr
const CurvilinearTrajectoryError & curvilinearError() const
Sin< T >::type sin(const T &t)
Definition: Sin.h:22
ROOT::Math::SMatrix< double, 6, 6, ROOT::Math::MatRepSym< double, 6 > > AlgebraicSymMatrix66
Geom::Phi< T > phi() const
Definition: PV3DBase.h:69
const CartesianTrajectoryError cartesianError() const
T y() const
Definition: PV3DBase.h:63
MonitorElement * seedEta
MonitorElement * seedPErrVsEta
MonitorElement * seedPErrVsPt
MonitorElement * seedPtErrVsPt
MonitorElement * seedEtaErr
MonitorElement * seedPzErr
MonitorElement * seedPtErrVsPhi
MonitorElement * seedPErr
void Fill(long long x)
Geom::Theta< T > theta() const
Definition: PV3DBase.h:75
MonitorElement * NumberOfRecHitsPerSeed
T mag() const
Definition: PV3DBase.h:67
T sqrt(T t)
Definition: SSEVec.h:18
T z() const
Definition: PV3DBase.h:64
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
unsigned int detId() const
MonitorElement * seedPtErrVsEta
bool isValid() const
Definition: HandleBase.h:74
#define LogTrace(id)
edm::EDGetTokenT< TrajectorySeedCollection > theSeedsCollectionLabel_
const AlgebraicSymMatrix66 & matrix() const
Definition: DetId.h:18
MonitorElement * seedPxErr
TrajectoryStateOnSurface transientState(const PTrajectoryStateOnDet &ts, const Surface *surface, const MagneticField *field)
MonitorElement * seedPy
MonitorElement * seedPt
MonitorElement * seedPtErr
MonitorElement * seedPz
T eta() const
Definition: PV3DBase.h:76
const AlgebraicSymMatrix55 & matrix() const
GlobalVector globalMomentum() const
MonitorElement * seedPErrVsPhi
MonitorElement * seedPhi
Definition: errors.py:1
MonitorElement * seedTheta
T x() const
Definition: PV3DBase.h:62
MuonServiceProxy * theService
Power< A, B >::type pow(const A &a, const B &b)
Definition: Power.h:40
MonitorElement * seedPhiErr
void MuonSeedsAnalyzer::bookHistograms ( DQMStore::IBooker ibooker,
edm::Run const &  ,
edm::EventSetup const &   
)
overridevirtual

Implements DQMEDAnalyzer.

Definition at line 78 of file MuonSeedsAnalyzer.cc.

References DQMStore::IBooker::book1D(), DQMStore::IBooker::book2D(), DQMStore::IBooker::cd(), Gflash::EtaMax, Gflash::EtaMin, MonitorElement::setAxisTitle(), and DQMStore::IBooker::setCurrentFolder().

78  {
79 
80  ibooker.cd();
81  ibooker.setCurrentFolder("Muons/MuonSeedsAnalyzer");
82 
83  string histname = "NumberOfRecHitsPerSeed_";
84  NumberOfRecHitsPerSeed = ibooker.book1D(histname, "Number of seed recHits", seedHitBin, seedHitMin, seedHitMax);
85 
86  histname = "seedPhi_";
87  seedPhi = ibooker.book1D(histname, "Seed #phi", PhiBin, PhiMin, PhiMax);
88  seedPhi->setAxisTitle("rad");
89 
90  histname = "seedEta_";
91  seedEta = ibooker.book1D(histname, "Seed #eta", EtaBin, EtaMin, EtaMax);
92 
93  histname = "seedTheta_";
94  seedTheta = ibooker.book1D(histname, "Seed #theta", ThetaBin, ThetaMin, ThetaMax);
95  seedTheta->setAxisTitle("rad");
96 
97  histname = "seedPt_";
98  seedPt = ibooker.book1D(histname, "Seed p_{t}", seedPtBin, seedPtMin, seedPtMax);
99  seedPt->setAxisTitle("GeV");
100 
101  histname = "seedPx_";
102  seedPx = ibooker.book1D(histname, "Seed p_{x}", seedPxyzBin, seedPxyzMin, seedPxyzMax);
103  seedPx->setAxisTitle("GeV");
104  histname = "seedPy_";
105  seedPy = ibooker.book1D(histname, "Seed p_{y}", seedPxyzBin, seedPxyzMin, seedPxyzMax);
106  seedPy->setAxisTitle("GeV");
107  histname = "seedPz_";
108  seedPz = ibooker.book1D(histname, "Seed p_{z}", seedPxyzBin, seedPxyzMin, seedPxyzMax);
109  seedPz->setAxisTitle("GeV");
110 
111  histname = "seedPtErrOverPt_";
112  seedPtErr = ibooker.book1D(histname, "Seed p_{t}Err/p_{t}", pErrBin, pErrMin, pErrMax);
113  histname = "seedPtErrOverPtVsPhi_";
114  seedPtErrVsPhi = ibooker.book2D(histname, "Seed p_{t}Err/p_{t} vs #phi", PhiBin, PhiMin, PhiMax, pErrBin, pErrMin, pErrMax);
115  seedPtErrVsPhi->setAxisTitle("rad",2);
116  histname = "seedPtErrOverPtVsEta_";
117  seedPtErrVsEta = ibooker.book2D(histname, "Seed p_{t}Err/p_{t} vs #eta", EtaBin, EtaMin, EtaMax, pErrBin, pErrMin, pErrMax);
118  histname = "seedPtErrOverPtVsPt_";
119  seedPtErrVsPt = ibooker.book2D(histname, "Seed p_{t}Err/p_{t} vs p_{t}", seedPtBin/5, seedPtMin, seedPtMax, pErrBin, pErrMin, pErrMax);
120  seedPtErrVsPt->setAxisTitle("GeV",2);
121  histname = "seedPErrOverP_";
122  seedPErr = ibooker.book1D(histname, "Seed pErr/p", pErrBin, pErrMin, pErrMax);
123  histname = "seedPErrOverPVsPhi_";
124  seedPErrVsPhi = ibooker.book2D(histname, "Seed pErr/p vs #phi", PhiBin, PhiMin, PhiMax, pErrBin, pErrMin, pErrMax);
125  seedPErrVsPhi->setAxisTitle("rad",2);
126  histname = "seedPErrOverPVsEta_";
127  seedPErrVsEta = ibooker.book2D(histname, "Seed pErr/p vs #eta", EtaBin, EtaMin, EtaMax, pErrBin, pErrMin, pErrMax);
128  histname = "seedPErrOverPVsPt_";
129  seedPErrVsPt = ibooker.book2D(histname, "Seed pErr/p vs p_{t}", seedPtBin/5, seedPtMin, seedPtMax, pErrBin, pErrMin, pErrMax);
130  seedPErrVsPt->setAxisTitle("GeV",2);
131 
132  histname = "seedPxErrOverPx_";
133  seedPxErr = ibooker.book1D(histname, "Seed p_{x}Err/p_{x}", pxyzErrBin, pxyzErrMin, pxyzErrMax);
134  histname = "seedPyErrOverPy_";
135  seedPyErr = ibooker.book1D(histname, "Seed p_{y}Err/p_{y}", pxyzErrBin, pxyzErrMin, pxyzErrMax);
136  histname = "seedPzErrOverPz_";
137  seedPzErr = ibooker.book1D(histname, "Seed p_{z}Err/p_{z}", pxyzErrBin, pxyzErrMin, pxyzErrMax);
138 
139 
140  histname = "seedPhiErr_";
141  seedPhiErr = ibooker.book1D(histname, "Seed #phi error", phiErrBin, phiErrMin, phiErrMax);
142 
143  histname = "seedEtaErr_";
144  seedEtaErr = ibooker.book1D(histname, "Seed #eta error", etaErrBin, etaErrMin, etaErrMax);
145 
146 }
MonitorElement * seedPx
void cd(void)
Definition: DQMStore.cc:269
MonitorElement * seedPyErr
MonitorElement * seedEta
MonitorElement * seedPErrVsEta
MonitorElement * seedPErrVsPt
MonitorElement * seedPtErrVsPt
MonitorElement * seedEtaErr
MonitorElement * seedPzErr
MonitorElement * seedPtErrVsPhi
MonitorElement * seedPErr
MonitorElement * NumberOfRecHitsPerSeed
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:115
MonitorElement * seedPtErrVsEta
MonitorElement * seedPxErr
void setCurrentFolder(const std::string &fullpath)
Definition: DQMStore.cc:277
MonitorElement * seedPy
MonitorElement * book2D(Args &&...args)
Definition: DQMStore.h:133
MonitorElement * seedPt
MonitorElement * seedPtErr
MonitorElement * seedPz
MonitorElement * seedPErrVsPhi
MonitorElement * seedPhi
MonitorElement * seedTheta
void setAxisTitle(const std::string &title, int axis=1)
set x-, y- or z-axis title (axis=1, 2, 3 respectively)
MonitorElement * seedPhiErr

Member Data Documentation

int MuonSeedsAnalyzer::Chi2Bin
private

Definition at line 73 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::Chi2Max
private

Definition at line 75 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::Chi2Min
private

Definition at line 74 of file MuonSeedsAnalyzer.h.

int MuonSeedsAnalyzer::EtaBin
private

Definition at line 65 of file MuonSeedsAnalyzer.h.

int MuonSeedsAnalyzer::etaErrBin
private

Definition at line 97 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::etaErrMax
private

Definition at line 99 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::etaErrMin
private

Definition at line 98 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::EtaMax
private

Definition at line 67 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::EtaMin
private

Definition at line 66 of file MuonSeedsAnalyzer.h.

std::string MuonSeedsAnalyzer::metname
private

Definition at line 54 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::NumberOfRecHitsPerSeed
private

Definition at line 103 of file MuonSeedsAnalyzer.h.

edm::ParameterSet MuonSeedsAnalyzer::parameters
private
int MuonSeedsAnalyzer::pErrBin
private

Definition at line 85 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::pErrMax
private

Definition at line 87 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::pErrMin
private

Definition at line 86 of file MuonSeedsAnalyzer.h.

int MuonSeedsAnalyzer::PhiBin
private

Definition at line 61 of file MuonSeedsAnalyzer.h.

int MuonSeedsAnalyzer::phiErrBin
private

Definition at line 93 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::phiErrMax
private

Definition at line 95 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::phiErrMin
private

Definition at line 94 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::PhiMax
private

Definition at line 63 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::PhiMin
private

Definition at line 62 of file MuonSeedsAnalyzer.h.

int MuonSeedsAnalyzer::pxyzErrBin
private

Definition at line 89 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::pxyzErrMax
private

Definition at line 91 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::pxyzErrMin
private

Definition at line 90 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedEta
private

Definition at line 105 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedEtaErr
private

Definition at line 123 of file MuonSeedsAnalyzer.h.

int MuonSeedsAnalyzer::seedHitBin
private

Definition at line 57 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::seedHitMax
private

Definition at line 59 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::seedHitMin
private

Definition at line 58 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPErr
private

Definition at line 118 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPErrVsEta
private

Definition at line 120 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPErrVsPhi
private

Definition at line 119 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPErrVsPt
private

Definition at line 121 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPhi
private

Definition at line 104 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPhiErr
private

Definition at line 122 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPt
private

Definition at line 107 of file MuonSeedsAnalyzer.h.

int MuonSeedsAnalyzer::seedPtBin
private

Definition at line 77 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPtErr
private

Definition at line 111 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPtErrVsEta
private

Definition at line 113 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPtErrVsPhi
private

Definition at line 112 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPtErrVsPt
private

Definition at line 114 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::seedPtMax
private

Definition at line 79 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::seedPtMin
private

Definition at line 78 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPx
private

Definition at line 108 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPxErr
private

Definition at line 115 of file MuonSeedsAnalyzer.h.

int MuonSeedsAnalyzer::seedPxyzBin
private

Definition at line 81 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::seedPxyzMax
private

Definition at line 83 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::seedPxyzMin
private

Definition at line 82 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPy
private

Definition at line 109 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPyErr
private

Definition at line 116 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPz
private

Definition at line 110 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedPzErr
private

Definition at line 117 of file MuonSeedsAnalyzer.h.

MonitorElement* MuonSeedsAnalyzer::seedTheta
private

Definition at line 106 of file MuonSeedsAnalyzer.h.

DQMStore* MuonSeedsAnalyzer::theDbe
private

Definition at line 46 of file MuonSeedsAnalyzer.h.

edm::EDGetTokenT<TrajectorySeedCollection> MuonSeedsAnalyzer::theSeedsCollectionLabel_
private

Definition at line 51 of file MuonSeedsAnalyzer.h.

MuonServiceProxy* MuonSeedsAnalyzer::theService
private

Definition at line 47 of file MuonSeedsAnalyzer.h.

int MuonSeedsAnalyzer::ThetaBin
private

Definition at line 69 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::ThetaMax
private

Definition at line 71 of file MuonSeedsAnalyzer.h.

double MuonSeedsAnalyzer::ThetaMin
private

Definition at line 70 of file MuonSeedsAnalyzer.h.