Class ConstantBField

Nested Relationships

Nested Types

Inheritance Relationships

Base Type

Class Documentation

class Acts::ConstantBField : public Acts::MagneticFieldProvider

This class implements a simple constant magnetic field.

The magnetic field value has to be set at creation time, but can be updated later on.

Public Functions

ConstantBField(Vector3 B)

Construct constant magnetic field from field vector.

Parameters
  • [in] B: magnetic field vector in global coordinate system

Vector3 getField() const

Get the B field at a position.

Result<Vector3> getField(const Vector3&, MagneticFieldProvider::Cache&) const override

Note

The position is ignored and only kept as argument to provide a consistent interface with other magnetic field services.

Result<Vector3> getFieldGradient(const Vector3&, ActsMatrix<3, 3>&, MagneticFieldProvider::Cache&) const override

Note

The position is ignored and only kept as argument to provide a consistent interface with other magnetic field services.

Note

currently the derivative is not calculated

bool isInside(const Vector3&) const

check whether given 3D position is inside look-up domain

Return

true if position is inside the defined look-up grid, otherwise false

Note

The method will always return true for the constant B-Field

Parameters
  • [in] position: global 3D position

Acts::MagneticFieldProvider::Cache makeCache(const Acts::MagneticFieldContext &mctx) const override
void setField(const Vector3 &B)

update magnetic field vector

Parameters
  • [in] B: magnetic field vector in global coordinate system

struct Cache

Public Functions

Cache(const MagneticFieldContext&)

constructor with context