CMS 3D CMS Logo

ZReflectedMFGrid Class Reference

#include <MagneticField/Interpolation/src/ZReflectedMFGrid.h>

Inheritance diagram for ZReflectedMFGrid:

MFGrid MagneticFieldProvider< float >

List of all members.

Public Member Functions

virtual std::vector< intdimensions () const
virtual LocalPoint fromGridFrame (double a, double b, double c) const
 find grid coordinates for point. For debugging and validation only.
virtual LocalPoint nodePosition (int i, int j, int k) const
 Position of node in local frame.
virtual LocalVector nodeValue (int i, int j, int k) const
 Field value at node.
virtual void toGridFrame (const LocalPoint &p, double &a, double &b, double &c) const
 find grid coordinates for point. For debugging and validation only.
virtual LocalVector valueInTesla (const LocalPoint &p) const
 Interpolated field value at given point.
 ZReflectedMFGrid (const GloballyPositioned< float > &vol, MFGrid *sectorGrid)
 ~ZReflectedMFGrid ()

Private Member Functions

void throwUp (const std::string &message) const

Private Attributes

double theDelta
double thePhiMax
double thePhiMin
MFGridtheSectorGrid


Detailed Description

Definition at line 6 of file ZReflectedMFGrid.h.


Constructor & Destructor Documentation

ZReflectedMFGrid::ZReflectedMFGrid ( const GloballyPositioned< float > &  vol,
MFGrid sectorGrid 
)

Definition at line 8 of file ZReflectedMFGrid.cc.

00009                                                         :
00010   MFGrid(vol), theSectorGrid( sectorGrid)
00011 
00012 {}

ZReflectedMFGrid::~ZReflectedMFGrid (  ) 

Definition at line 14 of file ZReflectedMFGrid.cc.

References theSectorGrid.

00015 {
00016   delete theSectorGrid;
00017 }


Member Function Documentation

vector< int > ZReflectedMFGrid::dimensions (  )  const [virtual]

Implements MFGrid.

Definition at line 43 of file ZReflectedMFGrid.cc.

References MFGrid::dimensions(), and theSectorGrid.

00043 {return theSectorGrid->dimensions();}

MFGrid::LocalPoint ZReflectedMFGrid::fromGridFrame ( double  a,
double  b,
double  c 
) const [virtual]

find grid coordinates for point. For debugging and validation only.

Implements MFGrid.

Definition at line 37 of file ZReflectedMFGrid.cc.

References throwUp().

00038 {
00039   throwUp("Not implemented yet");
00040   return LocalPoint();
00041 }

MFGrid::LocalPoint ZReflectedMFGrid::nodePosition ( int  i,
int  j,
int  k 
) const [virtual]

Position of node in local frame.

Implements MFGrid.

Definition at line 45 of file ZReflectedMFGrid.cc.

References throwUp().

00046 {
00047   throwUp("Not implemented yet");
00048   return LocalPoint();
00049 }

MFGrid::LocalVector ZReflectedMFGrid::nodeValue ( int  i,
int  j,
int  k 
) const [virtual]

Field value at node.

Implements MFGrid.

Definition at line 51 of file ZReflectedMFGrid.cc.

References throwUp().

00052 {
00053   throwUp("Not implemented yet");
00054   return LocalVector();
00055 }

void ZReflectedMFGrid::throwUp ( const std::string &  message  )  const [private]

Definition at line 27 of file ZReflectedMFGrid.cc.

References GenMuonPlsPt100GeV_cfg::cout, and lat::endl().

Referenced by fromGridFrame(), nodePosition(), nodeValue(), and toGridFrame().

00028 {
00029   std::cout << "Throwing exception " << message << std::endl;
00030   throw MagGeometryError(message);
00031 }

void ZReflectedMFGrid::toGridFrame ( const LocalPoint p,
double &  a,
double &  b,
double &  c 
) const [virtual]

find grid coordinates for point. For debugging and validation only.

Implements MFGrid.

Definition at line 32 of file ZReflectedMFGrid.cc.

References throwUp().

00033 {
00034   throwUp("Not implemented yet");
00035 }

MFGrid::LocalVector ZReflectedMFGrid::valueInTesla ( const LocalPoint p  )  const [virtual]

Interpolated field value at given point.

Implements MFGrid.

Definition at line 19 of file ZReflectedMFGrid.cc.

References theSectorGrid, MFGrid::valueInTesla(), PV3DBase< T, PVType, FrameType >::x(), PV3DBase< T, PVType, FrameType >::y(), and PV3DBase< T, PVType, FrameType >::z().

00020 {
00021   // Z reflection of point
00022   LocalPoint mirrorp( p.x(), p.y(), -p.z());
00023   LocalVector mirrorB = theSectorGrid->valueInTesla( mirrorp);
00024   return LocalVector( -mirrorB.x(), -mirrorB.y(), mirrorB.z());
00025 }


Member Data Documentation

double ZReflectedMFGrid::theDelta [private]

Definition at line 32 of file ZReflectedMFGrid.h.

double ZReflectedMFGrid::thePhiMax [private]

Definition at line 30 of file ZReflectedMFGrid.h.

double ZReflectedMFGrid::thePhiMin [private]

Definition at line 29 of file ZReflectedMFGrid.h.

MFGrid* ZReflectedMFGrid::theSectorGrid [private]

Definition at line 31 of file ZReflectedMFGrid.h.

Referenced by dimensions(), valueInTesla(), and ~ZReflectedMFGrid().


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