File ISurfaceMaterial.hpp¶
-
namespace Acts
Set the Geometry Context PLUGIN.
Set the Calibration Context PLUGIN.
Convenience functions to ease creation of and Acts::InterpolatedMaterialMap and to avoid code duplication.
Set the Mangetic Field Context PLUGIN.
Convenience functions to ease creation of and Acts::InterpolatedBFieldMap and to avoid code duplication.
Currently implemented for the two most common formats: rz and xyz.
Enums
-
class ISurfaceMaterial
- #include <Acts/Material/ISurfaceMaterial.hpp>
Virtual base class of surface based material description.
MaterialSlab that are associated to a surface, extended by certain special representations (binned, homogenous)
Subclassed by Acts::BinnedSurfaceMaterial, Acts::HomogeneousSurfaceMaterial, Acts::ProtoSurfaceMaterial
Public Functions
-
ISurfaceMaterial() = default
Constructor.
-
inline ISurfaceMaterial(double splitFactor)
Constructor.
- Parameters
splitFactor – is the splitting ratio between pre/post update
-
inline ISurfaceMaterial(double splitFactor, Acts::MappingType mappingType)
Constructor.
- Parameters
splitFactor – is the splitting ratio between pre/post update
mappingType – is the type of surface mapping associated to the surface
-
virtual ~ISurfaceMaterial() = default
Destructor.
Update pre factor.
- Parameters
pDir – is the navigation direction through the surface
mStage – is the material update directive (onapproach, full, onleave)
-
inline MappingType mappingType() const
Return the type of surface material mapping.
-
virtual const MaterialSlab &materialSlab(const Vector2 &lp) const = 0
Return method for full material description of the Surface.
from local coordinate on the surface
- Parameters
lp – is the local position used for the (eventual) lookup
- Returns
const MaterialSlab
-
virtual const MaterialSlab &materialSlab(const Vector3 &gp) const = 0
Return method for full material description of the Surface.
from the global coordinates
- Parameters
gp – is the global position used for the (eventual) lookup
- Returns
const MaterialSlab
-
virtual const MaterialSlab &materialSlab(size_t bin0, size_t bin1) const = 0
Direct access via bins to the MaterialSlab.
- Parameters
bin0 – is the material bin in dimension 0
bin1 – is the material bin in dimension 1
Return method for fully scaled material description of the Surface.
from local coordinate on the surface
- Parameters
lp – is the local position used for the (eventual) lookup
pDir – is the navigation direction through the surface
mStage – is the material update directive (onapproach, full, onleave)
- Returns
MaterialSlab
Return method for full material description of the Surface.
from the global coordinates
- Parameters
gp – is the global position used for the (eventual) lookup
pDir – is the navigation direction through the surface
mStage – is the material update directive (onapproach, full, onleave)
- Returns
MaterialSlab
-
virtual ISurfaceMaterial &operator*=(double scale) = 0
Scale operator.
- Parameters
scale – is the scale factor applied
-
virtual std::ostream &toStream(std::ostream &sl) const = 0
Output Method for std::ostream, to be overloaded by child classes.
Protected Attributes
-
MappingType m_mappingType{Acts::MappingType::Default}¶
Use the default mapping type by default.
-
double m_splitFactor = {1.}¶
the split factor in favour of oppositePre
Friends
-
inline friend std::ostream &operator<<(std::ostream &out, const ISurfaceMaterial &sm)
output stream operator
Prints information about this object to the output stream using the virtual ISurfaceMaterial::toStream method
- Returns
modified output stream object
-
ISurfaceMaterial() = default
-
class ISurfaceMaterial