BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
BmnFieldConst.h
Go to the documentation of this file.
1
/** @author M.Al-Turany <m.al/turany@gsi.de>
2
** @since 30.01.2007
3
** @version1.0
4
** A constant magnetic field
5
**/
6
7
#ifndef BMNFIELDCONST_H
8
#define BMNFIELDCONST_H 1
9
10
#include "FairField.h"
// for FairField
11
12
#include <
Rtypes.h
>
// for Double_t, etc
13
14
class
BmnFieldPar
;
15
16
class
BmnFieldConst
:
public
FairField
17
{
18
public
:
19
/** Default constructor **/
20
BmnFieldConst
();
21
22
/** Standard constructor
23
** @param name Object name
24
** @param xMin,xMax x region of field (global coordinates)
25
** @param yMin,yMax y region of field (global coordinates)
26
** @param zMin,zMax z region of field (global coordinates)
27
** @param bX,bY,bZ Field values [kG]
28
**/
29
BmnFieldConst
(
const
char
* name,
30
Double_t
xMin,
31
Double_t
xMax,
32
Double_t
yMin,
33
Double_t
yMax,
34
Double_t
zMin,
35
Double_t
zMax,
36
Double_t
bX,
37
Double_t
bY,
38
Double_t
bZ);
39
40
/** Constructor from BmnFieldPar **/
41
BmnFieldConst
(
BmnFieldPar
* fieldPar);
42
43
/** Destructor **/
44
virtual
~BmnFieldConst
();
45
46
void
FillParContainer
();
47
48
/** Set the field region
49
** @param xMin,xMax x region of field (global coordinates)
50
** @param yMin,yMax y region of field (global coordinates)
51
** @param zMin,zMax z region of field (global coordinates)
52
**/
53
void
SetFieldRegion
(
Double_t
xMin,
Double_t
xMax,
Double_t
yMin,
Double_t
yMax,
Double_t
zMin,
Double_t
zMax);
54
55
/** Set the field values
56
** @param bX,bY,bZ Field values [kG]
57
**/
58
void
SetField
(
Double_t
bX,
Double_t
bY,
Double_t
bZ);
59
60
/** Turn magnetic field off **/
61
void
SetFieldOff
(
Bool_t
is_off =
kTRUE
) {
fIsOff
= is_off; }
62
63
/** Get components of field at a given point
64
** @param x,y,z Point coordinates [cm]
65
**/
66
virtual
Double_t
GetBx
(
Double_t
x,
Double_t
y,
Double_t
z);
67
virtual
Double_t
GetBy
(
Double_t
x,
Double_t
y,
Double_t
z);
68
virtual
Double_t
GetBz
(
Double_t
x,
Double_t
y,
Double_t
z);
69
70
/** Accessors to field region **/
71
Double_t
GetXmin
()
const
{
return
fXmin
; }
72
Double_t
GetXmax
()
const
{
return
fXmax
; }
73
Double_t
GetYmin
()
const
{
return
fYmin
; }
74
Double_t
GetYmax
()
const
{
return
fYmax
; }
75
Double_t
GetZmin
()
const
{
return
fZmin
; }
76
Double_t
GetZmax
()
const
{
return
fZmax
; }
77
78
/** Accessors to field values **/
79
Double_t
GetBx
()
const
{
return
fBx
; }
80
Double_t
GetBy
()
const
{
return
fBy
; }
81
Double_t
GetBz
()
const
{
return
fBz
; }
82
83
/** Whether magnetic field is off **/
84
Bool_t
IsFieldOff
()
const
{
return
fIsOff
; }
85
86
/** Screen output **/
87
virtual
void
Print
(
Option_t
*)
const
;
88
89
ClassDef
(
BmnFieldConst
, 1);
90
91
private
:
92
/** Limits of the field region **/
93
Double_t
fXmin
;
94
Double_t
fXmax
;
95
Double_t
fYmin
;
96
Double_t
fYmax
;
97
Double_t
fZmin
;
98
Double_t
fZmax
;
99
100
/** Field components inside the field region **/
101
Double_t
fBx
;
102
Double_t
fBy
;
103
Double_t
fBz
;
104
105
/** Whether magnetic field is off **/
106
Bool_t
fIsOff
;
107
};
108
109
#endif
Bool_t
bool Bool_t
Double_t
double Double_t
kTRUE
constexpr Bool_t kTRUE
Option_t
const char Option_t
Rtypes.h
ClassDef
#define ClassDef(name, id)
BmnFieldConst
Definition
BmnFieldConst.h:17
BmnFieldConst::GetZmin
Double_t GetZmin() const
Definition
BmnFieldConst.h:75
BmnFieldConst::fXmin
Double_t fXmin
Limits of the field region.
Definition
BmnFieldConst.h:93
BmnFieldConst::fZmin
Double_t fZmin
Definition
BmnFieldConst.h:97
BmnFieldConst::GetYmin
Double_t GetYmin() const
Definition
BmnFieldConst.h:73
BmnFieldConst::fBy
Double_t fBy
Definition
BmnFieldConst.h:102
BmnFieldConst::SetField
void SetField(Double_t bX, Double_t bY, Double_t bZ)
Set the field values.
Definition
BmnFieldConst.cxx:115
BmnFieldConst::fZmax
Double_t fZmax
Definition
BmnFieldConst.h:98
BmnFieldConst::fBz
Double_t fBz
Definition
BmnFieldConst.h:103
BmnFieldConst::IsFieldOff
Bool_t IsFieldOff() const
Whether magnetic field is off.
Definition
BmnFieldConst.h:84
BmnFieldConst::~BmnFieldConst
virtual ~BmnFieldConst()
Destructor.
Definition
BmnFieldConst.cxx:98
BmnFieldConst::GetZmax
Double_t GetZmax() const
Definition
BmnFieldConst.h:76
BmnFieldConst::fIsOff
Bool_t fIsOff
Whether magnetic field is off.
Definition
BmnFieldConst.h:106
BmnFieldConst::GetYmax
Double_t GetYmax() const
Definition
BmnFieldConst.h:74
BmnFieldConst::GetXmin
Double_t GetXmin() const
Accessors to field region.
Definition
BmnFieldConst.h:71
BmnFieldConst::Print
virtual void Print(Option_t *) const
Screen output.
Definition
BmnFieldConst.cxx:150
BmnFieldConst::SetFieldRegion
void SetFieldRegion(Double_t xMin, Double_t xMax, Double_t yMin, Double_t yMax, Double_t zMin, Double_t zMax)
Set the field region.
Definition
BmnFieldConst.cxx:100
BmnFieldConst::GetBy
Double_t GetBy() const
Definition
BmnFieldConst.h:80
BmnFieldConst::GetBz
Double_t GetBz() const
Definition
BmnFieldConst.h:81
BmnFieldConst::fBx
Double_t fBx
Field components inside the field region.
Definition
BmnFieldConst.h:101
BmnFieldConst::GetBx
Double_t GetBx() const
Accessors to field values.
Definition
BmnFieldConst.h:79
BmnFieldConst::fYmin
Double_t fYmin
Definition
BmnFieldConst.h:95
BmnFieldConst::SetFieldOff
void SetFieldOff(Bool_t is_off=kTRUE)
Turn magnetic field off.
Definition
BmnFieldConst.h:61
BmnFieldConst::fYmax
Double_t fYmax
Definition
BmnFieldConst.h:96
BmnFieldConst::GetXmax
Double_t GetXmax() const
Definition
BmnFieldConst.h:72
BmnFieldConst::FillParContainer
void FillParContainer()
Definition
BmnFieldConst.cxx:167
BmnFieldConst::fXmax
Double_t fXmax
Definition
BmnFieldConst.h:94
BmnFieldConst::BmnFieldConst
BmnFieldConst()
Default constructor.
Definition
BmnFieldConst.cxx:25
BmnFieldPar
Definition
BmnFieldPar.h:26
FairField
field
BmnFieldConst.h
Generated on
for BmnRoot by
1.17.0