|
|
Go to the documentation of this file.
28 if (
geom->cornersMgr() ==
nullptr) {
36 if (
geom->parMgr() ==
nullptr)
37 geom->allocatePar(500, 3);
48 if (
geom->cornersMgr() ==
nullptr) {
53 if (
geom->parMgr() ==
nullptr)
54 geom->allocatePar(500, 3);
68 geom->insertCell(hcalCells);
70 std::cout <<
"HcalDDDGeometryLoader::fill gets " << hcalCells.size() <<
" cells for subdetector " << subdet
75 std::vector<HcalDetId> hcalIds;
76 for (
auto& hcalCell : hcalCells) {
77 int etaRing = hcalCell.etaBin();
78 int iside = hcalCell.zside();
79 int depthBin = hcalCell.depthSegment();
80 double dphi = hcalCell.phiBinWidth();
81 std::vector<std::pair<int, double> > phis = hcalCell.phis();
83 std::cout <<
"HcalDDDGeometryLoader: Subdet " << subdet <<
" side " << iside <<
" eta " << etaRing <<
" depth "
84 << depthBin <<
" with " << phis.size() <<
"modules:" << std::endl;
87 geom->increaseReserve(phis.size());
88 for (
auto&
phi : phis) {
90 std::cout <<
"HcalDDDGeometryLoader::fill Cell " <<
i <<
" eta " << iside * etaRing <<
" phi " <<
phi.first <<
"("
91 <<
phi.second / CLHEP::deg <<
", " << dphi / CLHEP::deg <<
") depth " << depthBin << std::endl;
95 hcalIds.emplace_back(
id);
100 edm::LogInfo(
"HCalGeom") <<
"Number of HCAL DetIds made for " << subdet <<
" is " << hcalIds.size();
129 r0 = 0.5 * (
r1 +
r2);
142 std::cout <<
"HcalDDDGeometryLoader::makeCell SubDet " << subdet <<
" eta = " <<
eta <<
" theta = " <<
theta
143 <<
" r = " <<
r <<
" thickness = " <<
thickness <<
" r0-r2 (" << r0 <<
":" <<
r1 <<
":" <<
r2 <<
")"
158 std::cout <<
"HcalDDDGeometryLoader::makeCell SubDet " << subdet <<
" eta = " <<
eta <<
" theta = " <<
theta
159 <<
" z = " <<
z <<
" r = " <<
r <<
" thickness = " <<
thickness <<
" r0-r2 (" << r0 <<
":" <<
r1 <<
":"
160 <<
r2 <<
")" << std::endl;
169 std::cout <<
"HcalDDDGeometryLoader::makeCell for " << detId <<
" Point " <<
point <<
" deta = " << deta
170 <<
" dphi = " << dphi <<
" thickness = " <<
thickness <<
" isBarrel = " <<
isBarrel <<
" " << rzType
174 std::vector<CCGFloat>
hp;
178 hp.emplace_back(deta / 2.);
179 hp.emplace_back(dphi / 2.);
183 hp.emplace_back(deta / 2.);
184 hp.emplace_back(dphi / 2.);
void fill(HcalSubdetector, HcalDDDGeometry *)
CaloCellGeometry::CCGFloat CCGFloat
Sin< T >::type sin(const T &t)
HcalDDDGeometryLoader()=delete
Cos< T >::type cos(const T &t)
double etaMin() const
lower cell edge. Always positive
unsigned int numberOfCells(HcalSubdetector) const
Geom::Theta< T > theta() const
void makeCell(const HcalDetId &, const HcalCellType &, double, double, HcalDDDGeometry *geom) const
virtual ~HcalDDDGeometryLoader()
constexpr HcalSubdetector subdet() const
get the subdetector
Tan< T >::type tan(const T &t)
const HcalDDDRecConstants * hcalConstants_
ReturnType load(const HcalTopology &topo, DetId::Detector, int)
static const CCGFloat * getParmPtr(const std::vector< CCGFloat > &vd, ParMgr *mgr, ParVecVec &pvv)
std::vector< HcalCellType > HcalCellTypes(HcalSubdetector) const
Abs< T >::type abs(const T &t)
constexpr int zside() const
get the z-side of the cell (1/-1)
*vegas h *****************************************************used in the default bin number in original ***version of VEGAS is ***a higher bin number might help to derive a more precise ***grade subtle point
double etaMax() const
cell edge, always positive & greater than etaMin