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

PHFieldConfig store field configuration information. More...

#include <fun4all_coresoftware/blob/master/offline/packages/PHField/PHFieldConfig.h>

+ Inheritance diagram for PHFieldConfig:
+ Collaboration diagram for PHFieldConfig:

Public Types

enum  FieldConfigTypes {
  kFieldUniform = 0, kField2D = 2, kField3DCylindrical = 3, kFieldBeast = 4,
  kFieldCleo = 5, Field3DCartesian = 1, kFieldInvalid = 9999
}
 

Public Member Functions

 ~PHFieldConfig () override
 
void identify (std::ostream &os=std::cout) const override
 
virtual FieldConfigTypes get_field_config () const
 
std::string get_field_config_description () const
 
virtual void set_field_config (FieldConfigTypes)
 
virtual const std::string & get_filename () const
 
virtual void set_filename (const std::string &)
 
virtual double get_magfield_rescale () const
 
virtual void set_magfield_rescale (double)
 
virtual double get_field_mag_x () const
 field value in Tesla for uniform field model ONLY for PHFieldConfig_v2
 
virtual void set_field_mag_x (double)
 field value in Tesla for uniform field model ONLY for PHFieldConfig_v2
 
virtual double get_field_mag_y () const
 field value in Tesla for uniform field model ONLY for PHFieldConfig_v2
 
virtual void set_field_mag_y (double)
 field value in Tesla for uniform field model ONLY for PHFieldConfig_v2
 
virtual double get_field_mag_z () const
 field value in Tesla for uniform field model ONLY for PHFieldConfig_v2
 
virtual void set_field_mag_z (double)
 field value in Tesla for uniform field model ONLY for PHFieldConfig_v2
 
- Public Member Functions inherited from PHObject
 PHObject ()
 ctor
 
 ~PHObject () override
 dtor
 
virtual PHObjectCloneMe () const
 Virtual copy constructor.
 
virtual PHObjectclone () const final
 
PHObjectClone (const char *newname="") const final
 
void Copy (TObject &object) const final
 
virtual void Reset ()
 Clear Event.
 
virtual int isValid () const
 isValid returns non zero if object contains vailid data
 
virtual int isValid (const float) const
 
virtual int isValid (const double) const
 
virtual int isValid (const int) const
 
virtual int isValid (const unsigned int) const
 
virtual int isImplemented (const float f) const
 
virtual int isImplemented (const double f) const
 
virtual int isImplemented (const int i) const
 
virtual int isImplemented (const unsigned int i) const
 
virtual int Integrate () const
 
virtual int Integrate (PHObject *)
 
virtual void CopyFrom (const PHObject *obj)
 

Protected Member Functions

 PHFieldConfig ()
 pure virtual interface class. not for direct use
 

Static Protected Attributes

static const std::string kInvalid_FileName
 

Detailed Description

PHFieldConfig store field configuration information.

Definition at line 20 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 20 of file PHFieldConfig.h

Member Enumeration Documentation

Enumerator:
kFieldUniform 

Constant field.

kField2D 

2D field map expressed in cylindrical coordinates

kField3DCylindrical 

3D field map expressed in cylindrical coordinates

kFieldBeast 

Beast field map from https://github.com/eic/BeastMagneticField.

kFieldCleo 

Cleo field map from https://gitlab.com/eic/escalate/g4e/-/blob/master/SolenoidMag3D.TABLE.

Field3DCartesian 

3D field map expressed in Cartesian coordinates

kFieldInvalid 

invalid value

Definition at line 30 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 30 of file PHFieldConfig.h

Constructor & Destructor Documentation

PHFieldConfig::~PHFieldConfig ( )
inlineoverride

Definition at line 23 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 23 of file PHFieldConfig.h

PHFieldConfig::PHFieldConfig ( )
inlineprotected

pure virtual interface class. not for direct use

Definition at line 82 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 82 of file PHFieldConfig.h

Member Function Documentation

virtual FieldConfigTypes PHFieldConfig::get_field_config ( ) const
inlinevirtual

Reimplemented in PHFieldConfigv1, and PHFieldConfigv2.

Definition at line 49 of file PHFieldConfig.h.

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

References kFieldInvalid.

Referenced by PHFieldUtility::BuildFieldMap().

+ Here is the caller graph for this function:

string PHFieldConfig::get_field_config_description ( ) const

Definition at line 18 of file PHFieldConfig.cc.

View newest version in sPHENIX GitHub at line 18 of file PHFieldConfig.cc

Referenced by PHFieldConfigv1::identify(), and PHFieldConfigv2::identify().

+ Here is the caller graph for this function:

virtual double PHFieldConfig::get_field_mag_x ( ) const
inlinevirtual

field value in Tesla for uniform field model ONLY for PHFieldConfig_v2

Reimplemented in PHFieldConfigv2.

Definition at line 64 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 64 of file PHFieldConfig.h

Referenced by PHFieldUtility::BuildFieldMap().

+ Here is the caller graph for this function:

virtual double PHFieldConfig::get_field_mag_y ( ) const
inlinevirtual

field value in Tesla for uniform field model ONLY for PHFieldConfig_v2

Reimplemented in PHFieldConfigv2.

Definition at line 70 of file PHFieldConfig.h.

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

Referenced by PHFieldUtility::BuildFieldMap().

+ Here is the caller graph for this function:

virtual double PHFieldConfig::get_field_mag_z ( ) const
inlinevirtual

field value in Tesla for uniform field model ONLY for PHFieldConfig_v2

Reimplemented in PHFieldConfigv2.

Definition at line 76 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 76 of file PHFieldConfig.h

Referenced by PHFieldUtility::BuildFieldMap().

+ Here is the caller graph for this function:

virtual const std::string& PHFieldConfig::get_filename ( ) const
inlinevirtual

Reimplemented in PHFieldConfigv1.

Definition at line 55 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 55 of file PHFieldConfig.h

References kInvalid_FileName.

Referenced by PHFieldUtility::BuildFieldMap().

+ Here is the caller graph for this function:

virtual double PHFieldConfig::get_magfield_rescale ( ) const
inlinevirtual

Reimplemented in PHFieldConfigv1.

Definition at line 59 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 59 of file PHFieldConfig.h

Referenced by PHFieldUtility::BuildFieldMap().

+ Here is the caller graph for this function:

void PHFieldConfig::identify ( std::ostream &  os = std::cout) const
overridevirtual

identify Function from PHObject

Parameters
osOutput Stream

Reimplemented from PHObject.

Reimplemented in PHFieldConfigv1, and PHFieldConfigv2.

Definition at line 48 of file PHFieldConfig.cc.

View newest version in sPHENIX GitHub at line 48 of file PHFieldConfig.cc

Referenced by PHFieldUtility::BuildFieldMap(), and PHFieldUtility::GetFieldConfigNode().

+ Here is the caller graph for this function:

virtual void PHFieldConfig::set_field_config ( FieldConfigTypes  )
inlinevirtual

Reimplemented in PHFieldConfigv1.

Definition at line 53 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 53 of file PHFieldConfig.h

virtual void PHFieldConfig::set_field_mag_x ( double  )
inlinevirtual

field value in Tesla for uniform field model ONLY for PHFieldConfig_v2

Reimplemented in PHFieldConfigv2.

Definition at line 67 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 67 of file PHFieldConfig.h

virtual void PHFieldConfig::set_field_mag_y ( double  )
inlinevirtual

field value in Tesla for uniform field model ONLY for PHFieldConfig_v2

Reimplemented in PHFieldConfigv2.

Definition at line 73 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 73 of file PHFieldConfig.h

virtual void PHFieldConfig::set_field_mag_z ( double  )
inlinevirtual

field value in Tesla for uniform field model ONLY for PHFieldConfig_v2

Reimplemented in PHFieldConfigv2.

Definition at line 78 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 78 of file PHFieldConfig.h

virtual void PHFieldConfig::set_filename ( const std::string &  )
inlinevirtual

Reimplemented in PHFieldConfigv1.

Definition at line 57 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 57 of file PHFieldConfig.h

virtual void PHFieldConfig::set_magfield_rescale ( double  )
inlinevirtual

Reimplemented in PHFieldConfigv1.

Definition at line 61 of file PHFieldConfig.h.

View newest version in sPHENIX GitHub at line 61 of file PHFieldConfig.h

Member Data Documentation

const std::string PHFieldConfig::kInvalid_FileName
staticprotected

Definition at line 84 of file PHFieldConfig.h.

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

Referenced by get_filename().


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