63 conf.getParameter<
std::
vector<double> >(
"EBGrid"),
64 conf.getParameter<
std::
vector<double> >(
"EBWeights"),
65 conf.getParameter<
std::
vector<double> >(
"EEGrid"),
66 conf.getParameter<
std::
vector<double> >(
"EEWeights"),
67 conf.getParameter<
std::
vector<double> >(
"HBGrid"),
68 conf.getParameter<
std::
vector<double> >(
"HBWeights"),
69 conf.getParameter<
std::
vector<double> >(
"HESGrid"),
70 conf.getParameter<
std::
vector<double> >(
"HESWeights"),
71 conf.getParameter<
std::
vector<double> >(
"HEDGrid"),
72 conf.getParameter<
std::
vector<double> >(
"HEDWeights"),
73 conf.getParameter<
std::
vector<double> >(
"HOGrid"),
74 conf.getParameter<
std::
vector<double> >(
"HOWeights"),
75 conf.getParameter<
std::
vector<double> >(
"HF1Grid"),
76 conf.getParameter<
std::
vector<double> >(
"HF1Weights"),
77 conf.getParameter<
std::
vector<double> >(
"HF2Grid"),
78 conf.getParameter<
std::
vector<double> >(
"HF2Weights"),
79 conf.getParameter<double>(
"EBWeight"),
80 conf.getParameter<double>(
"EEWeight"),
81 conf.getParameter<double>(
"HBWeight"),
82 conf.getParameter<double>(
"HESWeight"),
83 conf.getParameter<double>(
"HEDWeight"),
84 conf.getParameter<double>(
"HOWeight"),
85 conf.getParameter<double>(
"HF1Weight"),
86 conf.getParameter<double>(
"HF2Weight"),
90 conf.getParameter<
bool>(
"UseHO"),
92 conf.getParameter<
int>(
"MomConstrMethod"),
93 conf.getParameter<double>(
"MomHBDepth"),
94 conf.getParameter<double>(
"MomHEDepth"),
95 conf.getParameter<double>(
"MomEBDepth"),
96 conf.getParameter<double>(
"MomEEDepth"),
97 conf.getParameter<
int>(
"HcalPhase")),
98 allowMissingInputs_(
false) {
100 tok_geom_ = esConsumes<CaloGeometry, CaloGeometryRecord>();
101 tok_topo_ = esConsumes<HcalTopology, HcalRecNumberingRecord>();
102 tok_cttopo_ = esConsumes<CaloTowerTopology, HcalRecNumberingRecord>();
103 tok_ctmap_ = esConsumes<CaloTowerConstituentsMap, CaloGeometryRecord>();
117 produces<CaloTowerCollection>();
155 auto prod = std::make_unique<CaloTowerCollection>();
167 desc.add<
double>(
"EBWeight", 1.0);
168 desc.add<
double>(
"HBEScale", 50.0);
169 desc.add<
double>(
"HEDWeight", 1.0);
170 desc.add<
double>(
"EEWeight", 1.0);
171 desc.add<
double>(
"HF1Weight", 1.0);
172 desc.add<
double>(
"HOWeight", 1.0);
173 desc.add<
double>(
"HESWeight", 1.0);
174 desc.add<
double>(
"HF2Weight", 1.0);
175 desc.add<
double>(
"HESEScale", 50.0);
176 desc.add<
double>(
"HEDEScale", 50.0);
177 desc.add<
double>(
"EBEScale", 50.0);
178 desc.add<
double>(
"HBWeight", 1.0);
179 desc.add<
double>(
"EEEScale", 50.0);
180 desc.add<
double>(
"MomHBDepth", 0.2);
181 desc.add<
double>(
"MomHEDepth", 0.4);
182 desc.add<
double>(
"MomEBDepth", 0.3);
183 desc.add<
double>(
"MomEEDepth", 0.0);
184 desc.add<std::vector<double> >(
"HBGrid", {0.0, 2.0, 4.0, 5.0, 9.0, 20.0, 30.0, 50.0, 100.0, 1000.0});
185 desc.add<std::vector<double> >(
"EEWeights", {0.51, 1.39, 1.71, 2.37, 2.32, 2.2, 2.1, 1.98, 1.8});
186 desc.add<std::vector<double> >(
"HF2Weights", {1.0, 1.0, 1.0, 1.0, 1.0});
187 desc.add<std::vector<double> >(
"HOWeights", {1.0, 1.0, 1.0, 1.0, 1.0});
188 desc.add<std::vector<double> >(
"EEGrid", {2.0, 4.0, 5.0, 9.0, 20.0, 30.0, 50.0, 100.0, 300.0});
189 desc.add<std::vector<double> >(
"HBWeights", {2.0, 1.86, 1.69, 1.55, 1.37, 1.19, 1.13, 1.11, 1.09, 1.0});
190 desc.add<std::vector<double> >(
"HF2Grid", {-1.0, 1.0, 10.0, 100.0, 1000.0});
191 desc.add<std::vector<double> >(
"HEDWeights", {1.7, 1.57, 1.54, 1.49, 1.41, 1.26, 1.19, 1.15, 1.12, 1.0});
192 desc.add<std::vector<double> >(
"HF1Grid", {-1.0, 1.0, 10.0, 100.0, 1000.0});
193 desc.add<std::vector<double> >(
"EBWeights", {0.86, 1.47, 1.66, 2.01, 1.98, 1.86, 1.83, 1.74, 1.65});
194 desc.add<std::vector<double> >(
"HF1Weights", {1.0, 1.0, 1.0, 1.0, 1.0});
195 desc.add<std::vector<double> >(
"HESGrid", {0.0, 2.0, 4.0, 5.0, 9.0, 20.0, 30.0, 50.0, 100.0, 1000.0});
196 desc.add<std::vector<double> >(
"HESWeights", {1.7, 1.57, 1.54, 1.49, 1.41, 1.26, 1.19, 1.15, 1.12, 1.0});
197 desc.add<std::vector<double> >(
"HEDGrid", {0.0, 2.0, 4.0, 5.0, 9.0, 20.0, 30.0, 50.0, 100.0, 1000.0});
198 desc.add<std::vector<double> >(
"HOGrid", {-1.0, 1.0, 10.0, 100.0, 1000.0});
199 desc.add<std::vector<double> >(
"EBGrid", {2.0, 4.0, 5.0, 9.0, 20.0, 30.0, 50.0, 100.0, 300.0});
201 desc.add<
int>(
"MomConstrMethod", 1);
202 desc.add<
int>(
"HcalPhase", 0);
edm::ESGetToken< CaloTowerConstituentsMap, CaloGeometryRecord > tok_ctmap_
T getParameter(std::string const &) const
CaloTowersReCreator(const edm::ParameterSet &ps)
CaloTowersCreationAlgo algo_
void setHF1EScale(double scale)
void setHF2EScale(double scale)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
void setHBEScale(double scale)
void setGeometry(const CaloTowerTopology *cttopo, const CaloTowerConstituentsMap *ctmap, const HcalTopology *htopo, const CaloGeometry *geo)
T const * product() const
void addDefault(ParameterSetDescription const &psetDescription)
void rescaleTowers(const CaloTowerCollection &ctInput, CaloTowerCollection &ctResult)
edm::EDGetTokenT< CaloTowerCollection > tok_calo_
#define DEFINE_FWK_MODULE(type)
edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > tok_topo_
edm::ESGetToken< CaloTowerTopology, HcalRecNumberingRecord > tok_cttopo_
void setHESEScale(double scale)
void setHEDEScale(double scale)
void setEEEScale(double scale)
edm::ESGetToken< CaloGeometry, CaloGeometryRecord > tok_geom_
void produce(edm::Event &e, const edm::EventSetup &c) override
~CaloTowersReCreator() override
void setHOEScale(double scale)
void setEBEScale(double scale)