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

FastShower::SmearElectron Class Reference

resolution for electrons. More...

#include <SmearElectron.h>

Inheritance diagram for FastShower::SmearElectron:

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

Collaboration graph
[legend]
List of all members.

Public Methods

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

Detailed Description

resolution for electrons.

UML: IDistributionClass.unm

Definition at line 25 of file SmearElectron.h.


Constructor & Destructor Documentation

FastShower::SmearElectron::SmearElectron   [inline]
 

Definition at line 27 of file SmearElectron.h.

Referenced by clone().

00027 : IFnOfParticleParameters(), DebugBase("SmearElectron"){}

Member Function Documentation

double FastShower::SmearElectron::value const ParticleParameters   const [virtual]
 

Implements FastShower::IFnOfParticleParameters.

Definition at line 13 of file SmearElectron.cxx.

References FastShower::ParticleParameters::eta(), FastShower::ParticleParameters::rawEnergy(), and FastShower::ProcessedNormal::sample().

00013                                                                {
00014   
00015     double energy = pp.rawEnergy();
00016     double aEta = fabs(pp.eta());
00017 
00018     energy = max((float)energy,FLT_EPSILON);
00019 
00020     double pt = energy*std::sin(2*std::atan(std::exp(aEta)));
00021     double sigmaSquared = 0.0144/energy;
00022     if (aEta<1.4){
00023       sigmaSquared = sigmaSquared + 0.060025/pt/pt;
00024     }else{
00025       sigmaSquared = sigmaSquared 
00026                     +  std::pow((0.306*((2.4-aEta)+0.228)/energy),2);
00027     }
00028     sigmaSquared = sigmaSquared + 0.000049;
00029     
00030     double sigma;
00031     ProcessedNormal normal;
00032     do {sigma = normal.sample()*std::sqrt(sigmaSquared);}
00033      while (sigma<-1.0);
00034     
00035     return  1.0 + sigma;
00036   }

IFnOfParticleParameters * FastShower::SmearElectron::clone   const [virtual]
 

Implements FastShower::IFnOfParticleParameters.

Definition at line 38 of file SmearElectron.cxx.

References SmearElectron().

00038                                                       {
00039     return new SmearElectron(*this);
00040   }

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