CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Types | Private Attributes
reco::PFTauTransverseImpactParameter Class Reference

#include <PFTauTransverseImpactParameter.h>

Public Types

typedef math::Error< dimension >
::type 
CovMatrix
 
typedef math::XYZPoint Point
 
typedef math::XYZVector Vector
 

Public Member Functions

PFTauTransverseImpactParameterclone () const
 
double dxy () const
 
double dxy_error () const
 
const Pointdxy_PCA () const
 
double dxy_Sig () const
 
const VectorflightLength () const
 
CovMatrix flightLengthCov () const
 
double flightLengthSig () const
 
bool hasSecondaryVertex () const
 
 PFTauTransverseImpactParameter ()
 
 PFTauTransverseImpactParameter (const Point &, double, double, const VertexRef &)
 constructor from values More...
 
 PFTauTransverseImpactParameter (const Point &, double, double, const VertexRef &, const Point &, double, const VertexRef &)
 
const VertexRefprimaryVertex () const
 
CovMatrix primaryVertexCov () const
 
Point primaryVertexPos () const
 
const VertexRefsecondaryVertex () const
 
CovMatrix secondaryVertexCov () const
 
Point secondaryVertexPos () const
 
virtual ~PFTauTransverseImpactParameter ()
 

Private Types

enum  { dimension = 3 }
 
enum  { covarianceSize = dimension * ( dimension + 1 ) / 2 }
 

Private Attributes

double dxy_
 
double dxy_error_
 
Vector FlightLength_
 
double FlightLengthSig_
 
bool hasSV_
 
Point pca_
 
VertexRef PV_
 
VertexRef SV_
 

Detailed Description

Definition at line 26 of file PFTauTransverseImpactParameter.h.

Member Typedef Documentation

Definition at line 32 of file PFTauTransverseImpactParameter.h.

Definition at line 33 of file PFTauTransverseImpactParameter.h.

Definition at line 34 of file PFTauTransverseImpactParameter.h.

Member Enumeration Documentation

anonymous enum
private
anonymous enum
private

Constructor & Destructor Documentation

reco::PFTauTransverseImpactParameter::PFTauTransverseImpactParameter ( )
inline

Definition at line 36 of file PFTauTransverseImpactParameter.h.

Referenced by clone().

36 {}
PFTauTransverseImpactParameter::PFTauTransverseImpactParameter ( const Point pca,
double  thedxy,
double  thedxy_error,
const VertexRef PV 
)
PFTauTransverseImpactParameter::PFTauTransverseImpactParameter ( const Point pca,
double  thedxy,
double  thedxy_error,
const VertexRef PV,
const Point theFlightLength,
double  theFlightLengthSig,
const VertexRef SV 
)
virtual reco::PFTauTransverseImpactParameter::~PFTauTransverseImpactParameter ( )
inlinevirtual

Definition at line 41 of file PFTauTransverseImpactParameter.h.

41 {}

Member Function Documentation

PFTauTransverseImpactParameter * PFTauTransverseImpactParameter::clone ( void  ) const
double reco::PFTauTransverseImpactParameter::dxy ( ) const
inline
double reco::PFTauTransverseImpactParameter::dxy_error ( ) const
inline
const Point& reco::PFTauTransverseImpactParameter::dxy_PCA ( ) const
inline

Definition at line 44 of file PFTauTransverseImpactParameter.h.

References pca_.

Referenced by pat::PATTauProducer::produce().

double reco::PFTauTransverseImpactParameter::dxy_Sig ( ) const
inline
const PFTauTransverseImpactParameter::Vector & PFTauTransverseImpactParameter::flightLength ( ) const
PFTauTransverseImpactParameter::CovMatrix PFTauTransverseImpactParameter::flightLengthCov ( ) const

Definition at line 83 of file PFTauTransverseImpactParameter.cc.

References dimension, i, j, primaryVertexCov(), and secondaryVertexCov().

83  {
84  CovMatrix cov;
85  const CovMatrix& sv = secondaryVertexCov();
86  const CovMatrix& pv = primaryVertexCov();
87  for ( int i = 0; i < dimension; ++i ) {
88  for ( int j = 0; j < dimension; ++j ) {
89  cov(i,j) = sv(i,j) + pv(i,j);
90  }
91  }
92  return cov;
93 }
int i
Definition: DBlmapReader.cc:9
int j
Definition: DBlmapReader.cc:9
double PFTauTransverseImpactParameter::flightLengthSig ( ) const

Definition at line 56 of file PFTauTransverseImpactParameter.cc.

References FlightLengthSig_, and hasSV_.

Referenced by PFRecoTauDiscriminationByIsolationMVA2::discriminate(), and pat::PATTauProducer::produce().

56  {
57  if ( hasSV_ ) {
58  //std::cout << "<PFTauTransverseImpactParameter::flightLengthSig>:" << std::endl;
59  //VertexDistance3D vtxdist;
60  //std::cout << "oldValue = " << vtxdist.distance(*PV_, *SV_).significance() << std::endl; // transforms using the jacobian then computes distance/uncertainty
61  //std::cout << "newValue = " << FlightLengthSig_ << std::endl;
62  return FlightLengthSig_;
63  }
64  return -9.9;
65 }
bool reco::PFTauTransverseImpactParameter::hasSecondaryVertex ( ) const
inline
const VertexRef& reco::PFTauTransverseImpactParameter::primaryVertex ( ) const
inline

Definition at line 48 of file PFTauTransverseImpactParameter.h.

References PV_.

Referenced by pat::PATTauProducer::produce().

PFTauTransverseImpactParameter::CovMatrix PFTauTransverseImpactParameter::primaryVertexCov ( ) const

Definition at line 40 of file PFTauTransverseImpactParameter.cc.

References dimension, i, j, and PV_.

Referenced by flightLengthCov(), and pat::PATTauProducer::produce().

41 {
42  CovMatrix cov;
43  for ( int i = 0; i < dimension; ++i ) {
44  for ( int j = 0; j < dimension; ++j ) {
45  cov(i,j) = PV_->covariance(i,j);
46  }
47  }
48  return cov;
49 }
int i
Definition: DBlmapReader.cc:9
int j
Definition: DBlmapReader.cc:9
PFTauTransverseImpactParameter::Point PFTauTransverseImpactParameter::primaryVertexPos ( ) const

Definition at line 34 of file PFTauTransverseImpactParameter.cc.

References edm::Ref< C, T, F >::isNonnull(), and PV_.

Referenced by pat::PATTauProducer::produce().

35 {
36  if ( PV_.isNonnull() ) return PV_->position();
37  else return PFTauTransverseImpactParameter::Point(0.,0.,0.);
38 }
bool isNonnull() const
Checks for non-null.
Definition: Ref.h:250
const VertexRef& reco::PFTauTransverseImpactParameter::secondaryVertex ( ) const
inline

Definition at line 55 of file PFTauTransverseImpactParameter.h.

References SV_.

Referenced by pat::PATTauProducer::produce().

PFTauTransverseImpactParameter::CovMatrix PFTauTransverseImpactParameter::secondaryVertexCov ( ) const

Definition at line 72 of file PFTauTransverseImpactParameter.cc.

References dimension, hasSV_, i, j, and SV_.

Referenced by flightLengthCov(), and pat::PATTauProducer::produce().

72  {
73  CovMatrix cov;
74  if ( !hasSV_ ) return cov;
75  for ( int i = 0; i < dimension; ++i ) {
76  for ( int j = 0; j < dimension; ++j ) {
77  cov(i,j) = SV_->covariance(i,j);
78  }
79  }
80  return cov;
81 }
int i
Definition: DBlmapReader.cc:9
int j
Definition: DBlmapReader.cc:9
PFTauTransverseImpactParameter::Point PFTauTransverseImpactParameter::secondaryVertexPos ( ) const

Member Data Documentation

double reco::PFTauTransverseImpactParameter::dxy_
private

Definition at line 61 of file PFTauTransverseImpactParameter.h.

Referenced by dxy(), and dxy_Sig().

double reco::PFTauTransverseImpactParameter::dxy_error_
private

Definition at line 62 of file PFTauTransverseImpactParameter.h.

Referenced by dxy_error(), and dxy_Sig().

Vector reco::PFTauTransverseImpactParameter::FlightLength_
private

Definition at line 65 of file PFTauTransverseImpactParameter.h.

Referenced by flightLength().

double reco::PFTauTransverseImpactParameter::FlightLengthSig_
private

Definition at line 66 of file PFTauTransverseImpactParameter.h.

Referenced by flightLengthSig().

bool reco::PFTauTransverseImpactParameter::hasSV_
private
Point reco::PFTauTransverseImpactParameter::pca_
private

Definition at line 60 of file PFTauTransverseImpactParameter.h.

Referenced by dxy_PCA().

VertexRef reco::PFTauTransverseImpactParameter::PV_
private
VertexRef reco::PFTauTransverseImpactParameter::SV_
private