ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
Interpolate material classification values from material values on a given grid. More...
#include <acts/blob/master/Core/include/Acts/Material/InterpolatedMaterialMap.hpp>
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 Vector3D &position) const |
Retrieve the binned material. | |
Material | getMaterial (const Vector3D &position) const |
Retrieve the interpolated material. | |
Material | getMaterial (const Vector3D &position, Cache &cache) const |
Retrieve material. | |
Material | getMaterialGradient (const Vector3D &position, ActsMatrixD< 5, 5 > &) const |
Retrieve material value & its "gradient". | |
Material | getMaterialGradient (const Vector3D &position, ActsMatrixD< 5, 5 > &, Cache &) const |
Retrieve material value & its "gradient". | |
const Mapper_t & | getMapper () const |
Convenience method to access underlying material mapper. | |
bool | isInside (const Vector3D &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 |
Public Member Functions inherited from Acts::IVolumeMaterial | |
virtual | ~IVolumeMaterial ()=default |
Virtual Destructor. | |
Private Member Functions | |
Mapper_t::MaterialCell | getMaterialCell (const Vector3D &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 235 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 235 of file InterpolatedMaterialMap.hpp
|
inline |
Create interpolated map.
[in] | mapper | Material map |
Definition at line 248 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 248 of file InterpolatedMaterialMap.hpp
|
inline |
Create interpolated map.
[in] | mapper | Material map |
[in] | BinUtility |
Definition at line 254 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 254 of file InterpolatedMaterialMap.hpp
|
inline |
Return the BinUtility.
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_binUtility.
|
inline |
Convenience method to access underlying material mapper.
Definition at line 322 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 322 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_mapper.
|
inline |
Retrieve the interpolated material.
[in] | position | Global 3D position |
Definition at line 271 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 271 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 282 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 282 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::getMaterialCell(), Acts::InterpolatedMaterialMap< Mapper_t >::Cache::initialized, and Acts::InterpolatedMaterialMap< Mapper_t >::Cache::matCell.
|
inlineprivate |
Retrieve cell for given position.
[in] | position | Global 3D position |
position
must lie within the range of the underlying map. Definition at line 353 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 353 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_mapper.
Referenced by Acts::InterpolatedMaterialMap< Mapper_t >::getMaterial().
|
inline |
Retrieve material value & its "gradient".
[in] | position | Global 3D position |
[out] | derivative | "Gradient" of material as (5x5) matrix |
Definition at line 298 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 298 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 313 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 313 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 328 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 328 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_mapper.
|
inlinevirtual |
Retrieve the binned material.
[in] | position | Global 3D position |
Implements Acts::IVolumeMaterial.
Definition at line 262 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 262 of file InterpolatedMaterialMap.hpp
References Acts::InterpolatedMaterialMap< Mapper_t >::m_mapper.
Referenced by Acts::Test::BOOST_AUTO_TEST_CASE().
|
inlinevirtual |
Output Method for std::ostream
sl | The outoput stream |
Implements Acts::IVolumeMaterial.
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, and Acts::BinUtility::max().
|
private |
Definition at line 365 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 365 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 363 of file InterpolatedMaterialMap.hpp.
View newest version in sPHENIX GitHub at line 363 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().