File indexing completed on 2024-04-06 12:24:44
0001
0002 #include "RecoEcal/EgammaCoreTools/interface/BremRecoveryPhiRoadAlgo.h"
0003 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0004
0005 #include <iostream>
0006
0007 BremRecoveryPhiRoadAlgo::BremRecoveryPhiRoadAlgo(const edm::ParameterSet& pset) {
0008
0009 edm::ParameterSet barrelPset = pset.getParameter<edm::ParameterSet>("barrel");
0010 edm::ParameterSet endcapPset = pset.getParameter<edm::ParameterSet>("endcap");
0011
0012
0013 etVec_ = barrelPset.getParameter<std::vector<double> >("etVec");
0014 cryVec_ = barrelPset.getParameter<std::vector<int> >("cryVec");
0015 cryMin_ = barrelPset.getParameter<int>("cryMin");
0016
0017
0018 a_ = endcapPset.getParameter<double>("a");
0019 b_ = endcapPset.getParameter<double>("b");
0020 c_ = endcapPset.getParameter<double>("c");
0021 }
0022
0023 int BremRecoveryPhiRoadAlgo::barrelPhiRoad(double et) {
0024
0025
0026
0027
0028
0029 for (unsigned int i = 0; i < cryVec_.size(); ++i) {
0030 if (et < etVec_[i])
0031 return cryVec_[i];
0032 }
0033 return cryMin_;
0034 }
0035
0036 double BremRecoveryPhiRoadAlgo::endcapPhiRoad(double energy) {
0037
0038
0039
0040
0041
0042 return ((a_ / (energy + b_)) + c_);
0043 }