![]() |
Analysis Software
Documentation for sPHENIX simulation software
|
Interpolate material classification values from material values on a given grid. More...
#include <acts/blob/sPHENIX/Core/include/Acts/Material/InterpolatedMaterialMap.hpp>
Inheritance diagram for Acts::InterpolatedMaterialMap< Mapper_t >:
Collaboration diagram for Acts::InterpolatedMaterialMap< Mapper_t >:Classes | |
| struct | Cache |
| Temporary storage of a certain cell to improve material access. More... | |
Public Member Functions | |
| InterpolatedMaterialMap (Mapper_t &&mapper) | |
| Create interpolated map. | |
| InterpolatedMaterialMap (Mapper_t &&mapper, BinUtility bu) | |
| Create interpolated map. | |
| const Material | material (const Vector3 &position) const override |
| Retrieve the binned material. | |
| Material | getMaterial (const Vector3 &position) const |
| Retrieve the interpolated material. | |
| Material | getMaterial (const Vector3 &position, Cache &cache) const |
| Retrieve material. | |
| Material | getMaterialGradient (const Vector3 &position, ActsMatrix< 5, 5 > &derivative) const |
| Retrieve material value & its "gradient". | |
| Material | getMaterialGradient (const Vector3 &position, ActsMatrix< 5, 5 > &derivative, Cache &cache) const |
| Retrieve material value & its "gradient". | |
| const Mapper_t & | getMapper () const |
| Convenience method to access underlying material mapper. | |
| bool | isInside (const Vector3 &position) const |
| Check whether given 3D position is inside look-up domain. | |
| const BinUtility & | binUtility () const |
| Return the BinUtility. | |
| std::ostream & | toStream (std::ostream &sl) const override |
Public Member Functions inherited from Acts::IVolumeMaterial | |
| virtual | ~IVolumeMaterial ()=default |
| Virtual Destructor. | |
Private Member Functions | |
| Mapper_t::MaterialCell | getMaterialCell (const Vector3 &position) const |
| Retrieve cell for given position. | |
Private Attributes | |
| Mapper_t | m_mapper |
| object for global coordinate transformation and interpolation | |
| BinUtility | m_binUtility {} |
Interpolate material classification values from material values on a given grid.
This class implements a material service which is initialized by a material map defined by:
The material value for a given global position is then determined by:
| G | Type of the grid |
Definition at line 237 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 237 of file InterpolatedMaterialMap.hpp
|
inline |
Create interpolated map.
| [in] | mapper | Material map |
Definition at line 250 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 250 of file InterpolatedMaterialMap.hpp
|
inline |
Create interpolated map.
| [in] | mapper | Material map |
| [in] | bu | BinUtility for build from |
Definition at line 256 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 256 of file InterpolatedMaterialMap.hpp
|
inline |
Return the BinUtility.
Definition at line 338 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 338 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_binUtility.
|
inline |
Convenience method to access underlying material mapper.
Definition at line 327 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 327 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_mapper.
|
inline |
Retrieve the interpolated material.
| [in] | position | Global 3D position |
Definition at line 273 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 273 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_mapper.
|
inline |
Retrieve material.
| [in] | position | Global 3D position |
| [in,out] | cache | Cache object. Contains material cell used for interpolation |
Definition at line 284 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 284 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::getMaterialCell(), Acts::InterpolatedMaterialMap< Mapper_t >::Cache::initialized, and Acts::InterpolatedMaterialMap< Mapper_t >::Cache::matCell.
Here is the call graph for this function:
|
inlineprivate |
Retrieve cell for given position.
| [in] | position | Global 3D position |
position must lie within the range of the underlying map. Definition at line 359 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 359 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_mapper.
Referenced by Acts::InterpolatedMaterialMap< Mapper_t >::getMaterial().
Here is the caller graph for this function:
|
inline |
Retrieve material value & its "gradient".
| [in] | position | Global 3D position |
| [out] | derivative | "Gradient" of material as (5x5) matrix |
Definition at line 300 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 300 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_mapper.
|
inline |
Retrieve material value & its "gradient".
| [in] | position | Global 3D position |
| [out] | derivative | "Gradient" of material as (5x5) matrix |
| [in,out] | cache | Cache object. Contains cell used for |
Definition at line 316 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 316 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_mapper.
|
inline |
Check whether given 3D position is inside look-up domain.
| [in] | position | Global 3D position |
true if position is inside the defined map, otherwise false Definition at line 333 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 333 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_mapper.
|
inlineoverridevirtual |
Retrieve the binned material.
| [in] | position | Global 3D position |
Implements Acts::IVolumeMaterial.
Definition at line 264 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 264 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_mapper.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
Here is the caller graph for this function:
|
inlineoverridevirtual |
Output Method for std::ostream
| sl | The outoput stream |
Implements Acts::IVolumeMaterial.
Definition at line 343 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 343 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_binUtility, and Acts::BinUtility::max().
Here is the call graph for this function:
|
private |
Definition at line 371 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 371 of file InterpolatedMaterialMap.hpp
Referenced by Acts::InterpolatedMaterialMap< Mapper_t >::binUtility(), and Acts::InterpolatedMaterialMap< Mapper_t >::toStream().
|
private |
object for global coordinate transformation and interpolation
This object performs the mapping of the global 3D coordinates onto the material grid and the interpolation of the material component values on close-by grid points.
Definition at line 369 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 369 of file InterpolatedMaterialMap.hpp
Referenced by Acts::InterpolatedMaterialMap< Mapper_t >::getMapper(), Acts::InterpolatedMaterialMap< Mapper_t >::getMaterial(), Acts::InterpolatedMaterialMap< Mapper_t >::getMaterialCell(), Acts::InterpolatedMaterialMap< Mapper_t >::getMaterialGradient(), Acts::InterpolatedMaterialMap< Mapper_t >::isInside(), and Acts::InterpolatedMaterialMap< Mapper_t >::material().