Accumulates function object result values and renders into a graph in SVG format. More...
#include <graphFunctionObject.H>


Public Member Functions | |
| TypeName ("graphFunctionObject") | |
| Runtime type information. | |
| graphFunctionObject (const word &name, const Time &runTime, const dictionary &dict) | |
| Construct from name, Time and dictionary. | |
| virtual | ~graphFunctionObject ()=default |
| Destructor. | |
| virtual bool | execute () |
| Execute the function-object operations. | |
| virtual bool | write () |
| Write the function-object results. | |
| Public Member Functions inherited from stateFunctionObject | |
| stateFunctionObject (const word &name, const Time &runTime) | |
| Construct from components. | |
| virtual | ~stateFunctionObject ()=default |
| Destructor. | |
| dictionary & | propertyDict () |
| Return access to the property dictionary. | |
| bool | foundProperty (const word &entryName) const |
| Return true if the property exists. | |
| void | clearTrigger () |
| Remove the trigger index from the properties. | |
| label | getTrigger () const |
| Get the current trigger index. | |
| bool | setTrigger (const label triggeri) |
| Set new trigger index. | |
| bool | getDict (const word &entryName, dictionary &dict) const |
| Set dictionary, return true if set. | |
| bool | getObjectDict (const word &objectName, const word &entryName, dictionary &dict) const |
| Set dictionary from named object, return true if set. | |
| template<class Type> | |
| Type | getProperty (const word &entryName, const Type &defaultValue=Type(Zero)) const |
| Retrieve generic property. | |
| template<class Type> | |
| bool | getProperty (const word &entryName, Type &value) const |
| Set generic property, return true if set. | |
| template<class Type> | |
| void | setProperty (const word &entryName, const Type &value) |
| Add generic property. | |
| template<class Type> | |
| Type | getObjectProperty (const word &objectName, const word &entryName, const Type &defaultValue=Type(Zero)) const |
| Retrieve generic property from named object. | |
| template<class Type> | |
| bool | getObjectProperty (const word &objectName, const word &entryName, Type &value) const |
| Set generic property from named object, return true if set. | |
| template<class Type> | |
| void | setObjectProperty (const word &objectName, const word &entryName, const Type &value) |
| Add generic property from named object. | |
| bool | getObjectResultDict (const word &objectName, dictionary &dict) const |
| template<class Type> | |
| void | setResult (const word &entryName, const Type &value) |
| Add result. | |
| template<class Type> | |
| void | setObjectResult (const word &objectName, const word &entryName, const Type &value) |
| Add result from named object. | |
| template<class Type> | |
| Type | getResult (const word &entryName, const Type &defaultValue=Type(Zero)) const |
| Retrieve result. | |
| template<class Type> | |
| Type | getObjectResult (const word &objectName, const word &entryName, const Type &defaultValue=Type(Zero)) const |
| Retrieve result from named object. | |
| template<class Type> | |
| bool | getObjectResult (const word &objectName, const word &entryName, Type &value) const |
| Set result from named object, return true if set. | |
| word | resultType (const word &entryName) const |
| Retrieve the result type. | |
| word | objectResultType (const word &objectName, const word &entryName) const |
| Return the type of result. | |
| wordList | objectResultEntries () const |
| Retrieve the result entries. | |
| wordList | objectResultEntries (const word &objectName) const |
| Return result entries for named object. | |
| void | writeResultEntries (Ostream &os) const |
| Write the results entries for all objects to stream. | |
| void | writeResultEntries (const word &objectName, Ostream &os) const |
| Write the results entries for named object to stream. | |
| void | writeAllResultEntries (Ostream &os) const |
| Write the results entries for all objects to stream. | |
| Public Member Functions inherited from timeFunctionObject | |
| timeFunctionObject (const word &name, const Time &runTime) | |
| Construct from Time. | |
| virtual | ~timeFunctionObject ()=default |
| Destructor. | |
| const Time & | time () const |
| Return time database. | |
| objectRegistry & | storedObjects () |
| Write access to the output objects ("functionObjectObjects") registered on Time. | |
| const objectRegistry & | storedObjects () const |
| Const access to the output objects ("functionObjectObjects") registered on Time. | |
| Public Member Functions inherited from functionObject | |
| declareRunTimeSelectionTable (autoPtr, functionObject, dictionary,(const word &name, const Time &runTime, const dictionary &dict),(name, runTime, dict)) | |
| functionObject (const word &name, const bool withNamePrefix=defaultUseNamePrefix) | |
| Construct from components. | |
| autoPtr< functionObject > | clone () const |
| Return clone. | |
| virtual | ~functionObject ()=default |
| Destructor. | |
| virtual const word & | type () const =0 |
| Runtime type information. | |
| const word & | name () const noexcept |
| Return the name of this functionObject. | |
| bool | useNamePrefix () const noexcept |
| Return the flag for adding a scoping name prefix. | |
| bool | useNamePrefix (bool on) noexcept |
| Modify the flag for adding a scoping name prefix. | |
| virtual bool | read (const dictionary &dict) |
| Read and set the function object if its data have changed. | |
| virtual bool | execute (const label subIndex) |
| Execute using the specified subIndex. | |
| virtual bool | end () |
| Called when Time::run() determines that the time-loop exits. | |
| virtual bool | adjustTimeStep () |
| Called at the end of Time::adjustDeltaT() if adjustTime is true. | |
| virtual bool | filesModified () const |
| Did any file get changed during execution? | |
| virtual void | updateMesh (const mapPolyMesh &mpm) |
| Update for changes of mesh. | |
| virtual void | movePoints (const polyMesh &mesh) |
| Update for changes of mesh. | |
| Public Member Functions inherited from writeFile | |
| writeFile (const objectRegistry &obr, const fileName &prefix, const word &name="undefined", const bool writeToFile=true, const string &ext=".dat") | |
| Construct from objectRegistry, prefix, fileName. | |
| writeFile (const objectRegistry &obr, const fileName &prefix, const word &name, const dictionary &dict, const bool writeToFile=true, const string &ext=".dat") | |
| Construct from objectRegistry, prefix, fileName and read options from dictionary. | |
| writeFile (const writeFile &wf) | |
| Construct copy. | |
| virtual | ~writeFile ()=default |
| Destructor. | |
| virtual bool | read (const dictionary &dict) |
| Read. | |
| virtual const string & | setExt (const string &ext) |
| Set extension. | |
| virtual OFstream & | file () |
| Return access to the file (if only 1). | |
| virtual bool | writeToFile () const |
| Flag to allow writing to file. | |
| virtual bool | canWriteToFile () const |
| Flag to allow writing to the file. | |
| virtual bool | canResetFile () const |
| Flag to allow resetting the file. | |
| virtual bool | canWriteHeader () const |
| Flag to allow writing the header. | |
| virtual label | charWidth () const |
| Return width of character stream output. | |
| virtual void | writeCommented (Ostream &os, const string &str) const |
| Write a commented string to stream. | |
| virtual void | writeTabbed (Ostream &os, const string &str) const |
| Write a tabbed string to stream. | |
| virtual void | writeHeader (Ostream &os, const string &str) const |
| Write a commented header to stream. | |
| virtual void | writeCurrentTime (Ostream &os) const |
| Write the current time to stream. | |
| virtual void | writeBreak (Ostream &os) const |
| Write a break marker to the stream. | |
| template<class Type> | |
| void | writeHeaderValue (Ostream &os, const string &property, const Type &value) const |
| Write a (commented) header property and value pair. | |
| template<class Type> | |
| void | writeValue (Ostream &os, const Type &val) const |
| Write a given value to stream with the space delimiter. | |
Additional Inherited Members | |
| Static Public Member Functions inherited from functionObject | |
| static autoPtr< functionObject > | New (const word &name, const Time &runTime, const dictionary &dict) |
| Select from dictionary, based on its "type" entry. | |
| Public Attributes inherited from functionObject | |
| bool | log |
| Flag to write log into Info. | |
| Static Public Attributes inherited from functionObject | |
| static int | debug |
| Flag to execute debug content. | |
| static bool | postProcess |
| Global post-processing mode switch. | |
| static bool | defaultUseNamePrefix |
| Global default for useNamePrefix. | |
| static word | outputPrefix |
| Directory prefix. | |
| Static Public Attributes inherited from writeFile | |
| static label | addChars = 8 |
| Additional characters for writing. | |
| Protected Member Functions inherited from stateFunctionObject | |
| const functionObjects::properties & | stateDict () const |
| Return a const reference to the state dictionary. | |
| functionObjects::properties & | stateDict () |
| Return non-const access to the state dictionary. | |
| stateFunctionObject (const stateFunctionObject &)=delete | |
| No copy construct. | |
| void | operator= (const stateFunctionObject &)=delete |
| No copy assignment. | |
| Protected Member Functions inherited from timeFunctionObject | |
| void | clearOutputObjects (const wordList &objNames) |
| Remove specified items from "functionObjectObjects". | |
| timeFunctionObject (const timeFunctionObject &)=delete | |
| No copy construct. | |
| void | operator= (const timeFunctionObject &)=delete |
| No copy assignment. | |
| Protected Member Functions inherited from functionObject | |
| word | scopedName (const word &name) const |
| Return a scoped (prefixed) name. | |
| Protected Member Functions inherited from writeFile | |
| void | initStream (Ostream &os) const |
| Initialise the output stream for writing. | |
| fileName | baseFileDir () const |
| Return the base directory for output. | |
| fileName | baseTimeDir () const |
| Return the base directory for the current time value. | |
| fileName | filePath (const fileName &fName) const |
| Return the full path for the supplied file name. | |
| virtual autoPtr< OFstream > | newFile (const fileName &fName) const |
| Return autoPtr to a new file using file name. | |
| virtual autoPtr< OFstream > | newFileAtTime (const word &name, scalar timeValue) const |
| Return autoPtr to a new file for a given time. | |
| virtual autoPtr< OFstream > | newFileAtStartTime (const word &name) const |
| Return autoPtr to a new file using the simulation start time. | |
| virtual void | resetFile (const word &name) |
| Reset internal file pointer to new file with new name. | |
| Omanip< int > | valueWidth (const label offset=0) const |
| Return the value width when writing to stream with optional offset. | |
| void | operator= (const writeFile &)=delete |
| No copy assignment. | |
| virtual autoPtr< OFstream > | createFile (const word &name, scalar timeValue) const |
| Deprecated(2022-09) Return autoPtr to a new file for a given time. | |
| virtual autoPtr< OFstream > | createFile (const word &name) const |
| Deprecated(2022-09) Return autoPtr to a new file using the simulation start time. | |
| Protected Attributes inherited from timeFunctionObject | |
| const Time & | time_ |
| Reference to the time database. | |
| Protected Attributes inherited from writeFile | |
| const objectRegistry & | fileObr_ |
| Reference to the region objectRegistry. | |
| const fileName | prefix_ |
| Prefix. | |
| word | fileName_ |
| Name of file. | |
| autoPtr< OFstream > | filePtr_ |
| File pointer. | |
| label | writePrecision_ |
| Write precision. | |
| bool | writeToFile_ |
| Flag to enable/disable writing to file. | |
| bool | updateHeader_ |
| Flag to update the header, e.g. on mesh changes. Default is true. | |
| bool | writtenHeader_ |
| Flag to identify whether the header has been written. | |
| bool | useUserTime_ |
| Flag to use the specified user time, e.g. CA deg instead of seconds. Default = true. | |
| scalar | startTime_ |
| Start time value. | |
| string | ext_ |
| File extension; default = .dat. | |
Accumulates function object result values and renders into a graph in SVG format.
Operands:
| Operand | Type | Location |
|---|---|---|
input | Function object results | Memory; <time>/uniform/functionObjects/functionObjectProperties |
output file | SVG | postProcessing/<functionObject>/<time>/<functionObject>.svg |
system/controlDict.functions to plot the residuals from the solverInfo function object:residualGraph
{
// Mandatory entries
type graphFunctionObject;
libs (utilityFunctionObjects);
functions
{
entry
{
// Mandatory entries
object <word>;
entry <word>;
// Optional entries
title <string>;
colour <labelVector>;
dashes <labelList>;
}
line1
{
object solverInfo1;
entry Ux_initial;
}
line2
{
object solverInfo1;
entry p_initial;
}
}
// Optional entries
xMin <scalar>;
xMax <scalar>;
yMin <scalar>;
yMax <scalar>;
xlabel <string>; // "Iteration";
ylabel <string>; // "log10(Initial residual)";
width <label>;
height <label>;
strokeWidth <label>;
logScaleX <bool>;
logScaleY <bool>;
drawGrid <bool>;
// Inherited entries
...
}
where the entries mean:
| Property | Description | Type | Reqd | Deflt |
|---|---|---|---|---|
type | Type name: graphFunctionObject | word | yes | - |
libs | Library name: utilityFunctionObjects | word | yes | - |
functions | Dictionary of lines to draw | dictionary | yes | - |
width | Output SVG width in pixel | label | no | 800 |
height | Output SVG height in pixel | label | no | 600 |
xMin | User defined minimum x axis limit | scalar | no | calculated |
xMax | User defined maximum x axis limit | scalar | no | calculated |
yMin | User defined minimum y axis limit | scalar | no | calculated |
yMax | User defined maximum y axis limit | scalar | no | calculated |
xLabel | X axis label | string | no | Iteration/Time |
yLabel | Y axis label | string | no | Property |
strokeWidth | Line stroke width in pixel | label | no | 2 |
logScaleX | Use log scale for x axis | bool | no | false |
logScaleY | Use log scale for y axis | bool | no | false |
drawGrid | Draw background grid | bool | no | true |
The inherited entries are elaborated in:
Each line corresponds to the history of function object result values, e.g.
line1
{
object solverInfo1;
entry Ux_initial;
colour (255 0 0);
dashes (4 1);
title Ux;
}
where the entries mean:
| Property | Description | Type | Reqd | Deflt |
|---|---|---|---|---|
object | Function object name | word | yes | - |
entry | Function object result entry name | word | yes | - |
colour | Line colour | label vector | no | auto |
dashes | Line dash array | label vector | no | auto |
title | Title | string | no | dict name |
Definition at line 313 of file graphFunctionObject.H.
| graphFunctionObject | ( | const word & | name, |
| const Time & | runTime, | ||
| const dictionary & | dict ) |
Construct from name, Time and dictionary.
Definition at line 180 of file graphFunctionObject.C.
References dict, e, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, Foam::flatOutput(), for(), dictionary::get(), dictionary::getOrDefault(), Foam::GlobalIOList< Tuple2< scalar, vector > >::typeName, Foam::max(), Foam::min(), functionObject::name(), dictionary::readIfPresent(), runTime, DLListBase::size(), stateFunctionObject::stateFunctionObject(), OStringStream::str(), and writeFile::writeFile().

|
virtualdefault |
Destructor.
| TypeName | ( | "graphFunctionObject" | ) |
Runtime type information.
References dict, functionObject::name(), and runTime.

|
virtual |
Execute the function-object operations.
Implements functionObject.
Definition at line 280 of file graphFunctionObject.C.
References Foam::endl(), forAll, Log, Foam::log10(), UPstream::master(), Foam::max(), name, timeFunctionObject::time_, and Foam::type().

|
virtual |
Write the function-object results.
Implements functionObject.
Definition at line 315 of file graphFunctionObject.C.
References element::addAttr(), Foam::SVG::end, Foam::endl(), filePtr, forAll, h, Log, Foam::log10(), UPstream::master(), Foam::max(), Foam::min(), Foam::name(), name, writeFile::newFileAtTime(), Foam::nl, os(), timeFunctionObject::time(), Foam::type(), x, y, Foam::y0(), and Foam::y1().
