EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
EicMagneticFieldFromGradients Class Reference

#include <EicRoot/blob/master/eic/field/EicMagneticFieldFromGradients.h>

+ Inheritance diagram for EicMagneticFieldFromGradients:
+ Collaboration diagram for EicMagneticFieldFromGradients:

Public Types

enum  XYZ { eX, eY, eZ }
 

Public Member Functions

 EicMagneticFieldFromGradients (const char *fileName=0)
 
 ~EicMagneticFieldFromGradients ()
 
void AddFieldGradient (EicMagneticFieldGrad *grad)
 
int AddBeamLineElementGrads (const char *directory, float fieldScaler=1., int color=_DEFAULT_YOKE_COLOR_)
 
void Init ()
 
Double_t GetBx (Double_t x, Double_t y, Double_t z)
 
Double_t GetBy (Double_t x, Double_t y, Double_t z)
 
Double_t GetBz (Double_t x, Double_t y, Double_t z)
 
void GetBxyz (const Double_t point[3], Double_t *bField)
 
int CreateYokeVolumes (Bool_t Active=kFALSE)
 
int Export (const char *fileName) const
 

Private Member Functions

int InitializeFieldGradients ()
 
int GetFieldSumValue (const double xx[], double B[])
 
Double_t GetBxyzCore (Double_t x, Double_t y, Double_t z, XYZ coord)
 

Private Attributes

Bool_t mInitialized
 
std::vector
< EicMagneticFieldGrad * > 
mMaps
 indicates whether Initialize() call was made or not
 

Detailed Description

Definition at line 25 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 25 of file EicMagneticFieldFromGradients.h

Member Enumeration Documentation

Enumerator:
eX 
eY 
eZ 

Definition at line 36 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 36 of file EicMagneticFieldFromGradients.h

Constructor & Destructor Documentation

EicMagneticFieldFromGradients::EicMagneticFieldFromGradients ( const char *  fileName = 0)

Definition at line 24 of file EicMagneticFieldFromGradients.cxx.

View newest version in sPHENIX GitHub at line 24 of file EicMagneticFieldFromGradients.cxx

References _EIC_MAGNETIC_FIELD_FROM_GRADIENTS_, ExpandedFileName(), MESSAGE_ORIGIN, and mInitialized.

+ Here is the call graph for this function:

EicMagneticFieldFromGradients::~EicMagneticFieldFromGradients ( )
inline

Definition at line 29 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 29 of file EicMagneticFieldFromGradients.h

Member Function Documentation

int EicMagneticFieldFromGradients::AddBeamLineElementGrads ( const char *  directory,
float  fieldScaler = 1.,
int  color = _DEFAULT_YOKE_COLOR_ 
)

Definition at line 54 of file EicMagneticFieldFromGradients.cxx.

View newest version in sPHENIX GitHub at line 54 of file EicMagneticFieldFromGradients.cxx

References AddFieldGradient(), ExpandedFileName(), MESSAGE_ORIGIN, printf(), EicBeamLineElementGrad::SetFieldScale(), and EicMagneticFieldMap::SetYokeColor().

+ Here is the call graph for this function:

void EicMagneticFieldFromGradients::AddFieldGradient ( EicMagneticFieldGrad grad)
inline

Definition at line 31 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 31 of file EicMagneticFieldFromGradients.h

References mMaps.

Referenced by AddBeamLineElementGrads().

+ Here is the caller graph for this function:

int EicMagneticFieldFromGradients::CreateYokeVolumes ( Bool_t  Active = kFALSE)

Definition at line 141 of file EicMagneticFieldFromGradients.cxx.

View newest version in sPHENIX GitHub at line 141 of file EicMagneticFieldFromGradients.cxx

References FairRunSim::AddModule(), EicMagneticFieldGrad::CapableToBuildYoke(), FairRunSim::Instance(), Acts::UnitConstants::mm, and mMaps.

+ Here is the call graph for this function:

int EicMagneticFieldFromGradients::Export ( const char *  fileName) const
inline

Definition at line 56 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 56 of file EicMagneticFieldFromGradients.h

Double_t EicMagneticFieldFromGradients::GetBx ( Double_t  x,
Double_t  y,
Double_t  z 
)
inline

Definition at line 45 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 45 of file EicMagneticFieldFromGradients.h

References eX, and GetBxyzCore().

+ Here is the call graph for this function:

void EicMagneticFieldFromGradients::GetBxyz ( const Double_t  point[3],
Double_t *  bField 
)
inline

Definition at line 49 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 49 of file EicMagneticFieldFromGradients.h

References GetFieldSumValue().

+ Here is the call graph for this function:

Double_t EicMagneticFieldFromGradients::GetBxyzCore ( Double_t  x,
Double_t  y,
Double_t  z,
XYZ  coord 
)
inlineprivate

Definition at line 70 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 70 of file EicMagneticFieldFromGradients.h

References GetFieldSumValue(), x, and y.

Referenced by GetBx(), GetBy(), and GetBz().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Double_t EicMagneticFieldFromGradients::GetBy ( Double_t  x,
Double_t  y,
Double_t  z 
)
inline

Definition at line 46 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 46 of file EicMagneticFieldFromGradients.h

References eY, and GetBxyzCore().

+ Here is the call graph for this function:

Double_t EicMagneticFieldFromGradients::GetBz ( Double_t  x,
Double_t  y,
Double_t  z 
)
inline

Definition at line 47 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 47 of file EicMagneticFieldFromGradients.h

References eZ, and GetBxyzCore().

+ Here is the call graph for this function:

int EicMagneticFieldFromGradients::GetFieldSumValue ( const double  xx[],
double  B[] 
)
private

Definition at line 195 of file EicMagneticFieldFromGradients.cxx.

View newest version in sPHENIX GitHub at line 195 of file EicMagneticFieldFromGradients.cxx

References EicMagneticFieldGrad::GetFieldValue(), InitializeFieldGradients(), mInitialized, Acts::UnitConstants::mm, and mMaps.

Referenced by GetBxyz(), and GetBxyzCore().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void EicMagneticFieldFromGradients::Init ( )
inline

Definition at line 42 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 42 of file EicMagneticFieldFromGradients.h

References InitializeFieldGradients().

+ Here is the call graph for this function:

int EicMagneticFieldFromGradients::InitializeFieldGradients ( )
private

Definition at line 162 of file EicMagneticFieldFromGradients.cxx.

View newest version in sPHENIX GitHub at line 162 of file EicMagneticFieldFromGradients.cxx

References EicMagneticFieldGrad::GetFileName(), EicMagneticFieldGrad::Initialize(), EicMagneticFieldGrad::Initialized(), MESSAGE_ORIGIN, mInitialized, Acts::UnitConstants::mm, and mMaps.

Referenced by GetFieldSumValue(), and Init().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

Bool_t EicMagneticFieldFromGradients::mInitialized
private

Definition at line 56 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 56 of file EicMagneticFieldFromGradients.h

Referenced by EicMagneticFieldFromGradients(), GetFieldSumValue(), and InitializeFieldGradients().

std::vector<EicMagneticFieldGrad*> EicMagneticFieldFromGradients::mMaps
private

indicates whether Initialize() call was made or not

Definition at line 63 of file EicMagneticFieldFromGradients.h.

View newest version in sPHENIX GitHub at line 63 of file EicMagneticFieldFromGradients.h

Referenced by AddFieldGradient(), CreateYokeVolumes(), GetFieldSumValue(), and InitializeFieldGradients().


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