CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Private Attributes
BremRecoveryPhiRoadAlgo Class Reference

#include <BremRecoveryPhiRoadAlgo.h>

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().

7  {
8  // get barrel and endcap parametersets
9  edm::ParameterSet barrelPset = pset.getParameter<edm::ParameterSet>("barrel");
10  edm::ParameterSet endcapPset = pset.getParameter<edm::ParameterSet>("endcap");
11 
12  // set barrel parameters
13  etVec_ = barrelPset.getParameter<std::vector<double> >("etVec");
14  cryVec_ = barrelPset.getParameter<std::vector<int> >("cryVec");
15  cryMin_ = barrelPset.getParameter<int>("cryMin");
16 
17  // set endcap parameters
18  a_ = endcapPset.getParameter<double>("a");
19  b_ = endcapPset.getParameter<double>("b");
20  c_ = endcapPset.getParameter<double>("c");
21 }
std::vector< double > etVec_
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
BremRecoveryPhiRoadAlgo::~BremRecoveryPhiRoadAlgo ( )
inline

Definition at line 17 of file BremRecoveryPhiRoadAlgo.h.

17 {}

Member Function Documentation

int BremRecoveryPhiRoadAlgo::barrelPhiRoad ( double  et)

Definition at line 23 of file BremRecoveryPhiRoadAlgo.cc.

References cryMin_, cryVec_, etVec_, and mps_fire::i.

Referenced by HybridClusterAlgo::mainSearch().

23  {
24  //
25  // Take as input the ET in 5x5 crystals
26  // and compute the optimal phi road
27  // as a number of crystals
28 
29  for (unsigned int i = 0; i < cryVec_.size(); ++i) {
30  if (et < etVec_[i])
31  return cryVec_[i];
32  }
33  return cryMin_;
34 }
std::vector< double > etVec_
double BremRecoveryPhiRoadAlgo::endcapPhiRoad ( double  energy)

Definition at line 36 of file BremRecoveryPhiRoadAlgo.cc.

References a_, b_, and c_.

Referenced by Multi5x5BremRecoveryClusterAlgo::makeIslandSuperClusters().

36  {
37  //
38  // Take as input the energy in the seed BasicCluster
39  // and return the optimal phi road
40  // length in radians
41 
42  return ((a_ / (energy + b_)) + c_);
43 }

Member Data Documentation

double BremRecoveryPhiRoadAlgo::a_
private

Definition at line 31 of file BremRecoveryPhiRoadAlgo.h.

Referenced by BremRecoveryPhiRoadAlgo(), and endcapPhiRoad().

double BremRecoveryPhiRoadAlgo::b_
private

Definition at line 32 of file BremRecoveryPhiRoadAlgo.h.

Referenced by BremRecoveryPhiRoadAlgo(), and endcapPhiRoad().

double BremRecoveryPhiRoadAlgo::c_
private

Definition at line 33 of file BremRecoveryPhiRoadAlgo.h.

Referenced by BremRecoveryPhiRoadAlgo(), and endcapPhiRoad().

int BremRecoveryPhiRoadAlgo::cryMin_
private

Definition at line 27 of file BremRecoveryPhiRoadAlgo.h.

Referenced by barrelPhiRoad(), and BremRecoveryPhiRoadAlgo().

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

Definition at line 26 of file BremRecoveryPhiRoadAlgo.h.

Referenced by barrelPhiRoad(), and BremRecoveryPhiRoadAlgo().

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

Definition at line 25 of file BremRecoveryPhiRoadAlgo.h.

Referenced by barrelPhiRoad(), and BremRecoveryPhiRoadAlgo().