CMS 3D CMS Logo

MagneticField Class Reference

Base class for the different implementation of magnetic field engines. More...

#include <MagneticField/Engine/interface/MagneticField.h>

Inheritance diagram for MagneticField:

LocalMagneticField MagVolume OAE85lParametrizedMagneticField OAEParametrizedMagneticField PolyFit2DParametrizedMagneticField RKTestField UniformMagneticField VolumeBasedMagneticField

List of all members.

Public Member Functions

virtual MagneticFieldclone () const
 Derived classes can implement cloning without ownership of the underlying engines.
virtual GlobalVector inInverseGeV (const GlobalPoint &gp) const
 Field value ad specified global point, in 1/Gev.
virtual GlobalVector inKGauss (const GlobalPoint &gp) const
 Field value ad specified global point, in KGauss.
virtual GlobalVector inTesla (const GlobalPoint &gp) const =0
 Field value ad specified global point, in Tesla.
virtual GlobalVector inTeslaUnchecked (const GlobalPoint &gp) const
 Optional implementation that derived classes can implement to provide faster query by skipping the check to isDefined.
virtual bool isDefined (const GlobalPoint &gp) const
 True if the point is within the region where the concrete field.
 MagneticField ()
virtual int nominalValue () const
 The nominal field value for this map in kGauss.
virtual ~MagneticField ()


Detailed Description

Base class for the different implementation of magnetic field engines.

Date
2009/05/23 22:57:42
Revision
1.8
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.

00010 {}

MagneticField::~MagneticField (  )  [virtual]

Definition at line 12 of file MagneticField.cc.

00012 {}


Member Function Documentation

virtual MagneticField* MagneticField::clone ( void   )  const [inline, virtual]

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

Reimplemented in VolumeBasedMagneticField.

Definition at line 24 of file MagneticField.h.

Referenced by magneticfield::AutoMagneticFieldESProducer::produce().

00024                                        {
00025     return 0;
00026   }

GlobalVector MagneticField::inInverseGeV ( const GlobalPoint gp  )  const [virtual]

Field value ad specified global point, in 1/Gev.

Definition at line 19 of file MagneticField.cc.

References inTesla().

Referenced by PerigeeLinearizedTrackState::computeChargedJacobians(), TwoBodyDecayEstimator::constructMatrices(), TSCPBuilderNoMaterial::createFTSatTransverseImpactPointCharged(), KinematicPerigeeConversions::extendedPerigeeFromKinematicParameters(), PerigeeConversions::ftsToPerigeeParameters(), PerigeeConversions::jacobianCurvilinear2Perigee(), PerigeeConversions::jacobianParameters2Cartesian(), PerigeeConversions::jacobianPerigee2Curvilinear(), KinematicPerigeeConversions::kinematicParametersFromExPerigee(), PerigeeConversions::momentumFromPerigee(), KinematicPerigeeConversions::momentumFromPerigee(), and TrackKinematicStatePropagator::planeCrossing().

00019                                                                     {
00020   return inTesla(gp) * 2.99792458e-3;
00021 }

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().

00015                                                                 {
00016   return inTesla(gp) * 10.;
00017 }

virtual GlobalVector MagneticField::inTesla ( const GlobalPoint gp  )  const [pure virtual]

Field value ad specified global point, in Tesla.

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

Referenced by ConvBremSeedProducer::beginJob(), SiStripLAProfileBooker::beginJob(), SiTrackerGaussianSmearingRecHitConverter::beginRun(), TrackProducerAlgorithm< reco::Track >::buildTrack(), TrackProducerAlgorithm< reco::GsfTrack >::buildTrack(), TwoTrackMinimumDistance::calculate(), TwoTrackMinimumDistanceLineLine::calculate(), ClosestApproachInRPhi::circleParameters(), DTParametrizedDriftAlgo::compute(), PixelCPEBase::computeLorentzShifts(), StripCPE::driftDirection(), ECALPositionCalculator::ecalPhi(), sim::Field::GetFieldValue(), SteppingHelixPropagator::getNextState(), GlobalTrajectoryParameters::GlobalTrajectoryParameters(), ConversionFastHelix::helixStateAtVertex(), inInverseGeV(), inKGauss(), MagneticFieldMap::inTesla(), inTeslaUnchecked(), MagneticFieldMap::inTeslaZ(), JacobianCurvilinearToLocal::JacobianCurvilinearToLocal(), JacobianLocalToCurvilinear::JacobianLocalToCurvilinear(), SteppingHelixPropagator::loadState(), CPEFromDetPosition::lorentzShiftX(), PixelCPEBase::lorentzShiftX(), PixelCPEBase::lorentzShiftY(), GlobalTrajectoryParameters::magneticFieldInInverseGeV(), SteppingHelixPropagator::makeAtomStep(), nominalValue(), FTSFromVertexToPointFactory::operator()(), PixelCPETemplateReco::PixelCPETemplateReco(), ClusterShapeTrajectoryFilter::processHit(), SiStripElectronAlgo::projectPhiBand(), RoadSearchSeedFinderAlgorithm::run(), RoadSearchTrackCandidateMakerAlgorithm::run(), SeedFromNuclearInteraction::stateWithError(), GlobalTrajectoryParameters::transverseCurvature(), TwoTrackMinimumDistanceHelixLine::updateCoeffs(), TwoTrackMinimumDistanceHelixHelix::updateCoeffs(), and RKTestFieldProvider::valueInTesla().

virtual GlobalVector MagneticField::inTeslaUnchecked ( const GlobalPoint gp  )  const [inline, virtual]

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

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

Definition at line 46 of file MagneticField.h.

References inTesla().

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

00046                                                                       {
00047     return inTesla(gp);  // default dummy implementation
00048   }

virtual bool MagneticField::isDefined ( const GlobalPoint gp  )  const [inline, virtual]

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

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

Definition at line 40 of file MagneticField.h.

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

00040                                                       {
00041     return true;
00042   }

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 int, inTesla(), and z.

Referenced by VolumeBasedMagneticField::VolumeBasedMagneticField().

00023                                       {
00024   return int((inTesla(GlobalPoint(0.,0.,0.))).z() * 10. + 0.5);
00025 }


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:27:57 2009 for CMSSW by  doxygen 1.5.4