Analysis Software
Documentation for sPHENIX simulation software
|
#include <acts/blob/sPHENIX/Core/include/Acts/Material/ISurfaceMaterial.hpp>
Public Member Functions | |
ISurfaceMaterial ()=default | |
Constructor. | |
ISurfaceMaterial (double splitFactor) | |
ISurfaceMaterial (double splitFactor, Acts::MappingType mappingType) | |
virtual | ~ISurfaceMaterial ()=default |
Destructor. | |
virtual ISurfaceMaterial & | operator*= (double scale)=0 |
virtual const MaterialSlab & | materialSlab (const Vector2 &lp) const =0 |
virtual const MaterialSlab & | materialSlab (const Vector3 &gp) const =0 |
virtual const MaterialSlab & | materialSlab (size_t bin0, size_t bin1) const =0 |
double | factor (Direction pDir, MaterialUpdateStage mStage) const |
MappingType | mappingType () const |
MaterialSlab | materialSlab (const Vector2 &lp, Direction pDir, MaterialUpdateStage mStage) const |
MaterialSlab | materialSlab (const Vector3 &gp, Direction pDir, MaterialUpdateStage mStage) const |
virtual std::ostream & | toStream (std::ostream &sl) const =0 |
Output Method for std::ostream, to be overloaded by child classes. | |
Protected Attributes | |
double | m_splitFactor {1.} |
the split factor in favour of oppositePre | |
MappingType | m_mappingType |
Use the default mapping type by default. | |
Friends | |
std::ostream & | operator<< (std::ostream &out, const ISurfaceMaterial &sm) |
output stream operator | |
Virtual base class of surface based material description
MaterialSlab that are associated to a surface, extended by certain special representations (binned, homogeneous)
Definition at line 32 of file ISurfaceMaterial.hpp.
View newest version in sPHENIX GitHub at line 32 of file ISurfaceMaterial.hpp
|
default |
Constructor.
|
inline |
Constructor
splitFactor | is the splitting ratio between pre/post update |
Definition at line 40 of file ISurfaceMaterial.hpp.
View newest version in sPHENIX GitHub at line 40 of file ISurfaceMaterial.hpp
|
inline |
Constructor
splitFactor | is the splitting ratio between pre/post update |
mappingType | is the type of surface mapping associated to the surface |
Definition at line 46 of file ISurfaceMaterial.hpp.
View newest version in sPHENIX GitHub at line 46 of file ISurfaceMaterial.hpp
|
virtualdefault |
Destructor.
|
inline |
Update pre factor
pDir | is the positive direction through the surface |
mStage | is the material update directive (onapproach, full, onleave) |
Definition at line 132 of file ISurfaceMaterial.hpp.
View newest version in sPHENIX GitHub at line 132 of file ISurfaceMaterial.hpp
References m_splitFactor, Acts::Direction::Negative, and Acts::Direction::Positive.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE(), and materialSlab().
|
inline |
Return the type of surface material mapping
Definition at line 87 of file ISurfaceMaterial.hpp.
View newest version in sPHENIX GitHub at line 87 of file ISurfaceMaterial.hpp
References m_mappingType.
Referenced by Acts::to_json().
|
pure virtual |
Return method for full material description of the Surface
lp | is the local position used for the (eventual) lookup |
Implemented in Acts::BinnedSurfaceMaterial, Acts::ProtoSurfaceMaterial, Acts::HomogeneousSurfaceMaterial, and Acts::Test::SurfaceMaterialStub.
Referenced by materialSlab(), ActsFatras::detail::SimulationActor< generator_t, decay_t, interactions_t, hit_surface_selector_t >::operator()(), and ActsExamples::RootMaterialWriter::writeMaterial().
|
pure virtual |
Return method for full material description of the Surface
gp | is the global position used for the (eventual) lookup |
Implemented in Acts::BinnedSurfaceMaterial, Acts::ProtoSurfaceMaterial, Acts::HomogeneousSurfaceMaterial, and Acts::Test::SurfaceMaterialStub.
|
pure virtual |
Direct access via bins to the MaterialSlab
bin0 | is the material bin in dimension 0 |
bin1 | is the material bin in dimension 1 |
Implemented in Acts::BinnedSurfaceMaterial, Acts::ProtoSurfaceMaterial, Acts::HomogeneousSurfaceMaterial, and Acts::Test::SurfaceMaterialStub.
|
inline |
Return method for fully scaled material description of the Surface
lp | is the local position used for the (eventual) lookup |
pDir | is the positive direction through the surface |
mStage | is the material update directive (onapproach, full, onleave) |
Definition at line 143 of file ISurfaceMaterial.hpp.
View newest version in sPHENIX GitHub at line 143 of file ISurfaceMaterial.hpp
References factor(), materialSlab(), and Acts::MaterialSlab::scaleThickness().
|
inline |
Return method for full material description of the Surface
gp | is the global position used for the (eventual) lookup |
pDir | is the positive direction through the surface |
mStage | is the material update directive (onapproach, full, onleave) |
Definition at line 158 of file ISurfaceMaterial.hpp.
View newest version in sPHENIX GitHub at line 158 of file ISurfaceMaterial.hpp
References factor(), materialSlab(), and Acts::MaterialSlab::scaleThickness().
|
pure virtual |
Scale operator
scale | is the scale factor applied |
Implemented in Acts::BinnedSurfaceMaterial, Acts::ProtoSurfaceMaterial, Acts::HomogeneousSurfaceMaterial, and Acts::Test::SurfaceMaterialStub.
|
pure virtual |
Output Method for std::ostream, to be overloaded by child classes.
Implemented in Acts::BinnedSurfaceMaterial, Acts::ProtoSurfaceMaterial, Acts::HomogeneousSurfaceMaterial, and Acts::Test::SurfaceMaterialStub.
|
friend |
output stream operator
Prints information about this object to the output stream using the virtual ISurfaceMaterial::toStream method
Definition at line 117 of file ISurfaceMaterial.hpp.
View newest version in sPHENIX GitHub at line 117 of file ISurfaceMaterial.hpp
|
protected |
Use the default mapping type by default.
Definition at line 128 of file ISurfaceMaterial.hpp.
View newest version in sPHENIX GitHub at line 128 of file ISurfaceMaterial.hpp
Referenced by mappingType().
|
protected |
the split factor in favour of oppositePre
Definition at line 127 of file ISurfaceMaterial.hpp.
View newest version in sPHENIX GitHub at line 127 of file ISurfaceMaterial.hpp
Referenced by factor().