#include <TrapezoidalCartesianMFGrid.h>
Public Member Functions | |
void | dump () const |
virtual LocalPoint | fromGridFrame (double a, double b, double c) const |
find grid coordinates for point. For debugging and validation only. More... | |
virtual void | toGridFrame (const LocalPoint &p, double &a, double &b, double &c) const |
find grid coordinates for point. For debugging and validation only. More... | |
TrapezoidalCartesianMFGrid (binary_ifstream &istr, const GloballyPositioned< float > &vol) | |
virtual LocalVector | uncheckedValueInTesla (const LocalPoint &p) const |
Interpolated field value at given point; does not check for exceptions. More... | |
Public Member Functions inherited from MFGrid3D | |
virtual Dimensions | dimensions (void) const |
virtual Indexes | index (const LocalPoint &p) const |
MFGrid3D (const GloballyPositioned< float > &vol) | |
virtual LocalPoint | nodePosition (int i, int j, int k) const |
Position of node in local frame. More... | |
virtual LocalVector | nodeValue (int i, int j, int k) const |
Field value at node. More... | |
virtual LocalVector | valueInTesla (const LocalPoint &p) const |
Interpolated field value at given point. More... | |
Public Member Functions inherited from MFGrid | |
const GloballyPositioned< float > & | frame () const |
Local reference frame. More... | |
MFGrid (const GloballyPositioned< float > &vol) | |
virtual | ~MFGrid () |
Public Member Functions inherited from MagneticFieldProvider< float > | |
virtual LocalVectorType | derivativeInTeslaPerMeter (const LocalPointType &p, int N) const |
virtual int | hasDerivatives () const |
virtual LocalVectorType | valueInTesla (const LocalPointType &p) const =0 |
virtual | ~MagneticFieldProvider () |
Private Attributes | |
bool | convertToLocal |
bool | increasingAlongX |
Trapezoid2RectangleMappingX | mapping_ |
Additional Inherited Members | |
Public Types inherited from MFGrid | |
typedef GloballyPositioned < float >::GlobalPoint | GlobalPoint |
typedef GloballyPositioned < float >::GlobalVector | GlobalVector |
typedef GloballyPositioned < float >::LocalPoint | LocalPoint |
typedef GloballyPositioned < float >::LocalVector | LocalVector |
Public Types inherited from MagneticFieldProvider< float > | |
typedef Point3DBase< float, GlobalTag > | GlobalPointType |
typedef Vector3DBase< float, GlobalTag > | GlobalVectorType |
typedef Point3DBase< float, LocalTag > | LocalPointType |
typedef Vector3DBase< float, LocalTag > | LocalVectorType |
Protected Types inherited from MFGrid3D | |
using | BVector = Grid3D::BVector |
using | GridType = Grid3D |
Protected Member Functions inherited from MFGrid3D | |
void | setGrid (const GridType &grid) |
Protected Attributes inherited from MFGrid3D | |
GridType | grid_ |
Grid for a trapezoid in cartesian coordinate. The grid must have uniform spacing in two coordinates and increasing spacing in the other. Increasing spacing is supported only for x and y for the time being
Definition at line 19 of file TrapezoidalCartesianMFGrid.h.
TrapezoidalCartesianMFGrid::TrapezoidalCartesianMFGrid | ( | binary_ifstream & | istr, |
const GloballyPositioned< float > & | vol | ||
) |
Definition at line 16 of file TrapezoidalCartesianMFGrid.cc.
References a, b, convertToLocal, gather_cfg::cout, delta, dump(), MFGrid::frame(), MFGrid3D::grid_, h, increasingAlongX, Grid1D::lower(), mapping_, submitDQMOfflineCAF::nLines, HLT_25ns14e33_v1_cff::offset, Trapezoid2RectangleMappingX::rectangle(), GloballyPositioned< T >::toGlobal(), GloballyPositioned< T >::toLocal(), Grid1D::upper(), x, PV3DBase< T, VectorTag, FrameTag >::x(), detailsBasic3DVector::y, PV3DBase< T, VectorTag, FrameTag >::y(), detailsBasic3DVector::z, and PV3DBase< T, VectorTag, FrameTag >::z().
|
virtual |
Reimplemented from MFGrid.
Definition at line 188 of file TrapezoidalCartesianMFGrid.cc.
References gather_cfg::cout, Grid3D::data(), MFGrid3D::grid_, Grid3D::grida(), Grid3D::gridb(), Grid3D::gridc(), Grid1D::lower(), Grid1D::nodes(), and Grid1D::step().
Referenced by TrapezoidalCartesianMFGrid().
|
virtual |
find grid coordinates for point. For debugging and validation only.
Implements MFGrid.
Definition at line 263 of file TrapezoidalCartesianMFGrid.cc.
References increasingAlongX, mapping_, and Trapezoid2RectangleMappingX::trapezoid().
|
virtual |
find grid coordinates for point. For debugging and validation only.
Implements MFGrid.
Definition at line 251 of file TrapezoidalCartesianMFGrid.cc.
References a, b, increasingAlongX, mapping_, and Trapezoid2RectangleMappingX::rectangle().
|
virtual |
Interpolated field value at given point; does not check for exceptions.
Implements MFGrid3D.
Definition at line 228 of file TrapezoidalCartesianMFGrid.cc.
References MFGrid3D::grid_, increasingAlongX, LinearGridInterpolator3D::interpolate(), mapping_, Trapezoid2RectangleMappingX::rectangle(), and std::swap().
|
private |
Definition at line 37 of file TrapezoidalCartesianMFGrid.h.
Referenced by TrapezoidalCartesianMFGrid().
|
private |
Definition at line 36 of file TrapezoidalCartesianMFGrid.h.
Referenced by fromGridFrame(), toGridFrame(), TrapezoidalCartesianMFGrid(), and uncheckedValueInTesla().
|
private |
Definition at line 35 of file TrapezoidalCartesianMFGrid.h.
Referenced by fromGridFrame(), toGridFrame(), TrapezoidalCartesianMFGrid(), and uncheckedValueInTesla().