#include <CalibrationCluster.h>
Public Types | |
typedef std::map< EBDetId, unsigned int > | CalibMap |
typedef CalibMap::value_type | pippo |
Public Member Functions | |
CalibrationCluster () | |
std::vector< EBDetId > | get3x3Id (EBDetId const &) |
std::vector< EBDetId > | get5x5Id (EBDetId const &) |
std::vector< float > | getEnergyVector (const EBRecHitCollection *, CalibMap &, std::vector< EBDetId > &, float &, int &) |
CalibMap | getMap (int, int, int, int) |
~CalibrationCluster () | |
Private Attributes | |
CalibMap | calibRegion |
std::vector< float > | energyVector |
std::vector< EBDetId > | Xtals3x3 |
std::vector< EBDetId > | Xtals5x5 |
Definition at line 13 of file CalibrationCluster.h.
typedef std::map<EBDetId,unsigned int> CalibrationCluster::CalibMap |
Definition at line 16 of file CalibrationCluster.h.
typedef CalibMap::value_type CalibrationCluster::pippo |
Definition at line 17 of file CalibrationCluster.h.
CalibrationCluster::CalibrationCluster | ( | ) |
Definition at line 7 of file CalibrationCluster.cc.
{ }
CalibrationCluster::~CalibrationCluster | ( | ) |
Definition at line 11 of file CalibrationCluster.cc.
{ }
Definition at line 53 of file CalibrationCluster.cc.
References gather_cfg::cout, EBDetId::ETAPHIMODE, EBDetId::ieta(), and EBDetId::iphi().
{ Xtals3x3.clear(); for (unsigned int icry=0;icry<9;icry++) { unsigned int row = icry / 3; unsigned int column= icry %3; try { Xtals3x3.push_back(EBDetId(maxHitId.ieta()+column-1,maxHitId.iphi()+row-1,EBDetId::ETAPHIMODE)); } catch ( ... ) { std::cout << "Cannot construct 3x3 matrix around EBDetId " << maxHitId << std::endl; } } return Xtals3x3; }
Definition at line 16 of file CalibrationCluster.cc.
References gather_cfg::cout, EBDetId::ETAPHIMODE, EBDetId::ieta(), and EBDetId::iphi().
Referenced by ElectronCalibration::analyze().
{ Xtals5x5.clear(); // std::cout << "get5x5Id: max Containment crystal " << maxHitId.ic() << " eta " << maxHitId.ieta() << " phi " << maxHitId.iphi() << std::endl; for (unsigned int icry=0;icry<25;icry++) { unsigned int row = icry / 5; unsigned int column= icry %5; // std::cout << "CalibrationCluster::icry = " << icry << std::endl; int curr_eta=maxHitId.ieta() + column - (5/2); int curr_phi=maxHitId.iphi() + row - (5/2); if (curr_eta * maxHitId.ieta() <= 0) {if (maxHitId.ieta() > 0) curr_eta--; else curr_eta++; } // JUMP over 0 if (curr_phi < 1) curr_phi += 360; if (curr_phi > 360) curr_phi -= 360; try { // Xtals5x5.push_back(EBDetId(maxHitId.ieta()+column-2,maxHitId.iphi()+row-2,EBDetId::ETAPHIMODE)); Xtals5x5.push_back(EBDetId(curr_eta,curr_phi,EBDetId::ETAPHIMODE)); } catch ( ... ) { std::cout << "Cannot construct 5x5 matrix around EBDetId " << maxHitId << std::endl; } } return Xtals5x5; }
std::vector< float > CalibrationCluster::getEnergyVector | ( | const EBRecHitCollection * | hits, |
CalibMap & | ReducedMap, | ||
std::vector< EBDetId > & | XstalsNxN, | ||
float & | outBoundEnergy, | ||
int & | nXtalsOut | ||
) |
Definition at line 110 of file CalibrationCluster.cc.
References relval_parameters_module::energy, and edm::SortedCollection< T, SORT >::find().
{ energyVector.clear(); std::vector<EBDetId>::iterator it; // std::cout << "Reduced Map Size =" << ReducedMap.size() << std::endl; // std::cout << "XstalsNxN Size =" << XstalsNxN.size() << std::endl; energyVector.resize(ReducedMap.size(),0.); outBoundEnergy=0.; nXtalsOut=0; for(it=XstalsNxN.begin();it!=XstalsNxN.end();++it) { if(ReducedMap.find(*it) != ReducedMap.end()){ CalibMap::iterator it2 = ReducedMap.find(*it); int icry = it2->second; energyVector[icry]=(hits->find(*it))->energy(); } else { // std::cout << " Cell out of Reduced map: did you subtracted the cell energy from P ???" << std::endl; outBoundEnergy+=(hits->find(*it))->energy(); nXtalsOut++; } } return energyVector; }
CalibrationCluster::CalibMap CalibrationCluster::getMap | ( | int | minEta, |
int | maxEta, | ||
int | minPhi, | ||
int | maxPhi | ||
) |
Definition at line 79 of file CalibrationCluster.cc.
References gather_cfg::cout, eta(), EBDetId::ETAPHIMODE, and phi.
Referenced by ElectronCalibration::beginJob().
{ calibRegion.clear(); int rowSize=maxEta-minEta+1; int columnSize=maxPhi-minPhi+1; int reducedSize=rowSize*columnSize; for (int icry=0;icry<reducedSize;icry++) { unsigned int eta = minEta + icry/columnSize; unsigned int phi = minPhi + icry%columnSize; try { calibRegion.insert(pippo(EBDetId(eta,phi,EBDetId::ETAPHIMODE),icry)); } catch ( ... ) { std::cout << "Cannot construct full matrix !!! " << std::endl; } } return calibRegion; }
CalibMap CalibrationCluster::calibRegion [private] |
Definition at line 34 of file CalibrationCluster.h.
std::vector<float> CalibrationCluster::energyVector [private] |
Definition at line 33 of file CalibrationCluster.h.
std::vector<EBDetId> CalibrationCluster::Xtals3x3 [private] |
Definition at line 32 of file CalibrationCluster.h.
std::vector<EBDetId> CalibrationCluster::Xtals5x5 [private] |
Definition at line 31 of file CalibrationCluster.h.