Top level data entry class for use in dictionaries. Provides a mechanism to specify a variable as a certain type, e.g. constant or table, and provide functions to return the (interpolated) value, and integral between limits. More...
Public Types | |
typedef Type | returnType |
Public Member Functions | |
TypeName ("Function1") declareRunTimeSelectionTable(autoPtr | |
Runtime type information. More... | |
Function1 (const word &entryName) | |
Construct from entry name. More... | |
Function1 (const word &entryName, const dictionary &dict) | |
Construct from entry name and dictionary. More... | |
Function1 (const Function1< Type > &rhs) | |
Copy construct. More... | |
virtual tmp< Function1< Type > > | clone () const =0 |
Construct and return a clone. More... | |
virtual | ~Function1 ()=default |
Destructor. More... | |
virtual Type | value (const scalar x) const |
Return value as a function of (scalar) independent variable. More... | |
virtual tmp< Field< Type > > | value (const scalarField &x) const |
Return value as a function of (scalar) independent variable. More... | |
virtual Type | integrate (const scalar x1, const scalar x2) const |
Integrate between two (scalar) values. More... | |
virtual tmp< Field< Type > > | integrate (const scalarField &x1, const scalarField &x2) const |
Integrate between two (scalar) values. More... | |
virtual void | writeData (Ostream &os) const |
Write in dictionary format. More... | |
void | writeEntries (Ostream &os) const |
Write coefficient entries in dictionary format. More... | |
Static Public Member Functions | |
static autoPtr< Function1< Type > > | New (const word &entryName, const dictionary &dict, const word &redirectType, 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 bool mandatory=true) |
Compatibility selector, with fallback redirection. More... | |
static autoPtr< Function1< Type > > | New (const word &entryName, const dictionary &dict, const bool mandatory=true) |
Selector, without fallback redirection. More... | |
static autoPtr< Function1< Type > > | NewIfPresent (const word &entryName, const dictionary &dict, const word &redirectType=word::null) |
An optional selector. More... | |
Public Attributes | |
Function1 | |
dictionary | |
const word & | entryName |
const word const dictionary & | dict |
const word const dictionary | entryName |
const word const dictionary | dict |
Protected Member Functions | |
void | operator= (const Function1< Type > &)=delete |
No copy assignment. More... | |
Friends | |
Ostream & | operator (Ostream &os, const Function1< Type > &func) |
Ostream Operator. More... | |
Top level data entry class for use in dictionaries. Provides a mechanism to specify a variable as a certain type, e.g. constant or table, and provide functions to return the (interpolated) value, and integral between limits.
The New factory method attempts to deal with varying types of input. It accepts primitive or dictionary entries for dispatching to different function types, but wraps unspecified types as "constant".
In the dictionary form, the coefficents are the dictionary itself. This is arguably the more readable form. For example,
<entryName> { type linearRamp; start 10; duration 20; }
In the primitive form, the coefficents are provided separately. For example,
<entryName> linearRamp; <entryName>Coeffs { start 10; duration 20; }
The coeffs dictionary is optional, since it is not required by all types. For example,
<entryName> zero;
Definition at line 86 of file Function1.H.
typedef Type returnType |
Definition at line 121 of file Function1.H.
Function1 | ( | const word & | entryName, |
const dictionary & | dict | ||
) |
Construct from entry name and dictionary.
|
virtualdefault |
Destructor.
TypeName | ( | "Function1< Type >" | ) |
Runtime type information.
Declare runtime constructor selection table
Construct and return a clone.
Implemented in CSV< Type >, Polynomial< Type >, TableFile< Type >, Constant< Type >, Table< Type >, and OneConstant< Type >.
|
static |
Selector, with fallback redirection.
Definition at line 141 of file Function1New.C.
|
static |
Compatibility selector, with fallback redirection.
Definition at line 162 of file Function1New.C.
|
static |
Selector, without fallback redirection.
Definition at line 184 of file Function1New.C.
|
static |
An optional selector.
Definition at line 197 of file Function1New.C.
|
virtual |
Return value as a function of (scalar) independent variable.
Reimplemented in Constant< Type >, OneConstant< Type >, ZeroConstant< Type >, Function1Expression< Type >, TableBase< Type >, Polynomial< Type >, stepFunction, ramp, Sine< Type >, Square< Type >, Cosine< Type >, LimitRange< Type >, Scale< Type >, halfCosineRamp, linearRamp, quadraticRamp, quarterCosineRamp, and quarterSineRamp.
Definition at line 60 of file Function1.C.
|
virtual |
Return value as a function of (scalar) independent variable.
Reimplemented in Constant< Type >, and OneConstant< Type >.
Definition at line 70 of file Function1.C.
|
virtual |
Integrate between two (scalar) values.
Reimplemented in LimitRange< Type >, Function1Expression< Type >, TableBase< Type >, Polynomial< Type >, Constant< Type >, OneConstant< Type >, and ZeroConstant< Type >.
Definition at line 80 of file Function1.C.
|
virtual |
Integrate between two (scalar) values.
Reimplemented in Constant< Type >, Constant< Type >, OneConstant< Type >, and Constant< Type >.
Definition at line 90 of file Function1.C.
|
virtual |
Write in dictionary format.
Reimplemented in Sine< Type >, Square< Type >, LimitRange< Type >, ramp, Scale< Type >, CSV< Type >, Function1Expression< Type >, TableBase< Type >, Polynomial< Type >, Constant< Type >, TableFile< Type >, OneConstant< Type >, and ZeroConstant< Type >.
Definition at line 166 of file Function1.C.
Referenced by ZeroConstant< Type >::writeData(), OneConstant< Type >::writeData(), TableFile< Type >::writeData(), Constant< Type >::writeData(), Polynomial< Type >::writeData(), TableBase< Type >::writeData(), CSV< Type >::writeData(), Scale< Type >::writeData(), ramp::writeData(), LimitRange< Type >::writeData(), Square< Type >::writeData(), and Sine< Type >::writeData().
void writeEntries | ( | Ostream & | os | ) | const |
Write coefficient entries in dictionary format.
Definition at line 161 of file Function1.C.
Definition at line 130 of file Function1.H.
Definition at line 131 of file Function1.H.
const word& entryName |
Definition at line 133 of file Function1.H.
const word const dictionary& dict |
Definition at line 135 of file Function1.H.
const word const dictionary entryName |
Definition at line 136 of file Function1.H.
const word const dictionary dict |
Definition at line 137 of file Function1.H.