8 double ieta = fabs(sc.
eta())*(5/0.087);
10 double p1 = -3.03103e-6;
14 else newE = sc.
rawEnergy()/(1 + p1*(ieta - p0)*(ieta - p0));
22 std::vector<double> fBrem = ps.
getParameter<std::vector<double> >(
"fBremVec");
23 double bremFrLowThr = ps.
getParameter<
double>(
"brLinearLowThr");
24 double bremFrHighThr = ps.
getParameter<
double>(
"brLinearHighThr");
29 if(fabs(sc.
eta()) < 1.479)
36 if(bremFrac < bremFrLowThr) bremFrac = bremFrLowThr;
37 if(bremFrac < bremFrHighThr) bremFrac = bremFrHighThr;
47 double y = p0*threshold*threshold + p1*threshold +
p2;
48 double yprime = 2*p0*threshold +
p1;
51 double c = y - a*threshold*threshold - b*
threshold;
54 if( bremFrac < threshold )
55 fCorr = p0*bremFrac*bremFrac + p1*bremFrac +
p2;
57 fCorr = a*bremFrac*bremFrac + b*bremFrac +
c;
68 std::vector<double> fEtEtaParams = ps.
getParameter<std::vector<double> >(
"fEtEtaParamsVec");
74 double et = fBremSC.energy()/cosh(eta);
77 double p0 = fEtEtaParams[0] + fEtEtaParams[1]/(et + fEtEtaParams[ 2]) + fEtEtaParams[ 3]/(et*et);
78 double p1 = fEtEtaParams[4] + fEtEtaParams[5]/(et + fEtEtaParams[ 6]) + fEtEtaParams[ 7]/(et*et);
79 double p2 = fEtEtaParams[8] + fEtEtaParams[9]/(et + fEtEtaParams[10]) + fEtEtaParams[11]/(et*et);
83 p1 * atan(fEtEtaParams[12]*(fEtEtaParams[13]-fabs(eta))) + fEtEtaParams[14] * fabs(eta) +
84 p1 * fEtEtaParams[15] * fabs(eta) +
85 p2 * fEtEtaParams[16] * eta *
eta;
87 if ( fCorr < 0.5 ) fCorr = 0.5;
89 double newE = et/(fCorr*cosh(eta));
T getParameter(std::string const &) const
const math::XYZPoint & position() const
cluster centroid position
double phiWidth() const
obtain phi and eta width of the Super Cluster
void push_back(Ptr< T > const &iPtr)
reco::SuperCluster fEtEtaCorr(const reco::SuperCluster &sc, const edm::ParameterSet &ps)
reco::SuperCluster fEtaScCorr(const reco::SuperCluster &sc)
double eta() const
pseudorapidity of cluster centroid
reco::SuperCluster fBremScCorr(const reco::SuperCluster &sc, const edm::ParameterSet &ps)
double energy() const
cluster energy
double rawEnergy() const
raw uncorrected energy (sum of energies of component BasicClusters)
reco::SuperCluster fEAddScCorr(const reco::SuperCluster &sc, double Ecorr)
CaloCluster_iterator clustersBegin() const
fist iterator over BasicCluster constituents
const CaloClusterPtr & seed() const
seed BasicCluster
reco::CaloClusterPtrVector CaloClusterVectorCopier(const reco::SuperCluster &sc)
double preshowerEnergy() const
energy deposited in preshower
CaloCluster_iterator clustersEnd() const
last iterator over BasicCluster constituents