Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:22:32

0001 #ifndef ZReflectedMFGrid_H
0002 #define ZReflectedMFGrid_H
0003 
0004 #include "MagneticField/Interpolation/interface/MFGrid.h"
0005 #include "FWCore/Utilities/interface/Visibility.h"
0006 
0007 class dso_internal ZReflectedMFGrid : public MFGrid {
0008 public:
0009   ZReflectedMFGrid(const GloballyPositioned<float>& vol, MFGrid* sectorGrid);
0010 
0011   ~ZReflectedMFGrid() override;
0012 
0013   LocalVector valueInTesla(const LocalPoint& p) const override;
0014 
0015   void toGridFrame(const LocalPoint& p, double& a, double& b, double& c) const override;
0016 
0017   LocalPoint fromGridFrame(double a, double b, double c) const override;
0018 
0019   Dimensions dimensions() const override;
0020 
0021   LocalPoint nodePosition(int i, int j, int k) const override;
0022 
0023   LocalVector nodeValue(int i, int j, int k) const override;
0024 
0025 private:
0026   double thePhiMin;
0027   double thePhiMax;
0028   MFGrid* theSectorGrid;
0029   double theDelta;
0030 
0031   void throwUp(const char* message) const;
0032 };
0033 
0034 #endif