Class Acts::MaterialSlab¶
-
class MaterialSlab¶
Material description for an object with defined thickness.
This is intended to describe concrete surface materials.
See also
Material for a description of the available parameters.
Public Functions
-
MaterialSlab() = default¶
Construct vacuum without thickness.
-
MaterialSlab(float thickness)¶
Construct vacuum with thickness.
-
MaterialSlab(const Material &material, float thickness)¶
Construct from material description.
- Parameters
material – is the material description
thickness – is the thickness of the material
-
MaterialSlab(const std::vector<MaterialSlab> &layers)¶
Construct by averaging the material properties over multiple layers.
The resulting object has the combined thickness of all layers but just one set of appropriately averaged material constants.
- Parameters
layers – Input layers to average over.
-
MaterialSlab(MaterialSlab&&) = default¶
-
MaterialSlab(const MaterialSlab&) = default¶
-
~MaterialSlab() = default¶
-
inline constexpr operator bool() const¶
Check if the material is valid, i.e. it is finite and not vacuum.
-
MaterialSlab &operator=(MaterialSlab&&) = default¶
-
MaterialSlab &operator=(const MaterialSlab&) = default¶
-
void scaleThickness(float scale)¶
Scale the material thickness by the given factor.
-
inline constexpr float thickness() const¶
Return the thickness.
-
inline constexpr float thicknessInL0() const¶
Return the nuclear interaction length fraction.
-
inline constexpr float thicknessInX0() const¶
Return the radiation length fraction.
-
MaterialSlab() = default¶