13 using namespace magfieldparam;
21 : theParam(new
BFit()) {
33 <<
" is outside the validity region of PolyFit2DParametrizedMagneticField";
42 double cosphi =
cos(gp.
phi());
43 double sinphi =
sin(gp.
phi());
45 return GlobalVector(Br * cosphi - Bphi * sinphi, Br * sinphi + Bphi * cosphi, Bz);
49 double z = fabs(gp.
z());
52 if (z > 350. || r > 190 || z + 2.5 * r > 670.)
Sin< T >::type sin(const T &t)
Geom::Phi< T > phi() const
void GetField(double r, double z, double phi, double &Br, double &Bz, double &Bphi) const
magfieldparam::BFit * theParam
Cos< T >::type cos(const T &t)
bool isDefined(const GlobalPoint &gp) const override
True if the point is within the region where the concrete field.
GlobalVector inTesla(const GlobalPoint &gp) const override
Field value ad specified global point, in Tesla.
GlobalVector inTeslaUnchecked(const GlobalPoint &gp) const override
~PolyFit2DParametrizedMagneticField() override
Destructor.
T getParameter(std::string const &) const
Log< level::Warning, false > LogWarning
PolyFit2DParametrizedMagneticField(double bVal=3.8114)
Global3DVector GlobalVector