CMS 3D CMS Logo

MagneticFieldMap.h
Go to the documentation of this file.
1 #ifndef FastSimulation_ParticlePropagator_MagneticFieldMap_H
2 #define FastSimulation_ParticlePropagator_MagneticFieldMap_H
3 
4 // Framework Headers
7 
8 // Famos headers
10 
11 #include <vector>
12 #include <string>
13 
14 class MagneticField;
16 class TH1;
17 
19 public:
20  // Constructor from a TrackerInteractionGeometry*
22 
23  const GlobalVector inTesla(const GlobalPoint&) const;
24  const GlobalVector inKGauss(const GlobalPoint&) const;
25  const GlobalVector inInverseGeV(const GlobalPoint&) const;
26  const GlobalVector inTesla(const TrackerLayer& aLayer, double coord, int success) const;
27  double inTeslaZ(const GlobalPoint&) const;
28  double inKGaussZ(const GlobalPoint&) const;
29  double inInverseGeVZ(const GlobalPoint&) const;
30  double inTeslaZ(const TrackerLayer& aLayer, double coord, int success) const;
31 
32  const MagneticField& magneticField() const { return *pMF_; }
33 
34 private:
35  void initialize();
36 
37  const std::vector<double>* theFieldEndcapHisto(unsigned layer) const { return &(fieldEndcapHistos[layer]); }
38 
39  const std::vector<double>* theFieldBarrelHisto(unsigned layer) const { return &(fieldBarrelHistos[layer]); }
40 
43  unsigned bins;
44  std::vector<std::vector<double> > fieldBarrelHistos;
45  std::vector<std::vector<double> > fieldEndcapHistos;
46  std::vector<double> fieldBarrelBinWidth;
47  std::vector<double> fieldBarrelZMin;
48  std::vector<double> fieldEndcapBinWidth;
49  std::vector<double> fieldEndcapRMin;
50 };
51 
52 #endif // FastSimulation_ParticlePropagator_MagneticFieldMap_H
Vector3DBase
Definition: Vector3DBase.h:8
MagneticFieldMap::theFieldBarrelHisto
const std::vector< double > * theFieldBarrelHisto(unsigned layer) const
Definition: MagneticFieldMap.h:39
MagneticFieldMap::inInverseGeV
const GlobalVector inInverseGeV(const GlobalPoint &) const
Definition: MagneticFieldMap.cc:89
MagneticFieldMap::inTeslaZ
double inTeslaZ(const GlobalPoint &) const
Definition: MagneticFieldMap.cc:91
MagneticFieldMap
Definition: MagneticFieldMap.h:18
MagneticFieldMap::fieldBarrelHistos
std::vector< std::vector< double > > fieldBarrelHistos
Definition: MagneticFieldMap.h:44
MagneticFieldMap::fieldEndcapBinWidth
std::vector< double > fieldEndcapBinWidth
Definition: MagneticFieldMap.h:48
TrackerLayer.h
MagneticFieldMap::fieldBarrelBinWidth
std::vector< double > fieldBarrelBinWidth
Definition: MagneticFieldMap.h:46
MagneticFieldMap::magneticField
const MagneticField & magneticField() const
Definition: MagneticFieldMap.h:32
summarizeEdmComparisonLogfiles.success
success
Definition: summarizeEdmComparisonLogfiles.py:114
MagneticFieldMap::fieldBarrelZMin
std::vector< double > fieldBarrelZMin
Definition: MagneticFieldMap.h:47
MagneticFieldMap::inInverseGeVZ
double inInverseGeVZ(const GlobalPoint &) const
Definition: MagneticFieldMap.cc:131
Point3DBase< float, GlobalTag >
TrackerInteractionGeometry
Definition: TrackerInteractionGeometry.h:23
MagneticFieldMap::fieldEndcapHistos
std::vector< std::vector< double > > fieldEndcapHistos
Definition: MagneticFieldMap.h:45
phase1PixelTopology::layer
constexpr std::array< uint8_t, layerIndexSize > layer
Definition: phase1PixelTopology.h:99
TrackerLayer
Definition: TrackerLayer.h:13
MagneticFieldMap::inKGauss
const GlobalVector inKGauss(const GlobalPoint &) const
Definition: MagneticFieldMap.cc:87
MagneticFieldMap::pMF_
const MagneticField * pMF_
Definition: MagneticFieldMap.h:41
MagneticFieldMap::MagneticFieldMap
MagneticFieldMap(const MagneticField *pmF, const TrackerInteractionGeometry *myGeo)
Definition: MagneticFieldMap.cc:7
MagneticFieldMap::fieldEndcapRMin
std::vector< double > fieldEndcapRMin
Definition: MagneticFieldMap.h:49
MagneticFieldMap::initialize
void initialize()
GlobalVector.h
MagneticFieldMap::geometry_
const TrackerInteractionGeometry * geometry_
Definition: MagneticFieldMap.h:42
MagneticFieldMap::inTesla
const GlobalVector inTesla(const GlobalPoint &) const
Definition: MagneticFieldMap.cc:71
MagneticFieldMap::inKGaussZ
double inKGaussZ(const GlobalPoint &) const
Definition: MagneticFieldMap.cc:129
MagneticFieldMap::theFieldEndcapHisto
const std::vector< double > * theFieldEndcapHisto(unsigned layer) const
Definition: MagneticFieldMap.h:37
MagneticFieldMap::bins
unsigned bins
Definition: MagneticFieldMap.h:43
MagneticField
Definition: MagneticField.h:19
GlobalPoint.h