19#include "BDSArray4DCoords.hh"
20#include "BDSFieldValue.hh"
21#include "BDSInterpolator4DCubic.hh"
22#include "BDSInterpolatorRoutines.hh"
30BDSInterpolator4DCubic::~BDSInterpolator4DCubic()
39 G4double xFrac, yFrac, zFrac, tFrac;
41 return BDS::Cubic4D(localData, xFrac, yFrac, zFrac, tFrac);
Overlay of 4D array that provides uniform only spatial coordinate mapping.
virtual void ExtractSection4x4x4x4(G4double x, G4double y, G4double z, G4double t, BDSFieldValue(&localData)[4][4][4][4], G4double &xFrac, G4double &yFrac, G4double &zFrac, G4double &tFrac) const
Extract 4x4x4x4 points lying around coordinate x.
virtual BDSFieldValue GetInterpolatedValueT(G4double x, G4double y, G4double z, G4double t) const
BDSInterpolator4DCubic()=delete
Private default constructor to force use of provided one.
Interface for all 4D interpolators.
BDSArray4DCoords * array
The field data.
T Cubic4D(const T p[4][4][4][4], G4double x, G4double y, G4double z, G4double t)
Cubic interpolation in 4 dimensions.