#include <MagVolume.h>
Public Types | |
typedef GloballyPositioned< float > | Base |
typedef GloballyPositioned < float >::GlobalPoint | GlobalPoint |
typedef GloballyPositioned < float >::GlobalVector | GlobalVector |
typedef GloballyPositioned < float >::LocalPoint | LocalPoint |
typedef GloballyPositioned < float >::LocalVector | LocalVector |
Public Types inherited from GloballyPositioned< float > | |
typedef Point3DBase< float, GlobalTag > | GlobalPoint |
typedef Vector3DBase< float, GlobalTag > | GlobalVector |
typedef Point3DBase< float, LocalTag > | LocalPoint |
typedef Vector3DBase< float, LocalTag > | LocalVector |
typedef Point3DBase< float, GlobalTag > | PositionType |
typedef TkRotation< float > | RotationType |
typedef float | Scalar |
Public Member Functions | |
virtual const std::vector < VolumeSide > & | faces () const =0 |
Access to volume faces. More... | |
LocalVector | fieldInTesla (const LocalPoint &lp) const |
GlobalVector | fieldInTesla (const GlobalPoint &lp) const |
virtual bool | inside (const GlobalPoint &gp, double tolerance=0.) const =0 |
virtual bool | inside (const LocalPoint &lp, double tolerance=0.) const |
::GlobalVector | inTesla (const ::GlobalPoint &gp) const override |
bool | isIron () const |
Temporary hack to pass information on material. Will eventually be replaced! More... | |
MagVolume (const PositionType &pos, const RotationType &rot, const MagneticFieldProvider< float > *mfp, double sf=1.) | |
void | ownsFieldProvider (bool o) |
const MagneticFieldProvider < float > * | provider () const |
void | setIsIron (bool iron) |
~MagVolume () override | |
Public Member Functions inherited from GloballyPositioned< float > | |
float | eta () const |
GloballyPositioned () | |
GloballyPositioned (const PositionType &pos, const RotationType &rot) | |
void | move (const GlobalVector &displacement) |
float | phi () const |
const PositionType & | position () const |
void | rotate (const RotationType &rotation) |
const RotationType & | rotation () const |
GlobalPoint | toGlobal (const LocalPoint &lp) const |
Point3DBase< U, GlobalTag > | toGlobal (const Point3DBase< U, LocalTag > &lp) const |
GlobalVector | toGlobal (const LocalVector &lv) const |
Vector3DBase< U, GlobalTag > | toGlobal (const Vector3DBase< U, LocalTag > &lv) const |
LocalPoint | toLocal (const GlobalPoint &gp) const |
Point3DBase< U, LocalTag > | toLocal (const Point3DBase< U, GlobalTag > &gp) const |
LocalVector | toLocal (const GlobalVector &gv) const |
Vector3DBase< U, LocalTag > | toLocal (const Vector3DBase< U, GlobalTag > &gv) const |
virtual | ~GloballyPositioned () |
Public Member Functions inherited from MagneticField | |
virtual MagneticField * | clone () const |
GlobalVector | inInverseGeV (const GlobalPoint &gp) const |
Field value ad specified global point, in 1/Gev. More... | |
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 |
float | inverseBzAtOriginInGeV () const |
The inverse of field z component for this map in GeV. More... | |
virtual bool | isDefined (const GlobalPoint &) const |
True if the point is within the region where the concrete field. More... | |
MagneticField () | |
MagneticField (const MagneticField &orig) | |
int | nominalValue () const |
The nominal field value for this map in kGauss. More... | |
virtual | ~MagneticField () |
Private Attributes | |
bool | isIronFlag |
const MagneticFieldProvider < float > * | theProvider |
bool | theProviderOwned |
double | theScalingFactor |
Additional Inherited Members | |
Static Public Member Functions inherited from GloballyPositioned< float > | |
static float | iniEta () |
static float | iniPhi () |
Protected Member Functions inherited from MagneticField | |
void | setNominalValue () |
Definition at line 13 of file MagVolume.h.
typedef GloballyPositioned<float> MagVolume::Base |
Definition at line 15 of file MagVolume.h.
typedef GloballyPositioned<float>::GlobalPoint MagVolume::GlobalPoint |
Definition at line 18 of file MagVolume.h.
typedef GloballyPositioned<float>::GlobalVector MagVolume::GlobalVector |
Definition at line 19 of file MagVolume.h.
typedef GloballyPositioned<float>::LocalPoint MagVolume::LocalPoint |
Definition at line 16 of file MagVolume.h.
typedef GloballyPositioned<float>::LocalVector MagVolume::LocalVector |
Definition at line 17 of file MagVolume.h.
|
inline |
Definition at line 21 of file MagVolume.h.
|
override |
|
pure virtual |
Access to volume faces.
Implemented in defaultRKPropagator::RKMagVolume, MagVolume6Faces, and MagCylinder.
Referenced by SteppingHelixPropagator::refToMagVolume().
MagVolume::LocalVector MagVolume::fieldInTesla | ( | const LocalPoint & | lp | ) | const |
Definition at line 11 of file MagVolume.cc.
References theProvider, theScalingFactor, and MagneticFieldProvider< T >::valueInTesla().
Referenced by MagGeometry::fieldInTesla(), RKLocalFieldProvider::inTesla(), inTesla(), and SteppingHelixPropagator::loadState().
MagVolume::GlobalVector MagVolume::fieldInTesla | ( | const GlobalPoint & | lp | ) | const |
Definition at line 15 of file MagVolume.cc.
References theProvider, theScalingFactor, GloballyPositioned< float >::toGlobal(), GloballyPositioned< float >::toLocal(), and MagneticFieldProvider< T >::valueInTesla().
|
pure virtual |
Implemented in defaultRKPropagator::RKMagVolume, MagVolume6Faces, and MagCylinder.
Referenced by MagBLayer::findVolume(), and SteppingHelixPropagator::refToMagVolume().
|
inlinevirtual |
Reimplemented in MagCylinder.
Definition at line 35 of file MagVolume.h.
References inside(), GloballyPositioned< float >::toGlobal(), and tolerance.
Referenced by inside().
|
inlineoverride |
Definition at line 42 of file MagVolume.h.
References fieldInTesla().
Referenced by SteppingHelixPropagator::getNextState(), SteppingHelixPropagator::loadState(), and SteppingHelixPropagator::makeAtomStep().
|
inline |
Temporary hack to pass information on material. Will eventually be replaced!
Definition at line 45 of file MagVolume.h.
References isIronFlag.
Referenced by SteppingHelixPropagator::isYokeVolume().
|
inline |
Definition at line 47 of file MagVolume.h.
References class-composition::o, and theProviderOwned.
Referenced by magneticfield::MagGeoBuilder::buildMagVolumes(), and MagGeoBuilderFromDDD::buildMagVolumes().
|
inline |
|
inline |
|
private |
Definition at line 54 of file MagVolume.h.
Referenced by isIron(), and setIsIron().
|
private |
Definition at line 50 of file MagVolume.h.
Referenced by fieldInTesla(), provider(), and ~MagVolume().
|
private |
Definition at line 51 of file MagVolume.h.
Referenced by ownsFieldProvider(), and ~MagVolume().
|
private |
Definition at line 52 of file MagVolume.h.
Referenced by fieldInTesla().