ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Tracking
TrkFitter
TrkGaussianSumFilterUtils
TrkGaussianSumFilterUtils
GsfMaterial.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
10
#ifndef GSFMATERIAL_H
11
#define GSFMATERIAL_H
12
13
#include "
TrkGaussianSumFilterUtils/GsfConstants.h
"
14
//
15
#include "
EventPrimitives/EventPrimitives.h
"
16
//
17
#include <array>
18
19
namespace
GsfMaterial
{
20
22
struct
EnergyLoss
23
{
24
struct
element
25
{
26
double
weight
= 0;
27
double
deltaP
= 0;
28
double
deltaQOvePCov
= 0;
29
};
30
std::array<element, GSFConstants::maxNumberofMatComponents>
elements
= {};
31
//We need to keep track of the actual elements in use
32
int
numElements
= 0;
33
};
34
36
struct
Scattering
37
{
38
double
deltaThetaCov
= 0;
39
double
deltaPhiCov
= 0;
40
void
reset
()
41
{
42
deltaThetaCov
= 0;
43
deltaPhiCov
= 0;
44
}
45
};
46
48
struct
Combined
49
{
50
//weights
51
std::array<double, GSFConstants::maxNumberofMatComponents>
weights
= {};
52
//difference in momentum due to material effects
53
std::array<double, GSFConstants::maxNumberofMatComponents>
deltaPs
= {};
54
//parameters after material update
55
alignas
(
GSFConstants::alignment
) std::array<
AmgVector
(5),
56
GSFConstants::maxNumberofMatComponents
>
parameters
= {};
57
//Covariance after material effects
58
//(we hold initially the delta and then sum it with the covariance)
59
alignas
(
GSFConstants::alignment
) std::array<
AmgSymMatrix
(5),
60
GSFConstants::maxNumberofMatComponents
>
covariances
= {};
61
//We need to keep track of the actual elements in use
62
size_t
numEntries
= 0;
63
64
};
65
66
}
// end namespace GSFMaterial
67
68
#endif
69
EventPrimitives.h
AmgSymMatrix
#define AmgSymMatrix(dim)
Definition
EventPrimitives.h:50
AmgVector
#define AmgVector(rows)
Definition
EventPrimitives.h:55
GsfConstants.h
GSFConstants::alignment
constexpr size_t alignment
Alignment used for SIMD operations internally to GSF.
Definition
GsfConstants.h:20
GSFConstants::maxNumberofMatComponents
constexpr int8_t maxNumberofMatComponents
Maximum number of Gaussian components for the material effects description.
Definition
GsfConstants.h:46
GsfMaterial
Collect Structs we use for material effects in GSF and their meaning in one place.
Definition
GsfMaterial.h:19
GsfMaterial::Combined
Helper struct for combined material effects, multicomponent description.
Definition
GsfMaterial.h:49
GsfMaterial::Combined::numEntries
size_t numEntries
Definition
GsfMaterial.h:62
GsfMaterial::Combined::parameters
std::array< AmgVector(5), GSFConstants::maxNumberofMatComponents > parameters
Definition
GsfMaterial.h:56
GsfMaterial::Combined::deltaPs
std::array< double, GSFConstants::maxNumberofMatComponents > deltaPs
Definition
GsfMaterial.h:53
GsfMaterial::Combined::weights
std::array< double, GSFConstants::maxNumberofMatComponents > weights
Definition
GsfMaterial.h:51
GsfMaterial::Combined::covariances
std::array< AmgSymMatrix(5), GSFConstants::maxNumberofMatComponents > covariances
Definition
GsfMaterial.h:60
GsfMaterial::EnergyLoss::element
Definition
GsfMaterial.h:25
GsfMaterial::EnergyLoss::element::weight
double weight
Definition
GsfMaterial.h:26
GsfMaterial::EnergyLoss::element::deltaP
double deltaP
Definition
GsfMaterial.h:27
GsfMaterial::EnergyLoss::element::deltaQOvePCov
double deltaQOvePCov
Definition
GsfMaterial.h:28
GsfMaterial::EnergyLoss
Helper struct for energy loss effects, multicomponent description.
Definition
GsfMaterial.h:23
GsfMaterial::EnergyLoss::numElements
int numElements
Definition
GsfMaterial.h:32
GsfMaterial::EnergyLoss::elements
std::array< element, GSFConstants::maxNumberofMatComponents > elements
Definition
GsfMaterial.h:30
GsfMaterial::Scattering
Helper struct for multiple scattering effects single component description.
Definition
GsfMaterial.h:37
GsfMaterial::Scattering::deltaThetaCov
double deltaThetaCov
Definition
GsfMaterial.h:38
GsfMaterial::Scattering::deltaPhiCov
double deltaPhiCov
Definition
GsfMaterial.h:39
GsfMaterial::Scattering::reset
void reset()
Definition
GsfMaterial.h:40
Generated on
for ATLAS Offline Software by
1.17.0