Template Class InterpolatedBFieldMap¶
Defined in File InterpolatedBFieldMap.hpp
Nested Relationships¶
Inheritance Relationships¶
Base Type¶
public Acts::MagneticFieldProvider
(Class MagneticFieldProvider)
Class Documentation¶
-
template<typename
Mapper_t
>
classActs
::
InterpolatedBFieldMap
: public Acts::MagneticFieldProvider¶ interpolate magnetic field value from field values on a given grid
This class implements a magnetic field service which is initialized by a field map defined by:
a list of field values on a regular grid in some n-Dimensional space,
a transformation of global 3D coordinates onto this n-Dimensional space.
a transformation of local n-Dimensional magnetic field coordinates into global (cartesian) 3D coordinates
The magnetic field value for a given global position is then determined by:
mapping the position onto the grid,
looking up the magnetic field values on the closest grid points,
doing a linear interpolation of these magnetic field values.
Public Functions
-
InterpolatedBFieldMap
(Config config)¶ create interpolated magnetic field map
- Parameters
[in] config
: configuration object
-
Config
getConfiguration
() const¶ get configuration object
- Return
copy of the internal configuration object
-
Vector3
getField
(const Vector3 &position, MagneticFieldProvider::Cache &gcache) const override¶
-
Vector3
getFieldGradient
(const Vector3 &position, ActsMatrix<3, 3>&) const override¶ - Note
currently the derivative is not calculated
-
Vector3
getFieldGradient
(const Vector3 &position, ActsMatrix<3, 3>&, MagneticFieldProvider::Cache&) const override¶ - Note
currently the derivative is not calculated
- Note
Cache is not used currently
-
Mapper_t
getMapper
() const¶ convenience method to access underlying field mapper
- Return
the field mapper
-
double
getScale
() const¶ get global scaling factor for magnetic field
- Return
global factor for scaling the magnetic field
-
bool
isInside
(const Vector3 &position) const¶ check whether given 3D position is inside look-up domain
- Return
true
if position is inside the defined BField map, otherwisefalse
- Parameters
[in] position
: global 3D position
-
MagneticFieldProvider::Cache
makeCache
(const MagneticFieldContext &mctx) const override¶
-
struct
Cache
¶ Public Functions
-
Cache
(const MagneticFieldContext&)¶ Constructor with magnetic field context.
- Parameters
mcfg
: the magnetic field context
-
-
struct
Config
¶ configuration object for magnetic field interpolation
Public Members
-
Mapper_t
mapper
¶ object for global coordinate transformation and interpolation
This object performs the mapping of the global 3D coordinates onto the field grid and the interpolation of the field values on close-by grid points.
-
double
scale
= 1.¶ global B-field scaling factor
- Note
Negative values for
scale
are accepted and will invert the direction of the magnetic field.
-
Mapper_t