CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ChargedCandidateConverter.h
Go to the documentation of this file.
1 #ifndef RecoBTag_TensorFlow_ChargedCandidateConverter_h
2 #define RecoBTag_TensorFlow_ChargedCandidateConverter_h
3 
7 
11 
12 namespace btagbtvdeep {
13 
14  template <typename CandidateType>
15  void commonCandidateToFeatures(const CandidateType * c_pf,
16  const reco::Jet & jet,
17  const TrackInfoBuilder & track_info,
18  const float & drminpfcandsv, const float & jetR,
19  ChargedCandidateFeatures & c_pf_features) {
20 
21  c_pf_features.ptrel = catch_infs_and_bound(c_pf->pt()/jet.pt(),
22  0,-1,0,-1);
23 
24  c_pf_features.btagPf_trackEtaRel =catch_infs_and_bound(track_info.getTrackEtaRel(), 0,-5,15);
25  c_pf_features.btagPf_trackPtRel =catch_infs_and_bound(track_info.getTrackPtRel(), 0,-1,4);
26  c_pf_features.btagPf_trackPPar =catch_infs_and_bound(track_info.getTrackPPar(), 0,-1e5,1e5 );
27  c_pf_features.btagPf_trackDeltaR =catch_infs_and_bound(track_info.getTrackDeltaR(), 0,-5,5 );
28  c_pf_features.btagPf_trackPtRatio =catch_infs_and_bound(track_info.getTrackPtRatio(), 0,-1,10);
29  c_pf_features.btagPf_trackPParRatio =catch_infs_and_bound(track_info.getTrackPParRatio(),0,-10,100);
30  c_pf_features.btagPf_trackSip3dVal =catch_infs_and_bound(track_info.getTrackSip3dVal(), 0, -1,1e5 );
31  c_pf_features.btagPf_trackSip3dSig =catch_infs_and_bound(track_info.getTrackSip3dSig(), 0, -1,4e4 );
32  c_pf_features.btagPf_trackSip2dVal =catch_infs_and_bound(track_info.getTrackSip2dVal(), 0, -1,70 );
33  c_pf_features.btagPf_trackSip2dSig =catch_infs_and_bound(track_info.getTrackSip2dSig(), 0, -1,4e4 );
34  c_pf_features.btagPf_trackJetDistVal =catch_infs_and_bound(track_info.getTrackJetDistVal(),0,-20,1 );
35 
36  c_pf_features.drminsv = catch_infs_and_bound(drminpfcandsv,0,-1.*jetR,0,-1.*jetR);
37 
38  }
39 
41  const pat::Jet & jet,
42  const TrackInfoBuilder & track_info,
43  const float drminpfcandsv, const float jetR,
44  ChargedCandidateFeatures & c_pf_features) ;
45 
46 
48  const reco::Jet & jet,
49  const TrackInfoBuilder & track_info,
50  const float drminpfcandsv, const float jetR, const float puppiw,
51  const int pv_ass_quality,
52  const reco::VertexRef & pv,
53  ChargedCandidateFeatures & c_pf_features) ;
54 
55 
56 }
57 
58 #endif //RecoBTag_TensorFlow_ChargedCandidateConverter_h
void commonCandidateToFeatures(const CandidateType *c_pf, const reco::Jet &jet, const TrackInfoBuilder &track_info, const float &drminpfcandsv, const float &jetR, ChargedCandidateFeatures &c_pf_features)
Base class for all types of Jets.
Definition: Jet.h:20
void packedCandidateToFeatures(const pat::PackedCandidate *c_pf, const pat::Jet &jet, const TrackInfoBuilder &track_info, const float drminpfcandsv, const float jetR, ChargedCandidateFeatures &c_pf_features)
double pt() const final
transverse momentum
void recoCandidateToFeatures(const reco::PFCandidate *c_pf, const reco::Jet &jet, const TrackInfoBuilder &track_info, const float drminpfcandsv, const float jetR, const float puppiw, const int pv_ass_quality, const reco::VertexRef &pv, ChargedCandidateFeatures &c_pf_features)
const float getTrackEtaRel() const
const float getTrackDeltaR() const
const float getTrackPParRatio() const
const float getTrackSip2dSig() const
const float catch_infs_and_bound(const float in, const float replace_value, const float lowerbound, const float upperbound, const float offset=0., const bool use_offsets=true)
Definition: deep_helpers.cc:19
const float getTrackPPar() const
def pv(vc)
Definition: MetAnalyzer.py:6
const float getTrackPtRatio() const
const float getTrackSip3dVal() const
const float getTrackJetDistVal() const
Analysis-level calorimeter jet class.
Definition: Jet.h:80
Particle reconstructed by the particle flow algorithm.
Definition: PFCandidate.h:39
const float getTrackPtRel() const
const float getTrackSip2dVal() const
const float getTrackSip3dSig() const