DAS  3.0
Das Analysis System
GenericObjectabstract

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 <GenericObject.h>

+ Inheritance diagram for GenericObject:
+ Collaboration diagram for GenericObject:

Public Member Functions

FourVector CorrP4 (size_t i=0) const
 
float CorrPt (size_t i=0) const
 
float Rapidity (const Variation &=nominal) const
 
float AbsRap (const Variation &=nominal) const
 
FourVector CorrP4 (const Variation &v) const final
 
float CorrPt (const Variation &v) const final
 
double Weight (const Variation &v) const final
 
FourVector CorrP4 (size_t i=0) const
 
float CorrPt (size_t i=0) const
 
float Rapidity (const Variation &=nominal) const
 
float AbsRap (const Variation &=nominal) const
 
FourVector CorrP4 (const Variation &v) const final
 
float CorrPt (const Variation &v) const final
 
double Weight (const Variation &v) const final
 
- Public Member Functions inherited from AbstractGenericObject
 AbstractGenericObject ()=default
 
virtual ~AbstractGenericObject ()=default
 
 AbstractGenericObject ()=default
 
virtual ~AbstractGenericObject ()=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
 
 GenericObject ()=default
 
virtual ~GenericObject ()=default
 
virtual std::string_view scale_group () const =0
 
virtual std::string_view weight_group () const =0
 
 GenericObject ()=default
 
virtual ~GenericObject ()=default
 

Constructor & Destructor Documentation

◆ GenericObject() [1/2]

GenericObject ( )
protecteddefault

◆ ~GenericObject() [1/2]

virtual ~GenericObject ( )
protectedvirtualdefault

◆ GenericObject() [2/2]

GenericObject ( )
protecteddefault

◆ ~GenericObject() [2/2]

virtual ~GenericObject ( )
protectedvirtualdefault

Member Function Documentation

◆ AbsRap() [1/2]

float AbsRap ( const Variation = nominal) const
inline

absolute rapidity

◆ AbsRap() [2/2]

float AbsRap ( const Variation = nominal) const
inline

absolute rapidity

◆ CorrP4() [1/4]

FourVector CorrP4 ( const Variation v) const
inlinefinalvirtual

< corrected 4-vector

Implements AbstractGenericObject.

63  { return GenericObject::CorrP4(v.Group() == scale_group() ? v.Index() : 0); }

◆ CorrP4() [2/4]

FourVector CorrP4 ( const Variation v) const
inlinefinalvirtual

< corrected 4-vector

Implements AbstractGenericObject.

63  { return GenericObject::CorrP4(v.Group() == scale_group() ? v.Index() : 0); }

◆ CorrP4() [3/4]

FourVector CorrP4 ( size_t  i = 0) const
inline

corrected 4-vector

◆ CorrP4() [4/4]

FourVector CorrP4 ( size_t  i = 0) const
inline

corrected 4-vector

◆ CorrPt() [1/4]

float CorrPt ( const Variation v) const
inlinefinalvirtual

< corrected transverse momentum

Implements AbstractGenericObject.

66  { return GenericObject::CorrPt(v.Group() == scale_group() ? v.Index() : 0); }

◆ CorrPt() [2/4]

float CorrPt ( const Variation v) const
inlinefinalvirtual

< corrected transverse momentum

Implements AbstractGenericObject.

66  { return GenericObject::CorrPt(v.Group() == scale_group() ? v.Index() : 0); }

◆ CorrPt() [3/4]

float CorrPt ( size_t  i = 0) const
inline

corrected transverse momentum

◆ CorrPt() [4/4]

float CorrPt ( size_t  i = 0) const
inline

corrected transverse momentum

◆ Rapidity() [1/2]

float Rapidity ( const Variation = nominal) const
inline
59 { return p4.Rapidity() ; }

◆ Rapidity() [2/2]

float Rapidity ( const Variation = nominal) const
inline
59 { return p4.Rapidity() ; }

◆ scale_group() [1/2]

virtual std::string_view scale_group ( ) const
protectedpure virtual

◆ scale_group() [2/2]

virtual std::string_view scale_group ( ) const
protectedpure virtual

◆ Weight() [1/2]

double Weight ( const Variation v) const
inlinefinalvirtual

< weight

Implements AbstractGenericObject.

69  {
70  if (v.Group() == weight_group()) {
71  const Darwin::Physics::Weight& w = weights.at(v.Index());
72  if (w.i == v.Bit()) return w;
73  }
74  return weights.front();
75  }

◆ Weight() [2/2]

double Weight ( const Variation v) const
inlinefinalvirtual

< weight

Implements AbstractGenericObject.

69  {
70  if (v.Group() == weight_group()) {
71  const Darwin::Physics::Weight& w = weights.at(v.Index());
72  if (w.i == v.Bit()) return w;
73  }
74  return weights.front();
75  }

◆ weight_group() [1/2]

virtual std::string_view weight_group ( ) const
protectedpure virtual

◆ weight_group() [2/2]

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:
Darwin::Physics::Weight
Definition: Weight.h:17
Darwin::Physics::GenericObject::CorrPt
float CorrPt(size_t i=0) const
corrected transverse momentum
Definition: GenericObject.h:58
DAS::JetEnergy::w
static const float w
Definition: common.h:51
Darwin::Physics::GenericObject::scale_group
virtual std::string_view scale_group() const =0
Darwin::Physics::GenericObject::weights
Weights weights
object weights
Definition: GenericObject.h:55
Darwin::Physics::GenericObject::CorrP4
FourVector CorrP4(size_t i=0) const
corrected 4-vector
Definition: GenericObject.h:57
Darwin::Physics::GenericObject::p4
FourVector p4
raw four-momentum directly after reconstruction
Definition: GenericObject.h:53
Darwin::Physics::GenericObject::weight_group
virtual std::string_view weight_group() const =0