An interpolation/look-up table of scalar vs <Type> values. The reference scalar values must be monotonically increasing. More...
Public Types | |
typedef Tuple2< scalar, Type > | value_type |
The element data type. More... | |
typedef Type | mapped_type |
The mapped data type. More... | |
![]() | |
typedef SubList< Tuple2< scalar, Type > > | subList |
Declare type of subList. More... | |
Public Member Functions | |
interpolationTable () | |
Default construct. More... | |
interpolationTable (const List< Tuple2< scalar, Type >> &values, const bounds::repeatableBounding bounding, const fileName &fName) | |
Construct from components. More... | |
interpolationTable (const fileName &fName) | |
Construct given the name of the file containing the table of data. More... | |
interpolationTable (const dictionary &dict) | |
interpolationTable (const interpolationTable &tbl) | |
Copy construct. More... | |
void | check () const |
Check that list is monotonically increasing. More... | |
void | write (Ostream &os) const |
Write. More... | |
Type | rateOfChange (scalar lookupValue) const |
Type | interpolateValue (scalar lookupValue) const |
Return an interpolated value. More... | |
tmp< Field< Type > > | interpolateValues (const UList< scalar > &vals) const |
Return multiple interpolated values. More... | |
void | operator= (const interpolationTable< Type > &rhs) |
Copy assignment. More... | |
const Tuple2< scalar, Type > & | operator[] (label idx) const |
Return an element of constant Tuple2<scalar, Type> More... | |
Type | operator() (scalar lookupValue) const |
Return an interpolated value. More... | |
![]() | |
constexpr | List () noexcept |
Default construct. More... | |
List (const label len) | |
Construct with given size. More... | |
List (const label len, const Tuple2< scalar, Type > &val) | |
Construct with given size and value for all elements. More... | |
List (const label len, const Foam::zero) | |
Construct with given size initializing all elements to zero. More... | |
List (const Foam::one, const Tuple2< scalar, Type > &val) | |
Construct with length=1, copying the value as the only content. More... | |
List (const Foam::one, Tuple2< scalar, Type > &&val) | |
Construct with length=1, moving the value as the only content. More... | |
List (const Foam::one, const Foam::zero) | |
Construct with length=1, initializing content to zero. More... | |
List (const List< Tuple2< scalar, Type > > &a) | |
Copy construct from list. More... | |
List (const UList< Tuple2< scalar, Type > > &a) | |
Copy construct contents from list. More... | |
List (List< Tuple2< scalar, Type > > &a, bool reuse) | |
Construct as copy or re-use as specified. More... | |
List (const UList< Tuple2< scalar, Type > > &list, const labelUList &indices) | |
Copy construct subset of list. More... | |
List (const UList< Tuple2< scalar, Type > > &list, const FixedList< label, N > &indices) | |
Copy construct subset of list. More... | |
List (const FixedList< Tuple2< scalar, Type >, N > &list) | |
Construct as copy of FixedList<T, N> More... | |
List (const PtrList< Tuple2< scalar, Type > > &list) | |
Construct as copy of PtrList<T> More... | |
List (const SLList< Tuple2< scalar, Type > > &list) | |
Construct as copy of SLList<T> More... | |
List (const IndirectListBase< Tuple2< scalar, Type >, Addr > &list) | |
Construct as copy of IndirectList contents. More... | |
List (std::initializer_list< Tuple2< scalar, Type > > list) | |
Construct from an initializer list. More... | |
List (List< Tuple2< scalar, Type > > &&list) | |
Move construct from List. More... | |
List (DynamicList< Tuple2< scalar, Type >, SizeMin > &&list) | |
Move construct from DynamicList. More... | |
List (SortableList< Tuple2< scalar, Type > > &&list) | |
Move construct from SortableList. More... | |
List (SLList< Tuple2< scalar, Type > > &&list) | |
Move construct from SLList. More... | |
List (Istream &is) | |
Construct from Istream. More... | |
autoPtr< List< Tuple2< scalar, Type > > > | clone () const |
Clone. More... | |
~List () | |
Destructor. More... | |
void | clear () |
Clear the list, i.e. set size to zero. More... | |
void | resize (const label len) |
Adjust allocated size of list. More... | |
void | resize (const label len, const Tuple2< scalar, Type > &val) |
Adjust allocated size of list and set val for new elements. More... | |
void | resize (const label newLen) |
void | resize_nocopy (const label len) |
Adjust allocated size of list without necessarily. More... | |
void | setSize (const label n) |
Alias for resize() More... | |
void | setSize (const label n, const Tuple2< scalar, Type > &val) |
Alias for resize() More... | |
void | append (const Tuple2< scalar, Type > &val) |
Append an element at the end of the list. More... | |
void | append (Tuple2< scalar, Type > &&val) |
Move append an element at the end of the list. More... | |
void | append (const UList< Tuple2< scalar, Type > > &list) |
Append a List to the end of this list. More... | |
void | append (const IndirectListBase< Tuple2< scalar, Type >, Addr > &list) |
Append IndirectList contents at the end of this list. More... | |
label | appendUniq (const Tuple2< scalar, Type > &val) |
Append an element if not already in the list. More... | |
void | transfer (List< Tuple2< scalar, Type > > &list) |
void | transfer (DynamicList< Tuple2< scalar, Type >, SizeMin > &list) |
void | transfer (SortableList< Tuple2< scalar, Type > > &list) |
Tuple2< scalar, Type > & | newElmt (const label i) |
void | operator= (const UList< Tuple2< scalar, Type > > &a) |
Assignment to UList operator. Takes linear time. More... | |
void | operator= (const List< Tuple2< scalar, Type > > &list) |
Assignment operator. Takes linear time. More... | |
void | operator= (const SLList< Tuple2< scalar, Type > > &list) |
Assignment to SLList operator. Takes linear time. More... | |
void | operator= (const IndirectListBase< Tuple2< scalar, Type >, Addr > &list) |
Assignment from IndirectList. Takes linear time. More... | |
void | operator= (const FixedList< Tuple2< scalar, Type >, N > &list) |
Copy assignment from FixedList. More... | |
void | operator= (std::initializer_list< Tuple2< scalar, Type > > list) |
Assignment to an initializer list. More... | |
void | operator= (const Tuple2< scalar, Type > &val) |
Assignment of all entries to the given value. More... | |
void | operator= (const Foam::zero) |
Assignment of all entries to zero. More... | |
void | operator= (List< Tuple2< scalar, Type > > &&list) |
Move assignment. Takes constant time. More... | |
void | operator= (DynamicList< Tuple2< scalar, Type >, SizeMin > &&list) |
Move assignment. Takes constant time. More... | |
void | operator= (SortableList< Tuple2< scalar, Type > > &&list) |
Move assignment. Takes constant time. More... | |
void | operator= (SLList< Tuple2< scalar, Type > > &&list) |
Move assignment. Takes constant time. More... | |
Istream & | readList (Istream &is) |
Read List from Istream, discarding contents of existing List. More... | |
Istream & | readList (Istream &is) |
Istream & | readList (Istream &is) |
void | shallowCopy (const UList< Tuple2< scalar, Type > > &)=delete |
No shallowCopy permitted. More... | |
std::enable_if< std::is_same< bool, TypeT >::value, bool >::type | set (const label i, bool val=true) |
A bitSet::set() method for a list of bool. More... | |
Static Public Member Functions | |
static Type | interpolateValue (const List< Tuple2< scalar, Type >> &list, scalar lookupValue, bounds::repeatableBounding=bounds::repeatableBounding::CLAMP) |
Return an interpolated value in List. More... | |
![]() | |
static const List< Tuple2< scalar, Type > > & | null () |
Return a null List. More... | |
An interpolation/look-up table of scalar vs <Type> values. The reference scalar values must be monotonically increasing.
The handling of out-of-bounds values depends on the current setting of outOfBounds
.
If repeat
is chosen for the out-of-bounds handling, the final time value is treated as being equivalent to time=0 for the following periods.
The construct from dictionary reads a filename from a dictionary and has an optional readerType. Default is to read OpenFOAM format. The only other format is csv (comma separated values):
Read csv format:
readerType csv; file "<constant>/p0vsTime.csv"; hasHeaderLine true; // skip first line refColumn 0; // reference (eg, time) is in column 0 componentColumns (1); // component values starts in column 1
Definition at line 81 of file interpolationTable.H.
typedef Tuple2<scalar, Type> value_type |
The element data type.
Definition at line 108 of file interpolationTable.H.
typedef Type mapped_type |
The mapped data type.
Definition at line 111 of file interpolationTable.H.
Default construct.
Definition at line 61 of file interpolationTable.C.
interpolationTable | ( | const List< Tuple2< scalar, Type >> & | values, |
const bounds::repeatableBounding | bounding, | ||
const fileName & | fName | ||
) |
Construct from components.
Definition at line 72 of file interpolationTable.C.
|
explicit |
Construct given the name of the file containing the table of data.
Definition at line 86 of file interpolationTable.C.
|
explicit |
Construct by reading file name and outOfBounds from dictionary and read the table from that file.
This is a specialised constructor used by patchFields
Definition at line 98 of file interpolationTable.C.
interpolationTable | ( | const interpolationTable< Type > & | tbl | ) |
Copy construct.
Definition at line 120 of file interpolationTable.C.
|
static |
Return an interpolated value in List.
Definition at line 311 of file interpolationTable.C.
void check | ( | ) | const |
Check that list is monotonically increasing.
Exit with a FatalError if there is a problem
Definition at line 134 of file interpolationTable.C.
void write | ( | Ostream & | os | ) | const |
Write.
Definition at line 160 of file interpolationTable.C.
Type rateOfChange | ( | scalar | lookupValue | ) | const |
Return the rate of change at the interpolation location for the given lookup value
Definition at line 172 of file interpolationTable.C.
Type interpolateValue | ( | scalar | lookupValue | ) | const |
Return an interpolated value.
Definition at line 464 of file interpolationTable.C.
Foam::tmp< Foam::Field< Type > > interpolateValues | ( | const UList< scalar > & | vals | ) | const |
Return multiple interpolated values.
Definition at line 475 of file interpolationTable.C.
void operator= | ( | const interpolationTable< Type > & | rhs | ) |
Copy assignment.
Definition at line 495 of file interpolationTable.C.
const Foam::Tuple2< Foam::scalar, Type > & operator[] | ( | label | idx | ) | const |
Return an element of constant Tuple2<scalar, Type>
Definition at line 513 of file interpolationTable.C.
Type operator() | ( | scalar | lookupValue | ) | const |
Return an interpolated value.
Definition at line 609 of file interpolationTable.C.