EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
struct representing smallest grid unit in magnetic field grid More...
#include <acts/blob/sPHENIX/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
This type encapsulate all required information to perform linear interpolation of magnetic field values within a confined 3D volume.
Definition at line 41 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 41 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 57 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 57 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 72 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 72 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 83 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 83 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 108 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 108 of file InterpolatedBFieldMap.hpp
Referenced by Acts::InterpolatedBFieldMapper< G >::FieldCell::getField().
|
private |
generalized lower-left corner of the confining hyper-box
Definition at line 99 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 99 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 96 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 96 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 102 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 102 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 43 of file InterpolatedBFieldMap.hpp.
View newest version in sPHENIX GitHub at line 43 of file InterpolatedBFieldMap.hpp