Juggler
Juggling algorithms and event processing using gaudi framework
Jug::BField::DD4hepBField Class Referencefinal

#include <DD4hepBField.h>

Inheritance diagram for Jug::BField::DD4hepBField:

Classes

struct  Cache
 

Public Member Functions

Acts::MagneticFieldProvider::Cache makeCache (const Acts::MagneticFieldContext &mctx) const override
 
 DD4hepBField (dd4hep::Detector *det)
 
Acts::Result< Acts::Vector3 > getField (const Acts::Vector3 &position, Acts::MagneticFieldProvider::Cache &cache) const override
 
Acts::Result< Acts::Vector3 > getFieldGradient (const Acts::Vector3 &position, Acts::ActsMatrix< 3, 3 > &, Acts::MagneticFieldProvider::Cache &cache) const override
 retrieve magnetic field value & its gradient More...
 

Public Attributes

std::shared_ptr< dd4hep::Detector > m_det
 

Detailed Description

Use the dd4hep magnetic field in acts.

Constructor & Destructor Documentation

◆ DD4hepBField()

Jug::BField::DD4hepBField::DD4hepBField ( dd4hep::Detector *  det)
inlineexplicit

construct constant magnetic field from field vector.

Parameters
[in]DD4hepdetector instance

Member Function Documentation

◆ getField()

Acts::Result< Acts::Vector3 > Jug::BField::DD4hepBField::getField ( const Acts::Vector3 &  position,
Acts::MagneticFieldProvider::Cache &  cache 
) const
override

retrieve magnetic field value.

Parameters
[in]positionglobal position
[in]cacheCache object (is ignored)
Returns
magnetic field vector
Note
The position is ignored and only kept as argument to provide a consistent interface with other magnetic field services.

◆ getFieldGradient()

Acts::Result< Acts::Vector3 > Jug::BField::DD4hepBField::getFieldGradient ( const Acts::Vector3 &  position,
Acts::ActsMatrix< 3, 3 > &  ,
Acts::MagneticFieldProvider::Cache &  cache 
) const
override

retrieve magnetic field value & its gradient

Parameters
[in]positionglobal position
[out]derivativegradient of magnetic field vector as (3x3) matrix
[in]cacheCache object (is ignored)
Returns
magnetic field vector
Note
The position is ignored and only kept as argument to provide a consistent interface with other magnetic field services.
currently the derivative is not calculated
Todo:
return derivative

◆ makeCache()

Acts::MagneticFieldProvider::Cache Jug::BField::DD4hepBField::makeCache ( const Acts::MagneticFieldContext &  mctx) const
inlineoverride

Member Data Documentation

◆ m_det

std::shared_ptr<dd4hep::Detector> Jug::BField::DD4hepBField::m_det

The documentation for this class was generated from the following files: