DAS  3.0
Das Analysis System
PhysicsObjectabstract

Description

Generic physics object, such as a jet or a stable particle.

The four-momentum p4 does not include the energy calibration. The scales vector typically contains the JES or Rochester corrections. The weights include a value and a (de)correlation bit.

#include <PhysicsObject.h>

+ Inheritance diagram for PhysicsObject:
+ Collaboration diagram for PhysicsObject:

Public Member Functions

FourVector CorrP4 (size_t i=0) const
 
float CorrPt (size_t i=0) const
 
float Rapidity (const Uncertainties::Variation &=Uncertainties::nominal) const
 
float AbsRap (const Uncertainties::Variation &=Uncertainties::nominal) const
 
FourVector CorrP4 (const Uncertainties::Variation &v) const final
 
float CorrPt (const Uncertainties::Variation &v) const final
 
double Weight (const Uncertainties::Variation &v) const final
 
- Public Member Functions inherited from AbstractPhysicsObject
 AbstractPhysicsObject ()=default
 
virtual ~AbstractPhysicsObject ()=default
 

Public Attributes

FourVector p4
 
std::vector< float > scales = {1.}
 
Weights weights = {{1.,0}}
 

Protected Member Functions

virtual std::string_view scale_group () const =0
 
virtual std::string_view weight_group () const =0
 
 PhysicsObject ()=default
 
virtual ~PhysicsObject ()=default
 

Constructor & Destructor Documentation

◆ PhysicsObject()

PhysicsObject ( )
protecteddefault

◆ ~PhysicsObject()

virtual ~PhysicsObject ( )
protectedvirtualdefault

Member Function Documentation

◆ AbsRap()

float AbsRap ( const Uncertainties::Variation = Uncertainties::nominal) const
inline

absolute rapidity

◆ CorrP4() [1/2]

FourVector CorrP4 ( const Uncertainties::Variation v) const
inlinefinalvirtual

< corrected 4-vector

Implements AbstractPhysicsObject.

57  { return PhysicsObject::CorrP4(v.group == scale_group() ? v.index : 0); }

◆ CorrP4() [2/2]

FourVector CorrP4 ( size_t  i = 0) const
inline

corrected 4-vector

◆ CorrPt() [1/2]

float CorrPt ( const Uncertainties::Variation v) const
inlinefinalvirtual

< corrected transverse momentum

Implements AbstractPhysicsObject.

60  { return PhysicsObject::CorrPt(v.group == scale_group() ? v.index : 0); }

◆ CorrPt() [2/2]

float CorrPt ( size_t  i = 0) const
inline

corrected transverse momentum

◆ Rapidity()

float Rapidity ( const Uncertainties::Variation = Uncertainties::nominal) const
inline
53 { return p4.Rapidity() ; }

◆ scale_group()

virtual std::string_view scale_group ( ) const
protectedpure virtual

◆ Weight()

double Weight ( const Uncertainties::Variation v) const
inlinefinalvirtual

< weight

Implements AbstractPhysicsObject.

63  {
64  if (v.group == weight_group()) {
65  const DAS::Weight& w = weights.at(v.index);
66  if (w.i == v.bit) return w;
67  }
68  return weights.front();
69  }

◆ weight_group()

virtual std::string_view weight_group ( ) const
protectedpure virtual

Member Data Documentation

◆ p4

raw four-momentum directly after reconstruction

◆ scales

std::vector<float> scales = {1.}

energy scale corrections and variations

◆ weights

Weights weights = {{1.,0}}

object weights


The documentation for this class was generated from the following file:
DAS::PhysicsObject::p4
FourVector p4
raw four-momentum directly after reconstruction
Definition: PhysicsObject.h:47
DAS::PhysicsObject::scale_group
virtual std::string_view scale_group() const =0
DAS::PhysicsObject::CorrP4
FourVector CorrP4(size_t i=0) const
corrected 4-vector
Definition: PhysicsObject.h:51
DAS::JetEnergy::w
static const float w
Definition: common.h:47
DAS::PhysicsObject::weight_group
virtual std::string_view weight_group() const =0
DAS::Weight
Definition: Weight.h:16
DAS::PhysicsObject::CorrPt
float CorrPt(size_t i=0) const
corrected transverse momentum
Definition: PhysicsObject.h:52
DAS::PhysicsObject::weights
Weights weights
object weights
Definition: PhysicsObject.h:49