#include <TrapezoidalCartesianMFGrid.h>
Public Member Functions | |
void | dump () const override |
LocalPoint | fromGridFrame (double a, double b, double c) const override |
find grid coordinates for point. For debugging and validation only. More... | |
void | toGridFrame (const LocalPoint &p, double &a, double &b, double &c) const override |
find grid coordinates for point. For debugging and validation only. More... | |
TrapezoidalCartesianMFGrid (binary_ifstream &istr, const GloballyPositioned< float > &vol) | |
LocalVector | uncheckedValueInTesla (const LocalPoint &p) const override |
Interpolated field value at given point; does not check for exceptions. More... | |
Public Member Functions inherited from MFGrid3D | |
Dimensions | dimensions (void) const override |
Indexes | index (const LocalPoint &p) const override |
MFGrid3D (const GloballyPositioned< float > &vol) | |
LocalPoint | nodePosition (int i, int j, int k) const override |
Position of node in local frame. More... | |
LocalVector | nodeValue (int i, int j, int k) const override |
Field value at node. More... | |
LocalVector | valueInTesla (const LocalPoint &p) const override |
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) | |
~MFGrid () override | |
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, dumpMFGeometry_cfg::delta, dump(), MFGrid::frame(), MFGrid3D::grid_, increasingAlongX, Grid1D::lower(), mapping_, callgraph::n2, submitDQMOfflineCAF::nLines, hltrates_dqm_sourceclient-live_cfg::offset, Trapezoid2RectangleMappingX::rectangle(), GloballyPositioned< T >::toGlobal(), GloballyPositioned< T >::toLocal(), Grid1D::upper(), x, PV3DBase< T, VectorTag, FrameTag >::x(), y, PV3DBase< T, VectorTag, FrameTag >::y(), z, and PV3DBase< T, VectorTag, FrameTag >::z().
|
overridevirtual |
Reimplemented from MFGrid.
Definition at line 181 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().
|
overridevirtual |
find grid coordinates for point. For debugging and validation only.
Implements MFGrid.
Definition at line 245 of file TrapezoidalCartesianMFGrid.cc.
References a, b, c, increasingAlongX, mapping_, and Trapezoid2RectangleMappingX::trapezoid().
|
overridevirtual |
find grid coordinates for point. For debugging and validation only.
Implements MFGrid.
Definition at line 235 of file TrapezoidalCartesianMFGrid.cc.
References a, b, c, increasingAlongX, mapping_, AlCaHLTBitMon_ParallelJobs::p, and Trapezoid2RectangleMappingX::rectangle().
|
overridevirtual |
Interpolated field value at given point; does not check for exceptions.
Implements MFGrid3D.
Definition at line 215 of file TrapezoidalCartesianMFGrid.cc.
References MFGrid3D::grid_, increasingAlongX, LinearGridInterpolator3D::interpolate(), mapping_, AlCaHLTBitMon_ParallelJobs::p, Trapezoid2RectangleMappingX::rectangle(), and std::swap().
|
private |
Definition at line 34 of file TrapezoidalCartesianMFGrid.h.
Referenced by TrapezoidalCartesianMFGrid().
|
private |
Definition at line 33 of file TrapezoidalCartesianMFGrid.h.
Referenced by fromGridFrame(), toGridFrame(), TrapezoidalCartesianMFGrid(), and uncheckedValueInTesla().
|
private |
Definition at line 32 of file TrapezoidalCartesianMFGrid.h.
Referenced by fromGridFrame(), toGridFrame(), TrapezoidalCartesianMFGrid(), and uncheckedValueInTesla().