8 #ifndef _DMagneticFieldMap_
9 #define _DMagneticFieldMap_
11 #include <JANA/jerror.h>
21 virtual void GetField(
double x,
double y,
double z,
double &Bx,
double &By,
double &Bz,
int method=0)
const = 0;
22 virtual double GetBz(
double x,
double y,
double z)
const=0;
25 double &dBxdx,
double &dBxdy,
27 double &dBydx,
double &dBydy,
29 double &dBzdx,
double &dBzdy,
30 double &dBzdz)
const = 0;
32 double &Bx,
double &By,
double &Bz)
const=0;
35 double &Bx,
double &By,
45 double &dBzdz)
const = 0;
50 #endif // _DMagneticFieldMap_
virtual 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 =0
virtual ~DMagneticFieldMap()
virtual double GetBz(double x, double y, double z) const =0
virtual void GetField(const DVector3 &pos, DVector3 &Bout) const =0
virtual 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 =0
virtual void GetFieldBicubic(double x, double y, double z, double &Bx, double &By, double &Bz) const =0