Analysis Software
Documentation for sPHENIX simulation software
|
#include <acts/blob/sPHENIX/Core/include/Acts/Material/MaterialComposition.hpp>
Public Member Functions | |
constexpr | ElementFraction (unsigned int e, float f) |
constexpr | ElementFraction (unsigned int e, unsigned int w) |
ElementFraction ()=delete | |
Must always be created with valid data. | |
ElementFraction (ElementFraction &&)=default | |
ElementFraction (const ElementFraction &)=default | |
~ElementFraction ()=default | |
ElementFraction & | operator= (ElementFraction &&)=default |
ElementFraction & | operator= (const ElementFraction &)=default |
constexpr uint8_t | element () const |
The element atomic number. | |
constexpr float | fraction () const |
The relative fraction of this element. | |
Private Attributes | |
uint8_t | m_element |
uint8_t | m_fraction |
Friends | |
class | MaterialComposition |
constexpr bool | operator== (ElementFraction lhs, ElementFraction rhs) |
constexpr bool | operator< (ElementFraction lhs, ElementFraction rhs) |
Sort by fraction for fastest access to the most probable element. | |
Memory-efficient storage of the relative fraction of an element.
This can be used to define materials that are compounds of multiple elements with varying fractions. The element is identified by its atomic number stored as a single byte (allows up to 256 elements; more than we need). Its fraction is also stored as a single byte with values between 0 and
The element fraction allows you to store element composition in merged materials with a large number of bins. Depending on the detector and the description granularity this can be a lot of information and thus requires the reduced memory footprint. This is really only needed for nuclear interaction in the fast simulation where the reduced fractional accuracy is not a problem. The fractional accuracy should be much better than the parametrization uncertainty for hadronic interactions.
Definition at line 33 of file MaterialComposition.hpp.
View newest version in sPHENIX GitHub at line 33 of file MaterialComposition.hpp
|
inline |
Construct from atomic number and relative fraction.
e | is the atomic number of the element |
f | is the relative fraction and must be a value in [0,1] |
Definition at line 39 of file MaterialComposition.hpp.
View newest version in sPHENIX GitHub at line 39 of file MaterialComposition.hpp
References assert, and physmon_ckf_tracking::u.
|
inlineexplicit |
Construct from atomic number and integer weight.
e | is the atomic number of the element |
w | is the integer weight and must be a value in [0,256) |
Definition at line 50 of file MaterialComposition.hpp.
View newest version in sPHENIX GitHub at line 50 of file MaterialComposition.hpp
References assert, and physmon_ckf_tracking::u.
|
delete |
Must always be created with valid data.
|
default |
|
default |
|
default |
|
inline |
The element atomic number.
Definition at line 66 of file MaterialComposition.hpp.
View newest version in sPHENIX GitHub at line 66 of file MaterialComposition.hpp
References m_element.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
inline |
The relative fraction of this element.
Definition at line 68 of file MaterialComposition.hpp.
View newest version in sPHENIX GitHub at line 68 of file MaterialComposition.hpp
References m_fraction.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
default |
|
default |
|
friend |
Definition at line 86 of file MaterialComposition.hpp.
View newest version in sPHENIX GitHub at line 86 of file MaterialComposition.hpp
|
friend |
Sort by fraction for fastest access to the most probable element.
Definition at line 83 of file MaterialComposition.hpp.
View newest version in sPHENIX GitHub at line 83 of file MaterialComposition.hpp
|
friend |
Definition at line 78 of file MaterialComposition.hpp.
View newest version in sPHENIX GitHub at line 78 of file MaterialComposition.hpp
|
private |
Definition at line 74 of file MaterialComposition.hpp.
View newest version in sPHENIX GitHub at line 74 of file MaterialComposition.hpp
Referenced by element().
|
private |
Definition at line 76 of file MaterialComposition.hpp.
View newest version in sPHENIX GitHub at line 76 of file MaterialComposition.hpp
Referenced by fraction().