|
|
|
void | beginRun (edm::Run const &iEvent, edm::EventSetup const &) override |
|
void | endRun (edm::Run const &iEvent, edm::EventSetup const &) override |
|
| PFAnalysis () |
|
| PFAnalysis (const edm::ParameterSet &) |
|
| ~PFAnalysis () override |
|
| EDAnalyzer ()=default |
|
SerialTaskQueue * | globalLuminosityBlocksQueue () final |
|
SerialTaskQueue * | globalRunsQueue () final |
|
bool | wantsGlobalLuminosityBlocks () const final |
|
bool | wantsGlobalRuns () const final |
|
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
|
| EDAnalyzerBase () |
|
ModuleDescription const & | moduleDescription () const |
|
bool | wantsStreamLuminosityBlocks () const |
|
bool | wantsStreamRuns () const |
|
| ~EDAnalyzerBase () override |
|
std::vector< ConsumesInfo > | consumesInfo () const |
|
void | convertCurrentProcessAlias (std::string const &processName) |
| Convert "@currentProcess" in InputTag process names to the actual current process name. More...
|
|
| EDConsumerBase () |
|
| EDConsumerBase (EDConsumerBase &&)=default |
|
| EDConsumerBase (EDConsumerBase const &)=delete |
|
ESProxyIndex const * | esGetTokenIndices (edm::Transition iTrans) const |
|
ProductResolverIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
|
void | itemsMayGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
|
void | itemsToGet (BranchType, std::vector< ProductResolverIndexAndSkipBit > &) const |
|
std::vector< ProductResolverIndexAndSkipBit > const & | itemsToGetFrom (BranchType iType) const |
|
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
|
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
|
EDConsumerBase & | operator= (EDConsumerBase &&)=default |
|
EDConsumerBase const & | operator= (EDConsumerBase const &)=delete |
|
bool | registeredToConsume (ProductResolverIndex, bool, BranchType) const |
|
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
|
ProductResolverIndexAndSkipBit | uncheckedIndexFrom (EDGetToken) const |
|
void | updateLookup (BranchType iBranchType, ProductResolverIndexHelper const &, bool iPrefetchMayGet) |
|
void | updateLookup (eventsetup::ESRecordsToProxyIndices const &) |
|
virtual | ~EDConsumerBase () noexcept(false) |
|
|
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
|
template<BranchType B> |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
|
ConsumesCollector | consumesCollector () |
| Use a ConsumesCollector to gather consumes information from helper functions. More...
|
|
template<typename ProductType , BranchType B = InEvent> |
void | consumesMany () |
|
void | consumesMany (const TypeToGet &id) |
|
template<BranchType B> |
void | consumesMany (const TypeToGet &id) |
|
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> |
auto | esConsumes () |
|
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> |
auto | esConsumes (ESInputTag const &tag) |
|
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
template<BranchType B> |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
|
template<typename ProductType , BranchType B = InEvent> |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
|
Definition at line 117 of file PFAnalysis.cc.
◆ Point
◆ PFAnalysis() [1/2]
PFAnalysis::PFAnalysis |
( |
| ) |
|
◆ PFAnalysis() [2/2]
◆ ~PFAnalysis()
PFAnalysis::~PFAnalysis |
( |
| ) |
|
|
override |
◆ analyze()
Implements edm::one::EDAnalyzerBase.
Definition at line 548 of file PFAnalysis.cc.
568 const auto recotosim = *recotosimCollection;
576 for (std::vector<reco::GenParticle>::const_iterator it_p = genParticlesHandle->begin();
577 it_p != genParticlesHandle->end();
589 std::vector<int>
daughters(it_p->daughterRefVector().size(), 0);
590 for (
unsigned j = 0;
j < it_p->daughterRefVector().size(); ++
j) {
591 daughters[
j] = static_cast<int>(it_p->daughterRefVector().at(
j).key());
598 std::vector<reco::PFCandidate>
pfCandidates = *pfCandidatesHandle;
602 std::vector<reco::PFBlock> pfBlocks = *pfBlocksHandle;
605 const auto& all_elements_distances =
processBlocks(pfBlocks);
606 const auto& all_elements = all_elements_distances.first;
607 const auto& all_distances = all_elements_distances.second;
608 assert(!all_elements.empty());
610 for (
const auto&
d : all_distances) {
624 if (idx_in_all_elements == -1) {
628 if (recotosim.find(trackref) != recotosim.end()) {
629 const auto& tps = recotosim[trackref];
630 for (
const auto&
tp : tps) {
643 int idx_simcluster = 0;
645 for (
unsigned long ncaloparticle = 0; ncaloparticle <
caloParticles.size(); ncaloparticle++) {
650 for (
const auto& simcluster :
cp.simClusters()) {
652 map<uint64_t, double> detid_energy;
667 for (
const auto&
hf : simcluster->hits_and_fractions()) {
674 const float x =
pos.x();
675 const float y =
pos.y();
676 const float z =
pos.z();
677 const float eta =
pos.eta();
678 const float phi =
pos.phi();
691 detid_energy[
id.rawId()] +=
hf.second;
695 int simcluster_to_trackingparticle = -1;
696 for (
const auto& simtrack : simcluster->g4Tracks()) {
697 simtrack_x_.push_back(simtrack.trackerSurfacePosition().x());
698 simtrack_y_.push_back(simtrack.trackerSurfacePosition().y());
699 simtrack_z_.push_back(simtrack.trackerSurfacePosition().z());
706 if (simtrack.eventId() == simtrack2.eventId() && simtrack.trackId() == simtrack2.trackId()) {
707 simcluster_to_trackingparticle = itp;
724 for (
unsigned int ielem = 0; ielem < all_elements.size(); ielem++) {
725 const auto& elem = all_elements.at(ielem);
726 const auto& orig = elem.orig;
736 float trajpoint = 0.0;
737 float eta_ecal = 0.0;
738 float phi_ecal = 0.0;
739 float eta_hcal = 0.0;
740 float phi_hcal = 0.0;
746 const auto& matched_pftrack = orig.trackRefPF();
747 if (matched_pftrack.isNonnull()) {
750 if (atHCAL.isValid()) {
751 eta_hcal = atHCAL.positionREP().eta();
752 phi_hcal = atHCAL.positionREP().phi();
754 if (atECAL.isValid()) {
755 eta_ecal = atECAL.positionREP().eta();
756 phi_ecal = atECAL.positionREP().phi();
766 energy = ref->pt() * cosh(ref->eta());
771 const auto& ref = orig2->GsftrackRef();
772 if (ref.isNonnull()) {
779 energy = ref->pt() * cosh(ref->eta());
780 trajpoint = orig2->indTrajPoint();
786 const auto& ref = orig2->GsftrackRef();
787 if (ref.isNonnull()) {
794 energy = ref->pt() * cosh(ref->eta());
801 if (ref.isNonnull()) {
804 px = ref->position().x();
805 py = ref->position().y();
806 pz = ref->position().z();
808 layer = ref->layer();
809 depth = ref->depth();
813 if (clref.isNonnull()) {
816 px = clref->position().x();
817 py = clref->position().y();
818 pz = clref->position().z();
824 if (
t.second == (
int)ielem) {
825 tps.push_back(
t.first);
830 if (
t.second == (
int)ielem) {
831 scs.push_back(
t.first);
865 for (
const auto& el :
cand.elementsInBlocks()) {
866 const auto idx_block = el.first.index();
867 unsigned idx_element_in_block = el.second;
870 for (
const auto& elem_with_index : all_elements) {
872 if (elem_with_index.idx_block == idx_block && elem_with_index.idx_elem == idx_element_in_block) {
884 cout <<
"all_elements=" << all_elements.size() << endl;
References cms::cuda::assert(), reco::PFBlockElement::BREM, caloTruthCellsProducer_cfi::caloParticles, ALCARECOTkAlJpsiMuMu_cff::charge, gather_cfg::cout, CommonMethods::cp(), ztail::d, BPhysicsValidation_cfi::daughters, LEDCalibrationChannels::depth, DetId::Ecal, reco::PFBlockElement::ECAL, reco::PFTrajectoryPoint::ECALShowerMax, HCALHighEnergyHPDFilter_cfi::energy, PVValHelper::eta, find_element_ref(), relativeConstraints::geom, edm::EventSetup::getData(), reco::PFBlockElement::GSF, DetId::Hcal, reco::PFBlockElement::HCAL, reco::PFTrajectoryPoint::HCALEntrance, es_hardcode_cfi::hf, reco::PFBlockElement::HFEM, reco::PFBlockElement::HFHAD, reco::PFBlockElement::HO, triggerObjects_cff::id, iEvent, dqmiolumiharvest::j, edm::Ref< C, T, F >::key(), nhits, ntrack, zmumugammaAnalyzer_cfi::pfCandidates, reco::PFBlockElement::PS1, reco::PFBlockElement::PS2, DiDispStaMuonMonitor_cfi::pt, PVValHelper::pT, multPhiCorr_741_25nsDY_cfi::px, multPhiCorr_741_25nsDY_cfi::py, reco::PFBlockElement::SC, OrderedSet::t, cmsswSequenceInfo::tp, reco::PFBlockElement::TRACK, muonClassificationByHits_cfi::trackingParticles, and PDWG_EXOHSCP_cff::tracks.
◆ associateClusterToSimCluster()
void PFAnalysis::associateClusterToSimCluster |
( |
const vector< ElementWithIndex > & |
all_elements | ) |
|
|
private |
Definition at line 978 of file PFAnalysis.cc.
979 vector<map<uint64_t, double>> detids_elements;
980 map<uint64_t, double> rechits_energy_all;
983 for (
const auto& elem : all_elements) {
984 map<uint64_t, double> detids;
985 const auto&
type = elem.orig.type();
990 const auto& clref = elem.orig.clusterRef();
991 assert(clref.isNonnull());
992 const auto& cluster = *clref;
995 const vector<reco::PFRecHitFraction>& rechit_fracs = cluster.recHitFractions();
996 for (
const auto& rh : rechit_fracs) {
998 if (detids.find(pfrh.
detId()) != detids.end()) {
1026 rechits_energy_all[
id.rawId()] += pfrh.
energy();
1030 assert(clref.isNonnull());
1031 const auto& cluster = *clref;
1034 const auto& rechit_fracs = cluster.hitsAndFractions();
1035 for (
const auto& rh : rechit_fracs) {
1036 if (detids.find(rh.first.rawId()) != detids.end()) {
1039 detids[rh.first.rawId()] += rh.second;
1040 const auto id = rh.first;
1064 rechits_energy_all[
id.rawId()] += rh.second;
1067 detids_elements.push_back(detids);
1073 for (
const auto& detids : detids_elements) {
1074 int isimcluster = 0;
1075 if (!detids.empty()) {
1076 double sum_e_tot = 0.0;
1077 for (
const auto&
c : detids) {
1078 sum_e_tot +=
c.second;
1082 double sum_e_tot_sc = 0.0;
1083 for (
const auto&
c : simcluster_detids) {
1084 sum_e_tot_sc +=
c.second;
1088 double cmp =
detid_compare(detids, simcluster_detids, rechits_energy_all,
false);
References cms::cuda::assert(), HltBtagPostValidation_cff::c, fileCollector::cmp, reco::PFRecHit::detId(), detid_compare(), reco::PFBlockElement::ECAL, reco::PFRecHit::energy(), PVValHelper::eta, reco::PFBlockElement::HCAL, reco::PFBlockElement::HFEM, reco::PFBlockElement::HFHAD, reco::PFBlockElement::HO, reco::PFBlockElement::PS1, reco::PFBlockElement::PS2, and reco::PFBlockElement::SC.
◆ beginJob()
void PFAnalysis::beginJob |
( |
void |
| ) |
|
|
overrideprivatevirtual |
◆ beginRun()
◆ clearVariables()
void PFAnalysis::clearVariables |
( |
| ) |
|
|
private |
◆ endJob()
void PFAnalysis::endJob |
( |
void |
| ) |
|
|
overrideprivatevirtual |
◆ endRun()
◆ fillDescriptions()
◆ getHitPosition()
Definition at line 530 of file PFAnalysis.cc.
533 bool present =
false;
539 present = geom_sd->present(
id);
541 const auto& cell = geom_sd->getGeometry(
id);
References DetId::Ecal, EcalBarrel, EcalEndcap, EcalPreshower, relativeConstraints::geom, CaloSubdetectorGeometry::getGeometry(), DetId::Hcal, HcalBarrel, HcalEndcap, HcalForward, HcalOuter, CaloSubdetectorGeometry::present(), and runTheMatrix::ret.
◆ processBlocks()
pair< vector< ElementWithIndex >, vector< tuple< int, int, float > > > PFAnalysis::processBlocks |
( |
const std::vector< reco::PFBlock > & |
pfBlocks | ) |
|
|
private |
Definition at line 944 of file PFAnalysis.cc.
946 vector<ElementWithIndex>
ret;
947 vector<tuple<int, int, float>> distances;
951 for (
const auto&
block : pfBlocks) {
953 const auto& linkdata =
block.linkData();
956 for (
const auto&
link : linkdata) {
957 const auto vecidx =
link.first;
958 const auto dist =
link.second.distance;
960 cout <<
"block " << iblock <<
" " << ielem <<
" " << vecidx <<
" " << ij.first <<
" " << ij.second <<
" " << dist
962 auto globalindex_i = ij.first +
ret.size();
963 auto globalindex_j = ij.second +
ret.size();
964 distances.push_back(make_tuple(globalindex_i, globalindex_j, dist));
967 for (
const auto& elem :
block.elements()) {
969 ret.push_back(elem_index);
974 return make_pair(
ret, distances);
References groupFilesInBlocks::block, gather_cfg::cout, get_triu_vector_index(), MainPageGenerator::link, and runTheMatrix::ret.
◆ processTrackingParticles()
◆ aField_
◆ caloParticles_
◆ element_charge_
vector<int> PFAnalysis::element_charge_ |
|
private |
◆ element_depth_
vector<float> PFAnalysis::element_depth_ |
|
private |
◆ element_distance_d_
vector<float> PFAnalysis::element_distance_d_ |
|
private |
◆ element_distance_i_
vector<int> PFAnalysis::element_distance_i_ |
|
private |
◆ element_distance_j_
vector<int> PFAnalysis::element_distance_j_ |
|
private |
◆ element_energy_
vector<float> PFAnalysis::element_energy_ |
|
private |
◆ element_eta_
vector<float> PFAnalysis::element_eta_ |
|
private |
◆ element_eta_ecal_
vector<float> PFAnalysis::element_eta_ecal_ |
|
private |
◆ element_eta_hcal_
vector<float> PFAnalysis::element_eta_hcal_ |
|
private |
◆ element_layer_
vector<int> PFAnalysis::element_layer_ |
|
private |
◆ element_phi_
vector<float> PFAnalysis::element_phi_ |
|
private |
◆ element_phi_ecal_
vector<float> PFAnalysis::element_phi_ecal_ |
|
private |
◆ element_phi_hcal_
vector<float> PFAnalysis::element_phi_hcal_ |
|
private |
◆ element_pt_
vector<float> PFAnalysis::element_pt_ |
|
private |
◆ element_px_
vector<float> PFAnalysis::element_px_ |
|
private |
◆ element_py_
vector<float> PFAnalysis::element_py_ |
|
private |
◆ element_pz_
vector<float> PFAnalysis::element_pz_ |
|
private |
◆ element_to_candidate
vector<pair<int, int> > PFAnalysis::element_to_candidate |
|
private |
◆ element_trajpoint_
vector<float> PFAnalysis::element_trajpoint_ |
|
private |
◆ element_type_
vector<int> PFAnalysis::element_type_ |
|
private |
◆ ev_event_
◆ ev_lumi_
◆ ev_run_
◆ gen_charge_
vector<int> PFAnalysis::gen_charge_ |
|
private |
◆ gen_daughters_
vector<vector<int> > PFAnalysis::gen_daughters_ |
|
private |
◆ gen_energy_
vector<float> PFAnalysis::gen_energy_ |
|
private |
◆ gen_eta_
vector<float> PFAnalysis::gen_eta_ |
|
private |
◆ gen_pdgid_
vector<int> PFAnalysis::gen_pdgid_ |
|
private |
◆ gen_phi_
vector<float> PFAnalysis::gen_phi_ |
|
private |
◆ gen_pt_
vector<float> PFAnalysis::gen_pt_ |
|
private |
◆ gen_px_
vector<float> PFAnalysis::gen_px_ |
|
private |
◆ gen_py_
vector<float> PFAnalysis::gen_py_ |
|
private |
◆ gen_pz_
vector<float> PFAnalysis::gen_pz_ |
|
private |
◆ gen_status_
vector<int> PFAnalysis::gen_status_ |
|
private |
◆ genParticles_
◆ geom
◆ geometryToken_
◆ hcal_topo
◆ hcons
◆ pfBlocks_
◆ pfcandidate_energy_
vector<float> PFAnalysis::pfcandidate_energy_ |
|
private |
◆ pfcandidate_eta_
vector<float> PFAnalysis::pfcandidate_eta_ |
|
private |
◆ pfcandidate_pdgid_
vector<int> PFAnalysis::pfcandidate_pdgid_ |
|
private |
◆ pfcandidate_phi_
vector<float> PFAnalysis::pfcandidate_phi_ |
|
private |
◆ pfcandidate_pt_
vector<float> PFAnalysis::pfcandidate_pt_ |
|
private |
◆ pfcandidate_px_
vector<float> PFAnalysis::pfcandidate_px_ |
|
private |
◆ pfcandidate_py_
vector<float> PFAnalysis::pfcandidate_py_ |
|
private |
◆ pfcandidate_pz_
vector<float> PFAnalysis::pfcandidate_pz_ |
|
private |
◆ pfCandidates_
◆ rechit_det_
vector<float> PFAnalysis::rechit_det_ |
|
private |
◆ rechit_detid_
vector<uint64_t> PFAnalysis::rechit_detid_ |
|
private |
◆ rechit_e_
vector<float> PFAnalysis::rechit_e_ |
|
private |
◆ rechit_eta_
vector<float> PFAnalysis::rechit_eta_ |
|
private |
◆ rechit_idx_element_
vector<int> PFAnalysis::rechit_idx_element_ |
|
private |
◆ rechit_phi_
vector<float> PFAnalysis::rechit_phi_ |
|
private |
◆ rechit_subdet_
vector<float> PFAnalysis::rechit_subdet_ |
|
private |
◆ rechit_x_
vector<float> PFAnalysis::rechit_x_ |
|
private |
◆ rechit_y_
vector<float> PFAnalysis::rechit_y_ |
|
private |
◆ rechit_z_
vector<float> PFAnalysis::rechit_z_ |
|
private |
◆ simcluster_bx_
vector<int> PFAnalysis::simcluster_bx_ |
|
private |
◆ simcluster_detids_
vector<std::map<uint64_t, double> > PFAnalysis::simcluster_detids_ |
|
private |
◆ simcluster_energy_
vector<float> PFAnalysis::simcluster_energy_ |
|
private |
◆ simcluster_eta_
vector<float> PFAnalysis::simcluster_eta_ |
|
private |
◆ simcluster_ev_
vector<int> PFAnalysis::simcluster_ev_ |
|
private |
◆ simcluster_idx_trackingparticle_
vector<int> PFAnalysis::simcluster_idx_trackingparticle_ |
|
private |
◆ simcluster_nhits_
vector<int> PFAnalysis::simcluster_nhits_ |
|
private |
◆ simcluster_phi_
vector<float> PFAnalysis::simcluster_phi_ |
|
private |
◆ simcluster_pid_
vector<int> PFAnalysis::simcluster_pid_ |
|
private |
◆ simcluster_pt_
vector<float> PFAnalysis::simcluster_pt_ |
|
private |
◆ simcluster_px_
vector<float> PFAnalysis::simcluster_px_ |
|
private |
◆ simcluster_py_
vector<float> PFAnalysis::simcluster_py_ |
|
private |
◆ simcluster_pz_
vector<float> PFAnalysis::simcluster_pz_ |
|
private |
◆ simcluster_to_element
vector<pair<int, int> > PFAnalysis::simcluster_to_element |
|
private |
◆ simcluster_to_element_cmp
vector<float> PFAnalysis::simcluster_to_element_cmp |
|
private |
◆ simhit_det_
vector<int> PFAnalysis::simhit_det_ |
|
private |
◆ simhit_detid_
vector<uint64_t> PFAnalysis::simhit_detid_ |
|
private |
◆ simhit_eta_
vector<float> PFAnalysis::simhit_eta_ |
|
private |
◆ simhit_frac_
vector<float> PFAnalysis::simhit_frac_ |
|
private |
◆ simhit_idx_simcluster_
vector<int> PFAnalysis::simhit_idx_simcluster_ |
|
private |
◆ simhit_phi_
vector<float> PFAnalysis::simhit_phi_ |
|
private |
◆ simhit_subdet_
vector<int> PFAnalysis::simhit_subdet_ |
|
private |
◆ simhit_x_
vector<float> PFAnalysis::simhit_x_ |
|
private |
◆ simhit_y_
vector<float> PFAnalysis::simhit_y_ |
|
private |
◆ simhit_z_
vector<float> PFAnalysis::simhit_z_ |
|
private |
◆ simtrack_idx_simcluster_
vector<int> PFAnalysis::simtrack_idx_simcluster_ |
|
private |
◆ simtrack_pid_
vector<int> PFAnalysis::simtrack_pid_ |
|
private |
◆ simtrack_x_
vector<float> PFAnalysis::simtrack_x_ |
|
private |
◆ simtrack_y_
vector<float> PFAnalysis::simtrack_y_ |
|
private |
◆ simtrack_z_
vector<float> PFAnalysis::simtrack_z_ |
|
private |
◆ t_
◆ topologyToken_
◆ trackingparticle_bx_
vector<int> PFAnalysis::trackingparticle_bx_ |
|
private |
◆ trackingparticle_dvx_
vector<float> PFAnalysis::trackingparticle_dvx_ |
|
private |
◆ trackingparticle_dvy_
vector<float> PFAnalysis::trackingparticle_dvy_ |
|
private |
◆ trackingparticle_dvz_
vector<float> PFAnalysis::trackingparticle_dvz_ |
|
private |
◆ trackingparticle_energy_
vector<float> PFAnalysis::trackingparticle_energy_ |
|
private |
◆ trackingparticle_eta_
vector<float> PFAnalysis::trackingparticle_eta_ |
|
private |
◆ trackingparticle_ev_
vector<int> PFAnalysis::trackingparticle_ev_ |
|
private |
◆ trackingparticle_exx_
vector<float> PFAnalysis::trackingparticle_exx_ |
|
private |
◆ trackingparticle_exy_
vector<float> PFAnalysis::trackingparticle_exy_ |
|
private |
◆ trackingparticle_mother_
vector<int> PFAnalysis::trackingparticle_mother_ |
|
private |
◆ trackingparticle_ovx_
vector<float> PFAnalysis::trackingparticle_ovx_ |
|
private |
◆ trackingparticle_ovy_
vector<float> PFAnalysis::trackingparticle_ovy_ |
|
private |
◆ trackingparticle_ovz_
vector<float> PFAnalysis::trackingparticle_ovz_ |
|
private |
◆ trackingparticle_phi_
vector<float> PFAnalysis::trackingparticle_phi_ |
|
private |
◆ trackingparticle_pid_
vector<int> PFAnalysis::trackingparticle_pid_ |
|
private |
◆ trackingparticle_pt_
vector<float> PFAnalysis::trackingparticle_pt_ |
|
private |
◆ trackingparticle_px_
vector<float> PFAnalysis::trackingparticle_px_ |
|
private |
◆ trackingparticle_py_
vector<float> PFAnalysis::trackingparticle_py_ |
|
private |
◆ trackingparticle_pz_
vector<float> PFAnalysis::trackingparticle_pz_ |
|
private |
◆ trackingparticle_to_element
vector<pair<int, int> > PFAnalysis::trackingparticle_to_element |
|
private |
◆ trackingParticles_
◆ tracks_
◆ tracks_recotosim_
ret
prodAgent to be discontinued
vector< pair< int, int > > element_to_candidate
edm::EDGetTokenT< std::vector< reco::PFCandidate > > pfCandidates_
vector< int > trackingparticle_bx_
vector< float > trackingparticle_dvx_
vector< float > simcluster_phi_
vector< float > element_energy_
vector< float > pfcandidate_py_
GlobalPoint getHitPosition(const DetId &id)
vector< float > trackingparticle_exy_
edm::EDGetTokenT< std::vector< reco::GenParticle > > genParticles_
vector< float > simtrack_x_
edm::EDGetTokenT< edm::View< TrackingParticle > > trackingParticles_
edm::EDGetTokenT< edm::View< CaloParticle > > caloParticles_
float energy() const
rechit energy
vector< float > trackingparticle_py_
vector< float > simhit_y_
vector< float > element_depth_
vector< float > trackingparticle_dvz_
vector< float > simcluster_energy_
vector< float > pfcandidate_pt_
ROOT::Math::LorentzVector< ROOT::Math::PxPyPzE4D< double > > XYZTLorentzVectorD
Lorentz vector with cylindrical internal representation using pseudorapidity.
vector< std::map< uint64_t, double > > simcluster_detids_
vector< float > element_px_
const CaloSubdetectorGeometry * getSubdetectorGeometry(const DetId &id) const
access the subdetector geometry for the given subdetector directly
vector< int > gen_status_
vector< int > simcluster_pid_
vector< float > trackingparticle_dvy_
vector< int > simhit_det_
vector< float > rechit_x_
vector< int > simhit_subdet_
edm::EDGetTokenT< reco::RecoToSimCollection > tracks_recotosim_
vector< float > simhit_eta_
edm::EventNumber_t ev_event_
edm::ESGetToken< HcalTopology, HcalRecNumberingRecord > topologyToken_
vector< int > element_distance_i_
vector< float > trackingparticle_exx_
const HcalDDDRecConstants * hcons
vector< float > simcluster_pz_
vector< int > trackingparticle_pid_
vector< int > rechit_idx_element_
vector< float > trackingparticle_px_
vector< int > trackingparticle_ev_
vector< int > element_charge_
vector< float > pfcandidate_pz_
vector< int > element_type_
edm::LuminosityBlockNumber_t ev_lumi_
vector< float > rechit_z_
vector< float > simtrack_z_
void processTrackingParticles(const edm::View< TrackingParticle > &trackingParticles, edm::Handle< edm::View< TrackingParticle >> &trackingParticlesHandle)
vector< float > simhit_frac_
vector< float > trackingparticle_pz_
vector< int > simtrack_pid_
vector< float > simtrack_y_
vector< int > simcluster_idx_trackingparticle_
vector< float > element_phi_hcal_
vector< int > simcluster_ev_
vector< uint64_t > simhit_detid_
Global3DPoint GlobalPoint
vector< uint64_t > rechit_detid_
vector< pair< int, int > > trackingparticle_to_element
vector< float > trackingparticle_ovx_
vector< pair< int, int > > simcluster_to_element
vector< float > simcluster_pt_
vector< int > pfcandidate_pdgid_
vector< float > pfcandidate_energy_
vector< int > simcluster_nhits_
vector< float > rechit_subdet_
vector< float > simhit_phi_
vector< float > simcluster_px_
void associateClusterToSimCluster(const vector< ElementWithIndex > &all_elements)
vector< float > element_eta_hcal_
vector< float > element_phi_
vector< float > rechit_e_
vector< float > element_phi_ecal_
pair< vector< ElementWithIndex >, vector< tuple< int, int, float > > > processBlocks(const std::vector< reco::PFBlock > &pfBlocks)
vector< float > simcluster_to_element_cmp
vector< float > rechit_eta_
double detid_compare(const map< uint64_t, double > &rechits, const map< uint64_t, double > &simhits, const map< uint64_t, double > &rechits_energy, bool print)
pair< int, int > get_triu_vector_index(int k, int n)
vector< float > element_trajpoint_
vector< int > element_distance_j_
vector< int > simhit_idx_simcluster_
vector< float > gen_energy_
vector< int > simtrack_idx_simcluster_
vector< float > element_distance_d_
vector< float > pfcandidate_px_
vector< float > element_eta_
vector< float > simcluster_py_
vector< int > simcluster_bx_
bool getData(T &iHolder) const
unsigned detId() const
rechit detId
vector< float > element_pz_
vector< float > simcluster_eta_
vector< float > trackingparticle_phi_
vector< float > element_pt_
vector< float > element_py_
vector< float > simhit_z_
vector< float > trackingparticle_ovz_
vector< int > gen_charge_
int find_element_ref(const vector< ElementWithIndex > &vec, const edm::RefToBase< reco::Track > &r)
static const std::string kSharedResource
MagneticField const * aField_
vector< float > trackingparticle_eta_
vector< int > element_layer_
Particle flow rechit (rechit + geometry and topology information). See clustering algorithm in PFClus...
key_type key() const
Accessor for product key.
edm::ESGetToken< CaloGeometry, CaloGeometryRecord > geometryToken_
edm::EDGetTokenT< std::vector< reco::PFBlock > > pfBlocks_
vector< float > pfcandidate_phi_
vector< vector< int > > gen_daughters_
vector< float > pfcandidate_eta_
vector< float > trackingparticle_pt_
def cp(fromDir, toDir, listOfFiles, overwrite=False, smallList=False)
void addDefault(ParameterSetDescription const &psetDescription)
vector< float > trackingparticle_energy_
vector< float > element_eta_ecal_
vector< float > rechit_det_
T * make(const Args &... args) const
make new ROOT object
vector< int > trackingparticle_mother_
vector< float > rechit_y_
edm::EDGetTokenT< edm::View< reco::Track > > tracks_
vector< float > trackingparticle_ovy_
vector< float > rechit_phi_
vector< float > simhit_x_