Table< Type > Class Template Reference

Templated interpolated tabulated data Function1. More...

Inheritance diagram for Table< Type >:
Collaboration diagram for Table< Type >:

Public Member Functions

 TypeName ("table")
 Runtime type information. More...
 
 Table (const word &name, const tableBase::boundsHandling boundsHandling, const word &interpolationScheme, const autoPtr< TableReader< Type >> &reader, const List< Tuple2< scalar, Type >> &table)
 Construct from components. More...
 
 Table (const word &name, const unitConversions &units, const dictionary &dict)
 Construct from name and dictionary. More...
 
 Table (const word &name, const unitConversion &xUnits, const unitConversion &valueUnits, const dictionary &dict)
 Construct from name and dictionary. More...
 
 Table (const word &name, const unitConversions &units, Istream &dict)
 Construct from name and Istream. More...
 
 Table (const Table< Type > &tbl)
 Copy constructor. More...
 
virtual ~Table ()
 Destructor. More...
 
const tableBase::boundsHandlingboundsHandling () const
 Return the handling out-of-bound values. More...
 
const wordinterpolationScheme () const
 Return the interpolation scheme. More...
 
const List< Tuple2< scalar, Type > > & values () const
 Return table data. More...
 
virtual Type value (const scalar x) const
 Return Table value as a function of scalar x. More...
 
virtual Type integral (const scalar x1, const scalar x2) const
 Integrate between two scalars. More...
 
virtual tmp< scalarFieldx () const
 Return the reference values. More...
 
virtual tmp< Field< Type > > y () const
 Return the dependent values. More...
 
virtual void write (Ostream &os, const unitConversions &units) const
 Write data to dictionary stream. More...
 
void operator= (const Table< Type > &)=delete
 Disallow default bitwise assignment. More...
 
- Public Member Functions inherited from tableBase
 tableBase ()
 Construct null. More...
 
- Public Member Functions inherited from FieldFunction1< Type, Table< Type > >
 FieldFunction1 (const word &name)
 Construct from name. More...
 
virtual tmp< Function1< Type > > clone () const
 Construct and return a clone. More...
 
virtual ~FieldFunction1 ()
 Destructor. More...
 
virtual tmp< Field< Type > > value (const scalarField &x) const
 Return value as a function of one scalar field. More...
 
virtual tmp< Field< Type > > integral (const scalarField &x1, const scalarField &x2) const
 Integrate between two scalar fields. More...
 
- Public Member Functions inherited from Function1< Type >
 TypeName ("Function1")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, Function1, dictionary,(const word &name, const Function1s::unitConversions &units, const dictionary &dict),(name, units, dict))
 
 declareRunTimeSelectionTable (autoPtr, Function1, Istream,(const word &name, const Function1s::unitConversions &units, Istream &is),(name, units, is))
 
 Function1 (const word &name)
 Construct from name. More...
 
 Function1 (const Function1< Type > &f1)
 Copy constructor. More...
 
virtual ~Function1 ()
 Destructor. More...
 
const wordname () const
 Return the name of the entry. More...
 
virtual bool constant () const
 Is this function guaranteed to be constant? More...
 
void operator= (const Function1< Type > &)
 Assignment. More...
 
- Public Member Functions inherited from refCount
int count () const
 Return the current reference count. More...
 
bool unique () const
 Return true if the reference count is zero. More...
 
void operator++ ()
 Increment the reference count. More...
 
void operator++ (int)
 Increment the reference count. More...
 
void operator-- ()
 Decrement the reference count. More...
 
void operator-- (int)
 Decrement the reference count. More...
 
void operator= (const refCount &)=delete
 Disallow bitwise assignment. More...
 

Additional Inherited Members

- Public Types inherited from tableBase
enum class  boundsHandling { error , warn , clamp , repeat }
 Enumeration for handling out-of-bound values. More...
 
- Public Types inherited from Function1< Type >
typedef Type returnType
 
- Static Public Member Functions inherited from Function1< Type >
static autoPtr< Function1< Type > > New (const word &name, const Function1s::unitConversions &units, const dictionary &dict)
 Select from dictionary. More...
 
static autoPtr< Function1< Type > > New (const word &name, const unitConversion &xUnits, const unitConversion &valueUnits, const dictionary &dict)
 Select from dictionary. More...
 
static autoPtr< Function1< Type > > New (const word &name, const Function1s::unitConversions &units, const word &Function1Type, Istream &is)
 Select from Istream. More...
 
static autoPtr< Function1< Type > > New (const word &name, const unitConversion &xUnits, const unitConversion &valueUnits, const word &Function1Type, Istream &is)
 Select from Istream. More...
 
- Static Public Attributes inherited from tableBase
static const NamedEnum< boundsHandling, 4 > boundsHandlingNames_
 Enumeration names for handling out-of-bound values. More...
 
- Protected Member Functions inherited from refCount
 refCount ()
 Construct null initialising count to 0. More...
 
 refCount (const refCount &)=delete
 Disallow copy. More...
 
- Protected Attributes inherited from Function1< Type >
const word name_
 Name of entry. More...
 

Detailed Description

template<class Type>
class Foam::Function1s::Table< Type >

Templated interpolated tabulated data Function1.

Items are stored in a list of Tuple2's. First column is always stored as scalar entries. Data is read in Tuple2 form:

Usage
    <name>   table
    (
        (0.0 (1 2 3))
        (1.0 (4 5 6))
    );

or in dictionary form which supports the setting of options, e.g.

    <name>   table;

    values
    (
        (0.0 (1 2 3))
        (1.0 (4 5 6))
    );

    outOfBounds         clamp;     // optional out-of-bounds handling
    interpolationScheme linear;    // optional interpolation method

or in sub-dictionary form which avoids clashes between table entries and other entries in the dictionary:

    <name>
    {
        type    table;

        values
        (
            (0.0 (1 2 3))
            (1.0 (4 5 6))
        );

        outOfBounds         clamp;     // optional out-of-bounds handling
        interpolationScheme linear;    // optional interpolation method
    }

The data may be read from a separate file in either native or CSV format:

    <name>
    {
        type                table;
        file                "<file path>"; // Name/path of thedata file
        format              foam;      // data format (optional)
        outOfBounds         clamp;     // optional out-of-bounds handling
        interpolationScheme linear;    // optional interpolation method
    }
Source files
See also
FoamTableReader.C CsvTableReader.C

Definition at line 118 of file Table.H.

Constructor & Destructor Documentation

◆ Table() [1/5]

Table ( const word name,
const tableBase::boundsHandling  boundsHandling,
const word interpolationScheme,
const autoPtr< TableReader< Type >> &  reader,
const List< Tuple2< scalar, Type >> &  table 
)

Construct from components.

Definition at line 136 of file Table.C.

◆ Table() [2/5]

Table ( const word name,
const unitConversions units,
const dictionary dict 
)

Construct from name and dictionary.

Definition at line 154 of file Table.C.

◆ Table() [3/5]

Table ( const word name,
const unitConversion xUnits,
const unitConversion valueUnits,
const dictionary dict 
)

Construct from name and dictionary.

Definition at line 184 of file Table.C.

◆ Table() [4/5]

Table ( const word name,
const unitConversions units,
Istream dict 
)

Construct from name and Istream.

Definition at line 197 of file Table.C.

◆ Table() [5/5]

Table ( const Table< Type > &  tbl)

Copy constructor.

Definition at line 215 of file Table.C.

◆ ~Table()

~Table
virtual

Destructor.

Definition at line 230 of file Table.C.

Member Function Documentation

◆ TypeName()

TypeName ( "table"  )

Runtime type information.

◆ boundsHandling()

const tableBase::boundsHandling& boundsHandling ( ) const
inline

Return the handling out-of-bound values.

Definition at line 218 of file Table.H.

◆ interpolationScheme()

const word& interpolationScheme ( ) const
inline

Return the interpolation scheme.

Definition at line 224 of file Table.H.

◆ values()

const List<Tuple2<scalar, Type> >& values ( ) const
inline

Return table data.

Definition at line 230 of file Table.H.

◆ value()

Type value ( const scalar  x) const
virtual

Return Table value as a function of scalar x.

Implements FieldFunction1< Type, Table< Type > >.

Definition at line 237 of file Table.C.

◆ integral()

Type integral ( const scalar  x1,
const scalar  x2 
) const
virtual

Integrate between two scalars.

Implements FieldFunction1< Type, Table< Type > >.

Definition at line 257 of file Table.C.

References Foam::bound(), forAll, n, tableBase::repeat, and Foam::Zero.

Here is the call graph for this function:

◆ x()

Return the reference values.

Definition at line 301 of file Table.C.

References fld(), forAll, and tmp< T >::ref().

Here is the call graph for this function:

◆ y()

Foam::tmp< Foam::Field< Type > > y
virtual

Return the dependent values.

Definition at line 317 of file Table.C.

References fld(), forAll, tmp< T >::ref(), and Foam::Zero.

Here is the call graph for this function:

◆ write()

void write ( Ostream os,
const unitConversions units 
) const
virtual

Write data to dictionary stream.

Implements Function1< Type >.

Definition at line 332 of file Table.C.

References tableBase::boundsHandlingNames_, tableBase::clamp, Foam::units(), and Foam::writeEntryIfDifferent().

Here is the call graph for this function:

◆ operator=()

void operator= ( const Table< Type > &  )
delete

Disallow default bitwise assignment.


The documentation for this class was generated from the following files: