|
|
Go to the documentation of this file. 1 #ifndef EMECALShowerParametrization_H
2 #define EMECALShowerParametrization_H
25 const std::vector<double>& coreIntervals,
26 const std::vector<double>& tailIntervals,
44 inline double meanT(
double lny)
const {
58 inline double meanTHom(
double lny)
const {
return lny - 0.858; }
107 inline double sigmaLnTHom(
double lny)
const {
return 1. / (-1.4 + 1.26 * lny); }
121 inline double sigmaLnTSam(
double lny)
const {
return 1. / (-2.5 + 1.25 * lny); }
135 inline double rC(
double tau,
double E)
const {
141 inline double rT(
double tau,
double E)
const {
147 inline double p(
double tau,
double E)
const {
161 inline double pHom(
double tau,
double E)
const {
176 inline double pSam(
double tau,
double E)
const {
245 double p3(
double E)
const {
return 1.313 - 0.0686 *
std::log(E); }
247 double z1(
double E)
const {
return 0.0251 + 0.00319 *
std::log(E); }
251 double k2()
const {
return 0.6450; }
252 double k3()
const {
return -2.59; }
253 double k4(
double E)
const {
return 0.3585 + 0.0421 *
std::log(E); }
virtual ~EMECALShowerParametrization()
double rT(double tau, double E) const
double pHom(double tau, double E) const
double meanLnAlphaHom(double lny) const
const std::vector< double > & theCore
const PreshowerLayer1Properties * theLayer1
double p(double tau, double E) const
double k4(double E) const
double meanLnTHom(double lny) const
double ehat() const
ehat = e/mip of the calorimeter. 0 for homogeneous one
double sigmaLnAlpha(double lny) const
double meanTHom(double lny) const
double pSam(double tau, double E) const
const std::vector< double > & theTail
double rTHom(double tau, double E) const
double meanAlphaHom(double lny) const
double meanAlphaSpotHom(double alpha) const
double nSpots(double E) const
double theFs() const
Sampling fraction Fs of the calorimeter. 0 for homogeneous one.
double sigmaLnAlphaHom(double lny) const
double meanTSpotSam(double T) const
double meanTSam(double lny) const
const PreshowerLayer1Properties * layer1Properties() const
double meanLnT(double lny) const
const HCALProperties * theHCAL
double z1(double E) const
double sigmaLnTSam(double lny) const
double resE() const
a rough estimate of ECAL resolution sigma/E = resE/sqrt(E)
double correlationAlphaTHom(double lny) const
double rTSam(double tau, double E) const
double rCSam(double tau, double E) const
double p3(double E) const
double meanTSpotHom(double T) const
double meanT(double lny) const
const ECALProperties * ecalProperties() const
double rC(double tau, double E) const
double nSpotsHom(double E) const
double rCHom(double tau, double E) const
double sigmaLnAlphaSam(double lny) const
double meanAlpha(double lny) const
double meanAlphaSpot(double alpha) const
double meanAlphaSam(double lny) const
const std::vector< double > & getTailIntervals() const
const PreshowerLayer2Properties * layer2Properties() const
double meanLnAlphaSam(double lny) const
const HCALProperties * hcalProperties() const
double correlationAlphaTSam(double lny) const
double meanTSpot(double T) const
bool isHom() const
a rough estimate of ECAL resolution sigma/E = resE/sqrt(E)
const PreshowerLayer2Properties * theLayer2
double sigmaLnTHom(double lny) const
EMECALShowerParametrization(const ECALProperties *ecal, const HCALProperties *hcal, const PreshowerLayer1Properties *layer1, const PreshowerLayer2Properties *layer2, const std::vector< double > &coreIntervals, const std::vector< double > &tailIntervals, double RCFact=1., double RTFact=1.)
const std::vector< double > & getCoreIntervals() const
double sigmaLnT(double lny) const
double meanAlphaSpotSam(double alpha) const
Power< A, B >::type pow(const A &a, const B &b)
double meanLnTSam(double lny) const
double theZeff() const override
Effective Z: 68.36 for Standard ECAL.
double nSpotsSam(double E) const
const ECALProperties * theECAL
double meanLnAlpha(double lny) const
double correlationAlphaT(double lny) const