Hall-D Software
alpha
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
DMagneticFieldMapCalibDB.h
Go to the documentation of this file.
1
// $Id$
2
//
3
// File: DMagneticFieldMapCalibDB.h
4
// Created: Thu Jul 19 13:58:21 EDT 2007
5
// Creator: davidl (on Darwin fwing-dhcp61.jlab.org 8.10.1 i386)
6
//
7
8
#ifndef _DMagneticFieldMapCalibDB_
9
#define _DMagneticFieldMapCalibDB_
10
11
#include <JANA/jerror.h>
12
13
#include <
HDGEOMETRY/DMagneticFieldMap.h
>
14
15
#include <vector>
16
#include <string>
17
using
std::vector;
18
using
std::string
;
19
20
#include <JANA/JApplication.h>
21
#include <JANA/JCalibration.h>
22
using namespace
jana;
23
24
class
DMagneticFieldMapCalibDB
:
public
DMagneticFieldMap
{
25
public
:
26
DMagneticFieldMapCalibDB
(JApplication *
japp
, int32_t runnumber=1,
string
namepath =
"Magnets/Solenoid/solenoid_1500_poisson_20090814_01"
);
27
DMagneticFieldMapCalibDB
(JCalibration *jcalib,
string
namepath =
"Magnets/Solenoid/solenoid_1500_poisson_20090814_01"
);
28
virtual
~
DMagneticFieldMapCalibDB
();
29
30
int
ReadMap(
string
namepath, int32_t runnumber=1,
string
context=
""
);
31
void
GetField(
const
DVector3
&pos,
DVector3
&Bout)
const
;
32
void
GetField(
double
x
,
double
y
,
double
z,
double
&Bx,
double
&By,
double
&Bz,
int
method=0)
const
;
33
double
GetBz(
double
x,
double
y,
double
z)
const
;
34
void
GetFieldGradient(
double
x,
double
y,
double
z,
35
double
&dBxdx,
double
&dBxdy,
36
double
&dBxdz,
37
double
&dBydx,
double
&dBydy,
38
double
&dBydz,
39
double
&dBzdx,
double
&dBzdy,
40
double
&dBzdz)
const
;
41
void
GetFieldBicubic(
double
x,
double
y,
double
z,
42
double
&Bx,
double
&By,
double
&Bz)
const
;
43
void
GetFieldAndGradient(
double
x,
double
y,
double
z,
44
double
&Bx,
double
&By,
45
double
&Bz,
46
double
&dBxdx,
double
&dBxdy,
47
double
&dBxdz,
48
double
&dBydx,
double
&dBydy,
49
double
&dBydz,
50
double
&dBzdx,
double
&dBzdy,
51
double
&dBzdz)
const
;
52
53
typedef
struct
{
54
float
x
,
y
,
z
,Bx,By,Bz;
55
double
dBxdx, dBxdy,
dBxdz
;
56
double
dBydx, dBydy,
dBydz
;
57
double
dBzdx, dBzdy,
dBzdz
;
58
double
dBxdxdy,dBxdxdz,
dBxdydz
;
59
double
dBydxdy,dBydxdz,
dBydydz
;
60
double
dBzdxdy,dBzdxdz,
dBzdydz
;
61
}
DBfieldPoint_t
;
62
63
protected
:
64
65
JCalibration *
jcalib
;
66
vector< vector< vector<DBfieldPoint_t> > >
Btable
;
67
68
float
xmin, xmax,
ymin
,
ymax
,
zmin
,
zmax
;
69
int
Nx, Ny,
Nz
;
70
double
dx, dy,
dz
;
71
};
72
73
#endif // _DMagneticFieldMapCalibDB_
74
DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdydz
double dBxdydz
Definition:
DMagneticFieldMapCalibDB.h:58
DMagneticFieldMapCalibDB::dz
double dz
Definition:
DMagneticFieldMapCalibDB.h:70
DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdz
double dBxdz
Definition:
DMagneticFieldMapCalibDB.h:55
DMagneticFieldMapCalibDB::jcalib
JCalibration * jcalib
Definition:
DMagneticFieldMapCalibDB.h:65
DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdz
double dBzdz
Definition:
DMagneticFieldMapCalibDB.h:57
DVector3
TVector3 DVector3
Definition:
DVector3.h:14
x
Double_t x[NCHANNELS]
Definition:
st_tw_resols.C:39
string
char string[256]
Definition:
plot_epics_dump.C:24
y
#define y
zmax
double zmax
Definition:
mkMaterialMap.cc:43
japp
JApplication * japp
DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdydz
double dBzdydz
Definition:
DMagneticFieldMapCalibDB.h:60
DMagneticFieldMapCalibDB::Nz
int Nz
Definition:
DMagneticFieldMapCalibDB.h:69
DMagneticFieldMapCalibDB::zmin
float zmin
Definition:
DMagneticFieldMapCalibDB.h:68
DMagneticFieldMapCalibDB::Btable
vector< vector< vector< DBfieldPoint_t > > > Btable
Definition:
DMagneticFieldMapCalibDB.h:66
DMagneticFieldMapCalibDB::DBfieldPoint_t::dBydz
double dBydz
Definition:
DMagneticFieldMapCalibDB.h:56
DMagneticFieldMap
Definition:
DMagneticFieldMap.h:14
DMagneticFieldMapCalibDB::DBfieldPoint_t::dBydydz
double dBydydz
Definition:
DMagneticFieldMapCalibDB.h:59
DMagneticFieldMapCalibDB
Definition:
DMagneticFieldMapCalibDB.h:24
ymin
Double_t ymin
Definition:
bcal_hist_eff.C:89
DMagneticFieldMapCalibDB::DBfieldPoint_t::z
float z
Definition:
DMagneticFieldMapCalibDB.h:54
ymax
Double_t ymax
Definition:
bcal_hist_eff.C:91
DMagneticFieldMap.h
DMagneticFieldMapCalibDB::DBfieldPoint_t
Definition:
DMagneticFieldMapCalibDB.h:53
libraries
HDGEOMETRY
DMagneticFieldMapCalibDB.h
Generated on Fri Jul 26 2019 14:00:53 for Hall-D Software by
1.8.5