#include <EMECALShowerParametrization.h>
Public Member Functions | |
double | correlationAlphaT (double lny) const |
double | correlationAlphaTHom (double lny) const |
double | correlationAlphaTSam (double lny) const |
const ECALProperties * | ecalProperties () 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 |
const std::vector< double > & | getTailIntervals () const |
const HCALProperties * | hcalProperties () const |
const PreshowerLayer1Properties * | layer1Properties () const |
const PreshowerLayer2Properties * | layer2Properties () const |
double | meanAlpha (double lny) const |
double | meanAlphaHom (double lny) const |
double | meanAlphaSam (double lny) const |
double | meanAlphaSpot (double alpha) const |
double | meanAlphaSpotHom (double alpha) const |
double | meanAlphaSpotSam (double alpha) const |
double | meanLnAlpha (double lny) const |
double | meanLnAlphaHom (double lny) const |
double | meanLnAlphaSam (double lny) const |
double | meanLnT (double lny) const |
double | meanLnTHom (double lny) const |
double | meanLnTSam (double lny) const |
double | meanT (double lny) const |
double | meanTHom (double lny) const |
double | meanTSam (double lny) const |
double | meanTSpot (double T) const |
double | meanTSpotHom (double T) const |
double | meanTSpotSam (double T) const |
double | nSpots (double E) const |
double | nSpotsHom (double E) const |
double | nSpotsSam (double E) const |
double | p (double tau, double E) const |
double | pHom (double tau, double E) const |
double | pSam (double tau, double E) const |
double | rC (double tau, double E) const |
double | rCHom (double tau, double E) const |
double | rCSam (double tau, double E) const |
double | rT (double tau, double E) const |
double | rTHom (double tau, double E) const |
double | rTSam (double tau, double E) const |
double | sigmaLnAlpha (double lny) const |
double | sigmaLnAlphaHom (double lny) const |
double | sigmaLnAlphaSam (double lny) const |
double | sigmaLnT (double lny) const |
double | sigmaLnTHom (double lny) const |
double | sigmaLnTSam (double lny) const |
virtual | ~EMECALShowerParametrization () |
Private Member Functions | |
double | k1 () const |
double | k2 () const |
double | k3 () const |
double | k4 (double E) const |
double | p1 () const |
double | p2 () const |
double | p3 (double E) const |
double | z1 (double E) const |
double | z2 () const |
Private Attributes | |
const std::vector< double > & | theCore |
const ECALProperties * | theECAL |
const HCALProperties * | theHCAL |
const PreshowerLayer1Properties * | theLayer1 |
const PreshowerLayer2Properties * | theLayer2 |
double | theRcfactor |
double | theRtfactor |
const std::vector< double > & | theTail |
Electromagnetic Shower parametrization utilities according to G. Grindhammer and S. Peters, hep-ex/0001020, Appendix A
Definition at line 19 of file EMECALShowerParametrization.h.
EMECALShowerParametrization::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. |
||
) | [inline] |
Definition at line 23 of file EMECALShowerParametrization.h.
: theECAL(ecal), theHCAL(hcal), theLayer1(layer1), theLayer2(layer2), theCore(coreIntervals), theTail(tailIntervals), theRcfactor(RCFact), theRtfactor(RTFact){}
virtual EMECALShowerParametrization::~EMECALShowerParametrization | ( | ) | [inline, virtual] |
Definition at line 40 of file EMECALShowerParametrization.h.
{ }
double EMECALShowerParametrization::correlationAlphaT | ( | double | lny | ) | const [inline] |
Definition at line 102 of file EMECALShowerParametrization.h.
References correlationAlphaTHom(), correlationAlphaTSam(), ECALProperties::isHom(), and theECAL.
Referenced by EMShower::EMShower().
{ if (theECAL->isHom()) return correlationAlphaTHom(lny); return correlationAlphaTSam(lny); }
double EMECALShowerParametrization::correlationAlphaTHom | ( | double | lny | ) | const [inline] |
Definition at line 124 of file EMECALShowerParametrization.h.
Referenced by correlationAlphaT().
{
return 0.705-0.023*lny; }
double EMECALShowerParametrization::correlationAlphaTSam | ( | double | lny | ) | const [inline] |
Definition at line 142 of file EMECALShowerParametrization.h.
Referenced by correlationAlphaT().
{
return 0.784-0.023*lny; }
const ECALProperties* EMECALShowerParametrization::ecalProperties | ( | ) | const [inline] |
Definition at line 249 of file EMECALShowerParametrization.h.
References theECAL.
Referenced by EMShower::EMShower().
{ return theECAL; }
const std::vector<double>& EMECALShowerParametrization::getCoreIntervals | ( | ) | const [inline] |
Definition at line 265 of file EMECALShowerParametrization.h.
References theCore.
Referenced by EMShower::setIntervals().
{ return theCore;}
const std::vector<double>& EMECALShowerParametrization::getTailIntervals | ( | ) | const [inline] |
Definition at line 267 of file EMECALShowerParametrization.h.
References theTail.
Referenced by EMShower::setIntervals().
{ return theTail;}
const HCALProperties* EMECALShowerParametrization::hcalProperties | ( | ) | const [inline] |
Definition at line 253 of file EMECALShowerParametrization.h.
References theHCAL.
Referenced by EMShower::EMShower().
{ return theHCAL; }
double EMECALShowerParametrization::k1 | ( | ) | const [inline, private] |
Definition at line 289 of file EMECALShowerParametrization.h.
References theECAL, and ECALProperties::theZeff().
Referenced by rTHom().
double EMECALShowerParametrization::k2 | ( | ) | const [inline, private] |
Definition at line 290 of file EMECALShowerParametrization.h.
Referenced by rTHom().
{ return 0.6450; }
double EMECALShowerParametrization::k3 | ( | ) | const [inline, private] |
Definition at line 291 of file EMECALShowerParametrization.h.
Referenced by rTHom().
{ return -2.59; }
double EMECALShowerParametrization::k4 | ( | double | E | ) | const [inline, private] |
Definition at line 292 of file EMECALShowerParametrization.h.
References create_public_lumi_plots::log.
Referenced by rTHom().
{ return 0.3585+0.0421*std::log(E); }
const PreshowerLayer1Properties* EMECALShowerParametrization::layer1Properties | ( | ) | const [inline] |
Definition at line 257 of file EMECALShowerParametrization.h.
References theLayer1.
Referenced by EMShower::EMShower().
{ return theLayer1; }
const PreshowerLayer2Properties* EMECALShowerParametrization::layer2Properties | ( | ) | const [inline] |
Definition at line 261 of file EMECALShowerParametrization.h.
References theLayer2.
Referenced by EMShower::EMShower().
{ return theLayer2; }
double EMECALShowerParametrization::meanAlpha | ( | double | lny | ) | const [inline] |
Definition at line 51 of file EMECALShowerParametrization.h.
References ECALProperties::isHom(), meanAlphaHom(), meanAlphaSam(), and theECAL.
Referenced by EMShower::EMShower().
{ if (theECAL->isHom()) return meanAlphaHom(lny); return meanAlphaSam(lny); }
double EMECALShowerParametrization::meanAlphaHom | ( | double | lny | ) | const [inline] |
Definition at line 62 of file EMECALShowerParametrization.h.
References theECAL, and ECALProperties::theZeff().
Referenced by meanAlpha(), and meanAlphaSam().
double EMECALShowerParametrization::meanAlphaSam | ( | double | lny | ) | const [inline] |
Definition at line 72 of file EMECALShowerParametrization.h.
References meanAlphaHom(), theECAL, and ECALProperties::theFs().
Referenced by meanAlpha().
{ return meanAlphaHom(lny) - 0.444/theECAL->theFs(); }
double EMECALShowerParametrization::meanAlphaSpot | ( | double | alpha | ) | const [inline] |
Definition at line 215 of file EMECALShowerParametrization.h.
References ECALProperties::isHom(), meanAlphaSpotHom(), meanAlphaSpotSam(), and theECAL.
Referenced by EMShower::EMShower().
{ if (theECAL->isHom()) return meanAlphaSpotHom(alpha); return meanAlphaSpotSam(alpha); }
double EMECALShowerParametrization::meanAlphaSpotHom | ( | double | alpha | ) | const [inline] |
Definition at line 230 of file EMECALShowerParametrization.h.
References theECAL, and ECALProperties::theZeff().
Referenced by meanAlphaSpot(), and meanAlphaSpotSam().
double EMECALShowerParametrization::meanAlphaSpotSam | ( | double | alpha | ) | const [inline] |
Definition at line 242 of file EMECALShowerParametrization.h.
References meanAlphaSpotHom(), theECAL, and ECALProperties::theZeff().
Referenced by meanAlphaSpot().
{ return meanAlphaSpotHom(alpha)*(0.844+0.0026*theECAL->theZeff()); }
double EMECALShowerParametrization::meanLnAlpha | ( | double | lny | ) | const [inline] |
Definition at line 92 of file EMECALShowerParametrization.h.
References ECALProperties::isHom(), meanLnAlphaHom(), meanLnAlphaSam(), and theECAL.
Referenced by EMShower::EMShower().
{ if (theECAL->isHom()) return meanLnAlphaHom(lny); return meanLnAlphaSam(lny); }
double EMECALShowerParametrization::meanLnAlphaHom | ( | double | lny | ) | const [inline] |
Definition at line 118 of file EMECALShowerParametrization.h.
References create_public_lumi_plots::log, theECAL, and ECALProperties::theZeff().
Referenced by meanLnAlpha(), and meanLnAlphaSam().
double EMECALShowerParametrization::meanLnAlphaSam | ( | double | lny | ) | const [inline] |
Definition at line 136 of file EMECALShowerParametrization.h.
References create_public_lumi_plots::exp, create_public_lumi_plots::log, meanLnAlphaHom(), theECAL, and ECALProperties::theFs().
Referenced by meanLnAlpha().
{ return log( std::exp(meanLnAlphaHom(lny)) - 0.476/theECAL->theFs() ); }
double EMECALShowerParametrization::meanLnT | ( | double | lny | ) | const [inline] |
Definition at line 83 of file EMECALShowerParametrization.h.
References ECALProperties::isHom(), meanLnTHom(), meanLnTSam(), and theECAL.
Referenced by EMShower::EMShower().
{ if (theECAL->isHom()) return meanLnTHom(lny); return meanLnTSam(lny); }
double EMECALShowerParametrization::meanLnTHom | ( | double | lny | ) | const [inline] |
Definition at line 111 of file EMECALShowerParametrization.h.
References create_public_lumi_plots::log.
Referenced by meanLnT(), and meanLnTSam().
{ return std::log(lny-0.812); }
double EMECALShowerParametrization::meanLnTSam | ( | double | lny | ) | const [inline] |
Definition at line 130 of file EMECALShowerParametrization.h.
References ECALProperties::ehat(), create_public_lumi_plots::exp, create_public_lumi_plots::log, meanLnTHom(), theECAL, and ECALProperties::theFs().
Referenced by meanLnT().
double EMECALShowerParametrization::meanT | ( | double | lny | ) | const [inline] |
Definition at line 47 of file EMECALShowerParametrization.h.
References ECALProperties::isHom(), meanTHom(), meanTSam(), and theECAL.
Referenced by EMShower::EMShower().
double EMECALShowerParametrization::meanTHom | ( | double | lny | ) | const [inline] |
Definition at line 58 of file EMECALShowerParametrization.h.
Referenced by meanT(), and meanTSam().
{
return lny-0.858; }
double EMECALShowerParametrization::meanTSam | ( | double | lny | ) | const [inline] |
Definition at line 69 of file EMECALShowerParametrization.h.
References ECALProperties::ehat(), meanTHom(), theECAL, and ECALProperties::theFs().
Referenced by meanT().
double EMECALShowerParametrization::meanTSpot | ( | double | T | ) | const [inline] |
Definition at line 211 of file EMECALShowerParametrization.h.
References ECALProperties::isHom(), meanTSpotHom(), meanTSpotSam(), and theECAL.
Referenced by EMShower::EMShower().
{ if (theECAL->isHom()) return meanTSpotHom(T); return meanTSpotSam(T); }
double EMECALShowerParametrization::meanTSpotHom | ( | double | T | ) | const [inline] |
Definition at line 227 of file EMECALShowerParametrization.h.
References theECAL, and ECALProperties::theZeff().
Referenced by meanTSpot(), and meanTSpotSam().
double EMECALShowerParametrization::meanTSpotSam | ( | double | T | ) | const [inline] |
Definition at line 239 of file EMECALShowerParametrization.h.
References meanTSpotHom(), theECAL, and ECALProperties::theZeff().
Referenced by meanTSpot().
{ return meanTSpotHom(T)*(0.813+0.0019*theECAL->theZeff()); }
double EMECALShowerParametrization::nSpots | ( | double | E | ) | const [inline] |
Definition at line 207 of file EMECALShowerParametrization.h.
References ECALProperties::isHom(), nSpotsHom(), nSpotsSam(), and theECAL.
Referenced by EMShower::EMShower().
double EMECALShowerParametrization::nSpotsHom | ( | double | E | ) | const [inline] |
Definition at line 224 of file EMECALShowerParametrization.h.
References create_public_lumi_plots::log, funct::pow(), theECAL, and ECALProperties::theZeff().
Referenced by nSpots().
double EMECALShowerParametrization::nSpotsSam | ( | double | E | ) | const [inline] |
Definition at line 236 of file EMECALShowerParametrization.h.
References funct::pow(), ECALProperties::resE(), and theECAL.
Referenced by nSpots().
double EMECALShowerParametrization::p | ( | double | tau, |
double | E | ||
) | const [inline] |
Definition at line 163 of file EMECALShowerParametrization.h.
References ECALProperties::isHom(), pHom(), pSam(), and theECAL.
Referenced by EMShower::compute().
double EMECALShowerParametrization::p1 | ( | ) | const [inline, private] |
Definition at line 282 of file EMECALShowerParametrization.h.
References theECAL, and ECALProperties::theZeff().
Referenced by pHom().
double EMECALShowerParametrization::p2 | ( | ) | const [inline, private] |
Definition at line 283 of file EMECALShowerParametrization.h.
References theECAL, and ECALProperties::theZeff().
Referenced by pHom().
double EMECALShowerParametrization::p3 | ( | double | E | ) | const [inline, private] |
Definition at line 284 of file EMECALShowerParametrization.h.
References create_public_lumi_plots::log.
Referenced by pHom().
{ return 1.313-0.0686*std::log(E); }
double EMECALShowerParametrization::pHom | ( | double | tau, |
double | E | ||
) | const [inline] |
Definition at line 180 of file EMECALShowerParametrization.h.
References cmsCodeRulesChecker::arg, create_public_lumi_plots::exp, p1(), p2(), p3(), and metsig::tau.
double EMECALShowerParametrization::pSam | ( | double | tau, |
double | E | ||
) | const [inline] |
Definition at line 196 of file EMECALShowerParametrization.h.
References ECALProperties::ehat(), create_public_lumi_plots::exp, pHom(), funct::pow(), theECAL, and ECALProperties::theFs().
Referenced by p().
double EMECALShowerParametrization::rC | ( | double | tau, |
double | E | ||
) | const [inline] |
Definition at line 155 of file EMECALShowerParametrization.h.
References ECALProperties::isHom(), rCHom(), rCSam(), and theECAL.
Referenced by EMShower::compute().
double EMECALShowerParametrization::rCHom | ( | double | tau, |
double | E | ||
) | const [inline] |
Definition at line 171 of file EMECALShowerParametrization.h.
References metsig::tau, theRcfactor, z1(), and z2().
Referenced by rC(), and rCSam().
{ return theRcfactor*(z1(E) + z2()*tau); }
double EMECALShowerParametrization::rCSam | ( | double | tau, |
double | E | ||
) | const [inline] |
Definition at line 188 of file EMECALShowerParametrization.h.
References ECALProperties::ehat(), create_public_lumi_plots::exp, rCHom(), theECAL, and ECALProperties::theFs().
Referenced by rC().
double EMECALShowerParametrization::rT | ( | double | tau, |
double | E | ||
) | const [inline] |
Definition at line 159 of file EMECALShowerParametrization.h.
References ECALProperties::isHom(), rTHom(), rTSam(), and theECAL.
Referenced by EMShower::compute().
double EMECALShowerParametrization::rTHom | ( | double | tau, |
double | E | ||
) | const [inline] |
Definition at line 175 of file EMECALShowerParametrization.h.
References create_public_lumi_plots::exp, k1(), k2(), k3(), k4(), and theRtfactor.
double EMECALShowerParametrization::rTSam | ( | double | tau, |
double | E | ||
) | const [inline] |
Definition at line 192 of file EMECALShowerParametrization.h.
References ECALProperties::ehat(), create_public_lumi_plots::exp, rTHom(), theECAL, and ECALProperties::theFs().
Referenced by rT().
double EMECALShowerParametrization::sigmaLnAlpha | ( | double | lny | ) | const [inline] |
Definition at line 97 of file EMECALShowerParametrization.h.
References ECALProperties::isHom(), sigmaLnAlphaHom(), sigmaLnAlphaSam(), and theECAL.
Referenced by EMShower::EMShower().
{ if (theECAL->isHom()) return sigmaLnAlphaHom(lny); return sigmaLnAlphaSam(lny); }
double EMECALShowerParametrization::sigmaLnAlphaHom | ( | double | lny | ) | const [inline] |
Definition at line 121 of file EMECALShowerParametrization.h.
Referenced by sigmaLnAlpha().
{
return 1./(-0.58+0.86*lny); }
double EMECALShowerParametrization::sigmaLnAlphaSam | ( | double | lny | ) | const [inline] |
Definition at line 139 of file EMECALShowerParametrization.h.
Referenced by sigmaLnAlpha().
{
return 1./(-0.82+0.79*lny); }
double EMECALShowerParametrization::sigmaLnT | ( | double | lny | ) | const [inline] |
Definition at line 87 of file EMECALShowerParametrization.h.
References ECALProperties::isHom(), sigmaLnTHom(), sigmaLnTSam(), and theECAL.
Referenced by EMShower::EMShower().
{ if (theECAL->isHom()) return sigmaLnTHom(lny); return sigmaLnTSam(lny); }
double EMECALShowerParametrization::sigmaLnTHom | ( | double | lny | ) | const [inline] |
Definition at line 115 of file EMECALShowerParametrization.h.
Referenced by sigmaLnT().
{
return 1./(-1.4+1.26*lny); }
double EMECALShowerParametrization::sigmaLnTSam | ( | double | lny | ) | const [inline] |
Definition at line 133 of file EMECALShowerParametrization.h.
Referenced by sigmaLnT().
{
return 1./(-2.5 + 1.25*lny); }
double EMECALShowerParametrization::z1 | ( | double | E | ) | const [inline, private] |
Definition at line 286 of file EMECALShowerParametrization.h.
References create_public_lumi_plots::log.
Referenced by rCHom().
{ return 0.0251+0.00319*std::log(E); }
double EMECALShowerParametrization::z2 | ( | ) | const [inline, private] |
Definition at line 287 of file EMECALShowerParametrization.h.
References theECAL, and ECALProperties::theZeff().
Referenced by rCHom().
const std::vector<double>& EMECALShowerParametrization::theCore [private] |
Definition at line 276 of file EMECALShowerParametrization.h.
Referenced by getCoreIntervals().
const ECALProperties* EMECALShowerParametrization::theECAL [private] |
Definition at line 271 of file EMECALShowerParametrization.h.
Referenced by correlationAlphaT(), ecalProperties(), k1(), meanAlpha(), meanAlphaHom(), meanAlphaSam(), meanAlphaSpot(), meanAlphaSpotHom(), meanAlphaSpotSam(), meanLnAlpha(), meanLnAlphaHom(), meanLnAlphaSam(), meanLnT(), meanLnTSam(), meanT(), meanTSam(), meanTSpot(), meanTSpotHom(), meanTSpotSam(), nSpots(), nSpotsHom(), nSpotsSam(), p(), p1(), p2(), pSam(), rC(), rCSam(), rT(), rTSam(), sigmaLnAlpha(), sigmaLnT(), and z2().
const HCALProperties* EMECALShowerParametrization::theHCAL [private] |
Definition at line 272 of file EMECALShowerParametrization.h.
Referenced by hcalProperties().
const PreshowerLayer1Properties* EMECALShowerParametrization::theLayer1 [private] |
Definition at line 273 of file EMECALShowerParametrization.h.
Referenced by layer1Properties().
const PreshowerLayer2Properties* EMECALShowerParametrization::theLayer2 [private] |
Definition at line 274 of file EMECALShowerParametrization.h.
Referenced by layer2Properties().
double EMECALShowerParametrization::theRcfactor [private] |
Definition at line 279 of file EMECALShowerParametrization.h.
Referenced by rCHom().
double EMECALShowerParametrization::theRtfactor [private] |
Definition at line 280 of file EMECALShowerParametrization.h.
Referenced by rTHom().
const std::vector<double>& EMECALShowerParametrization::theTail [private] |
Definition at line 277 of file EMECALShowerParametrization.h.
Referenced by getTailIntervals().