23 "direction", direction,
"Direction to look to find value for each interpolation dimension.");
26 "PiecewiseMulticonstant performs constant interpolation on 1D, 2D, 3D or 4D " 27 "data. The data_file specifies the axes directions and the function " 28 "values. If a point lies outside the data range, the appropriate end " 37 mooseError(
"Parameter direction must have a size identical to ",
_dim);
53 for (
unsigned int i = 0; i <
_dim; ++i)
Uses GriddedData to define data on a grid, and does linear interpolation on that data to provide func...
virtual RealGradient gradient(Real t, const Point &p) const override
Function objects can optionally provide a gradient at a point.
static InputParameters validParams()
Create new PiecewiseMultiInterpolation object.
std::unique_ptr< GriddedData > _gridded_data
object to provide function evaluations at points on the grid
virtual ADReal value(const ADReal &t, const ADPoint &p) const override
Override this to evaluate the scalar function at point (t,x,y,z), using dual numbers by default this ...
std::vector< std::vector< Real > > _grid
the grid
static InputParameters validParams()
virtual Real sample(const GridPoint &pt) const override
This does the core work.
unsigned int size() const
Return the number of active items in the MultiMooseEnum.
registerMooseObject("MooseApp", PiecewiseMulticonstant)
DualNumber< Real, DNDerivativeType, true > ADReal
virtual Real timeDerivative(Real t, const Point &p) const override
Get the time derivative of the function.
Utility class template for a semidynamic vector with a maximum size N and a chosen dynamic size...
void getNeighborIndices(std::vector< Real > in_arr, Real x, unsigned int &lower_x, unsigned int &upper_x) const
Operates on monotonically increasing in_arr.
unsigned int _dim
dimension of the grid
Uses GriddedData to define data on a grid, and does linear interpolation on that data to provide func...
PiecewiseMulticonstant(const InputParameters ¶meters)
unsigned int get(unsigned int i) const
Indexing operator Operator to retrieve the id of an item from the MultiMooseEnum. ...
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
registerMooseObjectAliased("MooseApp", PiecewiseMulticonstant, "PiecewiseMultiConstant")
void mooseError(Args &&... args) const
Emits an error prefixed with object name and type.
MultiMooseEnum _direction
direction where to look for value if interpolation order is constant
This is a "smart" enum class intended to replace many of the shortcomings in the C++ enum type...