#include <CaloTower.h>
Public Types | |
typedef CaloTowerDetId | key_type |
Public Member Functions | |
void | addConstituent (DetId id) |
void | addConstituents (const std::vector< DetId > &ids) |
CaloTower (const CaloTowerDetId &id, double emE, double hadE, double outerE, int ecal_tp, int hcal_tp, const PolarLorentzVector p4, GlobalPoint emPosition, GlobalPoint hadPosition) | |
CaloTower () | |
CaloTower (const CaloTowerDetId &id, double emE, double hadE, double outerE, int ecal_tp, int hcal_tp, const LorentzVector p4, GlobalPoint emPosition, GlobalPoint hadPosition) | |
DetId | constituent (size_t i) const |
const std::vector< DetId > & | constituents () const |
size_t | constituentsSize () const |
float | ecalTime () const |
double | emEnergy () const |
double | emEt () const |
double | emEt (double vtxZ) const |
double | emEt (Point v) const |
int | emLvl1 () const |
const GlobalPoint & | emPosition () const |
double | energyInHB () const |
double | energyInHE () const |
double | energyInHF () const |
double | energyInHO () const |
double | et (double vtxZ) const |
double | et (Point v) const |
double | hadEnergy () const |
double | hadEnergyHeInnerLayer () const |
double | hadEnergyHeOuterLayer () const |
double | hadEt () const |
double | hadEt (double vtxZ) const |
double | hadEt (Point v) const |
int | hadLv11 () const |
const GlobalPoint & | hadPosition () const |
float | hcalTime () const |
double | hottestCellE () const |
CaloTowerDetId | id () const |
int | ieta () const |
int | ietaAbs () const |
int | iphi () const |
unsigned int | numBadEcalCells () const |
unsigned int | numBadHcalCells () const |
int | numCrystals () const |
unsigned int | numProblematicEcalCells () const |
unsigned int | numProblematicHcalCells () const |
unsigned int | numRecoveredEcalCells () const |
unsigned int | numRecoveredHcalCells () const |
double | outerEnergy () const |
double | outerEt (Point v) const |
double | outerEt (double vtxZ) const |
double | outerEt () const |
double | p (Point v) const |
double | p (double vtxZ) const |
math::PtEtaPhiMLorentzVector | p4 (double vtxZ) const |
math::PtEtaPhiMLorentzVector | p4 (Point v) const |
math::PtEtaPhiMLorentzVector | p4_HO (double vtxZ) const |
math::PtEtaPhiMLorentzVector | p4_HO () const |
math::PtEtaPhiMLorentzVector | p4_HO (Point v) const |
void | setCaloTowerStatus (uint32_t s) |
void | setCaloTowerStatus (unsigned int numBadHcalChan, unsigned int numBadEcalChan, unsigned int numRecHcalChan, unsigned int numRecEcalChan, unsigned int numProbHcalChan, unsigned int numProbEcalChan) |
void | setEcalTime (int t) |
void | setHcalTime (int t) |
void | setHottestCellE (double e) |
uint32_t | towerStatusWord () const |
int | zside () const |
Private Member Functions | |
math::PtEtaPhiMLorentzVector | emP4 (Point v) const |
math::PtEtaPhiMLorentzVector | emP4 (double vtxZ) const |
math::PtEtaPhiMLorentzVector | hadP4 (double vtxZ) const |
math::PtEtaPhiMLorentzVector | hadP4 (Point v) const |
Private Attributes | |
std::vector< DetId > | constituents_ |
int | ecalTime_ |
float | emE_ |
int | emLvl1_ |
GlobalPoint | emPosition_ |
float | hadE_ |
int | hadLvl1_ |
GlobalPoint | hadPosition_ |
int | hcalTime_ |
float | hottestCellE_ |
CaloTowerDetId | id_ |
float | outerE_ |
uint32_t | twrStatusWord_ |
typedef CaloTowerDetId CaloTower::key_type |
Definition at line 30 of file CaloTower.h.
CaloTower::CaloTower | ( | ) |
CaloTower::CaloTower | ( | const CaloTowerDetId & | id, |
double | emE, | ||
double | hadE, | ||
double | outerE, | ||
int | ecal_tp, | ||
int | hcal_tp, | ||
const PolarLorentzVector | p4, | ||
GlobalPoint | emPosition, | ||
GlobalPoint | hadPosition | ||
) |
Definition at line 12 of file CaloTower.cc.
: LeafCandidate(0, p4, Point(0,0,0)), id_(id), emPosition_(emPos), hadPosition_(hadPos), emE_(emE), hadE_(hadE), outerE_(outerE), emLvl1_(ecal_tp), hadLvl1_(hcal_tp) {}
CaloTower::CaloTower | ( | const CaloTowerDetId & | id, |
double | emE, | ||
double | hadE, | ||
double | outerE, | ||
int | ecal_tp, | ||
int | hcal_tp, | ||
const LorentzVector | p4, | ||
GlobalPoint | emPosition, | ||
GlobalPoint | hadPosition | ||
) |
Definition at line 24 of file CaloTower.cc.
: LeafCandidate(0, p4, Point(0,0,0)), id_(id), emPosition_(emPos), hadPosition_(hadPos), emE_(emE), hadE_(hadE), outerE_(outerE), emLvl1_(ecal_tp), hadLvl1_(hcal_tp) {}
void CaloTower::addConstituent | ( | DetId | id | ) | [inline] |
Definition at line 51 of file CaloTower.h.
References constituents_.
{ constituents_.push_back( id ); }
void CaloTower::addConstituents | ( | const std::vector< DetId > & | ids | ) |
Definition at line 153 of file CaloTower.cc.
References constituents_.
Referenced by CaloTowersCreationAlgo::convert(), CaloTowersMerger::mergedTower(), and CaloTowersCreationAlgo::rescaleTowers().
{ constituents_.reserve(constituents_.size()+ids.size()); constituents_.insert(constituents_.end(),ids.begin(),ids.end()); }
DetId CaloTower::constituent | ( | size_t | i | ) | const [inline] |
Definition at line 75 of file CaloTower.h.
References constituents_, and i.
Referenced by CaloSpecificAlgo::find_DetId_of_ECAL_cell_in_constituent_of(), CaloSpecificAlgo::find_DetId_of_HCAL_cell_in_constituent_of(), JetMatchingTools::getConstituentIds(), JetMatchingTools::getConstituents(), SignCaloSpecificAlgo::makeVectorOutOfCaloTowers(), and CaloTowersCreationAlgo::rescale().
{ return constituents_[ i ]; }
const std::vector<DetId>& CaloTower::constituents | ( | ) | const [inline] |
Definition at line 73 of file CaloTower.h.
References constituents_.
Referenced by PFRecHitProducerPS::createRecHits(), ParametrizedSubtractor::getEt(), and CaloTowersMerger::mergedTower().
{ return constituents_; }
size_t CaloTower::constituentsSize | ( | ) | const [inline] |
Definition at line 74 of file CaloTower.h.
References constituents_.
Referenced by PFRecHitProducerPS::createRecHits(), CaloSpecificAlgo::find_DetId_of_ECAL_cell_in_constituent_of(), CaloSpecificAlgo::find_DetId_of_HCAL_cell_in_constituent_of(), JetMatchingTools::getConstituentIds(), JetMatchingTools::getConstituents(), SignCaloSpecificAlgo::makeVectorOutOfCaloTowers(), and CaloTowersCreationAlgo::rescale().
{ return constituents_.size(); }
float CaloTower::ecalTime | ( | ) | const [inline] |
Definition at line 150 of file CaloTower.h.
References ecalTime_.
Referenced by CaloTowersMerger::mergedTower(), and CaloTowersCreationAlgo::rescale().
{ return float(ecalTime_) * 0.01; }
double CaloTower::emEnergy | ( | ) | const [inline] |
Definition at line 79 of file CaloTower.h.
References emE_.
Referenced by CaloMETAnalyzer::computeEmHaMET(), PFRecHitProducerPS::createRecHits(), muonisolation::CaloExtractorByAssociator::deposits(), reco::HcalNoiseInfoProducer::fillcalotwrs(), PFRootEventManager::fillOutEventWithCaloTowers(), FastL1Region::FillTower_Scaled(), MultipleAlgoIterator::getEt(), ParametrizedSubtractor::getEt(), ReflectedIterator::getEt(), JetMaker::makeSpecific(), CaloTowersMerger::mergedTower(), and CaloTowersCreationAlgo::rescale().
{ return emE_ ; }
double CaloTower::emEt | ( | double | vtxZ | ) | const [inline] |
Definition at line 103 of file CaloTower.h.
References emE_, reco::LeafCandidate::p4(), funct::sin(), and reco::LeafCandidate::theta().
double CaloTower::emEt | ( | Point | v | ) | const [inline] |
Definition at line 113 of file CaloTower.h.
References emE_, reco::LeafCandidate::p4(), funct::sin(), and reco::LeafCandidate::theta().
double CaloTower::emEt | ( | ) | const [inline] |
Definition at line 84 of file CaloTower.h.
References emE_, funct::sin(), and reco::LeafCandidate::theta().
Referenced by CaloTowerAnalyzer::analyze(), GlobalHaloAlgo::Calculate(), muonisolation::CaloExtractorByAssociator::deposits(), FastL1Region::FillTower(), FastL1Region::FillTower_Scaled(), FWECalCaloTowerProxyBuilder::getEt(), SignCaloSpecificAlgo::makeVectorOutOfCaloTowers(), operator<<(), FWCaloTowerDetailView::setTextInfo(), CaloSpecificAlgo::update_EmEtInEB_EmEtInEE(), CaloSpecificAlgo::update_HadEtInHB_HadEtInHE_HadEtInHO_HadEtInHF_EmEtInHF(), CaloSpecificAlgo::update_MaxTowerEm_MaxTowerHad(), and CaloSpecificAlgo::update_totalEt_totalEm().
int CaloTower::emLvl1 | ( | ) | const [inline] |
math::PtEtaPhiMLorentzVector CaloTower::emP4 | ( | Point | v | ) | const [private] |
Definition at line 93 of file CaloTower.cc.
References dir, emE_, emPosition_, reco::LeafCandidate::p(), and funct::sin().
Referenced by p4().
{ if (emE_>0) { GlobalPoint p(v.x(), v.y(), v.z()); math::XYZVector dir = math::XYZVector(emPosition_ - p); return math::PtEtaPhiMLorentzVector(emE_ * sin(dir.theta()), dir.eta(), dir.phi(), 0.0); } return math::PtEtaPhiMLorentzVector(0,0,0,0); }
math::PtEtaPhiMLorentzVector CaloTower::emP4 | ( | double | vtxZ | ) | const [private] |
Definition at line 59 of file CaloTower.cc.
References emE_, emPosition_, PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), and PV3DBase< T, PVType, FrameType >::z().
{ if (emE_>0) { double ctgTheta = (emPosition_.z() - vtxZ)/emPosition_.perp(); double newEta = asinh(ctgTheta); double pf = 1.0/cosh(newEta); return math::PtEtaPhiMLorentzVector(emE_ * pf, newEta, emPosition_.phi(), 0.0); } return math::PtEtaPhiMLorentzVector(0,0,0,0); }
const GlobalPoint& CaloTower::emPosition | ( | ) | const [inline] |
Definition at line 129 of file CaloTower.h.
References emPosition_.
Referenced by CaloTowersMerger::mergedTower().
{ return emPosition_ ; }
double CaloTower::energyInHB | ( | ) | const |
double CaloTower::energyInHE | ( | ) | const |
double CaloTower::energyInHF | ( | ) | const |
Definition at line 210 of file CaloTower.cc.
References reco::LeafCandidate::energy(), id_, and CaloTowerDetId::ietaAbs().
double CaloTower::energyInHO | ( | ) | const |
Definition at line 220 of file CaloTower.cc.
References emE_, reco::LeafCandidate::energy(), hadE_, id_, and CaloTowerDetId::ietaAbs().
double CaloTower::et | ( | double | vtxZ | ) | const [inline] |
Definition at line 101 of file CaloTower.h.
References reco::LeafCandidate::p4().
Referenced by CaloSpecificAlgo::addInfo(), CaloTowerAnalyzer::analyze(), GlobalHaloAlgo::Calculate(), CaloMETAnalyzer::computeEmHaMET(), SignCaloSpecificAlgo::makeVectorOutOfCaloTowers(), operator<<(), CaloTowerCreatorForTauHLT::produce(), CaloTowerCandidateCreator::produce(), CaloSpecificAlgo::update_sumEtInpHF_MExInpHF_MEyInpHF_sumEtInmHF_MExInmHF_MEyInmHF(), CaloSpecificAlgo::update_totalEt_totalEm(), and CaloMETAnalyzer::validateMET().
{ return p4(vtxZ).Et(); }
double CaloTower::et | ( | Point | v | ) | const [inline] |
Definition at line 111 of file CaloTower.h.
References reco::LeafCandidate::p4().
double CaloTower::hadEnergy | ( | ) | const [inline] |
Definition at line 80 of file CaloTower.h.
References hadE_.
Referenced by CaloMETAnalyzer::computeEmHaMET(), PFRecHitProducerPS::createRecHits(), muonisolation::CaloExtractorByAssociator::deposits(), reco::HcalNoiseInfoProducer::fillcalotwrs(), PFRootEventManager::fillOutEventWithCaloTowers(), FastL1Region::FillTower_Scaled(), MultipleAlgoIterator::getEt(), ParametrizedSubtractor::getEt(), ReflectedIterator::getEt(), JetMaker::makeSpecific(), CaloTowersMerger::mergedTower(), and CaloTowersCreationAlgo::rescale().
{ return hadE_ ; }
double CaloTower::hadEnergyHeInnerLayer | ( | ) | const [inline] |
double CaloTower::hadEnergyHeOuterLayer | ( | ) | const [inline] |
Definition at line 136 of file CaloTower.h.
References id_, CaloTowerDetId::ietaAbs(), and outerE_.
double CaloTower::hadEt | ( | ) | const [inline] |
Definition at line 85 of file CaloTower.h.
References hadE_, funct::sin(), and reco::LeafCandidate::theta().
Referenced by CaloTowerAnalyzer::analyze(), GlobalHaloAlgo::Calculate(), muonisolation::CaloExtractorByAssociator::deposits(), FastL1Region::FillTower(), FastL1Region::FillTower_Scaled(), FWHCalCaloTowerProxyBuilder::getEt(), SignCaloSpecificAlgo::makeVectorOutOfCaloTowers(), operator<<(), FWCaloTowerDetailView::setTextInfo(), CaloSpecificAlgo::update_HadEtInHB_HadEtInHE_HadEtInHO_HadEtInHF_EmEtInHF(), and CaloSpecificAlgo::update_MaxTowerEm_MaxTowerHad().
double CaloTower::hadEt | ( | double | vtxZ | ) | const [inline] |
Definition at line 104 of file CaloTower.h.
References hadE_, reco::LeafCandidate::p4(), funct::sin(), and reco::LeafCandidate::theta().
double CaloTower::hadEt | ( | Point | v | ) | const [inline] |
Definition at line 114 of file CaloTower.h.
References hadE_, reco::LeafCandidate::p4(), funct::sin(), and reco::LeafCandidate::theta().
int CaloTower::hadLv11 | ( | ) | const [inline] |
math::PtEtaPhiMLorentzVector CaloTower::hadP4 | ( | Point | v | ) | const [private] |
Definition at line 76 of file CaloTower.cc.
References abs, dir, emE_, reco::LeafCandidate::energy(), hadE_, hadPosition_, ieta(), reco::LeafCandidate::p(), and funct::sin().
Referenced by p4().
{ // note: for now we use the same position for HO as for the other detectors double hcalTot; if (abs(ieta())<16) hcalTot = (energy() - emE_); else hcalTot = hadE_; if (hcalTot>0) { GlobalPoint p(v.x(), v.y(), v.z()); math::XYZVector dir = math::XYZVector(hadPosition_ - p); return math::PtEtaPhiMLorentzVector(hcalTot * sin(dir.theta()), dir.eta(), dir.phi(), 0.0); } return math::PtEtaPhiMLorentzVector(0,0,0,0); }
math::PtEtaPhiMLorentzVector CaloTower::hadP4 | ( | double | vtxZ | ) | const [private] |
Definition at line 39 of file CaloTower.cc.
References abs, emE_, reco::LeafCandidate::energy(), hadE_, hadPosition_, ieta(), PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), and PV3DBase< T, PVType, FrameType >::z().
{ // note: for now we use the same position for HO as for the other detectors double hcalTot; if (abs(ieta())<16) hcalTot = (energy() - emE_); else hcalTot = hadE_; if (hcalTot>0) { double ctgTheta = (hadPosition_.z() - vtxZ)/hadPosition_.perp(); double newEta = asinh(ctgTheta); double pf = 1.0/cosh(newEta); return PolarLorentzVector(hcalTot * pf, newEta, hadPosition_.phi(), 0.0); } return math::PtEtaPhiMLorentzVector(0,0,0,0); }
const GlobalPoint& CaloTower::hadPosition | ( | ) | const [inline] |
Definition at line 130 of file CaloTower.h.
References hadPosition_.
Referenced by CaloTowersMerger::mergedTower().
{ return hadPosition_ ; }
float CaloTower::hcalTime | ( | ) | const [inline] |
Definition at line 151 of file CaloTower.h.
References hcalTime_.
Referenced by CaloTowersMerger::mergedTower(), and CaloTowersCreationAlgo::rescale().
{ return float(hcalTime_) * 0.01; }
double CaloTower::hottestCellE | ( | ) | const [inline] |
Definition at line 117 of file CaloTower.h.
References hottestCellE_.
Referenced by CaloTowersMerger::mergedTower().
{ return hottestCellE_; }
CaloTowerDetId CaloTower::id | ( | void | ) | const [inline] |
Definition at line 72 of file CaloTower.h.
References id_.
Referenced by CaloTowerAnalyzer::analyze(), PFRecHitProducerPS::createRecHits(), muonisolation::CaloExtractorByAssociator::deposits(), FastL1Region::FillTower(), FastL1Region::FillTower_Scaled(), MultipleAlgoIterator::getEt(), ParametrizedSubtractor::getEt(), ReflectedIterator::getEt(), ReflectedIterator::getEta(), ParametrizedSubtractor::getEta(), MultipleAlgoIterator::getEta(), PileUpSubtractor::ieta(), PileUpSubtractor::iphi(), JetMaker::makeSpecific(), CaloTowersMerger::mergedTower(), reco::HcalNoiseRBX::twrcomp::operator()(), operator<<(), operator==(), HLTHcalTowerNoiseCleaner::produce(), and CaloTowersCreationAlgo::rescale().
{ return id_; }
int CaloTower::ieta | ( | ) | const [inline] |
Definition at line 154 of file CaloTower.h.
References id_, and CaloTowerDetId::ieta().
Referenced by GlobalHaloAlgo::Calculate(), reco::HcalNoiseRBXArray::findHPD(), reco::HcalNoiseRBXArray::findRBX(), hadP4(), and p4().
int CaloTower::ietaAbs | ( | ) | const [inline] |
Definition at line 155 of file CaloTower.h.
References id_, and CaloTowerDetId::ietaAbs().
Referenced by reco::HcalNoiseInfoProducer::fillcalotwrs(), reco::CentralityProducer::filter(), FWCaloTowerSliceSelector::matchCell(), CaloTowersMerger::mergedTower(), and p4_HO().
int CaloTower::iphi | ( | ) | const [inline] |
Definition at line 156 of file CaloTower.h.
References id_, and CaloTowerDetId::iphi().
Referenced by GlobalHaloAlgo::Calculate(), reco::HcalNoiseRBXArray::findHPD(), and reco::HcalNoiseRBXArray::findRBX().
unsigned int CaloTower::numBadEcalCells | ( | ) | const [inline] |
Definition at line 165 of file CaloTower.h.
References twrStatusWord_.
Referenced by CaloTowersMerger::mergedTower(), and AnomalousTower::operator()().
{ return (twrStatusWord_ & 0x1F); }
unsigned int CaloTower::numBadHcalCells | ( | ) | const [inline] |
Definition at line 169 of file CaloTower.h.
References twrStatusWord_.
Referenced by CaloTowersMerger::mergedTower(), and AnomalousTower::operator()().
{ return ( (twrStatusWord_ >> 15)& 0x7); }
int CaloTower::numCrystals | ( | ) | const |
Definition at line 158 of file CaloTower.cc.
References constituents_, DetId::Ecal, id_, and CaloTowerDetId::ietaAbs().
{ if (id_.ietaAbs()>29) return 0; int nC = 0; std::vector<DetId>::const_iterator it = constituents_.begin(); for (; it!=constituents_.end(); ++it) { if (it->det()==DetId::Ecal) ++nC; } return nC; }
unsigned int CaloTower::numProblematicEcalCells | ( | ) | const [inline] |
Definition at line 167 of file CaloTower.h.
References twrStatusWord_.
Referenced by CaloTowersMerger::mergedTower(), and AnomalousTower::operator()().
{ return ((twrStatusWord_ >> 10) & 0x1F); }
unsigned int CaloTower::numProblematicHcalCells | ( | ) | const [inline] |
Definition at line 171 of file CaloTower.h.
References twrStatusWord_.
Referenced by CaloTowersMerger::mergedTower(), and AnomalousTower::operator()().
{ return ((twrStatusWord_ >> 21) & 0x7); }
unsigned int CaloTower::numRecoveredEcalCells | ( | ) | const [inline] |
Definition at line 166 of file CaloTower.h.
References twrStatusWord_.
Referenced by CaloTowersMerger::mergedTower(), and AnomalousTower::operator()().
{ return ((twrStatusWord_ >> 5) & 0x1F); }
unsigned int CaloTower::numRecoveredHcalCells | ( | ) | const [inline] |
Definition at line 170 of file CaloTower.h.
References twrStatusWord_.
Referenced by CaloTowersMerger::mergedTower(), and AnomalousTower::operator()().
{ return ((twrStatusWord_ >> 18) & 0x7); }
double CaloTower::outerEnergy | ( | ) | const [inline] |
Definition at line 81 of file CaloTower.h.
References id_, CaloTowerDetId::ietaAbs(), and outerE_.
Referenced by muonisolation::CaloExtractorByAssociator::deposits(), JetMaker::makeSpecific(), CaloTowersMerger::mergedTower(), and CaloTowersCreationAlgo::rescale().
double CaloTower::outerEt | ( | ) | const [inline] |
Definition at line 86 of file CaloTower.h.
References id_, CaloTowerDetId::ietaAbs(), outerE_, funct::sin(), and reco::LeafCandidate::theta().
Referenced by CaloTowerAnalyzer::analyze(), muonisolation::CaloExtractorByAssociator::deposits(), FastL1Region::FillTower(), FastL1Region::FillTower_Scaled(), FWHOCaloTowerProxyBuilder::getEt(), SignCaloSpecificAlgo::makeVectorOutOfCaloTowers(), operator<<(), and CaloSpecificAlgo::update_HadEtInHB_HadEtInHE_HadEtInHO_HadEtInHF_EmEtInHF().
double CaloTower::outerEt | ( | Point | v | ) | const [inline] |
Definition at line 115 of file CaloTower.h.
References id_, CaloTowerDetId::ietaAbs(), outerE_, reco::LeafCandidate::p4(), and funct::sin().
double CaloTower::outerEt | ( | double | vtxZ | ) | const [inline] |
Definition at line 105 of file CaloTower.h.
References id_, CaloTowerDetId::ietaAbs(), outerE_, reco::LeafCandidate::p4(), and funct::sin().
double CaloTower::p | ( | Point | v | ) | const [inline] |
Definition at line 110 of file CaloTower.h.
References reco::LeafCandidate::p4().
double CaloTower::p | ( | double | vtxZ | ) | const [inline] |
Definition at line 100 of file CaloTower.h.
References reco::LeafCandidate::p4().
{ return p4(vtxZ).P(); }
math::PtEtaPhiMLorentzVector CaloTower::p4 | ( | double | vtxZ | ) | const |
Definition at line 105 of file CaloTower.cc.
References abs, emP4(), emPosition_, reco::LeafCandidate::energy(), hadP4(), ieta(), reco::LeafCandidate::p4(), PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by VirtualJetProducer::inputTowers(), fftjetcms::FFTJetInterface::loadInputCollection(), and CaloTowersMerger::mergedTower().
{ if (abs(ieta())<=29) { return (emP4(vtxZ)+hadP4(vtxZ)); } // em and had energy in HF are defined in a special way double ctgTheta = (emPosition_.z() - vtxZ)/emPosition_.perp(); // em and had positions in HF are forced to be the same double newEta = asinh(ctgTheta); double pf = 1.0/cosh(newEta); return math::PtEtaPhiMLorentzVector(p4().energy() * pf, newEta, emPosition_.phi(), 0.0); }
math::PtEtaPhiMLorentzVector CaloTower::p4 | ( | Point | v | ) | const |
Definition at line 118 of file CaloTower.cc.
References abs, dir, emP4(), emPosition_, reco::LeafCandidate::energy(), hadP4(), ieta(), reco::LeafCandidate::p(), reco::LeafCandidate::p4(), and funct::sin().
{ if (abs(ieta())<=29) { return emP4(v)+hadP4(v); } // em and had energy in HF are defined in a special way GlobalPoint p(v.x(), v.y(), v.z()); math::XYZVector dir = math::XYZVector(emPosition_ - p); // em and had positions in HF are forced to be the same return math::PtEtaPhiMLorentzVector(p4().energy() * sin(dir.theta()), dir.eta(), dir.phi(), 0.0); }
math::PtEtaPhiMLorentzVector CaloTower::p4_HO | ( | double | vtxZ | ) | const |
Definition at line 141 of file CaloTower.cc.
References reco::LeafCandidate::p(), and p4_HO().
math::PtEtaPhiMLorentzVector CaloTower::p4_HO | ( | ) | const |
Definition at line 146 of file CaloTower.cc.
References PV3DBase< T, PVType, FrameType >::eta(), hadPosition_, ietaAbs(), outerE_, PV3DBase< T, PVType, FrameType >::phi(), funct::sin(), and PV3DBase< T, PVType, FrameType >::theta().
Referenced by p4_HO().
{ if (ietaAbs()>15 || outerE_<0) return math::PtEtaPhiMLorentzVector(0.0,0.0,0.0,0.0); return math::PtEtaPhiMLorentzVector(outerE_ * sin(hadPosition_.theta()), hadPosition_.eta(), hadPosition_.phi(), 0.0); }
math::PtEtaPhiMLorentzVector CaloTower::p4_HO | ( | Point | v | ) | const |
Definition at line 132 of file CaloTower.cc.
References dir, hadPosition_, ietaAbs(), outerE_, reco::LeafCandidate::p(), and funct::sin().
{ if (ietaAbs()>15 || outerE_<0) return math::PtEtaPhiMLorentzVector(0,0,0,0); GlobalPoint p(v.x(), v.y(), v.z()); math::XYZVector dir = math::XYZVector(hadPosition_ - p); return math::PtEtaPhiMLorentzVector(outerE_ * sin(dir.theta()), dir.eta(), dir.phi(), 0.0); }
void CaloTower::setCaloTowerStatus | ( | unsigned int | numBadHcalChan, |
unsigned int | numBadEcalChan, | ||
unsigned int | numRecHcalChan, | ||
unsigned int | numRecEcalChan, | ||
unsigned int | numProbHcalChan, | ||
unsigned int | numProbEcalChan | ||
) |
Definition at line 175 of file CaloTower.cc.
References twrStatusWord_.
Referenced by CaloTowersCreationAlgo::convert(), CaloTowersMerger::mergedTower(), and CaloTowersCreationAlgo::rescaleTowers().
{ twrStatusWord_ = 0x0; twrStatusWord_ |= ( numBadEcalChan & 0x1F); twrStatusWord_ |= ( (numRecEcalChan & 0x1F) << 5); twrStatusWord_ |= ( (numProbEcalChan & 0x1F) << 10); twrStatusWord_ |= ( (numBadHcalChan & 0x7) << 15); twrStatusWord_ |= ( (numRecHcalChan & 0x7) << 18); twrStatusWord_ |= ( (numProbHcalChan & 0x7) << 21); return; }
void CaloTower::setCaloTowerStatus | ( | uint32_t | s | ) | [inline] |
Definition at line 63 of file CaloTower.h.
References alignCSCRings::s, and twrStatusWord_.
{ twrStatusWord_ = s; }
void CaloTower::setEcalTime | ( | int | t | ) | [inline] |
Definition at line 53 of file CaloTower.h.
References ecalTime_, and lumiQTWidget::t.
Referenced by CaloTowersCreationAlgo::convert(), CaloTowersMerger::mergedTower(), and CaloTowersCreationAlgo::rescaleTowers().
void CaloTower::setHcalTime | ( | int | t | ) | [inline] |
Definition at line 54 of file CaloTower.h.
References hcalTime_, and lumiQTWidget::t.
Referenced by CaloTowersCreationAlgo::convert(), CaloTowersMerger::mergedTower(), and CaloTowersCreationAlgo::rescaleTowers().
void CaloTower::setHottestCellE | ( | double | e | ) | [inline] |
Definition at line 66 of file CaloTower.h.
References alignCSCRings::e, and hottestCellE_.
Referenced by CaloTowersCreationAlgo::convert(), and CaloTowersMerger::mergedTower().
{ hottestCellE_ = e; }
uint32_t CaloTower::towerStatusWord | ( | ) | const [inline] |
int CaloTower::zside | ( | ) | const [inline] |
Definition at line 157 of file CaloTower.h.
References id_, and CaloTowerDetId::zside().
std::vector<DetId> CaloTower::constituents_ [private] |
Definition at line 195 of file CaloTower.h.
Referenced by addConstituent(), addConstituents(), constituent(), constituents(), constituentsSize(), and numCrystals().
int CaloTower::ecalTime_ [private] |
Definition at line 187 of file CaloTower.h.
Referenced by ecalTime(), and setEcalTime().
float CaloTower::emE_ [private] |
Definition at line 190 of file CaloTower.h.
Referenced by CaloTower(), emEnergy(), emEt(), emP4(), energyInHO(), and hadP4().
int CaloTower::emLvl1_ [private] |
Definition at line 194 of file CaloTower.h.
Referenced by CaloTower(), and emLvl1().
GlobalPoint CaloTower::emPosition_ [private] |
Definition at line 183 of file CaloTower.h.
Referenced by emP4(), emPosition(), and p4().
float CaloTower::hadE_ [private] |
Definition at line 190 of file CaloTower.h.
Referenced by CaloTower(), energyInHB(), energyInHE(), energyInHO(), hadEnergy(), hadEnergyHeInnerLayer(), hadEt(), and hadP4().
int CaloTower::hadLvl1_ [private] |
Definition at line 194 of file CaloTower.h.
Referenced by CaloTower(), and hadLv11().
GlobalPoint CaloTower::hadPosition_ [private] |
Definition at line 184 of file CaloTower.h.
Referenced by hadP4(), hadPosition(), and p4_HO().
int CaloTower::hcalTime_ [private] |
Definition at line 188 of file CaloTower.h.
Referenced by hcalTime(), and setHcalTime().
float CaloTower::hottestCellE_ [private] |
Definition at line 192 of file CaloTower.h.
Referenced by hottestCellE(), and setHottestCellE().
CaloTowerDetId CaloTower::id_ [private] |
Definition at line 178 of file CaloTower.h.
Referenced by energyInHB(), energyInHE(), energyInHF(), energyInHO(), hadEnergyHeInnerLayer(), hadEnergyHeOuterLayer(), id(), ieta(), ietaAbs(), iphi(), numCrystals(), outerEnergy(), outerEt(), and zside().
float CaloTower::outerE_ [private] |
Definition at line 190 of file CaloTower.h.
Referenced by CaloTower(), energyInHB(), energyInHE(), hadEnergyHeInnerLayer(), hadEnergyHeOuterLayer(), outerEnergy(), outerEt(), and p4_HO().
uint32_t CaloTower::twrStatusWord_ [private] |
Definition at line 180 of file CaloTower.h.
Referenced by numBadEcalCells(), numBadHcalCells(), numProblematicEcalCells(), numProblematicHcalCells(), numRecoveredEcalCells(), numRecoveredHcalCells(), setCaloTowerStatus(), and towerStatusWord().