38 #ifndef Function1Types_TableBase_H 39 #define Function1Types_TableBase_H 51 class interpolationWeights;
53 namespace Function1Types
134 virtual Type
value(
const scalar
x)
const;
137 virtual Type
integrate(
const scalar x1,
const scalar x2)
const;
Top level data entry class for use in dictionaries. Provides a mechanism to specify a variable as a c...
const word const dictionary & dict
List< Tuple2< scalar, Type > > table_
Table data.
A list of keyword definitions, which are a keyword followed by a number of values (eg...
const interpolationWeights & interpolator() const
Return (demand driven) interpolator.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
autoPtr< interpolationWeights > interpolatorPtr_
Interpolator method.
const bounds::repeatableBounding bounding_
Handling for out-of-bound values.
repeatableBounding
Enumeration for handling out-of-bound values that are repeatable.
Abstract base class for interpolating in 1D.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
Base class for table with bounds handling, interpolation and integration.
A class for handling words, derived from Foam::string.
virtual Type value(const scalar x) const
Return Table value.
bool checkMinBounds(const scalar x, scalar &xDash) const
Check minimum table bounds.
virtual tmp< scalarField > x() const
Return the reference values.
void initialise()
Check the table for size and consistency.
scalarField currentWeights_
virtual Type integrate(const scalar x1, const scalar x2) const
Integrate between two (scalar) values.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
virtual tmp< Field< Type > > y() const
Return the dependent values.
TableBase(const word &name, const dictionary &dict, const objectRegistry *obrPtr=nullptr)
Construct from dictionary - note table is not populated.
OBJstream os(runTime.globalPath()/outputName)
virtual void userTimeToTime(const Time &t)
Convert time.
const word interpolationScheme_
Interpolation type.
const word const dictionary const objectRegistry * obrPtr
autoPtr< scalarField > tableSamplesPtr_
Extracted values.
labelList currentIndices_
Cached indices and weights.
void operator=(const TableBase< Type > &)=delete
No copy assignment.
bool checkMaxBounds(const scalar x, scalar &xDash) const
Check maximum table bounds.
Pointer management similar to std::unique_ptr, with some additional methods and type checking...
A class for managing temporary objects.
Registry of regIOobjects.
virtual void writeData(Ostream &os) const
Write all table data in dictionary format.
virtual ~TableBase()=default
Destructor.
virtual void writeEntries(Ostream &os) const
Write keywords only in dictionary format.
const word & name() const noexcept
The name of the entry.