Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

FastShower::HadEcalEtaResponseEc Class Reference

ECAL eta-dependent response factor for had. particles (endcap). More...

#include <HadEcalEtaResponseEc.h>

Inheritance diagram for FastShower::HadEcalEtaResponseEc:

Inheritance graph
[legend]
Collaboration diagram for FastShower::HadEcalEtaResponseEc:

Collaboration graph
[legend]
List of all members.

Private Methods

virtual double value (const ParticleParameters &) const
virtual IFnOfParticleParametersclone () const

Detailed Description

ECAL eta-dependent response factor for had. particles (endcap).

UML: IDistributionClass.unm

Definition at line 25 of file HadEcalEtaResponseEc.h.


Member Function Documentation

double FastShower::HadEcalEtaResponseEc::value const ParticleParameters   const [private, virtual]
 

Implements FastShower::IFnOfParticleParameters.

Definition at line 11 of file HadEcalEtaResponseEc.cxx.

References FastShower::ParticleParameters::eta().

00011                                                                       {
00012   
00013     // response symmetric about eta=0.0
00014     double aEta = fabs(pp.eta());
00015     
00016     // spline knots
00017     double x[14]={0.05, 0.15, 0.35, 0.55, 0.75, 0.95, 1.25, 
00018                   1.45, 1.75, 2.05, 2.25, 2.65, 2.95, 3.15 };
00019 
00020     double a[2][14] = {{.000, .839, .837, .860, .847, .846, .793,
00021                         .853, .815, .839, .839, .857, .823, .775},
00022                        {.000, .341, .337, .390, .442, .444, .515,
00023                         .543, .440, .489, .431, .433, .368, .412}};
00024     double b[2][14] = {{.000,-.0508, .0520, .0288,-.0113,-.184,-.0645,
00025                         .00211,-.140, .0839, .0523, .0354,-.0434,-.545},
00026                        {.000,-.0950, .0604, .359, .0759, .151, .413,
00027                         -.413,-.258, .0672,-.105,-.0408, .0417,-.0468}};
00028     double c[2][14] = {{.000, .000, 1.03,-1.14, .944,-1.81, 2.40,
00029                         -2.18, 1.47,-.722, .616,-.700, .503,-2.18},
00030                        {.000, .000, 1.55,-.0633,-1.35, 1.73, -.420,
00031                         -2.33, 3.11,-2.03, 1.45,-1.13, 1.34,-1.63}};
00032     double d[2][14] = {{.000, 3.43,-3.62, 3.48,-4.59, 7.02,-5.09,
00033                         6.08,-2.43, 1.49,-2.19, 1.00,-2.98, 3.63},
00034                        {.000, 5.18,-2.70,-2.15, 5.13,-3.58,-2.13,
00035                         9.07,-5.71, 3.87,-4.31, 2.06,-3.30, 2.72}};
00036 
00037 
00038     // iEta according to the abscissa of the spline function
00039     int iEta = (int)(aEta*10) + 1;
00040     double xval = (double)(iEta)*0.1 - 0.05;
00041 
00042     // default indices
00043     int i = 12;
00044     int j = 13;
00045 
00046     if (iEta>30) {
00047       // e.m. response saturates at |eta|=3.0
00048       aEta=3.0; 
00049     }else {
00050       // everything ends-up here if not saturated
00051       i=-1;
00052       do {i+=1;}
00053       while (i<13 && xval>x[i+1]);
00054     }
00055     
00056     // e.m. response at |eta|
00057     double result = a[1][j] + b[1][j] * (aEta-x[i])
00058                             + c[1][j] * std::pow(aEta-x[i],2)
00059                             + d[1][j] * std::pow(aEta-x[i],3);
00060 
00061     // e.m. normalisation at |eta|=2.0
00062     double emNorm = a[1][j] + b[1][j] * (2.0-x[8])
00063                             + c[1][j] * std::pow(2.0-x[8],2)
00064                             + d[1][j] * std::pow(2.0-x[8],3);
00065 
00066 
00067     // relative response factor wrt e.m. response at |eta|=2.0
00068     return result/emNorm;
00069   }

IFnOfParticleParameters * FastShower::HadEcalEtaResponseEc::clone   const [private, virtual]
 

Implements FastShower::IFnOfParticleParameters.

Definition at line 71 of file HadEcalEtaResponseEc.cxx.

00071                                                              {
00072     return new HadEcalEtaResponseEc(*this);
00073   }

The documentation for this class was generated from the following files:
Generated on Tue Mar 18 11:56:37 2003 for FastShowerUtils by doxygen1.3-rc1