37 #include "CLHEP/Geometry/Point3D.h" 38 #include "CLHEP/Geometry/Vector3D.h" 39 #include "CLHEP/Units/GlobalSystemOfUnits.h" 40 #include "CLHEP/Units/GlobalPhysicalConstants.h" 188 std::vector<float> hitVtxX = infoLayer->
hitvtxX();
189 std::vector<float> hitVtxY = infoLayer->
hitvtxY();
190 std::vector<float> hitVtxZ = infoLayer->
hitvtxZ();
191 std::vector<unsigned int> hitDet = infoLayer->
hitDets();
192 std::vector<unsigned int> hitIdx = infoLayer->
hitIndex();
195 std::vector<float> edepLayerEE = infoLayer->
eehgcEdep();
196 std::vector<float> edepLayerHE = infoLayer->
hefhgcEdep();
197 std::vector<float> edepLayerHB = infoLayer->
hebhgcEdep();
200 for (i = 0; i < edepLayerEE.size(); i++) {
204 for (i = 0; i < edepLayerHE.size(); i++) {
208 for (i = 0; i < edepLayerHB.size(); i++) {
218 for (
unsigned int i = 0; i < hitVtxX.size(); i++) {
219 hitVtxX.at(i) =
mmtocm * hitVtxX.at(i);
220 hitVtxY.at(i) =
mmtocm * hitVtxY.at(i);
221 hitVtxZ.at(i) =
mmtocm * hitVtxZ.at(i);
227 std::pair<float, float>
xy;
229 int subdet, wafer, celltype, cell;
239 xy =
hgcGeometry_[
dtype]->locateCell(layer,
id.waferU(),
id.waferV(),
id.cellU(),
id.cellV(),
true,
true);
250 xx = (zside < 0) ? -xy.first : xy.first;
270 }
else if (
dtype == 1) {
313 double rho = zz *
tan(2.0 * atan(
exp(-cell.eta)));
314 double xx = rho *
cos(cell.phi);
315 double yy = rho *
sin(cell.phi);
MonitorElement * heedxVsLayer
MonitorElement * book1D(TString const &name, TString const &title, int const nchX, double const lowX, double const highX)
T getParameter(std::string const &) const
T getUntrackedParameter(std::string const &, T const &) const
MonitorElement * hebdzVsLayer
MonitorElement * hebdyVsY
MonitorElement * hebdxVsX
edm::EDGetTokenT< PHGCalValidInfo > g4Token_
MonitorElement * hebdzVsZ
MonitorElement * hefdxVsLayer
MonitorElement * hefZG4VsId
bool getByToken(EDGetToken token, Handle< PROD > &result) const
MonitorElement * hebdxVsLayer
void setCurrentFolder(std::string const &fullpath)
MonitorElement * heeZG4VsId
Sin< T >::type sin(const T &t)
MonitorElement * heedzVsLayer
MonitorElement * hebYG4VsId
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
HcalCellType::HcalCell cell(const int &det, const int &zside, const int &depth, const int &etaR, const int &iphi) const
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
MonitorElement * hebdyVsLayer
MonitorElement * heedxVsX
std::vector< float > hitvtxZ() const
#define DEFINE_FWK_MODULE(type)
void addDefault(ParameterSetDescription const &psetDescription)
MonitorElement * heedyVsY
MonitorElement * heeXG4VsId
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
void dqmBeginRun(edm::Run const &, edm::EventSetup const &) override
MonitorElement * hefTotEdepStep
MonitorElement * hefYG4VsId
std::vector< float > eehgcEdep() const
Cos< T >::type cos(const T &t)
MonitorElement * hefLayerVsEnStep
MonitorElement * heeLayerVsEnStep
Tan< T >::type tan(const T &t)
static void unpackHcalIndex(const uint32_t &idx, int &det, int &z, int &depth, int &eta, int &phi, int &lay)
void analyze(const edm::Event &, const edm::EventSetup &) override
std::vector< float > hitvtxX() const
MonitorElement * hebTotEdepStep
std::vector< float > hitvtxY() const
std::vector< float > hebhgcEdep() const
MonitorElement * hebZG4VsId
MonitorElement * hefdyVsLayer
MonitorElement * hebLayerVsEnStep
MonitorElement * hefdyVsY
const HcalDDDSimConstants * hcons_
MonitorElement * heeYG4VsId
std::vector< const HGCalDDDConstants * > hgcGeometry_
MonitorElement * book2D(TString const &name, TString const &title, int nchX, double lowX, double highX, int nchY, double lowY, double highY)
MonitorElement * hefdxVsX
MonitorElement * heedzVsZ
HGCGeometryValidation(const edm::ParameterSet &)
MonitorElement * hefXG4VsId
std::vector< unsigned int > hitIndex() const
MonitorElement * heedyVsLayer
std::vector< std::string > geometrySource_
~HGCGeometryValidation() override
MonitorElement * heeTotEdepStep
T const * product() const
MonitorElement * hefdzVsZ
MonitorElement * hefdzVsLayer
std::vector< unsigned int > hitDets() const
std::vector< float > hefhgcEdep() const
static void unpackHexagonIndex(const uint32_t &idx, int &subdet, int &z, int &lay, int &wafer, int &celltyp, int &cell)
MonitorElement * hebXG4VsId