#include <PolyFit2DParametrizedMagneticField.h>
Public Member Functions | |
GlobalVector | inTesla (const GlobalPoint &gp) const |
Field value ad specified global point, in Tesla. | |
GlobalVector | inTeslaUnchecked (const GlobalPoint &gp) const |
bool | isDefined (const GlobalPoint &gp) const |
True if the point is within the region where the concrete field. | |
PolyFit2DParametrizedMagneticField (const edm::ParameterSet ¶meters) | |
Constructor. Parameters taken from a PSet. | |
PolyFit2DParametrizedMagneticField (double bVal=3.8114) | |
virtual | ~PolyFit2DParametrizedMagneticField () |
Destructor. | |
Private Attributes | |
magfieldparam::BFit * | theParam |
Magnetic Field engine wrapper for V. Maroussov's 2D parametrization of the MT data.
Definition at line 20 of file PolyFit2DParametrizedMagneticField.h.
PolyFit2DParametrizedMagneticField::PolyFit2DParametrizedMagneticField | ( | double | bVal = 3.8114 | ) |
Constructor. Fitted bVal for the nominal currents are: 2.0216; 3.5162; 3.8114; 4.01242188708911
Definition at line 18 of file PolyFit2DParametrizedMagneticField.cc.
References magfieldparam::BFit::SetField(), and theParam.
PolyFit2DParametrizedMagneticField::PolyFit2DParametrizedMagneticField | ( | const edm::ParameterSet & | parameters | ) |
Constructor. Parameters taken from a PSet.
Definition at line 25 of file PolyFit2DParametrizedMagneticField.cc.
References edm::ParameterSet::getParameter(), magfieldparam::BFit::SetField(), and theParam.
: theParam(new BFit()) { theParam->SetField(parameters.getParameter<double>("BValue")); }
PolyFit2DParametrizedMagneticField::~PolyFit2DParametrizedMagneticField | ( | ) | [virtual] |
Destructor.
Definition at line 30 of file PolyFit2DParametrizedMagneticField.cc.
References theParam.
{ delete theParam; }
GlobalVector PolyFit2DParametrizedMagneticField::inTesla | ( | const GlobalPoint & | gp | ) | const [virtual] |
Field value ad specified global point, in Tesla.
Implements MagneticField.
Definition at line 36 of file PolyFit2DParametrizedMagneticField.cc.
References inTeslaUnchecked(), and isDefined().
{ if (isDefined(gp)) { return inTeslaUnchecked(gp); } else { edm::LogWarning("MagneticField|FieldOutsideValidity") << " Point " << gp << " is outside the validity region of PolyFit2DParametrizedMagneticField"; return GlobalVector(); } }
GlobalVector PolyFit2DParametrizedMagneticField::inTeslaUnchecked | ( | const GlobalPoint & | gp | ) | const [virtual] |
Optional implementation that derived classes can implement to provide faster query by skipping the check to isDefined.
Reimplemented from MagneticField.
Definition at line 47 of file PolyFit2DParametrizedMagneticField.cc.
References funct::cos(), magfieldparam::BFit::GetField(), PV3DBase< T, PVType, FrameType >::perp(), PV3DBase< T, PVType, FrameType >::phi(), funct::sin(), theParam, and PV3DBase< T, PVType, FrameType >::z().
Referenced by inTesla().
bool PolyFit2DParametrizedMagneticField::isDefined | ( | const GlobalPoint & | gp | ) | const [virtual] |
True if the point is within the region where the concrete field.
Reimplemented from MagneticField.
Definition at line 61 of file PolyFit2DParametrizedMagneticField.cc.
References PV3DBase< T, PVType, FrameType >::perp(), alignCSCRings::r, PV3DBase< T, PVType, FrameType >::z(), and z.
Referenced by inTesla().
Definition at line 39 of file PolyFit2DParametrizedMagneticField.h.
Referenced by inTeslaUnchecked(), PolyFit2DParametrizedMagneticField(), and ~PolyFit2DParametrizedMagneticField().