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

Atlfast::ParameterResolutions Class Reference

#include <ParameterResolutions.h>

List of all members.


Public Methods

 ParameterResolutions ()
 ParameterResolutions (vector< BinID > &bins, double low, double high)
double resolution (const TrackTrajectory &) const

Private Methods

double interpolate (double, double, double) const
double calculateResolution (double, const vector< double > &) const

Private Attributes

vector< BinIDm_coefficientBins
vector< double > m_powerSeries
double m_etaLow
double m_etaHigh

Constructor & Destructor Documentation

Atlfast::ParameterResolutions::ParameterResolutions   [inline]
 

Definition at line 11 of file ParameterResolutions.h.

00011 {}

Atlfast::ParameterResolutions::ParameterResolutions vector< BinID > &    bins,
double    low,
double    high
[inline]
 

Definition at line 12 of file ParameterResolutions.h.

References m_coefficientBins, m_etaHigh, m_etaLow, and m_powerSeries.

00013       : m_coefficientBins(bins), m_etaLow(low), m_etaHigh(high){
00014       m_powerSeries.push_back(0);
00015       m_powerSeries.push_back(1);
00016       m_powerSeries.push_back(0.5);
00017       m_powerSeries.push_back(2);
00018     }

Member Function Documentation

double Atlfast::ParameterResolutions::resolution const TrackTrajectory &    const
 

Definition at line 6 of file ParameterResolutions.cxx.

References calculateResolution(), interpolate(), and m_coefficientBins.

Referenced by calculateResolution().

00006                                                                            {
00007     // resolutions are given by c0(eta) + c1(eta)/pT + c2(eta)/pT^0.5 + c3(eta)/pT^2....
00008     // have to interpolate eta between bin edges for coefficients
00009     TrackParameters track = traj.parameters();
00010     double eta = abs(track.eta());
00011     double pT = track.pT();
00012 
00013     vector<BinID>::const_iterator iter = m_coefficientBins.begin();
00014     vector<BinID>::const_iterator end = m_coefficientBins.end();
00015     vector<double> coefficients;
00016     for (;iter!=end;++iter) {
00017       double value = this->interpolate(eta, iter->low(), iter->high());
00018       coefficients.push_back(value);
00019     }
00020     return calculateResolution(pT, coefficients);
00021   }

double Atlfast::ParameterResolutions::interpolate double   ,
double   ,
double   
const [private]
 

Definition at line 23 of file ParameterResolutions.cxx.

References m_etaHigh, and m_etaLow.

Referenced by resolution().

00023                                                                                               {
00024     double slope = (coeffHigh - coeffLow) / ( m_etaHigh - m_etaLow );
00025     double value = ( coeffLow + slope*( eta - m_etaLow ) );
00026     return value;
00027   }

double Atlfast::ParameterResolutions::calculateResolution double   ,
const vector< double > &   
const [private]
 

Definition at line 28 of file ParameterResolutions.cxx.

References m_powerSeries, and resolution().

Referenced by resolution().

00028                                                                                                     {
00029     if (pT == 0) return 0;
00030     double resolution=0;
00031     vector<double>::const_iterator powerSeries = m_powerSeries.begin();
00032     vector<double>::const_iterator iter = coefficients.begin();
00033     vector<double>::const_iterator end = coefficients.end();
00034     
00035     for (;iter != end; ++iter)
00036       {
00037         resolution += (*iter)/( pow( pT,(*powerSeries) ) ); 
00038         ++powerSeries;
00039       }   
00040     return resolution;
00041   }

Member Data Documentation

vector<BinID> Atlfast::ParameterResolutions::m_coefficientBins [private]
 

Definition at line 24 of file ParameterResolutions.h.

Referenced by ParameterResolutions(), and resolution().

vector<double> Atlfast::ParameterResolutions::m_powerSeries [private]
 

Definition at line 25 of file ParameterResolutions.h.

Referenced by calculateResolution(), and ParameterResolutions().

double Atlfast::ParameterResolutions::m_etaLow [private]
 

Definition at line 26 of file ParameterResolutions.h.

Referenced by interpolate(), and ParameterResolutions().

double Atlfast::ParameterResolutions::m_etaHigh [private]
 

Definition at line 27 of file ParameterResolutions.h.

Referenced by interpolate(), and ParameterResolutions().


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