CMS 3D CMS Logo

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
 
double ip3d () const
 
double ip3d_error () const
 
const Pointip3d_PCA () const
 
double ip3d_Sig () const
 
 PFTauTransverseImpactParameter ()
 
 PFTauTransverseImpactParameter (const Point &, double, double, const Point &, double, double, const VertexRef &)
 constructor from values More...
 
 PFTauTransverseImpactParameter (const Point &, double, double, 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_
 
double ip3d_
 
double ip3d_error_
 
Point pca3d_
 
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 Point pca3d,
double  theip3d,
double  theip3d_error,
const VertexRef PV 
)
PFTauTransverseImpactParameter::PFTauTransverseImpactParameter ( const Point pca,
double  thedxy,
double  thedxy_error,
const Point pca3d,
double  theip3d,
double  theip3d_error,
const VertexRef PV,
const Point theFlightLength,
double  theFlightLengthSig,
const VertexRef SV 
)

Definition at line 20 of file PFTauTransverseImpactParameter.cc.

virtual reco::PFTauTransverseImpactParameter::~PFTauTransverseImpactParameter ( )
inlinevirtual

Definition at line 41 of file PFTauTransverseImpactParameter.h.

References clone().

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
double reco::PFTauTransverseImpactParameter::dxy_Sig ( ) const
inline
const PFTauTransverseImpactParameter::Vector & PFTauTransverseImpactParameter::flightLength ( ) const
PFTauTransverseImpactParameter::CovMatrix PFTauTransverseImpactParameter::flightLengthCov ( ) const

Definition at line 90 of file PFTauTransverseImpactParameter.cc.

References dimension, mps_fire::i, primaryVertexCov(), MetAnalyzer::pv(), and secondaryVertexCov().

Referenced by hasSecondaryVertex().

90  {
91  CovMatrix cov;
92  const CovMatrix& sv = secondaryVertexCov();
93  const CovMatrix& pv = primaryVertexCov();
94  for ( int i = 0; i < dimension; ++i ) {
95  for ( int j = 0; j < dimension; ++j ) {
96  cov(i,j) = sv(i,j) + pv(i,j);
97  }
98  }
99  return cov;
100 }
def pv(vc)
Definition: MetAnalyzer.py:6
double PFTauTransverseImpactParameter::flightLengthSig ( ) const

Definition at line 63 of file PFTauTransverseImpactParameter.cc.

References FlightLengthSig_, and hasSV_.

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

63  {
64  if ( hasSV_ ) {
65  //std::cout << "<PFTauTransverseImpactParameter::flightLengthSig>:" << std::endl;
66  //VertexDistance3D vtxdist;
67  //std::cout << "oldValue = " << vtxdist.distance(*PV_, *SV_).significance() << std::endl; // transforms using the jacobian then computes distance/uncertainty
68  //std::cout << "newValue = " << FlightLengthSig_ << std::endl;
69  return FlightLengthSig_;
70  }
71  return -9.9;
72 }
bool reco::PFTauTransverseImpactParameter::hasSecondaryVertex ( ) const
inline
double reco::PFTauTransverseImpactParameter::ip3d ( ) const
inline
double reco::PFTauTransverseImpactParameter::ip3d_error ( ) const
inline
const Point& reco::PFTauTransverseImpactParameter::ip3d_PCA ( ) const
inline

Definition at line 48 of file PFTauTransverseImpactParameter.h.

References pca3d_.

double reco::PFTauTransverseImpactParameter::ip3d_Sig ( ) const
inline
const VertexRef& reco::PFTauTransverseImpactParameter::primaryVertex ( ) const
inline
PFTauTransverseImpactParameter::CovMatrix PFTauTransverseImpactParameter::primaryVertexCov ( ) const

Definition at line 47 of file PFTauTransverseImpactParameter.cc.

References dimension, mps_fire::i, and PV_.

Referenced by flightLengthCov(), and primaryVertex().

48 {
49  CovMatrix cov;
50  for ( int i = 0; i < dimension; ++i ) {
51  for ( int j = 0; j < dimension; ++j ) {
52  cov(i,j) = PV_->covariance(i,j);
53  }
54  }
55  return cov;
56 }
PFTauTransverseImpactParameter::Point PFTauTransverseImpactParameter::primaryVertexPos ( ) const

Definition at line 41 of file PFTauTransverseImpactParameter.cc.

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

Referenced by primaryVertex().

42 {
43  if ( PV_.isNonnull() ) return PV_->position();
44  else return PFTauTransverseImpactParameter::Point(0.,0.,0.);
45 }
bool isNonnull() const
Checks for non-null.
Definition: Ref.h:252
const VertexRef& reco::PFTauTransverseImpactParameter::secondaryVertex ( ) const
inline
PFTauTransverseImpactParameter::CovMatrix PFTauTransverseImpactParameter::secondaryVertexCov ( ) const

Definition at line 79 of file PFTauTransverseImpactParameter.cc.

References dimension, hasSV_, mps_fire::i, and SV_.

Referenced by flightLengthCov(), and secondaryVertex().

79  {
80  CovMatrix cov;
81  if ( !hasSV_ ) return cov;
82  for ( int i = 0; i < dimension; ++i ) {
83  for ( int j = 0; j < dimension; ++j ) {
84  cov(i,j) = SV_->covariance(i,j);
85  }
86  }
87  return cov;
88 }
PFTauTransverseImpactParameter::Point PFTauTransverseImpactParameter::secondaryVertexPos ( ) const

Member Data Documentation

double reco::PFTauTransverseImpactParameter::dxy_
private

Definition at line 65 of file PFTauTransverseImpactParameter.h.

Referenced by dxy(), and dxy_Sig().

double reco::PFTauTransverseImpactParameter::dxy_error_
private

Definition at line 66 of file PFTauTransverseImpactParameter.h.

Referenced by dxy_error(), and dxy_Sig().

Vector reco::PFTauTransverseImpactParameter::FlightLength_
private

Definition at line 72 of file PFTauTransverseImpactParameter.h.

Referenced by flightLength().

double reco::PFTauTransverseImpactParameter::FlightLengthSig_
private

Definition at line 73 of file PFTauTransverseImpactParameter.h.

Referenced by flightLengthSig().

bool reco::PFTauTransverseImpactParameter::hasSV_
private
double reco::PFTauTransverseImpactParameter::ip3d_
private

Definition at line 68 of file PFTauTransverseImpactParameter.h.

Referenced by ip3d(), and ip3d_Sig().

double reco::PFTauTransverseImpactParameter::ip3d_error_
private

Definition at line 69 of file PFTauTransverseImpactParameter.h.

Referenced by ip3d_error(), and ip3d_Sig().

Point reco::PFTauTransverseImpactParameter::pca3d_
private

Definition at line 67 of file PFTauTransverseImpactParameter.h.

Referenced by ip3d_PCA().

Point reco::PFTauTransverseImpactParameter::pca_
private

Definition at line 64 of file PFTauTransverseImpactParameter.h.

Referenced by dxy_PCA().

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