CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions
MagneticField Class Referenceabstract

#include <MagneticField.h>

Inheritance diagram for MagneticField:
LocalMagneticField MagVolume OAE85lParametrizedMagneticField OAEParametrizedMagneticField PolyFit2DParametrizedMagneticField PolyFit3DParametrizedMagneticField RKTestField UniformMagneticField VolumeBasedMagneticField

Public Member Functions

virtual MagneticFieldclone () const
 
virtual GlobalVector inInverseGeV (const GlobalPoint &gp) const
 Field value ad specified global point, in 1/Gev. More...
 
virtual GlobalVector inKGauss (const GlobalPoint &gp) const
 Field value ad specified global point, in KGauss. More...
 
virtual GlobalVector inTesla (const GlobalPoint &gp) const =0
 Field value ad specified global point, in Tesla. More...
 
virtual GlobalVector inTeslaUnchecked (const GlobalPoint &gp) const
 
virtual bool isDefined (const GlobalPoint &gp) const
 True if the point is within the region where the concrete field. More...
 
 MagneticField ()
 
virtual int nominalValue () const
 The nominal field value for this map in kGauss. More...
 
virtual ~MagneticField ()
 

Detailed Description

Base class for the different implementation of magnetic field engines.

Date:
2009/03/19 10:27:05
Revision:
1.7
Author
N. Amapane - CERN

Definition at line 16 of file MagneticField.h.

Constructor & Destructor Documentation

MagneticField::MagneticField ( )

Definition at line 10 of file MagneticField.cc.

10 {}
MagneticField::~MagneticField ( )
virtual

Definition at line 12 of file MagneticField.cc.

12 {}

Member Function Documentation

virtual MagneticField* MagneticField::clone ( void  ) const
inlinevirtual

Derived classes can implement cloning without ownership of the underlying engines.

Reimplemented in VolumeBasedMagneticField.

Definition at line 24 of file MagneticField.h.

24  {
25  return 0;
26  }
GlobalVector MagneticField::inInverseGeV ( const GlobalPoint gp) const
virtual
GlobalVector MagneticField::inKGauss ( const GlobalPoint gp) const
virtual

Field value ad specified global point, in KGauss.

Definition at line 15 of file MagneticField.cc.

References inTesla().

Referenced by CSCDriftSim::getWireHit().

15  {
16  return inTesla(gp) * 10.;
17 }
virtual GlobalVector inTesla(const GlobalPoint &gp) const =0
Field value ad specified global point, in Tesla.
virtual GlobalVector MagneticField::inTesla ( const GlobalPoint gp) const
pure virtual

Field value ad specified global point, in Tesla.

Implemented in OAE85lParametrizedMagneticField, VolumeBasedMagneticField, OAEParametrizedMagneticField, PolyFit2DParametrizedMagneticField, PolyFit3DParametrizedMagneticField, RKTestField, LocalMagneticField, and UniformMagneticField.

Referenced by SiStripLAProfileBooker::beginRun(), ConvBremSeedProducer::beginRun(), SiTrackerGaussianSmearingRecHitConverter::beginRun(), TrackProducerAlgorithm< reco::Track >::buildTrack(), TrackProducerAlgorithm< reco::GsfTrack >::buildTrack(), ClosestApproachInRPhi::calculate(), TwoTrackMinimumDistanceLineLine::calculate(), TwoTrackMinimumDistance::calculate(), TangentApproachInRPhi::circleParameters(), PixelCPEBase::computeLorentzShifts(), shallow::drift(), StripCPE::driftDirection(), ECALPositionCalculator::ecalPhi(), HSCPTreeBuilder::filter(), sim::Field::GetFieldValue(), SteppingHelixPropagator::getNextState(), GlobalTrajectoryParameters::GlobalTrajectoryParameters(), ConversionFastHelix::helixStateAtVertex(), inInverseGeV(), inKGauss(), MagneticFieldMap::inTesla(), inTeslaUnchecked(), MagneticFieldMap::inTeslaZ(), JacobianCurvilinearToLocal::JacobianCurvilinearToLocal(), SteppingHelixPropagator::loadState(), PixelCPETemplateReco::localPosition(), PixelCPEGeneric::localPosition(), PixelCPEBase::lorentzShiftX(), PixelCPEBase::lorentzShiftY(), GlobalTrajectoryParameters::magneticFieldInInverseGeV(), SteppingHelixPropagator::makeAtomStep(), nominalValue(), FTSFromVertexToPointFactory::operator()(), SiStripElectronAlgo::projectPhiBand(), RoadSearchSeedFinderAlgorithm::run(), RoadSearchTrackCandidateMakerAlgorithm::run(), SeedFromNuclearInteraction::stateWithError(), GlobalTrajectoryParameters::transverseCurvature(), MonopoleSteppingAction::update(), and RKTestFieldProvider::valueInTesla().

virtual GlobalVector MagneticField::inTeslaUnchecked ( const GlobalPoint gp) const
inlinevirtual

Optional implementation that derived classes can implement to provide faster query by skipping the check to isDefined.

Reimplemented in OAE85lParametrizedMagneticField, VolumeBasedMagneticField, OAEParametrizedMagneticField, PolyFit2DParametrizedMagneticField, PolyFit3DParametrizedMagneticField, and UniformMagneticField.

Definition at line 46 of file MagneticField.h.

References inTesla().

Referenced by VolumeBasedMagneticField::inTesla(), and VolumeBasedMagneticField::inTeslaUnchecked().

46  {
47  return inTesla(gp); // default dummy implementation
48  }
virtual GlobalVector inTesla(const GlobalPoint &gp) const =0
Field value ad specified global point, in Tesla.
virtual bool MagneticField::isDefined ( const GlobalPoint gp) const
inlinevirtual

True if the point is within the region where the concrete field.

Reimplemented in VolumeBasedMagneticField, OAE85lParametrizedMagneticField, OAEParametrizedMagneticField, PolyFit2DParametrizedMagneticField, PolyFit3DParametrizedMagneticField, and UniformMagneticField.

Definition at line 40 of file MagneticField.h.

Referenced by VolumeBasedMagneticField::inTesla(), and VolumeBasedMagneticField::inTeslaUnchecked().

40  {
41  return true;
42  }
int MagneticField::nominalValue ( ) const
virtual

The nominal field value for this map in kGauss.

Reimplemented in VolumeBasedMagneticField.

Definition at line 23 of file MagneticField.cc.

References inTesla(), and z.

Referenced by VolumeBasedMagneticField::VolumeBasedMagneticField().

23  {
24  return int((inTesla(GlobalPoint(0.,0.,0.))).z() * 10. + 0.5);
25 }
virtual GlobalVector inTesla(const GlobalPoint &gp) const =0
Field value ad specified global point, in Tesla.
Global3DPoint GlobalPoint
Definition: GlobalPoint.h:10
Definition: DDAxes.h:10