|
![CMS Logo](/cmsdoxygen/common/rightImage.jpg) |
|
| ValidateGeometry (const edm::ParameterSet &) |
|
| ~ValidateGeometry () override |
|
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
|
| EDAnalyzer () |
|
SerialTaskQueue * | globalLuminosityBlocksQueue () |
|
SerialTaskQueue * | globalRunsQueue () |
|
ModuleDescription const & | moduleDescription () const |
|
std::string | workerType () const |
|
| ~EDAnalyzer () override |
|
std::vector< ConsumesInfo > | consumesInfo () 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 |
|
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
|
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
|
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
|
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
|
void | selectInputProcessBlocks (ProductRegistry const &productRegistry, ProcessBlockHelperBase const &processBlockHelperBase) |
|
ProductResolverIndexAndSkipBit | uncheckedIndexFrom (EDGetToken) const |
|
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
|
void | updateLookup (eventsetup::ESRecordsToProxyIndices const &) |
|
virtual | ~EDConsumerBase () noexcept(false) |
|
|
void | analyze (const edm::Event &, const edm::EventSetup &) override |
|
void | beginJob () override |
|
void | clearData () |
|
void | compareShape (const GeomDet *det, const float *shape) |
|
void | compareTransform (const GlobalPoint &point, const TGeoMatrix *matrix) |
|
bool | dataEmpty () |
|
void | endJob () override |
|
double | getDistance (const GlobalPoint &point1, const GlobalPoint &point2) |
|
void | makeHistogram (const std::string &name, std::vector< double > &data) |
|
void | makeHistograms (const char *detector) |
|
void | validateCaloGeometry (DetId::Detector detector, int subdetector, const char *detname) |
|
void | validateCSChamberGeometry (const int endcap, const char *detname) |
|
void | validateCSCLayerGeometry (const int endcap, const char *detname) |
|
void | validateDTChamberGeometry () |
|
void | validateDTLayerGeometry () |
|
void | validatePixelTopology (const TrackerGeometry::DetContainer &dets, const char *detname) |
|
void | validateRPCGeometry (const int regionNumber, const char *regionName) |
|
void | validateStripTopology (const TrackerGeometry::DetContainer &dets, const char *detname) |
|
void | validateTrackerGeometry (const TrackerGeometry::DetContainer &dets, const char *detname) |
|
|
typedef EDAnalyzer | ModuleType |
|
typedef ProductLabels | Labels |
|
static const std::string & | baseType () |
|
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
|
static void | prevalidate (ConfigurationDescriptions &) |
|
static bool | wantsGlobalLuminosityBlocks () |
|
static bool | wantsGlobalRuns () |
|
static bool | wantsInputProcessBlocks () |
|
static bool | wantsProcessBlocks () |
|
static bool | wantsStreamLuminosityBlocks () |
|
static bool | wantsStreamRuns () |
|
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) |
|
Definition at line 62 of file ValidateGeometry.cc.
◆ ValidateGeometry()
◆ ~ValidateGeometry()
ValidateGeometry::~ValidateGeometry |
( |
| ) |
|
|
override |
◆ analyze()
Implements edm::EDAnalyzer.
Definition at line 149 of file ValidateGeometry.cc.
154 std::cout <<
"Validating RPC -z endcap geometry" << std::endl;
157 std::cout <<
"Validating RPC +z endcap geometry" << std::endl;
160 std::cout <<
"Validating RPC barrel geometry" << std::endl;
168 std::cout <<
"Validating DT chamber geometry" << std::endl;
171 std::cout <<
"Validating DT layer geometry" << std::endl;
179 std::cout <<
"Validating CSC -z geometry" << std::endl;
182 std::cout <<
"Validating CSC +z geometry" << std::endl;
185 std::cout <<
"Validating CSC layer -z geometry" << std::endl;
188 std::cout <<
"Validating CSC layer +z geometry" << std::endl;
198 std::cout <<
"Validating TIB geometry and topology" << std::endl;
202 std::cout <<
"Validating TOB geometry and topology" << std::endl;
206 std::cout <<
"Validating TEC geometry and topology" << std::endl;
210 std::cout <<
"Validating TID geometry and topology" << std::endl;
214 std::cout <<
"Validating PXB geometry and topology" << std::endl;
218 std::cout <<
"Validating PXF geometry and topology" << std::endl;
229 std::cout <<
"Validating EB geometry" << std::endl;
232 std::cout <<
"Validating EE geometry" << std::endl;
235 std::cout <<
"Validating ES geometry" << std::endl;
238 std::cout <<
"Validating HB geometry" << std::endl;
241 std::cout <<
"Validating HE geometry" << std::endl;
244 std::cout <<
"Validating HO geometry" << std::endl;
247 std::cout <<
"Validating HF geometry" << std::endl;
250 std::cout <<
"Validating Castor geometry" << std::endl;
253 std::cout <<
"Validating ZDC geometry" << std::endl;
References DetId::Calo, caloGeometry_, gather_cfg::cout, cscGeometry_, TrackerGeometry::detsPXB(), TrackerGeometry::detsPXF(), TrackerGeometry::detsTEC(), TrackerGeometry::detsTIB(), TrackerGeometry::detsTID(), TrackerGeometry::detsTOB(), doCalo_, doMuon_, doTracker_, dtGeometry_, DetId::Ecal, EcalBarrel, EcalEndcap, EcalPreshower, fwLog, edm::EventSetup::get(), get, DetId::Hcal, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, edm::ESHandleBase::isValid(), fwlog::kWarning, rpcGeometry_, HcalZDCDetId::SubdetectorId, HcalCastorDetId::SubdetectorId, trackerGeometry_, validateCaloGeometry(), validateCSChamberGeometry(), validateCSCLayerGeometry(), validateDTChamberGeometry(), validateDTLayerGeometry(), validatePixelTopology(), validateRPCGeometry(), validateStripTopology(), and validateTrackerGeometry().
◆ beginJob()
void ValidateGeometry::beginJob |
( |
void |
| ) |
|
|
overrideprivatevirtual |
◆ clearData()
void ValidateGeometry::clearData |
( |
| ) |
|
|
inlineprivate |
Definition at line 117 of file ValidateGeometry.cc.
References bottomWidths_, globalDistances_, lengths_, thicknesses_, and topWidths_.
Referenced by validateCaloGeometry(), validateCSChamberGeometry(), validateCSCLayerGeometry(), validateDTChamberGeometry(), validateDTLayerGeometry(), validateRPCGeometry(), and validateTrackerGeometry().
◆ compareShape()
void ValidateGeometry::compareShape |
( |
const GeomDet * |
det, |
|
|
const float * |
shape |
|
) |
| |
|
private |
Definition at line 905 of file ValidateGeometry.cc.
906 double shape_topWidth;
907 double shape_bottomWidth;
909 double shape_thickness;
912 shape_topWidth = shape[2];
913 shape_bottomWidth = shape[1];
914 shape_length = shape[4];
915 shape_thickness = shape[3];
918 else if (shape[0] == 2) {
919 shape_topWidth = shape[1];
920 shape_bottomWidth = shape[1];
921 shape_length = shape[2];
922 shape_thickness = shape[3];
926 std::cout <<
"Failed to get box or trapezoid from shape" << std::endl;
930 double topWidth, bottomWidth;
936 std::array<const float, 4>
const& ps = tpbs->parameters();
946 else if ((dynamic_cast<const RectangularPlaneBounds*>(bounds))) {
949 bottomWidth = topWidth;
954 std::cout <<
"Failed to get bounds" << std::endl;
967 topWidths_.push_back(fabs(shape_topWidth - topWidth));
968 bottomWidths_.push_back(fabs(shape_bottomWidth - bottomWidth));
969 lengths_.push_back(fabs(shape_length - length));
References cms::cuda::assert(), bottomWidths_, Surface::bounds(), gather_cfg::cout, Bounds::length(), lengths_, GeomDet::surface(), Bounds::thickness(), Calorimetry_cff::thickness, thicknesses_, topWidths_, and Bounds::width().
Referenced by validateCSChamberGeometry(), validateCSCLayerGeometry(), validateDTChamberGeometry(), validateDTLayerGeometry(), validateRPCGeometry(), and validateTrackerGeometry().
◆ compareTransform()
void ValidateGeometry::compareTransform |
( |
const GlobalPoint & |
point, |
|
|
const TGeoMatrix * |
matrix |
|
) |
| |
|
private |
Definition at line 894 of file ValidateGeometry.cc.
895 double local[3] = {0.0, 0.0, 0.0};
References HLT_FULL_cff::distance, getDistance(), globalDistances_, runTauDisplay::gp, DTRecHitClients_cfi::local, and makeMuonMisalignmentScenario::matrix.
Referenced by validateCSChamberGeometry(), validateCSCLayerGeometry(), validateDTChamberGeometry(), validateDTLayerGeometry(), validateRPCGeometry(), and validateTrackerGeometry().
◆ dataEmpty()
bool ValidateGeometry::dataEmpty |
( |
| ) |
|
|
inlineprivate |
◆ endJob()
void ValidateGeometry::endJob |
( |
void |
| ) |
|
|
overrideprivatevirtual |
◆ getDistance()
◆ makeHistogram()
void ValidateGeometry::makeHistogram |
( |
const std::string & |
name, |
|
|
std::vector< double > & |
data |
|
) |
| |
|
private |
Definition at line 1009 of file ValidateGeometry.cc.
1013 std::vector<double>::iterator it;
1015 it = std::min_element(
data.begin(),
data.end());
1018 it = std::max_element(
data.begin(),
data.end());
1021 std::vector<double>::iterator itEnd =
data.end();
1023 TH1D
hist(
name.c_str(),
name.c_str(), 100, minE * (1 + 0.10),
maxE * (1 + 0.10));
1025 for (it =
data.begin(); it != itEnd; ++it)
1028 hist.GetXaxis()->SetTitle(
"[cm]");
References data, gpuVertexFinder::hist, HLT_FULL_cff::maxE, and Skims_PA_cff::name.
Referenced by makeHistograms(), validateCSCLayerGeometry(), validateDTLayerGeometry(), validatePixelTopology(), validateRPCGeometry(), and validateStripTopology().
◆ makeHistograms()
void ValidateGeometry::makeHistograms |
( |
const char * |
detector | ) |
|
|
private |
Definition at line 986 of file ValidateGeometry.cc.
991 std::string gdn =
d +
": distance between points in global coordinates";
994 std::string twn =
d +
": absolute difference between top widths (along X)";
997 std::string bwn =
d +
": absolute difference between bottom widths (along X)";
1000 std::string ln =
d +
": absolute difference between lengths (along Y)";
1003 std::string tn =
d +
": absolute difference between thicknesses (along Z)";
References bottomWidths_, ztail::d, hgcalTestNeighbor_cfi::detector, globalDistances_, lengths_, makeHistogram(), outFile_, AlCaHLTBitMon_QueryRunRegistry::string, thicknesses_, and topWidths_.
Referenced by validateCaloGeometry(), validateCSChamberGeometry(), validateCSCLayerGeometry(), validateDTChamberGeometry(), validateDTLayerGeometry(), validateRPCGeometry(), and validateTrackerGeometry().
◆ validateCaloGeometry()
void ValidateGeometry::validateCaloGeometry |
( |
DetId::Detector |
detector, |
|
|
int |
subdetector, |
|
|
const char * |
detname |
|
) |
| |
|
private |
Definition at line 704 of file ValidateGeometry.cc.
711 for (
auto it = ids.begin(), iEnd = ids.end(); it != iEnd; ++it) {
712 unsigned int rawId = (*it).rawId();
717 std::cout <<
"Failed to get points of " << detname <<
" element with detid: " << rawId << std::endl;
721 auto cellGeometry =
geometry->getGeometry(*it);
726 for (
unsigned int i = 0,
offset = 0;
i < 8; ++
i) {
References cms::cuda::assert(), caloGeometry_, clearData(), gather_cfg::cout, hgcalTestNeighbor_cfi::detector, HLT_FULL_cff::distance, fwGeometry_, FWGeometry::getCorners(), getDistance(), CaloGeometry::getSubdetectorGeometry(), globalDistances_, mps_fire::i, makeHistograms(), hltrates_dqm_sourceclient-live_cfg::offset, HLT_FULL_cff::points, EZArrayFL< T >::size(), subdetector, x, y, and z.
Referenced by analyze().
◆ validateCSChamberGeometry()
void ValidateGeometry::validateCSChamberGeometry |
( |
const int |
endcap, |
|
|
const char * |
detname |
|
) |
| |
|
private |
Definition at line 438 of file ValidateGeometry.cc.
443 for (
auto it =
chambers.begin(), itEnd =
chambers.end(); it != itEnd; ++it) {
453 std::cout <<
"Failed to get matrix of CSC chamber with detid: " << detId.
rawId() << std::endl;
462 std::cout <<
"Failed to get shape of CSC chamber with detid: " << detId.
rawId() << std::endl;
References relativeConstraints::chamber, CSCGeometry::chambers(), chambers, clearData(), compareShape(), compareTransform(), gather_cfg::cout, cscGeometry_, makeMuonMisalignmentScenario::endcap, fwGeometry_, FWGeometry::getMatrix(), FWGeometry::getShapePars(), runTauDisplay::gp, makeHistograms(), makeMuonMisalignmentScenario::matrix, and DetId::rawId().
Referenced by analyze().
◆ validateCSCLayerGeometry()
void ValidateGeometry::validateCSCLayerGeometry |
( |
const int |
endcap, |
|
|
const char * |
detname |
|
) |
| |
|
private |
Definition at line 473 of file ValidateGeometry.cc.
475 std::vector<double> strip_positions;
476 std::vector<double> wire_positions;
478 std::vector<double> me11_wiresLocal;
479 std::vector<double> me12_wiresLocal;
480 std::vector<double> me13_wiresLocal;
481 std::vector<double> me14_wiresLocal;
482 std::vector<double> me21_wiresLocal;
483 std::vector<double> me22_wiresLocal;
484 std::vector<double> me31_wiresLocal;
485 std::vector<double> me32_wiresLocal;
486 std::vector<double> me41_wiresLocal;
487 std::vector<double> me42_wiresLocal;
491 for (
auto it =
layers.begin(), itEnd =
layers.end(); it != itEnd; ++it) {
501 std::cout <<
"Failed to get matrix of CSC layer with detid: " << detId.
rawId() << std::endl;
510 std::cout <<
"Failed to get shape of CSC layer with detid: " << detId.
rawId() << std::endl;
523 std::cout <<
"Failed to get trapezoid from shape for CSC layer with detid: " << detId.
rawId() << std::endl;
530 std::cout <<
"Parameters empty for CSC layer with detid: " << detId.
rawId() << std::endl;
534 int yAxisOrientation =
layer->geometry()->topology()->yAxisOrientation();
537 float centreToIntersection =
layer->geometry()->topology()->centreToIntersection();
540 float yCentre =
layer->geometry()->topology()->yCentreOfStripPlane();
543 float phiOfOneEdge =
layer->geometry()->topology()->phiOfOneEdge();
546 float stripOffset =
layer->geometry()->topology()->stripOffset();
549 float angularWidth =
layer->geometry()->topology()->angularWidth();
552 for (
int nStrip = 1; nStrip <=
layer->geometry()->numberOfStrips(); ++nStrip) {
553 float xOfStrip1 =
layer->geometry()->xOfStrip(nStrip);
555 double stripAngle = phiOfOneEdge + yAxisOrientation * (nStrip - (0.5 - stripOffset)) * angularWidth;
556 double xOfStrip2 = yAxisOrientation * (centreToIntersection - yCentre) *
tan(stripAngle);
558 strip_positions.push_back(xOfStrip1 - xOfStrip2);
564 double wireSpacingInGroup =
layer->geometry()->wireTopology()->wireSpacing();
567 double wireSpacing = 0.0;
571 double extentOfWirePlane = 0.0;
575 extentOfWirePlane = 174.81;
577 extentOfWirePlane = 323.38;
579 extentOfWirePlane = 150.5;
581 extentOfWirePlane = 164.47;
583 extentOfWirePlane = 189.97;
585 extentOfWirePlane = 170.01;
587 extentOfWirePlane = 149.73;
589 float wireAngle =
layer->geometry()->wireTopology()->wireAngle();
600 double alignmentPinToFirstWire;
601 double yAlignmentFrame = 3.49;
605 alignmentPinToFirstWire = 1.065;
606 yAlignmentFrame = 0.0;
610 alignmentPinToFirstWire = 2.85;
614 alignmentPinToFirstWire = 3.04;
617 alignmentPinToFirstWire = 2.84;
620 alignmentPinToFirstWire = 2.87;
622 double yOfFirstWire = (yAlignmentFrame - length) + alignmentPinToFirstWire;
624 int nWireGroups =
layer->geometry()->numberOfWireGroups();
625 double E = extentOfWirePlane / nWireGroups;
627 for (
int nWireGroup = 1; nWireGroup <= nWireGroups; ++nWireGroup) {
628 LocalPoint centerOfWireGroup =
layer->geometry()->localCenterOfWireGroup(nWireGroup);
629 double yOfWire1 = centerOfWireGroup.
y();
633 double yOfWire2 = yOfFirstWire + ((nWireGroup - 1) * E);
634 yOfWire2 += wireSpacing * 0.5;
636 double ydiff_local = yOfWire1 - yOfWire2;
637 wire_positions.push_back(ydiff_local);
654 me11_wiresLocal.push_back(ydiff_local);
655 }
else if (
ring == 2) {
656 me12_wiresLocal.push_back(ydiff_local);
657 }
else if (
ring == 3) {
658 me13_wiresLocal.push_back(ydiff_local);
659 }
else if (
ring == 4) {
660 me14_wiresLocal.push_back(ydiff_local);
664 me21_wiresLocal.push_back(ydiff_local);
665 }
else if (
ring == 2) {
666 me22_wiresLocal.push_back(ydiff_local);
670 me31_wiresLocal.push_back(ydiff_local);
671 }
else if (
ring == 2) {
672 me32_wiresLocal.push_back(ydiff_local);
676 me41_wiresLocal.push_back(ydiff_local);
677 }
else if (
ring == 2) {
678 me42_wiresLocal.push_back(ydiff_local);
References cms::cuda::assert(), clearData(), compareShape(), compareTransform(), gather_cfg::cout, cscGeometry_, makeMuonMisalignmentScenario::endcap, fwGeometry_, FWGeometry::getMatrix(), FWGeometry::getParameters(), FWGeometry::getShapePars(), runTauDisplay::gp, phase1PixelTopology::layer, hgcalTopologyTester_cfi::layers, CSCGeometry::layers(), makeHistogram(), makeHistograms(), makeMuonMisalignmentScenario::matrix, DetId::rawId(), relativeConstraints::ring, relativeConstraints::station, AlCaHLTBitMon_QueryRunRegistry::string, funct::tan(), and PV3DBase< T, PVType, FrameType >::y().
Referenced by analyze().
◆ validateDTChamberGeometry()
void ValidateGeometry::validateDTChamberGeometry |
( |
| ) |
|
|
private |
Definition at line 332 of file ValidateGeometry.cc.
337 for (
auto it =
chambers.begin(), itEnd =
chambers.end(); it != itEnd; ++it) {
347 std::cout <<
"Failed to get matrix of DT chamber with detid: " << chId.
rawId() << std::endl;
356 std::cout <<
"Failed to get shape of DT chamber with detid: " << chId.
rawId() << std::endl;
References relativeConstraints::chamber, DTGeometry::chambers(), chambers, clearData(), compareShape(), compareTransform(), gather_cfg::cout, dtGeometry_, fwGeometry_, FWGeometry::getMatrix(), FWGeometry::getShapePars(), runTauDisplay::gp, makeHistograms(), makeMuonMisalignmentScenario::matrix, and DetId::rawId().
Referenced by analyze().
◆ validateDTLayerGeometry()
void ValidateGeometry::validateDTLayerGeometry |
( |
| ) |
|
|
private |
Definition at line 367 of file ValidateGeometry.cc.
370 std::vector<double> wire_positions;
374 for (
auto it =
layers.begin(), itEnd =
layers.end(); it != itEnd; ++it) {
384 std::cout <<
"Failed to get matrix of DT layer with detid: " << layerId.
rawId() << std::endl;
393 std::cout <<
"Failed to get shape of DT layer with detid: " << layerId.
rawId() << std::endl;
402 std::cout <<
"Parameters empty for DT layer with detid: " << layerId.
rawId() << std::endl;
406 float width =
layer->surface().bounds().width();
412 float length =
layer->surface().bounds().length();
415 int firstChannel =
layer->specificTopology().firstChannel();
418 int lastChannel =
layer->specificTopology().lastChannel();
422 for (
int wireN = firstChannel; wireN - lastChannel <= 0; ++wireN) {
423 double localX1 =
layer->specificTopology().wirePosition(wireN);
426 wire_positions.push_back(localX1 - localX2);
References cms::cuda::assert(), clearData(), compareShape(), compareTransform(), gather_cfg::cout, dtGeometry_, fwGeometry_, FWGeometry::getMatrix(), FWGeometry::getParameters(), FWGeometry::getShapePars(), runTauDisplay::gp, phase1PixelTopology::layer, hgcalTopologyTester_cfi::layers, DTGeometry::layers(), makeHistogram(), makeHistograms(), makeMuonMisalignmentScenario::matrix, ecaldqm::nChannels, DetId::rawId(), Calorimetry_cff::thickness, and ApeEstimator_cff::width.
Referenced by analyze().
◆ validatePixelTopology()
Definition at line 769 of file ValidateGeometry.cc.
770 std::vector<double> pixelLocalXs;
771 std::vector<double> pixelLocalYs;
773 for (TrackerGeometry::DetContainer::const_iterator it = dets.begin(), itEnd = dets.end(); it != itEnd; ++it) {
774 unsigned int rawId = (*it)->geographicalId().rawId();
779 std::cout <<
"Parameters empty for " << detname <<
" element with detid: " << rawId << std::endl;
786 int nrows = rpt->nrows();
787 int ncolumns = rpt->ncolumns();
789 for (
int row = 1; row <= nrows; ++row) {
790 for (
int column = 1; column <= ncolumns; ++column) {
800 std::cout <<
"No topology for " << detname <<
" " << rawId << std::endl;
804 std::cout <<
"No geomDetUnit for " << detname <<
" " << rawId << std::endl;
References gather_cfg::cout, fwGeometry_, FWGeometry::getParameters(), TrackerGeometry::idToDetUnit(), makeHistogram(), fireworks::pixelLocalX(), fireworks::pixelLocalY(), AlCaHLTBitMon_QueryRunRegistry::string, trackerGeometry_, PV3DBase< T, PVType, FrameType >::x(), and PV3DBase< T, PVType, FrameType >::y().
Referenced by analyze().
◆ validateRPCGeometry()
void ValidateGeometry::validateRPCGeometry |
( |
const int |
regionNumber, |
|
|
const char * |
regionName |
|
) |
| |
|
private |
Definition at line 260 of file ValidateGeometry.cc.
263 std::vector<double> centers;
267 for (
auto it = rolls.begin(), itEnd = rolls.end(); it != itEnd; ++it) {
273 if (rpcDetId.
region() == regionNumber) {
280 std::cout <<
"Failed to get matrix of RPC with detid: " << rpcDetId.
rawId() << std::endl;
289 std::cout <<
"Failed to get shape of RPC with detid: " << rpcDetId.
rawId() << std::endl;
298 std::cout <<
"Parameters empty for RPC with detid: " << rpcDetId.
rawId() << std::endl;
320 centers.push_back(centreOfStrip1.
x() - centreOfStrip2.
x());
References cms::cuda::assert(), RPCRoll::centreOfStrip(), clearData(), compareShape(), compareTransform(), gather_cfg::cout, fwGeometry_, FWGeometry::getMatrix(), FWGeometry::getParameters(), FWGeometry::getShapePars(), runTauDisplay::gp, RPCRoll::id(), RPCGeometry::idToDetUnit(), makeHistogram(), makeHistograms(), makeMuonMisalignmentScenario::matrix, RPCRoll::nstrips(), me0TriggerPseudoDigis_cff::nStrips, hltrates_dqm_sourceclient-live_cfg::offset, StripTopology::pitch(), DetId::rawId(), RPCDetId::region(), RPCGeometry::rolls(), rpcGeometry_, RPCRoll::specificTopology(), AlCaHLTBitMon_QueryRunRegistry::string, digitizers_cfi::strip, StripTopology::stripLength(), GeomDet::surface(), Surface::toGlobal(), and PV3DBase< T, PVType, FrameType >::x().
Referenced by analyze().
◆ validateStripTopology()
Definition at line 812 of file ValidateGeometry.cc.
813 std::vector<double> radialStripLocalXs;
814 std::vector<double> rectangularStripLocalXs;
816 for (TrackerGeometry::DetContainer::const_iterator it = dets.begin(), itEnd = dets.end(); it != itEnd; ++it) {
817 unsigned int rawId = (*it)->geographicalId().rawId();
822 std::cout <<
"Parameters empty for " << detname <<
" element with detid: " << rawId << std::endl;
831 const StripTopology* st = dynamic_cast<const StripTopology*>(&det->specificTopology());
840 dynamic_cast<const RadialStripTopology*>(&(det->specificType().specificTopology()))) {
848 float stripAngle1 = rst->stripAngle(
strip);
851 assert((stripAngle1 - stripAngle2) == 0);
856 radialStripLocalXs.push_back(stripPosition.
x() - stripX);
860 else if (dynamic_cast<const RectangularStripTopology*>(&(det->specificType().specificTopology()))) {
868 rectangularStripLocalXs.push_back(stripPosition.
x() - stripX);
872 else if (dynamic_cast<const TrapezoidalStripTopology*>(&(det->specificType().specificTopology()))) {
878 std::cout <<
"Failed to get pitch for " << detname <<
" " << rawId << std::endl;
882 std::cout <<
"Failed cast to StripTopology for " << detname <<
" " << rawId << std::endl;
890 makeHistogram(hn +
" radial strip localX", radialStripLocalXs);
891 makeHistogram(hn +
" rectangular strip localX", rectangularStripLocalXs);
References cms::cuda::assert(), gather_cfg::cout, fwGeometry_, FWGeometry::getParameters(), TrackerGeometry::idToDet(), StripTopology::localPosition(), makeHistogram(), StripTopology::nstrips(), StripTopology::pitch(), AlCaHLTBitMon_QueryRunRegistry::string, digitizers_cfi::strip, StripTopology::stripLength(), funct::tan(), trackerGeometry_, and PV3DBase< T, PVType, FrameType >::x().
Referenced by analyze().
◆ validateTrackerGeometry()
Definition at line 739 of file ValidateGeometry.cc.
742 for (TrackerGeometry::DetContainer::const_iterator it = dets.begin(), itEnd = dets.end(); it != itEnd; ++it) {
745 unsigned int rawId = (*it)->geographicalId().rawId();
750 std::cout <<
"Failed to get matrix of " << detname <<
" element with detid: " << rawId << std::endl;
759 std::cout <<
"Failed to get shape of " << detname <<
" element with detid: " << rawId << std::endl;
References clearData(), compareShape(), compareTransform(), gather_cfg::cout, fwGeometry_, FWGeometry::getMatrix(), FWGeometry::getShapePars(), runTauDisplay::gp, TrackerGeometry::idToDet(), makeHistograms(), makeMuonMisalignmentScenario::matrix, and trackerGeometry_.
Referenced by analyze().
◆ bottomWidths_
std::vector<double> ValidateGeometry::bottomWidths_ |
|
private |
◆ caloGeometry_
◆ cscGeometry_
◆ doCalo_
bool ValidateGeometry::doCalo_ |
|
private |
◆ doMuon_
bool ValidateGeometry::doMuon_ |
|
private |
◆ doTracker_
bool ValidateGeometry::doTracker_ |
|
private |
◆ dtGeometry_
◆ fwGeometry_
◆ globalDistances_
std::vector<double> ValidateGeometry::globalDistances_ |
|
private |
◆ infileName_
std::string ValidateGeometry::infileName_ |
|
private |
◆ lengths_
std::vector<double> ValidateGeometry::lengths_ |
|
private |
◆ outFile_
TFile* ValidateGeometry::outFile_ |
|
private |
◆ outfileName_
std::string ValidateGeometry::outfileName_ |
|
private |
◆ rpcGeometry_
◆ thicknesses_
std::vector<double> ValidateGeometry::thicknesses_ |
|
private |
◆ topWidths_
std::vector<double> ValidateGeometry::topWidths_ |
|
private |
◆ trackerGeometry_
const TrackerGeomDet * idToDet(DetId) const override
void validateRPCGeometry(const int regionNumber, const char *regionName)
void validatePixelTopology(const TrackerGeometry::DetContainer &dets, const char *detname)
void validateDTLayerGeometry()
void validateCSCLayerGeometry(const int endcap, const char *detname)
edm::ESHandle< CSCGeometry > cscGeometry_
virtual float width() const =0
int region() const
Region id: 0 for Barrel, +/-1 For +/- Endcap.
const float * getCorners(unsigned int id) const
float pixelLocalX(const double mpx, const float *)
void loadMap(const char *fileName)
double getDistance(const GlobalPoint &point1, const GlobalPoint &point2)
virtual LocalPoint localPosition(float strip) const =0
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
const float * getShapePars(unsigned int id) const
static const int SubdetectorId
T getUntrackedParameter(std::string const &, T const &) const
Point3DBase< Scalar, LocalTag > LocalPoint
virtual float length() const =0
const GeomDet * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.
const TrackerGeomDet * idToDetUnit(DetId) const override
Return the pointer to the GeomDetUnit corresponding to a given DetId.
virtual float pitch() const =0
const DetContainer & detsPXB() const
const Plane & surface() const
The nominal surface of the GeomDet.
const float * getParameters(unsigned int id) const
void validateStripTopology(const TrackerGeometry::DetContainer &dets, const char *detname)
const TGeoMatrix * getMatrix(unsigned int id) const
const DetContainer & detsTOB() const
std::vector< double > thicknesses_
std::vector< double > lengths_
const std::vector< const DTLayer * > & layers() const
Return a vector of all SuperLayer.
const std::vector< const DTChamber * > & chambers() const
Return a vector of all Chamber.
const Bounds & bounds() const
std::vector< double > globalDistances_
GlobalPoint toGlobal(const Point2DBase< Scalar, LocalTag > lp) const
void compareTransform(const GlobalPoint &point, const TGeoMatrix *matrix)
void validateCSChamberGeometry(const int endcap, const char *detname)
const DetContainer & detsPXF() const
Global3DPoint GlobalPoint
static const int SubdetectorId
float pixelLocalY(const double mpy, const float *)
const StripTopology & specificTopology() const
const DetContainer & detsTID() const
constexpr std::array< uint8_t, layerIndexSize > layer
edm::ESHandle< TrackerGeometry > trackerGeometry_
LocalPoint centreOfStrip(int strip) const
Measurement2DPoint MeasurementPoint
Measurement points are two-dimensional by default.
virtual float thickness() const =0
virtual float stripLength() const =0
edm::ESHandle< CaloGeometry > caloGeometry_
Tan< T >::type tan(const T &t)
static char chambers[264][20]
const DetContainer & detsTIB() const
std::vector< double > topWidths_
void validateTrackerGeometry(const TrackerGeometry::DetContainer &dets, const char *detname)
virtual int nstrips() const =0
nStrips
1.2 is to make the matching window safely the two nearest strips 0.35 is the size of an ME0 chamber i...
edm::ESHandle< RPCGeometry > rpcGeometry_
std::vector< double > bottomWidths_
void makeHistograms(const char *detector)
constexpr uint32_t rawId() const
get the raw id
void makeHistogram(const std::string &name, std::vector< double > &data)
const DetContainer & detsTEC() const
void validateDTChamberGeometry()
const LayerContainer & layers() const
Return a vector of all layers.
const ChamberContainer & chambers() const
Return a vector of all chambers.
char data[epos_bytes_allocation]
const std::vector< const RPCRoll * > & rolls() const
Return a vector of all RPC rolls.
void compareShape(const GeomDet *det, const float *shape)
void validateCaloGeometry(DetId::Detector detector, int subdetector, const char *detname)
edm::ESHandle< DTGeometry > dtGeometry_