Hall-D Software
alpha
|
#include <DMagneticFieldMapCalibDB.h>
Classes | |
struct | DBfieldPoint_t |
Public Member Functions | |
DMagneticFieldMapCalibDB (JApplication *japp, int32_t runnumber=1, string namepath="Magnets/Solenoid/solenoid_1500_poisson_20090814_01") | |
DMagneticFieldMapCalibDB (JCalibration *jcalib, string namepath="Magnets/Solenoid/solenoid_1500_poisson_20090814_01") | |
virtual | ~DMagneticFieldMapCalibDB () |
int | ReadMap (string namepath, int32_t runnumber=1, string context="") |
void | GetField (const DVector3 &pos, DVector3 &Bout) const |
void | GetField (double x, double y, double z, double &Bx, double &By, double &Bz, int method=0) const |
double | GetBz (double x, double y, double z) const |
void | GetFieldGradient (double x, double y, double z, double &dBxdx, double &dBxdy, double &dBxdz, double &dBydx, double &dBydy, double &dBydz, double &dBzdx, double &dBzdy, double &dBzdz) const |
void | GetFieldBicubic (double x, double y, double z, double &Bx, double &By, double &Bz) const |
void | GetFieldAndGradient (double x, double y, double z, double &Bx, double &By, double &Bz, double &dBxdx, double &dBxdy, double &dBxdz, double &dBydx, double &dBydy, double &dBydz, double &dBzdx, double &dBzdy, double &dBzdz) const |
Protected Attributes | |
JCalibration * | jcalib |
vector< vector< vector < DBfieldPoint_t > > > | Btable |
float | xmin |
float | xmax |
float | ymin |
float | ymax |
float | zmin |
float | zmax |
int | Nx |
int | Ny |
int | Nz |
double | dx |
double | dy |
double | dz |
Definition at line 24 of file DMagneticFieldMapCalibDB.h.
DMagneticFieldMapCalibDB::DMagneticFieldMapCalibDB | ( | JApplication * | japp, |
int32_t | runnumber = 1 , |
||
string | namepath = "Magnets/Solenoid/solenoid_1500_poisson_20090814_01" |
||
) |
Definition at line 16 of file DMagneticFieldMapCalibDB.cc.
References _DBG_.
DMagneticFieldMapCalibDB::DMagneticFieldMapCalibDB | ( | JCalibration * | jcalib, |
string | namepath = "Magnets/Solenoid/solenoid_1500_poisson_20090814_01" |
||
) |
Definition at line 33 of file DMagneticFieldMapCalibDB.cc.
References _DBG_.
|
virtual |
Definition at line 45 of file DMagneticFieldMapCalibDB.cc.
|
virtual |
Implements DMagneticFieldMap.
Definition at line 651 of file DMagneticFieldMapCalibDB.cc.
References DMagneticFieldMapCalibDB::DBfieldPoint_t::Bz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdz, Nz, sqrt(), DMagneticFieldMapCalibDB::DBfieldPoint_t::x, DMagneticFieldMapCalibDB::DBfieldPoint_t::z, and zmin.
This calculates the magnetic field at an arbitrary point in space using the field map read from the calibaration database. It interpolates between grid points using the gradient values calculated in ReadMap (called from the constructor).
Implements DMagneticFieldMap.
Definition at line 602 of file DMagneticFieldMapCalibDB.cc.
References _DBG_, DMagneticFieldMapCalibDB::DBfieldPoint_t::Bx, DMagneticFieldMapCalibDB::DBfieldPoint_t::Bz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdz, Nz, DMagneticFieldMapCalibDB::DBfieldPoint_t::x, DMagneticFieldMapCalibDB::DBfieldPoint_t::z, and zmin.
|
virtual |
This calculates the magnetic field at an arbitrary point in space using the field map read from the calibaration database. It interpolates between grid points using the gradient values calculated in ReadMap (called from the constructor).
Implements DMagneticFieldMap.
Definition at line 550 of file DMagneticFieldMapCalibDB.cc.
References _DBG_, DMagneticFieldMapCalibDB::DBfieldPoint_t::Bx, DMagneticFieldMapCalibDB::DBfieldPoint_t::Bz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdz, Nz, sqrt(), DMagneticFieldMapCalibDB::DBfieldPoint_t::x, DMagneticFieldMapCalibDB::DBfieldPoint_t::z, and zmin.
|
virtual |
Implements DMagneticFieldMap.
Definition at line 339 of file DMagneticFieldMapCalibDB.cc.
References DMagneticFieldMapCalibDB::DBfieldPoint_t::Bx, DMagneticFieldMapCalibDB::DBfieldPoint_t::Bz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdxdz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdxdz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdz, Nz, sqrt(), temp, u, and zmin.
|
virtual |
Implements DMagneticFieldMap.
Definition at line 207 of file DMagneticFieldMapCalibDB.cc.
References DMagneticFieldMapCalibDB::DBfieldPoint_t::Bx, DMagneticFieldMapCalibDB::DBfieldPoint_t::Bz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdxdz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdxdz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdz, Nz, sqrt(), temp, u, and zmin.
|
virtual |
Implements DMagneticFieldMap.
Definition at line 500 of file DMagneticFieldMapCalibDB.cc.
References DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdz, Nz, sqrt(), and zmin.
int DMagneticFieldMapCalibDB::ReadMap | ( | string | namepath, |
int32_t | runnumber = 1 , |
||
string | context = "" |
||
) |
Read the magnetic field map in from the calibration database. This will read in the map and figure out the number of grid points in each direction (x,y, and z) and the range in each. The gradiant of the field is calculated for all but the most exterior points and saved to use in later calls to GetField(...).
Definition at line 53 of file DMagneticFieldMapCalibDB.cc.
References _DBG_, DMagneticFieldMapCalibDB::DBfieldPoint_t::Bx, DMagneticFieldMapCalibDB::DBfieldPoint_t::By, DMagneticFieldMapCalibDB::DBfieldPoint_t::Bz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdxdz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBxdz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBydx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBydz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdx, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdxdz, DMagneticFieldMapCalibDB::DBfieldPoint_t::dBzdz, Nz, x, DMagneticFieldMapCalibDB::DBfieldPoint_t::x, DMagneticFieldMapCalibDB::DBfieldPoint_t::y, y, ymax, ymin, DMagneticFieldMapCalibDB::DBfieldPoint_t::z, zmax, and zmin.
|
protected |
Definition at line 66 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 70 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 70 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 70 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 65 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 69 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 69 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 69 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 68 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 68 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 68 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 68 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 68 of file DMagneticFieldMapCalibDB.h.
|
protected |
Definition at line 68 of file DMagneticFieldMapCalibDB.h.