18 int32_t runnumber = 1;
19 jcalib = japp->GetJCalibration(runnumber);
20 if(GetValues(namepath, runnumber)==0){
21 _DBG_<<
"Error getting JCalibration object for magnetic field!"<<endl;
31 this->jcalib = jcalib;
32 if(GetValues(namepath)==0){
33 _DBG_<<
"Error getting JCalibration object for magnetic field!"<<endl;
67 cout<<
"Reading Constant Magnetic field values from "<<namepath<<
" ..."<<endl;
68 map<string,double> vals;
69 jcalib->Get(namepath, vals);
70 if(vals.size()==0)
return 0;
75 cout<<
" Bx="<<Bx<<
" By="<<By<<
" Bz="<<Bz<<endl;
85 double &dBxdx,
double &dBxdy,
87 double &dBydx,
double &dBydy,
89 double &dBzdx,
double &dBzdy,
131 Bout.SetXYZ(this->Bx,this->By,this->Bz);
136 double &Bx,
double &By,
double &Bz)
138 GetField(x,y,z,Bx,By,Bz);
143 double &Bx,
double &By,
145 double &dBxdx,
double &dBxdy,
147 double &dBydx,
double &dBydy,
149 double &dBzdx,
double &dBzdy,
150 double &dBzdz)
const{
151 GetField(x,y,z,Bx,By,Bz);
void GetFieldBicubic(double x, double y, double z, double &Bx, double &By, double &Bz) 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
virtual ~DMagneticFieldMapPSConst()
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
int GetValues(string namepath, int32_t runnumber=1, string context="")
void GetField(const DVector3 &pos, DVector3 &Bout) const
DMagneticFieldMapPSConst(JApplication *japp, string namepath="Magnets/PairSpectrometer/PS_const_field")