CMS 3D CMS Logo

Public Member Functions | Private Attributes

BremRecoveryPhiRoadAlgo Class Reference

#include <BremRecoveryPhiRoadAlgo.h>

List of all members.

Public Member Functions

int barrelPhiRoad (double et)
 BremRecoveryPhiRoadAlgo (const edm::ParameterSet &pset)
double endcapPhiRoad (double energy)
 ~BremRecoveryPhiRoadAlgo ()

Private Attributes

double a_
double b_
double c_
int cryMin_
std::vector< int > cryVec_
std::vector< double > etVec_

Detailed Description

calculates the optimal phi road length for the ecal barrel or endcap.

Definition at line 14 of file BremRecoveryPhiRoadAlgo.h.


Constructor & Destructor Documentation

BremRecoveryPhiRoadAlgo::BremRecoveryPhiRoadAlgo ( const edm::ParameterSet pset)

Definition at line 7 of file BremRecoveryPhiRoadAlgo.cc.

References a_, b_, c_, cryMin_, cryVec_, etVec_, and edm::ParameterSet::getParameter().

{

   // get barrel and endcap parametersets
   edm::ParameterSet barrelPset = pset.getParameter<edm::ParameterSet>("barrel");
   edm::ParameterSet endcapPset = pset.getParameter<edm::ParameterSet>("endcap");

   // set barrel parameters
   etVec_ = barrelPset.getParameter<std::vector<double> >("etVec");
   cryVec_ = barrelPset.getParameter<std::vector<int> >("cryVec");
   cryMin_ = barrelPset.getParameter<int>("cryMin");

   // set endcap parameters
   a_ = endcapPset.getParameter<double>("a");
   b_ = endcapPset.getParameter<double>("b");
   c_ = endcapPset.getParameter<double>("c");

}
BremRecoveryPhiRoadAlgo::~BremRecoveryPhiRoadAlgo ( ) [inline]

Definition at line 18 of file BremRecoveryPhiRoadAlgo.h.

{}

Member Function Documentation

int BremRecoveryPhiRoadAlgo::barrelPhiRoad ( double  et)

Definition at line 26 of file BremRecoveryPhiRoadAlgo.cc.

References cryMin_, cryVec_, etVec_, and i.

Referenced by HybridClusterAlgo::mainSearch().

{

   // 
   // Take as input the ET in 5x5 crystals
   // and compute the optimal phi road 
   // as a number of crystals

   for (unsigned int i = 0; i < cryVec_.size(); ++i)
   {
      if (et < etVec_[i]) return cryVec_[i];
   }
   return cryMin_;

}
double BremRecoveryPhiRoadAlgo::endcapPhiRoad ( double  energy)

Definition at line 42 of file BremRecoveryPhiRoadAlgo.cc.

References a_, b_, and c_.

Referenced by Multi5x5BremRecoveryClusterAlgo::makeIslandSuperClusters().

{

   //
   // Take as input the energy in the seed BasicCluster
   // and return the optimal phi road
   // length in radians

   return ((a_ / (energy + b_)) + c_);

}

Member Data Documentation

double BremRecoveryPhiRoadAlgo::a_ [private]

Definition at line 32 of file BremRecoveryPhiRoadAlgo.h.

Referenced by BremRecoveryPhiRoadAlgo(), and endcapPhiRoad().

double BremRecoveryPhiRoadAlgo::b_ [private]

Definition at line 33 of file BremRecoveryPhiRoadAlgo.h.

Referenced by BremRecoveryPhiRoadAlgo(), and endcapPhiRoad().

double BremRecoveryPhiRoadAlgo::c_ [private]

Definition at line 34 of file BremRecoveryPhiRoadAlgo.h.

Referenced by BremRecoveryPhiRoadAlgo(), and endcapPhiRoad().

Definition at line 28 of file BremRecoveryPhiRoadAlgo.h.

Referenced by barrelPhiRoad(), and BremRecoveryPhiRoadAlgo().

std::vector<int> BremRecoveryPhiRoadAlgo::cryVec_ [private]

Definition at line 27 of file BremRecoveryPhiRoadAlgo.h.

Referenced by barrelPhiRoad(), and BremRecoveryPhiRoadAlgo().

std::vector<double> BremRecoveryPhiRoadAlgo::etVec_ [private]

Definition at line 26 of file BremRecoveryPhiRoadAlgo.h.

Referenced by barrelPhiRoad(), and BremRecoveryPhiRoadAlgo().