63 constexpr
double MYR2D = 180 /
M_PI;
77 produces<CastorCellCollection>();
90 using namespace TMath;
97 auto OutputCells = std::make_unique<CastorCellCollection>();
101 LogDebug(
"CastorCellProducer") <<
"1. entering CastorCellProducer ";
103 for (
size_t i = 0;
i < InputRecHits->
size(); ++
i) {
124 zCell = 14534 + (
module - 3) * 92;
128 double castorphi[16];
129 for (
int j = 0;
j < 16;
j++) {
130 castorphi[
j] = -2.94524 +
j * 0.3927;
133 phiCell = castorphi[sector - 9];
135 phiCell = castorphi[sector + 7];
146 CellPoint tempcellposition(rhoCell, zCell, phiCell);
147 Point cellposition(tempcellposition);
149 LogDebug(
"CastorCellProducer") <<
"cell number: " <<
i + 1 << std::endl
150 <<
"rho: " << cellposition.rho() <<
" phi: " << cellposition.phi() * MYR2D
151 <<
" eta: " << cellposition.eta() << std::endl
152 <<
"x: " << cellposition.x() <<
" y: " << cellposition.y()
153 <<
" z: " << cellposition.z();
157 OutputCells->push_back(newCell);
162 LogDebug(
"CastorCellProducer") <<
"total number of cells in the event: " << InputRecHits->
size();
HcalCastorDetId id() const
get the id
constexpr float energy() const
T getUntrackedParameter(std::string const &, T const &) const
edm::EDGetTokenT< CastorRecHitCollection > tok_input_
void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override
int module() const
get the module (1-2 for EM, 1-12 for HAD)
int zside() const
get the z-side of the cell (1/-1)
#define DEFINE_FWK_MODULE(type)
int sector() const
get the sector (1-16)
std::vector< reco::CastorCell > CastorCellCollection
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< double > > XYZPointD
point in space with cartesian internal representation
Structure Point Contains parameters of Gaussian fits to DMRs.
CastorCellProducer(const edm::ParameterSet &)
ROOT::Math::RhoZPhiPoint CellPoint