CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
l1t::PFTau Class Reference

#include <PFTau.h>

Inheritance diagram for l1t::PFTau:
l1t::L1Candidate reco::LeafCandidate reco::Candidate

Public Types

enum  { unidentified = 0, oneprong = 1, oneprongpi0 = 2, threeprong = 3 }
 
- Public Types inherited from reco::LeafCandidate
typedef int Charge
 electric charge type More...
 
typedef CandidateCollection daughters
 collection of daughter candidates More...
 
typedef unsigned int index
 
typedef math::XYZTLorentzVector LorentzVector
 Lorentz vector. More...
 
typedef math::XYZPoint Point
 point in the space More...
 
typedef math::PtEtaPhiMLorentzVector PolarLorentzVector
 Lorentz vector. More...
 
typedef math::XYZVector Vector
 point in the space More...
 
- Public Types inherited from reco::Candidate
enum  { dimension = 3 }
 
enum  { size = dimension * (dimension + 1) / 2 }
 matix size More...
 
typedef int Charge
 electric charge type More...
 
typedef candidate::const_iterator const_iterator
 
typedef math::Error< dimension >::type CovarianceMatrix
 covariance error matrix (3x3) More...
 
typedef unsigned int index
 index type More...
 
typedef candidate::iterator iterator
 
typedef math::XYZTLorentzVector LorentzVector
 Lorentz vector. More...
 
typedef math::XYZPoint Point
 point in the space More...
 
typedef math::PtEtaPhiMLorentzVector PolarLorentzVector
 Lorentz vector. More...
 
typedef size_t size_type
 
typedef math::XYZVector Vector
 point in the space More...
 

Public Member Functions

float chargedIso () const
 
float dxy () const
 
l1gt::PackedTau encodedTau () const
 
float fullIso () const
 
l1gt::Tau getHWTauGT () const
 
int id () const
 
const float * NNValues () const
 
bool passLooseNN () const
 
bool passLooseNNMass () const
 
bool passLoosePF () const
 
bool passMass () const
 
bool passTightNN () const
 
bool passTightNNMass () const
 
bool passTightPF () const
 
 PFTau ()
 
 PFTau (const LorentzVector &p, float iVector[80], float iso=-1, float fulliso=-1, int id=0, int hwpt=0, int hweta=0, int hwphi=0)
 
 PFTau (const PolarLorentzVector &p, float iVector[80], float iso=-1, float fulliso=-1, int id=0, int hwpt=0, int hweta=0, int hwphi=0)
 
void set_encodedTau (l1gt::PackedTau encodedTau)
 
void setDxy (float dxy)
 
void setZ0 (float z0)
 
float z0 () const
 
- Public Member Functions inherited from l1t::L1Candidate
int hwEta () const
 
int hwIso () const
 
int hwPhi () const
 
int hwPt () const
 
int hwQual () const
 
 L1Candidate ()
 
 L1Candidate (const LorentzVector &p4, int pt=0, int eta=0, int phi=0, int qual=0, int iso=0)
 
 L1Candidate (const PolarLorentzVector &p4, int pt=0, int eta=0, int phi=0, int qual=0, int iso=0)
 
virtual bool operator!= (const l1t::L1Candidate &rhs) const
 
virtual bool operator== (const l1t::L1Candidate &rhs) const
 
void setHwEta (int eta)
 
void setHwIso (int iso)
 
void setHwPhi (int phi)
 
void setHwPt (int pt)
 
void setHwQual (int qual)
 
 ~L1Candidate () override
 
- Public Member Functions inherited from reco::LeafCandidate
Vector boostToCM () const final
 
int charge () const final
 electric charge More...
 
LeafCandidateclone () const override
 returns a clone of the Candidate object More...
 
void construct (int qx3, float pt, float eta, float phi, float mass, const Point &vtx, int pdgId, int status)
 
const Candidatedaughter (size_type) const override
 return daughter at a given position (throws an exception) More...
 
Candidatedaughter (size_type) override
 return daughter at a given position (throws an exception) More...
 
Candidatedaughter (const std::string &s) override
 return daughter with a specified role name More...
 
const Candidatedaughter (const std::string &s) const override
 return daughter with a specified role name More...
 
double energy () const final
 energy More...
 
double et () const final
 transverse energy More...
 
double et2 () const final
 transverse energy squared (use this for cut!) More...
 
double eta () const final
 momentum pseudorapidity More...
 
void fillVertexCovariance (CovarianceMatrix &v) const override
 fill SMatrix More...
 
template<typename T >
T get () const
 get a component More...
 
template<typename T , typename Tag >
T get () const
 get a component More...
 
template<typename T >
T get (size_type i) const
 get a component More...
 
template<typename T , typename Tag >
T get (size_type i) const
 get a component More...
 
bool hasMasterClone () const override
 
bool hasMasterClonePtr () const override
 
bool isCaloMuon () const override
 
bool isConvertedPhoton () const override
 
bool isElectron () const override
 
bool isGlobalMuon () const override
 
bool isJet () const override
 
bool isMuon () const override
 
bool isPhoton () const override
 
bool isStandAloneMuon () const override
 
bool isTrackerMuon () const override
 
 LeafCandidate ()
 
 LeafCandidate (const Candidate &c)
 
template<typename... Args>
 LeafCandidate (Args &&... args)
 
 LeafCandidate (LeafCandidate &rh)
 
 LeafCandidate (LeafCandidate &&)=default
 
 LeafCandidate (LeafCandidate const &)=default
 
bool longLived () const final
 is long lived? More...
 
double mass () const final
 mass More...
 
bool massConstraint () const final
 do mass constraint? More...
 
double massSqr () const final
 mass squared More...
 
const CandidateBaseRefmasterClone () const override
 
const CandidatePtrmasterClonePtr () const override
 
template<typename Ref >
Ref masterRef () const
 cast master clone reference to a concrete type More...
 
Vector momentum () const final
 spatial momentum vector More...
 
const Candidatemother (size_type) const override
 return mother at a given position (throws an exception) More...
 
double mt () const final
 transverse mass More...
 
double mtSqr () const final
 transverse mass squared More...
 
template<typename T >
size_type numberOf () const
 number of components More...
 
template<typename T , typename Tag >
size_type numberOf () const
 number of components More...
 
size_t numberOfDaughters () const override
 number of daughters More...
 
size_t numberOfMothers () const override
 number of mothers More...
 
size_t numberOfSourceCandidatePtrs () const override
 
LeafCandidateoperator= (LeafCandidate &&)=default
 
LeafCandidateoperator= (LeafCandidate const &)=default
 
double p () const final
 magnitude of momentum vector More...
 
const LorentzVectorp4 () const final
 four-momentum Lorentz vector More...
 
int pdgId () const final
 PDG identifier. More...
 
double phi () const final
 momentum azimuthal angle More...
 
const PolarLorentzVectorpolarP4 () const final
 four-momentum Lorentz vector More...
 
double pt () const final
 transverse momentum More...
 
double px () const final
 x coordinate of momentum vector More...
 
double py () const final
 y coordinate of momentum vector More...
 
double pz () const final
 z coordinate of momentum vector More...
 
double rapidity () const final
 rapidity More...
 
void setCharge (Charge q) final
 set electric charge More...
 
void setLongLived () final
 
void setMass (double m) final
 set particle mass More...
 
void setMassConstraint () final
 
void setP4 (const LorentzVector &p4) final
 set 4-momentum More...
 
void setP4 (const PolarLorentzVector &p4) final
 set 4-momentum More...
 
void setPdgId (int pdgId) final
 
void setPz (double pz) final
 
void setStatus (int status) final
 set status word More...
 
void setThreeCharge (Charge qx3) final
 set electric charge More...
 
void setVertex (const Point &vertex) override
 set vertex More...
 
CandidatePtr sourceCandidatePtr (size_type i) const override
 
int status () const final
 status word More...
 
double theta () const final
 momentum polar angle More...
 
int threeCharge () const final
 electric charge More...
 
const Pointvertex () const override
 vertex position (overwritten by PF...) More...
 
double vertexChi2 () const override
 chi-squares More...
 
double vertexCovariance (int i, int j) const override
 (i, j)-th element of error matrix, i, j = 0, ... 2 More...
 
CovarianceMatrix vertexCovariance () const final
 return SMatrix More...
 
double vertexNdof () const override
 
double vertexNormalizedChi2 () const override
 chi-squared divided by n.d.o.f. More...
 
double vx () const override
 x coordinate of vertex position More...
 
double vy () const override
 y coordinate of vertex position More...
 
double vz () const override
 z coordinate of vertex position More...
 
double y () const final
 rapidity More...
 
 ~LeafCandidate () override
 destructor More...
 
- Public Member Functions inherited from reco::Candidate
const_iterator begin () const
 first daughter const_iterator More...
 
iterator begin ()
 first daughter iterator More...
 
virtual const TrackbestTrack () const
 
 Candidate ()
 default constructor More...
 
virtual float dxyError () const
 uncertainty on dxy More...
 
virtual float dzError () const
 uncertainty on dz More...
 
const_iterator end () const
 last daughter const_iterator More...
 
iterator end ()
 last daughter iterator More...
 
template<typename T >
T get () const
 get a component More...
 
template<typename T , typename Tag >
T get () const
 get a component More...
 
template<typename T >
T get (size_type i) const
 get a component More...
 
template<typename T , typename Tag >
T get (size_type i) const
 get a component More...
 
template<typename Ref >
Ref masterRef () const
 cast master clone reference to a concrete type More...
 
template<typename T >
size_type numberOf () const
 number of components More...
 
template<typename T , typename Tag >
size_type numberOf () const
 number of components More...
 
virtual void setSourceCandidatePtr (const CandidatePtr &ptr)
 Set the ptr to the source Candidate. More...
 
virtual ~Candidate ()
 destructor More...
 

Private Attributes

float dxy_
 
l1gt::PackedTau encodedTau_
 
float fullIso_
 
int id_
 
float iso_
 
float NNValues_ [80]
 

Additional Inherited Members

Detailed Description

Definition at line 26 of file PFTau.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
unidentified 
oneprong 
oneprongpi0 
threeprong 

Definition at line 29 of file PFTau.h.

Constructor & Destructor Documentation

◆ PFTau() [1/3]

l1t::PFTau::PFTau ( )
inline

Definition at line 28 of file PFTau.h.

28 {}

◆ PFTau() [2/3]

l1t::PFTau::PFTau ( const LorentzVector p,
float  iVector[80],
float  iso = -1,
float  fulliso = -1,
int  id = 0,
int  hwpt = 0,
int  hweta = 0,
int  hwphi = 0 
)
inline

Definition at line 30 of file PFTau.h.

38  : PFTau(PolarLorentzVector(p), iVector, iso, id, hwpt, hweta, hwphi) {}
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.
Definition: LeafCandidate.h:25
double p() const final
magnitude of momentum vector
PFTau()
Definition: PFTau.h:28

◆ PFTau() [3/3]

l1t::PFTau::PFTau ( const PolarLorentzVector p,
float  iVector[80],
float  iso = -1,
float  fulliso = -1,
int  id = 0,
int  hwpt = 0,
int  hweta = 0,
int  hwphi = 0 
)

Definition at line 3 of file PFTau.cc.

References NNValues(), and NNValues_.

5  : L1Candidate(p, hwpt, hweta, hwphi, /*hwQuality=*/int(0)), iso_(iso), fullIso_(fulliso), id_(id) {
6  for (int i0 = 0; i0 < 80; i0++)
7  NNValues_[i0] = NNValues[i0]; // copy the array of NN inputs
8 }
double p() const final
magnitude of momentum vector
int id_
Definition: PFTau.h:88
float fullIso_
Definition: PFTau.h:87
float NNValues_[80]
Definition: PFTau.h:85
float iso_
Definition: PFTau.h:86
const float * NNValues() const
Definition: PFTau.h:56

Member Function Documentation

◆ chargedIso()

float l1t::PFTau::chargedIso ( ) const
inline

Definition at line 47 of file PFTau.h.

References iso_.

47 { return iso_; }
float iso_
Definition: PFTau.h:86

◆ dxy()

float l1t::PFTau::dxy ( ) const
inline

Definition at line 55 of file PFTau.h.

References dxy_.

Referenced by Electron.Electron::cutBasedId(), ntupleDataFormat.Track::dxyPull(), and setDxy().

55 { return dxy_; }
float dxy_
Definition: PFTau.h:89

◆ encodedTau()

l1gt::PackedTau l1t::PFTau::encodedTau ( ) const
inline

Definition at line 79 of file PFTau.h.

References encodedTau_.

Referenced by set_encodedTau().

79 { return encodedTau_; } //Can be unpacked using l1gt::Tau::unpack()
l1gt::PackedTau encodedTau_
Definition: PFTau.h:90

◆ fullIso()

float l1t::PFTau::fullIso ( ) const
inline

Definition at line 48 of file PFTau.h.

References fullIso_.

48 { return fullIso_; }
float fullIso_
Definition: PFTau.h:87

◆ getHWTauGT()

l1gt::Tau l1t::PFTau::getHWTauGT ( ) const
inline

Definition at line 82 of file PFTau.h.

References encodedTau_, and l1gt::Tau::unpack().

82 { return l1gt::Tau::unpack(encodedTau_); }
static Tau unpack(const PackedTau &src)
Definition: gt_datatypes.h:225
l1gt::PackedTau encodedTau_
Definition: PFTau.h:90

◆ id()

int l1t::PFTau::id ( ) const
inline

Definition at line 49 of file PFTau.h.

References id_.

49 { return id_; }
int id_
Definition: PFTau.h:88

◆ NNValues()

const float* l1t::PFTau::NNValues ( ) const
inline

Definition at line 56 of file PFTau.h.

References NNValues_.

Referenced by PFTau().

56 { return NNValues_; }
float NNValues_[80]
Definition: PFTau.h:85

◆ passLooseNN()

bool l1t::PFTau::passLooseNN ( ) const
inline

Definition at line 59 of file PFTau.h.

References iso_, and l1t::PFTAU_NN_LOOSE_CUT.

Referenced by passLooseNNMass().

59 { return iso_ > PFTAU_NN_LOOSE_CUT; }
float iso_
Definition: PFTau.h:86
static constexpr float PFTAU_NN_LOOSE_CUT
Definition: PFTau.h:16

◆ passLooseNNMass()

bool l1t::PFTau::passLooseNNMass ( ) const
inline

Definition at line 60 of file PFTau.h.

References passLooseNN(), and passMass().

60  {
61  if (!passMass())
62  return false;
63  return passLooseNN();
64  }
bool passMass() const
Definition: PFTau.h:58
bool passLooseNN() const
Definition: PFTau.h:59

◆ passLoosePF()

bool l1t::PFTau::passLoosePF ( ) const
inline

Definition at line 65 of file PFTau.h.

References fullIso_, and l1t::PFTAU_PF_LOOSE_CUT.

65 { return fullIso_ < PFTAU_PF_LOOSE_CUT; }
float fullIso_
Definition: PFTau.h:87
static constexpr float PFTAU_PF_LOOSE_CUT
Definition: PFTau.h:19

◆ passMass()

bool l1t::PFTau::passMass ( ) const
inline

Definition at line 58 of file PFTau.h.

References reco::LeafCandidate::mass(), reco::LeafCandidate::pt(), and l1t::PTSCALING_MASSCUT.

Referenced by passLooseNNMass(), and passTightNNMass().

58 { return (mass() < 2 + pt() / PTSCALING_MASSCUT); }
double pt() const final
transverse momentum
static constexpr float PTSCALING_MASSCUT
Definition: PFTau.h:22
double mass() const final
mass

◆ passTightNN()

bool l1t::PFTau::passTightNN ( ) const
inline

Definition at line 66 of file PFTau.h.

References iso_, SiStripPI::min, l1t::PFTAU_NN_OFFSET, l1t::PFTAU_NN_OVERALL_SCALE, l1t::PFTAU_NN_PT_CUTOFF, l1t::PFTAU_NN_SLOPE, l1t::PFTAU_NN_TIGHT_CUT, and reco::LeafCandidate::pt().

Referenced by passTightNNMass().

66  {
69  }
double pt() const final
transverse momentum
static constexpr float PFTAU_NN_OVERALL_SCALE
Definition: PFTau.h:14
static constexpr double PFTAU_NN_PT_CUTOFF
Definition: PFTau.h:24
static constexpr float PFTAU_NN_OFFSET
Definition: PFTau.h:12
static constexpr float PFTAU_NN_SLOPE
Definition: PFTau.h:13
static constexpr float PFTAU_NN_TIGHT_CUT
Definition: PFTau.h:17
float iso_
Definition: PFTau.h:86

◆ passTightNNMass()

bool l1t::PFTau::passTightNNMass ( ) const
inline

Definition at line 70 of file PFTau.h.

References passMass(), and passTightNN().

70  {
71  if (!passMass())
72  return false;
73  return passTightNN();
74  }
bool passMass() const
Definition: PFTau.h:58
bool passTightNN() const
Definition: PFTau.h:66

◆ passTightPF()

bool l1t::PFTau::passTightPF ( ) const
inline

Definition at line 75 of file PFTau.h.

References fullIso_, and l1t::PFTAU_PF_TIGHT_CUT.

75 { return fullIso_ < PFTAU_PF_TIGHT_CUT; }
float fullIso_
Definition: PFTau.h:87
static constexpr float PFTAU_PF_TIGHT_CUT
Definition: PFTau.h:20

◆ set_encodedTau()

void l1t::PFTau::set_encodedTau ( l1gt::PackedTau  encodedTau)
inline

Definition at line 78 of file PFTau.h.

References encodedTau(), and encodedTau_.

Referenced by L1NNTauProducer::makeTau_HW().

l1gt::PackedTau encodedTau() const
Definition: PFTau.h:79
l1gt::PackedTau encodedTau_
Definition: PFTau.h:90

◆ setDxy()

void l1t::PFTau::setDxy ( float  dxy)
inline

Definition at line 52 of file PFTau.h.

References dxy(), and dxy_.

Referenced by L1NNTauProducer::makeTau_HW().

52 { dxy_ = dxy; }
float dxy() const
Definition: PFTau.h:55
float dxy_
Definition: PFTau.h:89

◆ setZ0()

void l1t::PFTau::setZ0 ( float  z0)
inline

Definition at line 51 of file PFTau.h.

References reco::LeafCandidate::setVertex(), and z0().

Referenced by L1NNTauProducer::makeTau_HW().

void setVertex(const Point &vertex) override
set vertex
math::XYZPoint Point
point in the space
Definition: Particle.h:25
float z0() const
Definition: PFTau.h:54

◆ z0()

float l1t::PFTau::z0 ( ) const
inline

Definition at line 54 of file PFTau.h.

References reco::LeafCandidate::vz().

Referenced by setZ0().

54 { return vz(); }
double vz() const override
z coordinate of vertex position

Member Data Documentation

◆ dxy_

float l1t::PFTau::dxy_
private

Definition at line 89 of file PFTau.h.

Referenced by dxy(), and setDxy().

◆ encodedTau_

l1gt::PackedTau l1t::PFTau::encodedTau_
private

Definition at line 90 of file PFTau.h.

Referenced by encodedTau(), getHWTauGT(), and set_encodedTau().

◆ fullIso_

float l1t::PFTau::fullIso_
private

Definition at line 87 of file PFTau.h.

Referenced by fullIso(), passLoosePF(), and passTightPF().

◆ id_

int l1t::PFTau::id_
private

Definition at line 88 of file PFTau.h.

Referenced by id().

◆ iso_

float l1t::PFTau::iso_
private

Definition at line 86 of file PFTau.h.

Referenced by chargedIso(), passLooseNN(), and passTightNN().

◆ NNValues_

float l1t::PFTau::NNValues_[80]
private

Definition at line 85 of file PFTau.h.

Referenced by NNValues(), and PFTau().