Base class for table with bounds handling, interpolation and integration. More...
Public Member Functions | |
TableBase (const word &name, const dictionary &dict, const objectRegistry *obrPtr=nullptr) | |
Construct from dictionary - note table is not populated. More... | |
TableBase (const TableBase< Type > &tbl) | |
Copy constructor. Note: steals interpolator, tableSamples. More... | |
virtual | ~TableBase ()=default |
Destructor. More... | |
void | initialise () |
Check the table for size and consistency. More... | |
bool | checkMinBounds (const scalar x, scalar &xDash) const |
Check minimum table bounds. More... | |
bool | checkMaxBounds (const scalar x, scalar &xDash) const |
Check maximum table bounds. More... | |
virtual void | userTimeToTime (const Time &t) |
Convert time. More... | |
virtual Type | value (const scalar x) const |
Return Table value. More... | |
virtual Type | integrate (const scalar x1, const scalar x2) const |
Integrate between two (scalar) values. More... | |
virtual tmp< scalarField > | x () const |
Return the reference values. More... | |
virtual tmp< Field< Type > > | y () const |
Return the dependent values. More... | |
virtual void | writeData (Ostream &os) const |
Write all table data in dictionary format. More... | |
virtual void | writeEntries (Ostream &os) const |
Write keywords only in dictionary format. More... | |
Public Member Functions inherited from Function1< Type > | |
TypeName ("Function1") declareRunTimeSelectionTable(autoPtr | |
Runtime type information. More... | |
Function1 (const word &entryName, const objectRegistry *obrPtr=nullptr) | |
Construct from entry name. More... | |
Function1 (const word &entryName, const dictionary &dict, const objectRegistry *obrPtr=nullptr) | |
Construct from entry name, (unused) dictionary and optional registry. More... | |
Function1 (const Function1< Type > &rhs) | |
Copy construct. More... | |
virtual tmp< Function1< Type > > | clone () const =0 |
Return a clone. More... | |
virtual | ~Function1 ()=default |
Destructor. More... | |
virtual bool | constant () const |
Is value constant (i.e. independent of x) More... | |
virtual bool | good () const |
Can function be evaluated? More... | |
virtual tmp< Field< Type > > | value (const scalarField &x) const |
Return value as a function of (scalar) independent variable. More... | |
virtual tmp< Field< Type > > | integrate (const scalarField &x1, const scalarField &x2) const |
Integrate between two (scalar) values. More... | |
Public Member Functions inherited from function1Base | |
function1Base (const word &entryName, const objectRegistry *obrPtr=nullptr) | |
Construct from entry name and optional registry. More... | |
function1Base (const word &entryName, const dictionary &dict, const objectRegistry *obrPtr=nullptr) | |
Construct from entry name, dictionary (unused) and optional registry. More... | |
function1Base (const function1Base &rhs) | |
Copy construct. More... | |
virtual | ~function1Base () |
Destructor. More... | |
const word & | name () const noexcept |
The name of the entry. More... | |
const objectRegistry * | whichDb () const noexcept |
Return the associated registry or nullptr. More... | |
void | resetDb (const objectRegistry *obrPtr=nullptr) noexcept |
Reset the associated objectRegistry. More... | |
void | resetDb (const objectRegistry &db) noexcept |
Reset the associated objectRegistry. More... | |
const objectRegistry & | obr () const |
Return the object registry. More... | |
bool | isTime () const noexcept |
Return true if this function was created with the time database. More... | |
const Time & | time () const |
Return the time database. More... | |
template<class MeshType > | |
const MeshType & | mesh (const word ®ionName=word::null) const |
Return the mesh database if this Function1 was created using a mesh. More... | |
Public Member Functions inherited from refCount | |
constexpr | refCount () noexcept |
Default construct, initializing count to 0. More... | |
int | use_count () const noexcept |
Return the current reference count. More... | |
bool | unique () const noexcept |
Return true if the reference count is zero. More... | |
void | operator++ () noexcept |
Increment the reference count. More... | |
void | operator++ (int) noexcept |
Increment the reference count. More... | |
void | operator-- () noexcept |
Decrement the reference count. More... | |
void | operator-- (int) noexcept |
Decrement the reference count. More... | |
Protected Member Functions | |
const interpolationWeights & | interpolator () const |
Return (demand driven) interpolator. More... | |
void | operator= (const TableBase< Type > &)=delete |
No copy assignment. More... | |
Protected Member Functions inherited from Function1< Type > | |
void | operator= (const Function1< Type > &)=delete |
No copy assignment. More... | |
Protected Member Functions inherited from function1Base | |
void | operator= (const function1Base &)=delete |
No copy assignment. More... | |
Protected Attributes | |
const bounds::repeatableBounding | bounding_ |
Handling for out-of-bound values. More... | |
const word | interpolationScheme_ |
Interpolation type. More... | |
List< Tuple2< scalar, Type > > | table_ |
Table data. More... | |
autoPtr< scalarField > | tableSamplesPtr_ |
Extracted values. More... | |
autoPtr< interpolationWeights > | interpolatorPtr_ |
Interpolator method. More... | |
labelList | currentIndices_ |
Cached indices and weights. More... | |
scalarField | currentWeights_ |
Protected Attributes inherited from function1Base | |
const word | name_ |
Name of entry. More... | |
const objectRegistry * | obrPtr_ |
Pointer to an object registry. More... | |
Additional Inherited Members | |
Public Types inherited from Function1< Type > | |
typedef Type | returnType |
The return type. More... | |
Static Public Member Functions inherited from Function1< Type > | |
template<class Derived > | |
static tmp< Function1< Type > > | Clone (const Derived &fun) |
Clone a Function1. More... | |
static autoPtr< Function1< Type > > | New (const word &entryName, const dictionary &dict, const word &redirectType, const objectRegistry *obrPtr=nullptr, const bool mandatory=true) |
Selector, with fallback redirection. More... | |
static autoPtr< Function1< Type > > | NewCompat (const word &entryName, std::initializer_list< std::pair< const char *, int >> compat, const dictionary &dict, const word &redirectType=word::null, const objectRegistry *obrPtr=nullptr, const bool mandatory=true) |
Compatibility selector, with fallback redirection. More... | |
static autoPtr< Function1< Type > > | New (const word &entryName, const dictionary &dict, const objectRegistry *obrPtr=nullptr, const bool mandatory=true) |
Selector, without fallback redirection. More... | |
static autoPtr< Function1< Type > > | NewIfPresent (const word &entryName, const dictionary &dict, const word &redirectType, const objectRegistry *obrPtr=nullptr) |
An optional selector, with fallback redirection. More... | |
static autoPtr< Function1< Type > > | NewIfPresent (const word &entryName, const dictionary &dict, const objectRegistry *obrPtr=nullptr) |
An optional selector, without fallback redirection. More... | |
static refPtr< Function1< Type > > | New (HashPtrTable< Function1< Type >> &cache, const word &entryName, const dictionary &dict, enum keyType::option matchOpt=keyType::LITERAL, const objectRegistry *obrPtr=nullptr, const bool mandatory=true) |
Selector with external storage of Function1. This also allows wildcard matches in a dictionary. More... | |
Public Attributes inherited from Function1< Type > | |
Function1 | |
dictionary | |
const word & | entryName |
const word const dictionary & | dict |
const word const dictionary const objectRegistry * | obrPtr |
const word const dictionary const objectRegistry | entryName |
const word const dictionary const objectRegistry | dict |
const word const dictionary const objectRegistry | obrPtr |
Base class for table with bounds handling, interpolation and integration.
Definition at line 56 of file TableBase.H.
TableBase | ( | const word & | name, |
const dictionary & | dict, | ||
const objectRegistry * | obrPtr = nullptr |
||
) |
Construct from dictionary - note table is not populated.
Definition at line 56 of file TableBase.C.
Copy constructor. Note: steals interpolator, tableSamples.
Definition at line 89 of file TableBase.C.
|
virtualdefault |
Destructor.
|
protected |
Return (demand driven) interpolator.
Definition at line 30 of file TableBase.C.
References forAll, Foam::New(), and samples().
void initialise | ( | ) |
Check the table for size and consistency.
Definition at line 103 of file TableBase.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::name(), and Foam::nl.
bool checkMinBounds | ( | const scalar | x, |
scalar & | xDash | ||
) | const |
Check minimum table bounds.
Definition at line 135 of file TableBase.C.
References Foam::bounds::CLAMP, Foam::endl(), Foam::bounds::ERROR, Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::nl, Foam::bounds::REPEAT, Foam::bounds::WARN, WarningInFunction, and x.
bool checkMaxBounds | ( | const scalar | x, |
scalar & | xDash | ||
) | const |
Check maximum table bounds.
Definition at line 193 of file TableBase.C.
References Foam::bounds::CLAMP, Foam::endl(), Foam::bounds::ERROR, Foam::exit(), Foam::FatalError, FatalErrorInFunction, Foam::nl, Foam::bounds::REPEAT, Foam::bounds::WARN, WarningInFunction, and x.
|
virtual |
Convert time.
Reimplemented from function1Base.
Definition at line 250 of file TableBase.C.
References TimeState::userTimeToTime().
|
virtual |
Return Table value.
Reimplemented from Function1< Type >.
Definition at line 263 of file TableBase.C.
References x.
|
virtual |
Integrate between two (scalar) values.
Reimplemented from Function1< Type >.
Definition at line 292 of file TableBase.C.
References Foam::sum().
|
virtual |
Return the reference values.
Definition at line 311 of file TableBase.C.
References fld, forAll, tmp< T >::New(), and Foam::Zero.
Referenced by pointNoise::processData().
|
virtual |
Return the dependent values.
Definition at line 326 of file TableBase.C.
References fld, forAll, Foam::New(), and Foam::Zero.
Referenced by pointNoise::processData().
|
virtual |
Write all table data in dictionary format.
Reimplemented from Function1< Type >.
Reimplemented in CSV< Type >, Table< Type >, and TableFile< Type >.
Definition at line 362 of file TableBase.C.
References Foam::indent(), Foam::nl, os(), and Function1< Type >::writeData().
|
virtual |
Write keywords only in dictionary format.
Used for non-inline table types
Reimplemented from Function1< Type >.
Reimplemented in CSV< Type >.
Definition at line 341 of file TableBase.C.
References Foam::bounds::CLAMP, os(), and Foam::bounds::repeatableBoundingNames.
Referenced by TableFile< Type >::writeData(), Table< Type >::writeData(), and CSV< Type >::writeEntries().
|
protected |
Handling for out-of-bound values.
Definition at line 67 of file TableBase.H.
|
protected |
Interpolation type.
Definition at line 72 of file TableBase.H.
Table data.
Definition at line 77 of file TableBase.H.
|
mutableprotected |
Extracted values.
Definition at line 82 of file TableBase.H.
|
mutableprotected |
Interpolator method.
Definition at line 87 of file TableBase.H.
|
mutableprotected |
Cached indices and weights.
Definition at line 92 of file TableBase.H.
|
mutableprotected |
Definition at line 94 of file TableBase.H.