ATLAS Offline Software
Loading...
Searching...
No Matches
MuonExperimental::Gx2fMaterialProperties::ELossAtSurface Struct Reference

Auxiliary struct to include the measured energy loss at a surface. More...

#include <Chi2Fitter.h>

Collaboration diagram for MuonExperimental::Gx2fMaterialProperties::ELossAtSurface:

Public Member Functions

constexpr bool isValid () const
 Is the measured energy loss valid.
constexpr double lostEnergy () const
 The amount of lost energy (Bethe bloch / measurement).
constexpr double lostSigma () const
 The uncertainty on the energy loss.
 ELossAtSurface ()=default
 Default constructor to construct an invalid energy loss.
 ELossAtSurface (const double energy, const double sigma) noexcept
 Constructor taking the measured energy loss and its uncertainty.
ELossAtSurface & operator+= (const ELossAtSurface &other) noexcept
 Absorb the energy loss from another object.

Static Public Member Functions

static ELossAtSurface invalidELoss (const GeometryContext &geoContext, const CalibrationContext &calibContext, const Vector3 &pos, const Vector3 &dir, const Surface &matSurface)
 Function that satisfies the eLossAccumulator delegate pattern and the produces an invalid energy loss at any passed material surface.

Private Attributes

bool m_isValid {false}
 Flag toggling whether the parameters are valid.
double m_lostEnergy {0.}
 The amount of lost energy at a given surface.
double m_lossSigma {0.}
 The uncertainty on the lost energy.

Detailed Description

Auxiliary struct to include the measured energy loss at a surface.

If the fitter reaches a surface with material a delegate is called to evaluate the measured energy loss at the surface. If the struct is valid the measured loss and its associated uncertainty are plugged into the chi2 system. Otherwise, the energy loss from the tracking geometry material is taken.

Definition at line 69 of file Chi2Fitter.h.

Constructor & Destructor Documentation

◆ ELossAtSurface() [1/2]

MuonExperimental::Gx2fMaterialProperties::ELossAtSurface::ELossAtSurface ( )
default

Default constructor to construct an invalid energy loss.

◆ ELossAtSurface() [2/2]

MuonExperimental::Gx2fMaterialProperties::ELossAtSurface::ELossAtSurface ( const double energy,
const double sigma )
inlineexplicitnoexcept

Constructor taking the measured energy loss and its uncertainty.

Parameters
energyThe measured lost energy at the corresponding surface
sigmaThe uncertainty on the measured lost energy

Definition at line 87 of file Chi2Fitter.h.

88 : m_isValid{std::min(energy, sigma) > Acts::s_epsilon},
double m_lostEnergy
The amount of lost energy at a given surface.
Definition Chi2Fitter.h:120
double m_lossSigma
The uncertainty on the lost energy.
Definition Chi2Fitter.h:122
bool m_isValid
Flag toggling whether the parameters are valid.
Definition Chi2Fitter.h:118

Member Function Documentation

◆ invalidELoss()

Gx2fMaterialProperties::ELossAtSurface MuonExperimental::Gx2fMaterialProperties::ELossAtSurface::invalidELoss ( const GeometryContext & geoContext,
const CalibrationContext & calibContext,
const Vector3 & pos,
const Vector3 & dir,
const Surface & matSurface )
static

Function that satisfies the eLossAccumulator delegate pattern and the produces an invalid energy loss at any passed material surface.

Parameters
geoContext:Thegeometry context to align the material surface
calibContextThe calibration context to retrieve the detector conditions to apply the calibration on the contributing calorimeter cells
posCurrent position along the trajectory (global frame)
dirTrajectory direction at the current position (glboal frame)
matSurfaceThe material surface at which the propagtions stops
Returns
An invalid EnergyLoss such that the loss will be estimated from the Bethe-Bloch formula

Definition at line 167 of file Chi2Fitter.cxx.

171 {
172 return ELossAtSurface{};
173}
ELossAtSurface()=default
Default constructor to construct an invalid energy loss.

◆ isValid()

bool MuonExperimental::Gx2fMaterialProperties::ELossAtSurface::isValid ( ) const
inlineconstexpr

Is the measured energy loss valid.

Returns
Flag indicating the energy loss validity

Definition at line 72 of file Chi2Fitter.h.

72{ return m_isValid; }

◆ lostEnergy()

double MuonExperimental::Gx2fMaterialProperties::ELossAtSurface::lostEnergy ( ) const
inlineconstexpr

The amount of lost energy (Bethe bloch / measurement).

Returns
The lost energy at the surface

Definition at line 76 of file Chi2Fitter.h.

76{ return m_lostEnergy; }

◆ lostSigma()

double MuonExperimental::Gx2fMaterialProperties::ELossAtSurface::lostSigma ( ) const
inlineconstexpr

The uncertainty on the energy loss.

Returns
Uncertainty on the lost energy at the surface

Definition at line 79 of file Chi2Fitter.h.

79{ return m_lossSigma; }

◆ operator+=()

ELossAtSurface & MuonExperimental::Gx2fMaterialProperties::ELossAtSurface::operator+= ( const ELossAtSurface & other)
inlinenoexcept

Absorb the energy loss from another object.

Definition at line 93 of file Chi2Fitter.h.

93 {
94 if (&other != this && other.isValid()) {
95 m_lostEnergy += other.m_lostEnergy;
96 m_lossSigma = Acts::fastHypot(m_lossSigma, other.lostSigma());
97 m_isValid = true;
98 }
99 return *this;
100 }

Member Data Documentation

◆ m_isValid

bool MuonExperimental::Gx2fMaterialProperties::ELossAtSurface::m_isValid {false}
private

Flag toggling whether the parameters are valid.

Definition at line 118 of file Chi2Fitter.h.

118{false};

◆ m_lossSigma

double MuonExperimental::Gx2fMaterialProperties::ELossAtSurface::m_lossSigma {0.}
private

The uncertainty on the lost energy.

Definition at line 122 of file Chi2Fitter.h.

122{0.};

◆ m_lostEnergy

double MuonExperimental::Gx2fMaterialProperties::ELossAtSurface::m_lostEnergy {0.}
private

The amount of lost energy at a given surface.

Definition at line 120 of file Chi2Fitter.h.

120{0.};

The documentation for this struct was generated from the following files: