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

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

+ Inheritance diagram for EicMagneticField:
+ Collaboration diagram for EicMagneticField:

Public Types

enum  XYZ { eX, eY, eZ }
 

Public Member Functions

 EicMagneticField (const char *fileName=0)
 
 ~EicMagneticField ()
 
void AddFieldMap (EicMagneticFieldMap *map)
 
int AddBeamLineElementMaps (const char *directory, float fieldScaler=1., int color=_DEFAULT_YOKE_COLOR_)
 
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)
 
void SuppressYokeCreation (const char *name)
 
int CreateYokeVolumes (Bool_t Active=kFALSE)
 
int Export (const char *fileName) const
 

Private Member Functions

int InitializeFieldMaps ()
 
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::set< TString > mSuppressedYokes
 indicates whether Initialize() call was made or not
 
std::vector
< EicMagneticFieldMap * > 
mMaps
 

Detailed Description

Definition at line 80 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 80 of file EicMagneticField.h

Member Enumeration Documentation

Enumerator:
eX 
eY 
eZ 

Definition at line 92 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 92 of file EicMagneticField.h

Constructor & Destructor Documentation

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

Definition at line 22 of file EicMagneticField.cxx.

View newest version in sPHENIX GitHub at line 22 of file EicMagneticField.cxx

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

+ Here is the call graph for this function:

EicMagneticField::~EicMagneticField ( )
inline

Definition at line 84 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 84 of file EicMagneticField.h

Member Function Documentation

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

Definition at line 92 of file EicMagneticField.cxx.

View newest version in sPHENIX GitHub at line 92 of file EicMagneticField.cxx

References AddFieldMap(), ExpandedFileName(), G4BARRELHCAL::length, MESSAGE_ORIGIN, name, printf(), EicBeamLineElementGrad::SetFieldScale(), and EicMagneticFieldMap::SetYokeColor().

Referenced by simulation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

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

Definition at line 52 of file EicMagneticField.cxx.

View newest version in sPHENIX GitHub at line 52 of file EicMagneticField.cxx

References _CSV_EXTENSION_, AddFieldMap(), ExpandedFileName(), MESSAGE_ORIGIN, printf(), and EicMagneticFieldMap::SetYokeColor().

+ Here is the call graph for this function:

void EicMagneticField::AddFieldMap ( EicMagneticFieldMap map)
inline

Definition at line 86 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 86 of file EicMagneticField.h

References mMaps.

Referenced by AddBeamLineElementGrads(), and AddBeamLineElementMaps().

+ Here is the caller graph for this function:

int EicMagneticField::CreateYokeVolumes ( Bool_t  Active = kFALSE)

Definition at line 243 of file EicMagneticField.cxx.

View newest version in sPHENIX GitHub at line 243 of file EicMagneticField.cxx

References FairRunSim::AddModule(), EicMagneticFieldMap::CapableToBuildYoke(), EicMagneticFieldMap::GetDetectorName(), FairRunSim::Instance(), Acts::UnitConstants::mm, mMaps, and mSuppressedYokes.

Referenced by simulation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int EicMagneticField::Export ( const char *  fileName) const

Definition at line 334 of file EicMagneticField.cxx.

View newest version in sPHENIX GitHub at line 334 of file EicMagneticField.cxx

References _EIC_MAGNETIC_FIELD_, and printf().

+ Here is the call graph for this function:

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

Definition at line 101 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 101 of file EicMagneticField.h

References eX, and GetBxyzCore().

+ Here is the call graph for this function:

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

Definition at line 105 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 105 of file EicMagneticField.h

References GetFieldSumValue().

+ Here is the call graph for this function:

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

Definition at line 129 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 129 of file EicMagneticField.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 EicMagneticField::GetBy ( Double_t  x,
Double_t  y,
Double_t  z 
)
inline

Definition at line 102 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 102 of file EicMagneticField.h

References eY, and GetBxyzCore().

+ Here is the call graph for this function:

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

Definition at line 103 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 103 of file EicMagneticField.h

References eZ, and GetBxyzCore().

+ Here is the call graph for this function:

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

Definition at line 299 of file EicMagneticField.cxx.

View newest version in sPHENIX GitHub at line 299 of file EicMagneticField.cxx

References EicMagneticFieldMap::GetFieldValue(), InitializeFieldMaps(), 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 EicMagneticField::Init ( )
inline

Definition at line 98 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 98 of file EicMagneticField.h

References InitializeFieldMaps().

+ Here is the call graph for this function:

int EicMagneticField::InitializeFieldMaps ( )
private

Definition at line 267 of file EicMagneticField.cxx.

View newest version in sPHENIX GitHub at line 267 of file EicMagneticField.cxx

References _EIC_MAGNETIC_FIELD_, EicMagneticFieldMap::GetFileName(), FairRun::GetOutputFile(), EicMagneticFieldMap::Initialize(), EicMagneticFieldMap::Initialized(), FairRun::Instance(), 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:

void EicMagneticField::SuppressYokeCreation ( const char *  name)
inline

Definition at line 109 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 109 of file EicMagneticField.h

References mSuppressedYokes.

Referenced by simulation().

+ Here is the caller graph for this function:

Member Data Documentation

Bool_t EicMagneticField::mInitialized
private

Definition at line 117 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 117 of file EicMagneticField.h

Referenced by EicMagneticField(), GetFieldSumValue(), and InitializeFieldMaps().

std::vector<EicMagneticFieldMap*> EicMagneticField::mMaps
private

Definition at line 122 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 122 of file EicMagneticField.h

Referenced by AddFieldMap(), CreateYokeVolumes(), GetFieldSumValue(), and InitializeFieldMaps().

std::set<TString> EicMagneticField::mSuppressedYokes
private

indicates whether Initialize() call was made or not

Definition at line 119 of file EicMagneticField.h.

View newest version in sPHENIX GitHub at line 119 of file EicMagneticField.h

Referenced by CreateYokeVolumes(), and SuppressYokeCreation().


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