Atlfast::CellAssociatedClusterEnergy Class Reference

List of all members.

Public Member Functions

 CellAssociatedClusterEnergy (IClusterCollection *clusters, std::map< ICluster *, double > &cluMap, double rConeBarrel)
void operator() (const IKinematic *cell)

Private Attributes

IClusterCollectionm_clusters
std::map< ICluster *, double > & m_cluMap
double m_rConeBarrel

Detailed Description

Definition at line 53 of file SharedConeStrategy.cxx.


Constructor & Destructor Documentation

Atlfast::CellAssociatedClusterEnergy::CellAssociatedClusterEnergy ( IClusterCollection clusters,
std::map< ICluster *, double > &  cluMap,
double  rConeBarrel 
) [inline]

Definition at line 55 of file SharedConeStrategy.cxx.

00059                                  :
00060       m_clusters(clusters), m_cluMap(cluMap), m_rConeBarrel(rConeBarrel){
00061     }
    void operator()(const IKinematic* cell){


Member Function Documentation

void Atlfast::CellAssociatedClusterEnergy::operator() ( const IKinematic cell  )  [inline]

Definition at line 62 of file SharedConeStrategy.cxx.

00062                                            {
00063       
00064       
00065       // find all clusters within dR of the cell
00066       IClusterCollection::iterator endAssClu = 
00067         partition(m_clusters->begin(), 
00068                   m_clusters->end(), 
00069                   PartitionCondition::BelowThresholdDeltaR(*cell,m_rConeBarrel)
00070                   );
00071       
00072       //    assert(endAssClu != cluStart);
00073       
00074       //Find the sum of energies of all clusters within dR 
00075       // - will be used to calculate cluster weight
00076       //
00077       // in conversion from Fortran: use energy instead of 
00078       // eT*cosh(pseudoRapidity)
00079       
00080       double clusterEsum = 
00081         std::accumulate(m_clusters->begin(), endAssClu, 0., EsumIK() );
00082             
00083       //calculate the shared energy fractions
00084       
00085       IClusterCollection::iterator itr = m_clusters->begin();
00086       for(; itr != endAssClu; ++itr){
00087         
00088         double eCell         = cell->momentum().e();
00089         double eCluster      = ( *itr)->momentum().e();
00090         m_cluMap[*itr]      += eCell*eCluster/clusterEsum; 
00091         
00092       }
00093 
00094       return;
00095     }


Member Data Documentation

IClusterCollection* Atlfast::CellAssociatedClusterEnergy::m_clusters [private]

Definition at line 97 of file SharedConeStrategy.cxx.

std::map<ICluster*,double>& Atlfast::CellAssociatedClusterEnergy::m_cluMap [private]

Definition at line 98 of file SharedConeStrategy.cxx.

double Atlfast::CellAssociatedClusterEnergy::m_rConeBarrel [private]

Definition at line 99 of file SharedConeStrategy.cxx.


The documentation for this class was generated from the following file:
Generated on Mon Sep 24 14:19:32 2007 for AtlfastAlgs by  doxygen 1.5.1