ECCE @ EIC Software
Reference for
ECCE @ EIC
simulation and reconstruction software on GitHub
|
struct representing smallest grid unit in magnetic field grid More...
#include <acts/blob/master/Core/include/Acts/MagneticField/InterpolatedBFieldMap.hpp>
Public Member Functions | |
FieldCell (std::function< ActsVectorD< DIM_POS >(const Vector3D &)> transformPos, std::array< double, DIM_POS > lowerLeft, std::array< double, DIM_POS > upperRight, std::array< Vector3D, N > fieldValues) | |
default constructor | |
Vector3D | getField (const Vector3D &position) const |
retrieve field at given position | |
bool | isInside (const Vector3D &position) const |
check whether given 3D position is inside this field cell | |
Static Public Attributes | |
static constexpr unsigned int | N = 1 << DIM_POS |
number of corner points defining the confining hyper-box | |
Private Attributes | |
std::function< ActsVectorD < DIM_POS >const Vector3D &)> | m_transformPos |
geometric transformation applied to global 3D positions | |
std::array< double, DIM_POS > | m_lowerLeft |
generalized lower-left corner of the confining hyper-box | |
std::array< double, DIM_POS > | m_upperRight |
generalized upper-right corner of the confining hyper-box | |
std::array< Vector3D, N > | m_fieldValues |
magnetic field vectors at the hyper-box corners | |
struct representing smallest grid unit in magnetic field grid
DIM_POS | Dimensionality of magnetic field map |
This type encapsulate all required information to perform linear interpolation of magnetic field values within a confined 3D volume.
Definition at line 42 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 42 of file InterpolatedBFieldMap.hpp
|
inline |
default constructor
[in] | transform | mapping of global 3D coordinates onto grid space |
[in] | lowerLeft | generalized lower-left corner of hyper box (containing the minima of the hyper box along each Dimension) |
[in] | upperRight | generalized upper-right corner of hyper box (containing the maxima of the hyper box along each Dimension) |
[in] | fieldValues | field values at the hyper box corners sorted in the canonical order defined in Acts::interpolate |
Definition at line 58 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 58 of file InterpolatedBFieldMap.hpp
|
inline |
retrieve field at given position
[in] | position | global 3D position |
position
must lie within the current field cell. Definition at line 73 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 73 of file InterpolatedBFieldMap.hpp
References Acts::interpolate(), Acts::InterpolatedBFieldMapper< G >::FieldCell::m_fieldValues, Acts::InterpolatedBFieldMapper< G >::FieldCell::m_lowerLeft, Acts::InterpolatedBFieldMapper< G >::FieldCell::m_transformPos, and Acts::InterpolatedBFieldMapper< G >::FieldCell::m_upperRight.
|
inline |
check whether given 3D position is inside this field cell
[in] | position | global 3D position |
true
if position is inside the current field cell, otherwise false
Definition at line 84 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 84 of file InterpolatedBFieldMap.hpp
References Acts::InterpolatedBFieldMapper< G >::DIM_POS, Acts::InterpolatedBFieldMapper< G >::FieldCell::m_lowerLeft, Acts::InterpolatedBFieldMapper< G >::FieldCell::m_transformPos, and Acts::InterpolatedBFieldMapper< G >::FieldCell::m_upperRight.
|
private |
magnetic field vectors at the hyper-box corners
Definition at line 109 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 109 of file InterpolatedBFieldMap.hpp
Referenced by Acts::InterpolatedBFieldMapper< G >::FieldCell::getField().
|
private |
generalized lower-left corner of the confining hyper-box
Definition at line 100 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 100 of file InterpolatedBFieldMap.hpp
Referenced by Acts::InterpolatedBFieldMapper< G >::FieldCell::getField(), and Acts::InterpolatedBFieldMapper< G >::FieldCell::isInside().
|
private |
geometric transformation applied to global 3D positions
Definition at line 97 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 97 of file InterpolatedBFieldMap.hpp
Referenced by Acts::InterpolatedBFieldMapper< G >::FieldCell::getField(), and Acts::InterpolatedBFieldMapper< G >::FieldCell::isInside().
|
private |
generalized upper-right corner of the confining hyper-box
Definition at line 103 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 103 of file InterpolatedBFieldMap.hpp
Referenced by Acts::InterpolatedBFieldMapper< G >::FieldCell::getField(), and Acts::InterpolatedBFieldMapper< G >::FieldCell::isInside().
|
static |
number of corner points defining the confining hyper-box
Definition at line 44 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 44 of file InterpolatedBFieldMap.hpp