BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
BmnFieldMapSym3.h
Go to the documentation of this file.
1
// -------------------------------------------------------------------------
2
// ----- BmnFieldMapSym3 header file -----
3
// ----- Created 12/01/04 by M. Al/Turany (BmnField.h) -----
4
// ----- Redesign 20/02/06 by V. Friese -----
5
// -------------------------------------------------------------------------
6
7
/** BmnFieldMapSym3.h
8
** @author M.Al/Turany <m.al-turany@gsi.de>
9
** @author V.Friese <v.friese@gsi.de>
10
** @since 12.01.2004
11
** @version1.0
12
**
13
** Magnetic field map on a 3-D grid with symmetries w.r.t. the three
14
** coordinate axes. The map is only stored in the octant x>0, y>0, z>0.
15
** The symmetries are:
16
** - Bx is antisymmetric in x and symmetric in y and z
17
** - By is symmetric in x, y and z
18
** - Bz is antisymmetric in x and z and symmetric in y
19
**
20
** Field values are hold and returned in kG.
21
**/
22
23
#ifndef BMNMAGFIELDMAPSYM3_H
24
#define BMNMAGFIELDMAPSYM3_H 1
25
26
#include "
BmnFieldMap.h
"
27
#include "
BmnFieldPar.h
"
28
29
class
BmnFieldMapSym3
:
public
BmnFieldMap
30
{
31
public
:
32
/** Default constructor **/
33
BmnFieldMapSym3
();
34
35
/** Standard constructor
36
** @param mapName Name of field map
37
**/
38
BmnFieldMapSym3
(
const
char
* mapName);
39
40
/** Constructor from BmnFieldPar **/
41
BmnFieldMapSym3
(
BmnFieldPar
* fieldPar);
42
43
/** Destructor **/
44
virtual
~BmnFieldMapSym3
();
45
46
/** Get the field components at a certain point
47
** @param x,y,z Point coordinates (global) [cm]
48
** @value Bx,By,Bz Field components [kG]
49
**/
50
virtual
Double_t
GetBx
(
Double_t
x,
Double_t
y,
Double_t
z);
51
virtual
Double_t
GetBy
(
Double_t
x,
Double_t
y,
Double_t
z);
52
virtual
Double_t
GetBz
(
Double_t
x,
Double_t
y,
Double_t
z);
53
54
/** Determine whether a point is inside the field map
55
** @param x,y,z Point coordinates (global) [cm]
56
** @param ix,iy,iz (return) Grid cell
57
** @param dx,dy,dz (return) Distance from grid point [cm] if inside
58
** @value kTRUE if inside map, else kFALSE
59
**/
60
virtual
Bool_t
IsInside
(
Double_t
x,
61
Double_t
y,
62
Double_t
z,
63
Int_t
& ix,
64
Int_t
& iy,
65
Int_t
& iz,
66
Double_t
& dx,
67
Double_t
& dy,
68
Double_t
& dz);
69
70
void
FillParContainer
();
71
72
protected
:
73
/** Hemispheres of a point (for temporary use) **/
74
mutable
Double_t
fHemiX
,
fHemiY
,
fHemiZ
;
//!
75
76
ClassDef
(
BmnFieldMapSym3
, 1)
77
};
78
79
#endif
Bool_t
bool Bool_t
Int_t
int Int_t
Double_t
double Double_t
ClassDef
#define ClassDef(name, id)
BmnFieldMapSym3
BmnFieldMapSym3.h.
Definition
BmnFieldMapSym3.h:30
BmnFieldMapSym3::fHemiX
Double_t fHemiX
Hemispheres of a point (for temporary use).
Definition
BmnFieldMapSym3.h:74
BmnFieldMapSym3::GetBy
virtual Double_t GetBy(Double_t x, Double_t y, Double_t z)
BmnFieldMapSym3::IsInside
virtual Bool_t IsInside(Double_t x, Double_t y, Double_t z, Int_t &ix, Int_t &iy, Int_t &iz, Double_t &dx, Double_t &dy, Double_t &dz)
Determine whether a point is inside the field map.
BmnFieldMapSym3::fHemiZ
Double_t fHemiZ
Definition
BmnFieldMapSym3.h:74
BmnFieldMapSym3::GetBx
virtual Double_t GetBx(Double_t x, Double_t y, Double_t z)
Get the field components at a certain point.
BmnFieldMapSym3::FillParContainer
void FillParContainer()
BmnFieldMapSym3::BmnFieldMapSym3
BmnFieldMapSym3()
Default constructor.
BmnFieldMapSym3::~BmnFieldMapSym3
virtual ~BmnFieldMapSym3()
Destructor.
BmnFieldMapSym3::BmnFieldMapSym3
BmnFieldMapSym3(BmnFieldPar *fieldPar)
Constructor from BmnFieldPar.
BmnFieldMapSym3::GetBz
virtual Double_t GetBz(Double_t x, Double_t y, Double_t z)
BmnFieldMapSym3::fHemiY
Double_t fHemiY
Definition
BmnFieldMapSym3.h:74
BmnFieldMapSym3::BmnFieldMapSym3
BmnFieldMapSym3(const char *mapName)
Standard constructor.
BmnFieldMap
Definition
BmnFieldMap.h:22
BmnFieldPar
Definition
BmnFieldPar.h:26
BmnFieldMap.h
BmnFieldPar.h
install
include
BmnFieldMapSym3.h
Generated on
for BmnRoot by
1.17.0