ATLAS Offline Software
|
#include <CompoundLayerMaterial.h>
Public Member Functions | |
CompoundLayerMaterial ()=default | |
Default Constructor - needed by POOL. More... | |
CompoundLayerMaterial (const Trk::BinUtility &binutility, const ValueStore &thicknessBins, const ValueStore &x0Bins, const ValueStore &l0Bins, const ValueStore &aBins, const ValueStore &zBins, const ValueStore &rhoBins, const std::vector< std::vector< MaterialComposition > > &composition, bool fComposition=false) | |
Explizit constructor. More... | |
CompoundLayerMaterial (const CompoundLayerMaterial &mprop) | |
Copy Constructor. More... | |
virtual | ~CompoundLayerMaterial () override |
Destructor. More... | |
virtual CompoundLayerMaterial * | clone () const override final |
Pseudo-Constructor clone() More... | |
CompoundLayerMaterial & | operator= (const CompoundLayerMaterial &lmp) |
Assignment operator. More... | |
virtual CompoundLayerMaterial & | operator*= (double scale) override final |
Scale operator. More... | |
virtual const BinUtility * | binUtility () const override final |
Return the BinUtility. More... | |
virtual void | updateBinning (BinUtility *bu) override final |
Update the BinUtility if necessary - passing ownership of the utility class. More... | |
virtual const MaterialProperties * | fullMaterial (const Amg::Vector3D &gp) const override final |
Return method for full material description of the Layer. More... | |
virtual const MaterialProperties * | material (size_t bin0, size_t bin1) const override final |
Access the single bin. More... | |
void | updateElementTable (const SharedObject< const ElementTable > &set) |
Update the ElementTable. More... | |
const ElementTable * | elementTable () const |
Get the ElementTable. More... | |
virtual MsgStream & | dump (MsgStream &sl) const override final |
Output Method for MsgStream, to be overloaded by child classes. More... | |
virtual std::ostream & | dump (std::ostream &sl) const override final |
Output Method for std::ostream, to be overloaded by child classes. More... | |
void | updateElementTable (const SharedObject< const ElementTable > &) const |
Update the ElementTable. More... | |
double | factor (PropDirection pDir, MaterialUpdateStage mStage) const |
Update pre factor. More... | |
double | alongPreFactor () const |
Return method for pre update material description of the Layer along normalvector. More... | |
double | alongPostFactor () const |
Return method for post update material description of the Layer along normalvector. More... | |
double | oppositePreFactor () const |
Return method for pre update material description of the Layer along normalvector. More... | |
double | oppositePostFactor () const |
Return method for post update material description of the Layer along normalvector. More... | |
Protected Attributes | |
double | m_splitFactor |
the split factor in favour of oppositePre More... | |
Private Types | |
using | MaterialPropertiesCUP = CxxUtils::CachedUniquePtr< MaterialProperties > |
Private Member Functions | |
void | resizeMaterialProperties () |
Private Attributes | |
std::vector< std::vector< MaterialPropertiesCUP > > | m_materialProperties |
the ones you return More... | |
BinUtility * | m_binUtility {nullptr} |
the helper for the bin finding More... | |
ValueStore | m_thicknessBins {} |
thickness parameter More... | |
ValueStore | m_x0Bins {} |
x0 parameter More... | |
ValueStore | m_l0Bins {} |
l0 parameter More... | |
ValueStore | m_aBins {} |
A parameters (averaged) More... | |
ValueStore | m_zBins {} |
Z parameter (averaged) More... | |
ValueStore | m_rhoBins {} |
rho parameter (averaged) More... | |
std::vector< std::vector< MaterialComposition > > | m_composition |
composition matrix More... | |
bool | m_fullComposition {false} |
full composition calculation More... | |
SharedObject< const ElementTable > | m_elementTable |
Friends | |
class | ::CompoundLayerMaterialCnv_p1 |
It extends the LayerMaterialProperties base class, and has a intrinsic accuracy of about 0.5 % on the dynamic range from using unsigned char
Definition at line 60 of file CompoundLayerMaterial.h.
|
private |
Definition at line 121 of file CompoundLayerMaterial.h.
Trk::CompoundLayerMaterial::CompoundLayerMaterial | ( | const Trk::BinUtility & | binutility, |
const ValueStore & | thicknessBins, | ||
const ValueStore & | x0Bins, | ||
const ValueStore & | l0Bins, | ||
const ValueStore & | aBins, | ||
const ValueStore & | zBins, | ||
const ValueStore & | rhoBins, | ||
const std::vector< std::vector< MaterialComposition > > & | composition, | ||
bool | fComposition = false |
||
) |
Trk::CompoundLayerMaterial::CompoundLayerMaterial | ( | const CompoundLayerMaterial & | mprop | ) |
|
overridevirtual |
Destructor.
Definition at line 73 of file CompoundLayerMaterial.cxx.
|
inlineinherited |
Return method for post update material description of the Layer along normalvector.
Definition at line 142 of file LayerMaterialProperties.h.
|
inlineinherited |
Return method for pre update material description of the Layer along normalvector.
inline return methods for the pre/post factors
Definition at line 138 of file LayerMaterialProperties.h.
|
inlinefinaloverridevirtual |
Return the BinUtility.
Implements Trk::LayerMaterialProperties.
Definition at line 139 of file CompoundLayerMaterial.h.
|
finaloverridevirtual |
Pseudo-Constructor clone()
Implements Trk::LayerMaterialProperties.
Definition at line 77 of file CompoundLayerMaterial.cxx.
|
finaloverridevirtual |
Output Method for MsgStream, to be overloaded by child classes.
Implements Trk::LayerMaterialProperties.
Definition at line 147 of file CompoundLayerMaterial.cxx.
|
finaloverridevirtual |
Output Method for std::ostream, to be overloaded by child classes.
Implements Trk::LayerMaterialProperties.
Definition at line 154 of file CompoundLayerMaterial.cxx.
|
inline |
Get the ElementTable.
Definition at line 155 of file CompoundLayerMaterial.h.
|
inlineinherited |
Update pre factor.
inline return methods for the pre/post factors
Definition at line 130 of file LayerMaterialProperties.h.
|
finaloverridevirtual |
Return method for full material description of the Layer.
Implements Trk::LayerMaterialProperties.
Definition at line 87 of file CompoundLayerMaterial.cxx.
|
finaloverridevirtual |
Access the single bin.
<
Implements Trk::LayerMaterialProperties.
Definition at line 96 of file CompoundLayerMaterial.cxx.
|
finaloverridevirtual |
Scale operator.
<
Implements Trk::LayerMaterialProperties.
Definition at line 81 of file CompoundLayerMaterial.cxx.
Trk::CompoundLayerMaterial & Trk::CompoundLayerMaterial::operator= | ( | const CompoundLayerMaterial & | lmp | ) |
|
inlineinherited |
Return method for post update material description of the Layer along normalvector.
Definition at line 150 of file LayerMaterialProperties.h.
|
inlineinherited |
Return method for pre update material description of the Layer along normalvector.
Definition at line 146 of file LayerMaterialProperties.h.
|
private |
Definition at line 162 of file CompoundLayerMaterial.cxx.
|
inlinefinaloverridevirtual |
Update the BinUtility if necessary - passing ownership of the utility class.
Implements Trk::LayerMaterialProperties.
Definition at line 148 of file CompoundLayerMaterial.h.
|
inlineinherited |
|
inline |
Update the ElementTable.
Definition at line 143 of file CompoundLayerMaterial.h.
|
friend |
Definition at line 117 of file CompoundLayerMaterial.h.
|
private |
A parameters (averaged)
Definition at line 129 of file CompoundLayerMaterial.h.
|
private |
the helper for the bin finding
Definition at line 125 of file CompoundLayerMaterial.h.
|
private |
composition matrix
Definition at line 133 of file CompoundLayerMaterial.h.
|
private |
Definition at line 136 of file CompoundLayerMaterial.h.
|
private |
full composition calculation
Definition at line 134 of file CompoundLayerMaterial.h.
|
private |
l0 parameter
Definition at line 128 of file CompoundLayerMaterial.h.
|
private |
the ones you return
Definition at line 123 of file CompoundLayerMaterial.h.
|
private |
rho parameter (averaged)
Definition at line 131 of file CompoundLayerMaterial.h.
|
protectedinherited |
the split factor in favour of oppositePre
Definition at line 126 of file LayerMaterialProperties.h.
|
private |
thickness parameter
Definition at line 126 of file CompoundLayerMaterial.h.
|
private |
x0 parameter
Definition at line 127 of file CompoundLayerMaterial.h.
|
private |
Z parameter (averaged)
Definition at line 130 of file CompoundLayerMaterial.h.