#include <MagGeometry.h>
Public Types | |
typedef Surface::GlobalPoint | GlobalPoint |
typedef Surface::GlobalVector | GlobalVector |
Public Member Functions | |
const std::vector < MagVolume6Faces const * > & | barrelVolumes () const |
const std::vector < MagVolume6Faces const * > & | endcapVolumes () const |
GlobalVector | fieldInTesla (const GlobalPoint &gp) const |
Return field vector at the specified global point. More... | |
MagVolume const * | findVolume (const GlobalPoint &gp, double tolerance=0.) const |
Find a volume. More... | |
MagGeometry (int geomVersion, const std::vector< MagBLayer * > &, const std::vector< MagESector * > &, const std::vector< MagVolume6Faces * > &, const std::vector< MagVolume6Faces * > &) | |
Constructor. More... | |
MagGeometry (int geomVersion, const std::vector< MagBLayer const * > &, const std::vector< MagESector const * > &, const std::vector< MagVolume6Faces const * > &, const std::vector< MagVolume6Faces const * > &) | |
~MagGeometry () | |
Destructor. More... | |
Private Member Functions | |
MagVolume const * | findVolume1 (const GlobalPoint &gp, double tolerance=0.) const |
bool | inBarrel (const GlobalPoint &gp) const |
Private Attributes | |
bool | cacheLastVolume |
int | geometryVersion |
const int | me_ |
MagBinFinders::GeneralBinFinderInR < double > const * | theBarrelBinFinder |
double | theBarrelRsq1 |
double | theBarrelRsq2 |
double | theBarrelZ0 |
double | theBarrelZ1 |
double | theBarrelZ2 |
std::vector< MagBLayer const * > | theBLayers |
std::vector< MagVolume6Faces const * > | theBVolumes |
PeriodicBinFinderInPhi< float > const * | theEndcapBinFinder |
std::vector< MagESector const * > | theESectors |
std::vector< MagVolume6Faces const * > | theEVolumes |
Friends | |
class | MagGeometryExerciser |
Entry point to the geometry of magnetic volumes.
Definition at line 23 of file MagGeometry.h.
Definition at line 26 of file MagGeometry.h.
Definition at line 25 of file MagGeometry.h.
MagGeometry::MagGeometry | ( | int | geomVersion, |
const std::vector< MagBLayer * > & | tbl, | ||
const std::vector< MagESector * > & | tes, | ||
const std::vector< MagVolume6Faces * > & | tbv, | ||
const std::vector< MagVolume6Faces * > & | tev | ||
) |
Constructor.
Definition at line 32 of file MagGeometry.cc.
MagGeometry::MagGeometry | ( | int | geomVersion, |
const std::vector< MagBLayer const * > & | tbl, | ||
const std::vector< MagESector const * > & | tes, | ||
const std::vector< MagVolume6Faces const * > & | tbv, | ||
const std::vector< MagVolume6Faces const * > & | tev | ||
) |
Definition at line 43 of file MagGeometry.cc.
References LogTrace, me_, Geom::pi(), theBarrelBinFinder, theBarrelRsq1, theBarrelRsq2, theBarrelZ0, theBarrelZ1, theBarrelZ2, theBLayers, theEndcapBinFinder, and theESectors.
MagGeometry::~MagGeometry | ( | ) |
Destructor.
Definition at line 107 of file MagGeometry.cc.
References theBarrelBinFinder, theBLayers, theEndcapBinFinder, and theESectors.
|
inline |
Definition at line 50 of file MagGeometry.h.
References theBVolumes.
|
inline |
Definition at line 51 of file MagGeometry.h.
References theEVolumes.
GlobalVector MagGeometry::fieldInTesla | ( | const GlobalPoint & | gp | ) | const |
Return field vector at the specified global point.
Definition at line 123 of file MagGeometry.cc.
References MagVolume::fieldInTesla(), findVolume(), edm::isNotFinite(), PV3DBase< T, PVType, FrameType >::mag(), and findQualityFiles::v.
Referenced by VolumeBasedMagneticField::inTesla(), and VolumeBasedMagneticField::inTeslaUnchecked().
MagVolume const * MagGeometry::findVolume | ( | const GlobalPoint & | gp, |
double | tolerance = 0. |
||
) | const |
Find a volume.
Definition at line 184 of file MagGeometry.cc.
References newFWLiteAna::bin, PeriodicBinFinderInPhi< T >::binIndex(), MagBinFinders::GeneralBinFinderInR< T >::binIndex(), cacheLastVolume, inBarrel(), LogTrace, SiStripPI::max, me_, PV3DBase< T, PVType, FrameType >::perp2(), phi, PV3DBase< T, PVType, FrameType >::phi(), mps_fire::result, mathSSE::sqrt(), theBarrelBinFinder, theBLayers, theEndcapBinFinder, and theESectors.
Referenced by fieldInTesla(), and VolumeBasedMagneticField::findVolume().
|
private |
Definition at line 143 of file MagGeometry.cc.
References newFWLiteAna::found, inBarrel(), theBVolumes, theEVolumes, and findQualityFiles::v.
|
private |
Definition at line 237 of file MagGeometry.cc.
References PV3DBase< T, PVType, FrameType >::perp2(), theBarrelRsq1, theBarrelRsq2, theBarrelZ0, and PV3DBase< T, PVType, FrameType >::z().
Referenced by findVolume(), and findVolume1().
|
friend |
Definition at line 54 of file MagGeometry.h.
|
private |
Definition at line 73 of file MagGeometry.h.
Referenced by findVolume().
|
private |
Definition at line 74 of file MagGeometry.h.
|
private |
Definition at line 61 of file MagGeometry.h.
Referenced by findVolume(), and MagGeometry().
|
private |
Definition at line 70 of file MagGeometry.h.
Referenced by findVolume(), MagGeometry(), and ~MagGeometry().
|
private |
Definition at line 77 of file MagGeometry.h.
Referenced by inBarrel(), and MagGeometry().
|
private |
Definition at line 78 of file MagGeometry.h.
Referenced by inBarrel(), and MagGeometry().
|
private |
Definition at line 79 of file MagGeometry.h.
Referenced by inBarrel(), and MagGeometry().
|
private |
Definition at line 80 of file MagGeometry.h.
Referenced by MagGeometry().
|
private |
Definition at line 81 of file MagGeometry.h.
Referenced by MagGeometry().
|
private |
Definition at line 63 of file MagGeometry.h.
Referenced by findVolume(), MagGeometry(), and ~MagGeometry().
|
private |
Definition at line 67 of file MagGeometry.h.
Referenced by barrelVolumes(), and findVolume1().
|
private |
Definition at line 71 of file MagGeometry.h.
Referenced by findVolume(), MagGeometry(), and ~MagGeometry().
|
private |
Definition at line 64 of file MagGeometry.h.
Referenced by findVolume(), MagGeometry(), and ~MagGeometry().
|
private |
Definition at line 68 of file MagGeometry.h.
Referenced by endcapVolumes(), and findVolume1().