CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
ME0GeometryValidate Class Reference
Inheritance diagram for ME0GeometryValidate:
edm::one::EDAnalyzer<> edm::one::EDAnalyzerBase edm::EDConsumerBase

Public Member Functions

 ME0GeometryValidate (const ParameterSet &)
 
 ~ME0GeometryValidate () override
 
- Public Member Functions inherited from edm::one::EDAnalyzer<>
 EDAnalyzer ()=default
 
SerialTaskQueueglobalLuminosityBlocksQueue () final
 
SerialTaskQueueglobalRunsQueue () final
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
bool wantsInputProcessBlocks () const final
 
bool wantsProcessBlocks () const final
 
- Public Member Functions inherited from edm::one::EDAnalyzerBase
void callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func)
 
 EDAnalyzerBase ()
 
ModuleDescription const & moduleDescription () const
 
bool wantsStreamLuminosityBlocks () const
 
bool wantsStreamRuns () const
 
 ~EDAnalyzerBase () override
 
- 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 &&)=default
 
 EDConsumerBase (EDConsumerBase const &)=delete
 
ESProxyIndex const * esGetTokenIndices (edm::Transition iTrans) const
 
std::vector< ESProxyIndex > const & esGetTokenIndicesVector (edm::Transition iTrans) const
 
std::vector< ESRecordIndex > const & esGetTokenRecordIndicesVector (edm::Transition iTrans) const
 
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::array< std::vector< ModuleDescription const * > *, NumBranchTypes > &modulesAll, std::vector< ModuleProcessName > &modulesInPreviousProcesses, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const
 
EDConsumerBaseoperator= (EDConsumerBase &&)=default
 
EDConsumerBase const & operator= (EDConsumerBase const &)=delete
 
bool registeredToConsume (ProductResolverIndex, bool, BranchType) const
 
bool registeredToConsumeMany (TypeID const &, BranchType) const
 
ProductResolverIndexAndSkipBit uncheckedIndexFrom (EDGetToken) const
 
void updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet)
 
void updateLookup (eventsetup::ESRecordsToProxyIndices const &)
 
virtual ~EDConsumerBase () noexcept(false)
 

Private Member Functions

void analyze (const edm::Event &, const edm::EventSetup &) override
 
void beginJob () override
 
void clearData ()
 
void clearData2 ()
 
void compareShape (const GeomDet *, const float *)
 
void compareTransform (const GlobalPoint &, const TGeoMatrix *)
 
void endJob () override
 
float getDiff (const float, const float)
 
float getDistance (const GlobalPoint &, const GlobalPoint &)
 
void makeHistogram (const string &, vector< float > &)
 
void makeHistograms (const char *)
 
void makeHistograms2 (const char *)
 
void validateME0ChamberGeometry ()
 
void validateME0EtaPartitionGeometry ()
 
void validateME0EtaPartitionGeometry2 ()
 

Private Attributes

vector< float > bottomWidths_
 
FWGeometry fwGeometry_
 
vector< float > globalDistances_
 
string infileName_
 
vector< float > lengths_
 
edm::ESHandle< ME0Geometryme0Geometry_
 
vector< float > nstrips_
 
TFile * outFile_
 
string outfileName_
 
vector< float > pitch_
 
vector< float > stripslen_
 
vector< float > thicknesses_
 
int tolerance_
 
vector< float > topWidths_
 

Additional Inherited Members

- Public Types inherited from edm::one::EDAnalyzerBase
typedef EDAnalyzerBase ModuleType
 
- Public Types inherited from edm::EDConsumerBase
typedef ProductLabels Labels
 
- Static Public Member Functions inherited from edm::one::EDAnalyzerBase
static const std::string & baseType ()
 
static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 
- Protected Member Functions inherited from edm::EDConsumerBase
EDGetToken consumes (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > consumes (edm::InputTag const &tag)
 
template<BranchType B = InEvent>
EDConsumerBaseAdaptor< B > consumes (edm::InputTag tag) noexcept
 
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 ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes ()
 
template<Transition Tr = Transition::Event>
constexpr auto esConsumes () noexcept
 
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event>
auto esConsumes (ESInputTag const &tag)
 
template<Transition Tr = Transition::Event>
auto esConsumes (ESInputTag tag) noexcept
 
template<Transition Tr = Transition::Event>
ESGetTokenGeneric esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey)
 Used with EventSetupRecord::doGet. More...
 
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<BranchType B>
EDGetToken mayConsume (const TypeToGet &id, edm::InputTag const &tag)
 
template<typename ProductType , BranchType B = InEvent>
EDGetTokenT< ProductType > mayConsume (edm::InputTag const &tag)
 

Detailed Description

Definition at line 50 of file ME0GeometryValidate.cc.

Constructor & Destructor Documentation

◆ ME0GeometryValidate()

ME0GeometryValidate::ME0GeometryValidate ( const ParameterSet iConfig)
explicit

Definition at line 104 of file ME0GeometryValidate.cc.

105  : infileName_(
106  iConfig.getUntrackedParameter<string>("infileName", "cmsRecoGeom-2026.root")), //it was cmsGeom10.root
107  outfileName_(iConfig.getUntrackedParameter<string>("outfileName", "validateME0Geometry.root")),
108  tolerance_(iConfig.getUntrackedParameter<int>("tolerance", 6)) {
110  outFile_ = TFile::Open(outfileName_.c_str(), "RECREATE");
111 }

References fwGeometry_, infileName_, FWGeometry::loadMap(), outFile_, and outfileName_.

◆ ~ME0GeometryValidate()

ME0GeometryValidate::~ME0GeometryValidate ( )
inlineoverride

Definition at line 53 of file ME0GeometryValidate.cc.

53 {}

Member Function Documentation

◆ analyze()

void ME0GeometryValidate::analyze ( const edm::Event event,
const edm::EventSetup eventSetup 
)
overrideprivatevirtual

Implements edm::one::EDAnalyzerBase.

Definition at line 113 of file ME0GeometryValidate.cc.

113  {
114  eventSetup.get<MuonGeometryRecord>().get(me0Geometry_);
115  if (me0Geometry_.isValid()) {
116  LogTrace("ME0Geometry") << "Validating ME0 chamber geometry";
120  } else {
121  LogError("ME0Geometry") << "Invalid ME0 geometry";
122  }
123 }

References edm::EventSetup::get(), get, edm::ESHandleBase::isValid(), LogTrace, me0Geometry_, validateME0ChamberGeometry(), validateME0EtaPartitionGeometry(), and validateME0EtaPartitionGeometry2().

◆ beginJob()

void ME0GeometryValidate::beginJob ( void  )
overrideprivatevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 333 of file ME0GeometryValidate.cc.

333 { outFile_->cd(); }

References outFile_.

◆ clearData()

void ME0GeometryValidate::clearData ( )
inlineprivate

Definition at line 74 of file ME0GeometryValidate.cc.

74  {
75  globalDistances_.clear();
76  topWidths_.clear();
77  bottomWidths_.clear();
78  lengths_.clear();
79  thicknesses_.clear();
80  }

Referenced by validateME0ChamberGeometry(), and validateME0EtaPartitionGeometry2().

◆ clearData2()

void ME0GeometryValidate::clearData2 ( )
inlineprivate

Definition at line 82 of file ME0GeometryValidate.cc.

82  {
83  nstrips_.clear();
84  pitch_.clear();
85  stripslen_.clear();
86  }

Referenced by validateME0EtaPartitionGeometry().

◆ compareShape()

void ME0GeometryValidate::compareShape ( const GeomDet det,
const float *  shape 
)
private

Definition at line 217 of file ME0GeometryValidate.cc.

217  {
218  float shapeTopWidth;
219  float shapeBottomWidth;
220  float shapeLength;
221  float shapeThickness;
222 
223  if (shape[0] == 1) {
224  shapeTopWidth = shape[2];
225  shapeBottomWidth = shape[1];
226  shapeLength = shape[4];
227  shapeThickness = shape[3];
228  } else if (shape[0] == 2) {
229  shapeTopWidth = shape[1];
230  shapeBottomWidth = shape[1];
231  shapeLength = shape[2];
232  shapeThickness = shape[3];
233  } else {
234  LogTrace("ME0Geometry") << "Failed to get box or trapezoid from shape";
235 
236  return;
237  }
238 
239  float topWidth, bottomWidth;
240  float length, thickness;
241 
242  const Bounds* bounds = &(det->surface().bounds());
243  if (const TrapezoidalPlaneBounds* tpbs = dynamic_cast<const TrapezoidalPlaneBounds*>(bounds)) {
244  array<const float, 4> const& ps = tpbs->parameters();
245 
246  assert(ps.size() == 4);
247 
248  bottomWidth = ps[0];
249  topWidth = ps[1];
250  thickness = ps[2];
251  length = ps[3];
252 
253  } else if ((dynamic_cast<const RectangularPlaneBounds*>(bounds))) {
254  length = det->surface().bounds().length() * 0.5;
255  topWidth = det->surface().bounds().width() * 0.5;
256  bottomWidth = topWidth;
257  thickness = det->surface().bounds().thickness() * 0.5;
258 
259  } else {
260  LogTrace("ME0Geometry") << "Failed to get bounds";
261 
262  return;
263  }
264  topWidths_.push_back(std::abs(shapeTopWidth - topWidth));
265  bottomWidths_.push_back(std::abs(shapeBottomWidth - bottomWidth));
266  lengths_.push_back(std::abs(shapeLength - length));
267  thicknesses_.push_back(std::abs(shapeThickness - thickness));
268 }

References funct::abs(), cms::cuda::assert(), bottomWidths_, Surface::bounds(), Bounds::length(), lengths_, LogTrace, GeomDet::surface(), Bounds::thickness(), Calorimetry_cff::thickness, thicknesses_, topWidths_, and Bounds::width().

Referenced by validateME0ChamberGeometry(), and validateME0EtaPartitionGeometry2().

◆ compareTransform()

void ME0GeometryValidate::compareTransform ( const GlobalPoint gp,
const TGeoMatrix *  matrix 
)
private

Definition at line 205 of file ME0GeometryValidate.cc.

205  {
206  double local[3] = {0.0, 0.0, 0.0};
207  double global[3];
208 
209  matrix->LocalToMaster(local, global);
210 
211  float distance = getDistance(GlobalPoint(global[0], global[1], global[2]), gp);
212  if (abs(distance) < 1.0e-7)
213  distance = 0.0; // set a tollerance for the distance inside Histos
214  globalDistances_.push_back(distance);
215 }

References funct::abs(), HLT_FULL_cff::distance, MillePedeFileConverter_cfg::e, getDistance(), globalDistances_, runTauDisplay::gp, DTRecHitClients_cfi::local, and makeMuonMisalignmentScenario::matrix.

Referenced by validateME0ChamberGeometry(), and validateME0EtaPartitionGeometry2().

◆ endJob()

void ME0GeometryValidate::endJob ( void  )
overrideprivatevirtual

Reimplemented from edm::one::EDAnalyzerBase.

Definition at line 335 of file ME0GeometryValidate.cc.

335  {
336  LogTrace("ME0Geometry") << "Done.";
337  LogTrace("ME0Geometry") << "Results written to " << outfileName_;
338  outFile_->Close();
339 }

References LogTrace, outFile_, and outfileName_.

◆ getDiff()

float ME0GeometryValidate::getDiff ( const float  val1,
const float  val2 
)
private

Definition at line 275 of file ME0GeometryValidate.cc.

275  {
276  if (almost_equal(val1, val2, tolerance_))
277  return 0.0f;
278  else
279  return (val1 - val2);
280 }

References almost_equal(), and tolerance_.

◆ getDistance()

float ME0GeometryValidate::getDistance ( const GlobalPoint p1,
const GlobalPoint p2 
)
private

Definition at line 270 of file ME0GeometryValidate.cc.

270  {
271  return sqrt((p1.x() - p2.x()) * (p1.x() - p2.x()) + (p1.y() - p2.y()) * (p1.y() - p2.y()) +
272  (p1.z() - p2.z()) * (p1.z() - p2.z()));
273 }

References p1, p2, and mathSSE::sqrt().

Referenced by compareTransform().

◆ makeHistogram()

void ME0GeometryValidate::makeHistogram ( const string &  name,
vector< float > &  data 
)
private

Definition at line 318 of file ME0GeometryValidate.cc.

318  {
319  if (data.empty())
320  return;
321 
322  const auto [minE, maxE] = minmax_element(begin(data), end(data));
323 
324  TH1D hist(name.c_str(), name.c_str(), 100, *minE * (1 + 0.10), *maxE * (1 + 0.10));
325 
326  for (auto const& it : data)
327  hist.Fill(it);
328 
329  hist.GetXaxis()->SetTitle("[cm]");
330  hist.Write();
331 }

References data, mps_fire::end, gpuVertexFinder::hist, HLT_FULL_cff::maxE, and Skims_PA_cff::name.

Referenced by makeHistograms(), and makeHistograms2().

◆ makeHistograms()

void ME0GeometryValidate::makeHistograms ( const char *  detector)
private

Definition at line 282 of file ME0GeometryValidate.cc.

282  {
283  outFile_->cd();
284 
285  string d(detector);
286 
287  string gdn = d + ": distance between points in global coordinates";
289 
290  string twn = d + ": absolute difference between top widths (along X)";
292 
293  string bwn = d + ": absolute difference between bottom widths (along X)";
295 
296  string ln = d + ": absolute difference between lengths (along Y)";
297  makeHistogram(ln, lengths_);
298 
299  string tn = d + ": absolute difference between thicknesses (along Z)";
301 }

References bottomWidths_, ztail::d, hgcalTestNeighbor_cfi::detector, globalDistances_, lengths_, makeHistogram(), outFile_, thicknesses_, and topWidths_.

Referenced by validateME0ChamberGeometry(), and validateME0EtaPartitionGeometry2().

◆ makeHistograms2()

void ME0GeometryValidate::makeHistograms2 ( const char *  detector)
private

Definition at line 303 of file ME0GeometryValidate.cc.

303  {
304  outFile_->cd();
305 
306  string d(detector);
307 
308  string ns = d + ": absolute difference between nStrips";
309  makeHistogram(ns, nstrips_);
310 
311  string pi = d + ": absolute difference between Strips Pitch";
313 
314  string pl = d + ": absolute difference between Strips Length";
316 }

References ztail::d, hgcalTestNeighbor_cfi::detector, makeHistogram(), nstrips_, outFile_, pi, pitch_, and stripslen_.

Referenced by validateME0EtaPartitionGeometry().

◆ validateME0ChamberGeometry()

void ME0GeometryValidate::validateME0ChamberGeometry ( )
private

Definition at line 125 of file ME0GeometryValidate.cc.

125  {
126  clearData();
127 
128  for (auto const& it : me0Geometry_->chambers()) {
129  ME0DetId chId = it->id();
130  GlobalPoint gp = it->surface().toGlobal(LocalPoint(0.0, 0.0, 0.0));
131  const TGeoMatrix* matrix = fwGeometry_.getMatrix(chId.rawId());
132 
133  if (!matrix) {
134  LogTrace("ME0Geometry") << "Failed to get matrix of ME0 chamber with detid: " << chId.rawId();
135  continue;
136  }
138 
139  auto const& shape = fwGeometry_.getShapePars(chId.rawId());
140 
141  if (!shape) {
142  LogTrace("ME0Geometry") << "Failed to get shape of ME0 chamber with detid: " << chId.rawId();
143  continue;
144  }
145  compareShape(it, shape);
146  }
147  makeHistograms("ME0 Chamber");
148 }

References ME0Geometry::chambers(), clearData(), compareShape(), compareTransform(), fwGeometry_, FWGeometry::getMatrix(), FWGeometry::getShapePars(), runTauDisplay::gp, LogTrace, makeHistograms(), makeMuonMisalignmentScenario::matrix, me0Geometry_, and DetId::rawId().

Referenced by analyze().

◆ validateME0EtaPartitionGeometry()

void ME0GeometryValidate::validateME0EtaPartitionGeometry ( )
private

Definition at line 175 of file ME0GeometryValidate.cc.

175  {
176  clearData2();
177 
178  for (auto const& it : me0Geometry_->etaPartitions()) {
179  ME0DetId chId = it->id();
180  const int n_strips = it->nstrips();
181  const float n_pitch = it->pitch();
182  const StripTopology& topo = it->specificTopology();
183  const float stripLen = topo.stripLength();
184  const float* parameters = fwGeometry_.getParameters(chId.rawId());
185  nstrips_.push_back(std::abs(n_strips - parameters[0]));
186 
187  if (n_strips) {
188  for (int istrips = 1; istrips <= n_strips; istrips++) {
189  if (std::abs(n_pitch - parameters[2]) < 1.0e-05)
190  pitch_.push_back(0.0f);
191  else
192  pitch_.push_back(std::abs(n_pitch - parameters[2]));
193  if (std::abs(stripLen - parameters[1]) < 1.0e-05)
194  pitch_.push_back(0.0f);
195  else
196  stripslen_.push_back(std::abs(stripLen - parameters[1]));
197  }
198  } else {
199  LogWarning("ME0Geometry") << "ATTENTION! nStrips == 0";
200  }
201  }
202  makeHistograms2("ME0 Eta Partition");
203 }

References funct::abs(), clearData2(), MillePedeFileConverter_cfg::e, ME0Geometry::etaPartitions(), f, fwGeometry_, FWGeometry::getParameters(), makeHistograms2(), me0Geometry_, nstrips_, pitch_, DetId::rawId(), StripTopology::stripLength(), and stripslen_.

Referenced by analyze().

◆ validateME0EtaPartitionGeometry2()

void ME0GeometryValidate::validateME0EtaPartitionGeometry2 ( )
private

Definition at line 150 of file ME0GeometryValidate.cc.

150  {
151  clearData();
152 
153  for (auto const& it : me0Geometry_->etaPartitions()) {
154  ME0DetId chId = it->id();
155  GlobalPoint gp = it->surface().toGlobal(LocalPoint(0.0, 0.0, 0.0));
156  const TGeoMatrix* matrix = fwGeometry_.getMatrix(chId.rawId());
157 
158  if (!matrix) {
159  LogTrace("ME0Geometry") << "Failed to get matrix of ME0 eta partition 2 with detid: " << chId.rawId();
160  continue;
161  }
163 
164  auto const& shape = fwGeometry_.getShapePars(chId.rawId());
165 
166  if (!shape) {
167  LogTrace("ME0Geometry") << "Failed to get shape of ME0 eta partition 2 with detid: " << chId.rawId();
168  continue;
169  }
170  compareShape(it, shape);
171  }
172  makeHistograms("ME0 Eta Partition");
173 }

References clearData(), compareShape(), compareTransform(), ME0Geometry::etaPartitions(), fwGeometry_, FWGeometry::getMatrix(), FWGeometry::getShapePars(), runTauDisplay::gp, LogTrace, makeHistograms(), makeMuonMisalignmentScenario::matrix, me0Geometry_, and DetId::rawId().

Referenced by analyze().

Member Data Documentation

◆ bottomWidths_

vector<float> ME0GeometryValidate::bottomWidths_
private

Definition at line 93 of file ME0GeometryValidate.cc.

Referenced by compareShape(), and makeHistograms().

◆ fwGeometry_

FWGeometry ME0GeometryValidate::fwGeometry_
private

◆ globalDistances_

vector<float> ME0GeometryValidate::globalDistances_
private

Definition at line 91 of file ME0GeometryValidate.cc.

Referenced by compareTransform(), and makeHistograms().

◆ infileName_

string ME0GeometryValidate::infileName_
private

Definition at line 99 of file ME0GeometryValidate.cc.

Referenced by ME0GeometryValidate().

◆ lengths_

vector<float> ME0GeometryValidate::lengths_
private

Definition at line 94 of file ME0GeometryValidate.cc.

Referenced by compareShape(), and makeHistograms().

◆ me0Geometry_

edm::ESHandle<ME0Geometry> ME0GeometryValidate::me0Geometry_
private

◆ nstrips_

vector<float> ME0GeometryValidate::nstrips_
private

Definition at line 96 of file ME0GeometryValidate.cc.

Referenced by makeHistograms2(), and validateME0EtaPartitionGeometry().

◆ outFile_

TFile* ME0GeometryValidate::outFile_
private

◆ outfileName_

string ME0GeometryValidate::outfileName_
private

Definition at line 100 of file ME0GeometryValidate.cc.

Referenced by endJob(), and ME0GeometryValidate().

◆ pitch_

vector<float> ME0GeometryValidate::pitch_
private

Definition at line 97 of file ME0GeometryValidate.cc.

Referenced by makeHistograms2(), and validateME0EtaPartitionGeometry().

◆ stripslen_

vector<float> ME0GeometryValidate::stripslen_
private

Definition at line 98 of file ME0GeometryValidate.cc.

Referenced by makeHistograms2(), and validateME0EtaPartitionGeometry().

◆ thicknesses_

vector<float> ME0GeometryValidate::thicknesses_
private

Definition at line 95 of file ME0GeometryValidate.cc.

Referenced by compareShape(), and makeHistograms().

◆ tolerance_

int ME0GeometryValidate::tolerance_
private

Definition at line 101 of file ME0GeometryValidate.cc.

Referenced by getDiff().

◆ topWidths_

vector<float> ME0GeometryValidate::topWidths_
private

Definition at line 92 of file ME0GeometryValidate.cc.

Referenced by compareShape(), and makeHistograms().

ME0Geometry::etaPartitions
const std::vector< ME0EtaPartition const * > & etaPartitions() const
Return a vector of all ME0 eta partitions.
Definition: ME0Geometry.cc:33
ME0GeometryValidate::validateME0ChamberGeometry
void validateME0ChamberGeometry()
Definition: ME0GeometryValidate.cc:125
HLT_FULL_cff.maxE
maxE
Definition: HLT_FULL_cff.py:13669
BeamSpotPI::parameters
parameters
Definition: BeamSpotPayloadInspectorHelper.h:30
ME0GeometryValidate::infileName_
string infileName_
Definition: ME0GeometryValidate.cc:99
Bounds::width
virtual float width() const =0
ME0GeometryValidate::nstrips_
vector< float > nstrips_
Definition: ME0GeometryValidate.cc:96
makeMuonMisalignmentScenario.matrix
list matrix
Definition: makeMuonMisalignmentScenario.py:141
FWGeometry::loadMap
void loadMap(const char *fileName)
Definition: FWGeometry.cc:103
f
double f[11][100]
Definition: MuScleFitUtils.cc:78
ME0GeometryValidate::compareTransform
void compareTransform(const GlobalPoint &, const TGeoMatrix *)
Definition: ME0GeometryValidate.cc:205
FWGeometry::getShapePars
const float * getShapePars(unsigned int id) const
Definition: FWGeometry.cc:489
Bounds
Definition: Bounds.h:18
cms::cuda::assert
assert(be >=bs)
edm::ParameterSet::getUntrackedParameter
T getUntrackedParameter(std::string const &, T const &) const
align::LocalPoint
Point3DBase< Scalar, LocalTag > LocalPoint
Definition: Definitions.h:30
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
ME0GeometryValidate::clearData2
void clearData2()
Definition: ME0GeometryValidate.cc:82
ME0Geometry::chambers
const std::vector< const ME0Chamber * > & chambers() const
Return a vector of all ME0 chambers.
Definition: ME0Geometry.cc:29
ME0GeometryValidate::validateME0EtaPartitionGeometry
void validateME0EtaPartitionGeometry()
Definition: ME0GeometryValidate.cc:175
Bounds::length
virtual float length() const =0
ME0GeometryValidate::makeHistograms
void makeHistograms(const char *)
Definition: ME0GeometryValidate.cc:282
GeomDet::surface
const Plane & surface() const
The nominal surface of the GeomDet.
Definition: GeomDet.h:37
FWGeometry::getParameters
const float * getParameters(unsigned int id) const
Definition: FWGeometry.cc:478
FWGeometry::getMatrix
const TGeoMatrix * getMatrix(unsigned int id) const
Definition: FWGeometry.cc:225
ME0GeometryValidate::topWidths_
vector< float > topWidths_
Definition: ME0GeometryValidate.cc:92
ME0GeometryValidate::outfileName_
string outfileName_
Definition: ME0GeometryValidate.cc:100
edm::EventSetup::get
T get() const
Definition: EventSetup.h:87
Calorimetry_cff.thickness
thickness
Definition: Calorimetry_cff.py:115
ME0GeometryValidate::validateME0EtaPartitionGeometry2
void validateME0EtaPartitionGeometry2()
Definition: ME0GeometryValidate.cc:150
mathSSE::sqrt
T sqrt(T t)
Definition: SSEVec.h:19
Surface::bounds
const Bounds & bounds() const
Definition: Surface.h:87
mps_fire.end
end
Definition: mps_fire.py:242
p2
double p2[4]
Definition: TauolaWrapper.h:90
ME0GeometryValidate::makeHistograms2
void makeHistograms2(const char *)
Definition: ME0GeometryValidate.cc:303
GlobalPoint
Global3DPoint GlobalPoint
Definition: GlobalPoint.h:10
Point3DBase< float, GlobalTag >
ME0GeometryValidate::outFile_
TFile * outFile_
Definition: ME0GeometryValidate.cc:90
runTauDisplay.gp
gp
Definition: runTauDisplay.py:431
Bounds::thickness
virtual float thickness() const =0
StripTopology::stripLength
virtual float stripLength() const =0
ME0GeometryValidate::bottomWidths_
vector< float > bottomWidths_
Definition: ME0GeometryValidate.cc:93
ME0GeometryValidate::globalDistances_
vector< float > globalDistances_
Definition: ME0GeometryValidate.cc:91
gpuVertexFinder::hist
__shared__ Hist hist
Definition: gpuClusterTracksDBSCAN.h:48
ME0GeometryValidate::getDistance
float getDistance(const GlobalPoint &, const GlobalPoint &)
Definition: ME0GeometryValidate.cc:270
ME0GeometryValidate::pitch_
vector< float > pitch_
Definition: ME0GeometryValidate.cc:97
p1
double p1[4]
Definition: TauolaWrapper.h:89
ME0DetId
Definition: ME0DetId.h:16
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
ME0GeometryValidate::me0Geometry_
edm::ESHandle< ME0Geometry > me0Geometry_
Definition: ME0GeometryValidate.cc:88
TrapezoidalPlaneBounds
Definition: TrapezoidalPlaneBounds.h:15
get
#define get
edm::ESHandleBase::isValid
bool isValid() const
Definition: ESHandle.h:44
DetId::rawId
constexpr uint32_t rawId() const
get the raw id
Definition: DetId.h:57
ME0GeometryValidate::lengths_
vector< float > lengths_
Definition: ME0GeometryValidate.cc:94
ME0GeometryValidate::clearData
void clearData()
Definition: ME0GeometryValidate.cc:74
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
data
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79
ME0GeometryValidate::tolerance_
int tolerance_
Definition: ME0GeometryValidate.cc:101
hgcalTestNeighbor_cfi.detector
detector
Definition: hgcalTestNeighbor_cfi.py:6
ztail.d
d
Definition: ztail.py:151
pi
const Double_t pi
Definition: trackSplitPlot.h:36
DTRecHitClients_cfi.local
local
Definition: DTRecHitClients_cfi.py:10
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
LogTrace
#define LogTrace(id)
Definition: MessageLogger.h:234
ME0GeometryValidate::thicknesses_
vector< float > thicknesses_
Definition: ME0GeometryValidate.cc:95
ME0GeometryValidate::makeHistogram
void makeHistogram(const string &, vector< float > &)
Definition: ME0GeometryValidate.cc:318
ME0GeometryValidate::fwGeometry_
FWGeometry fwGeometry_
Definition: ME0GeometryValidate.cc:89
ME0GeometryValidate::stripslen_
vector< float > stripslen_
Definition: ME0GeometryValidate.cc:98
HLT_FULL_cff.distance
distance
Definition: HLT_FULL_cff.py:7733
StripTopology
Definition: StripTopology.h:11
MuonGeometryRecord
Definition: MuonGeometryRecord.h:34
almost_equal
enable_if<!numeric_limits< T >::is_integer, bool >::type almost_equal(T x, T y, int ulp)
Definition: ME0GeometryValidate.cc:40
ME0GeometryValidate::compareShape
void compareShape(const GeomDet *, const float *)
Definition: ME0GeometryValidate.cc:217
MillePedeFileConverter_cfg.e
e
Definition: MillePedeFileConverter_cfg.py:37