Vertex model to represent a stream Multiplier. More...
#include <Multiplier.h>

Public Member Functions | |
Multiplier (Libpf::User::Defaults defaults, uint32_t id=0, Persistency *persistency=nullptr, Persistent *parent=nullptr, Persistent *root=nullptr) | |
ObjectiveNleAd * | objectiveFunction (void) |
returns a pointer to the model's objective function More... | |
void | initializeNonPersistents (void) |
estimates hidden, non-persistent unknowns from the current results More... | |
void | calculate (int level=0) |
Value | massBalance (void) const |
return should-be net mass balance of unit (inlet-outlet), defaults to zero and must be overridden if required More... | |
Value | energyBalance (void) const |
return should-be net energy balance of unit (inlet-outlet), defaults to zero and must be overridden if required More... | |
void | setup (void) |
performs initializations required immediately before solution More... | |
void | go (Calculatable::SolutionMode solutionMode, int level) |
virtual const std::string & | type (void) const |
![]() | |
Connectivity (Libpf::User::Defaults defaults, uint32_t id=0, Persistency *persistency=nullptr, Persistent *parent=nullptr, Persistent *root=nullptr) | |
~Connectivity (void) | |
void | attach (EdgeBase &edge, std::string &port) final |
void | detach (std::string port) final |
Detaches the edge from the port with name "port". More... | |
bool | check (void) |
void | calculateBalance (void) |
calculate cmdot, mdotin, mdotout, mdotcomps[] and cduty based on inlet/outlet streams More... | |
std::string | portInlet (int i) const |
std::string | portOutlet (int i) const |
bool | isInletConnected (int i) const |
bool | isOutletConnected (int i) const |
EdgeBase & | inlet (int i) |
EdgeBase & | outlet (int i) |
EdgeBase & | edgeFromPort (const std::string &port) |
void | printConnectivity (void) const |
diagnostic print More... | |
![]() | |
VertexBase (Libpf::User::Defaults defaults, uint32_t id=0, Persistency *persistency=nullptr, Persistent *parent=nullptr, Persistent *root=nullptr) | |
void | translate (std::string &port) |
translates port name from user-friendly synonyms into the canonical form, or leaves unchanged More... | |
virtual void | checkBalance (void) |
call calculateBalance, then issue error/warning if required More... | |
Category | category (void) const |
return model Category More... | |
void | printSvg (const char *fileName, bool tiny, bool raster, int offset) |
virtual PortLocation | locationFromPort (std::string port) const |
PortLocation | locationFromEdge (std::string edgeTag) const |
const std::string & | edgeFromPort (const std::string &port) const |
const std::string & | portFromEdge (const std::string &edgeTag) const |
![]() | |
Model (Libpf::User::Defaults defaults, uint32_t id, Persistency *persistency, Persistent *parent, Persistent *root) | |
bool | isPristine (void) const |
void | unSetInput (void) |
wipes out all tags marked as inputs More... | |
void | reportMessages (void) |
recursively collect status of all sub-objects and report to parent More... | |
void | resetErrors (void) |
void | setWarning (std::string s) |
send new warning message to local queue More... | |
void | setError (std::string s) |
send new error message to local queue More... | |
void | reportWarning (std::string s) |
propagate warning message from sub-object to local queue More... | |
void | reportError (std::string s) |
propagate error message from sub-object to local queue More... | |
void | setCalculated (void) |
increments nCalculations counter and unsets pristinity More... | |
void | setPristineRecursive (void) |
force next calculation to restart as if the model had never been calculated during this runtime session, also for all contained objects More... | |
void | setPristine (void) |
force next calculation to restart as if the model had never been calculated during this runtime session More... | |
void | setRunTime (double t) |
set the run time More... | |
void | stash (void) const |
void | applyStash (void) |
void | clearStash (void) const |
clear the store cache More... | |
virtual int | maximumIterations (void) |
returns default maximum iterations for main computation; defaults to 200 More... | |
std::ostream & | print (std::ostream &os, bool strings, bool quantities, bool integers, bool recursive) const |
std::ostream & | printFull (std::ostream &) const |
print the model quantities, including derivative info, in text format to os More... | |
void | printHtml (const char *dir) const |
void | printSvgAll (const char *dir, bool tiny, bool raster, int offset, std::vector< std::string > &list) |
Recursively output the model and all descendants in SVG format as separate id.SVG files in the directory dir. More... | |
virtual void | printXml (const char *dir, Model *precedingSibling, Model *followingSibling) const |
void | printXmlToc (std::ofstream &toc, int indent) const |
void | printOds (std::ofstream &ods) const |
![]() | |
Object (Libpf::User::Defaults defaults, uint32_t id=0, Persistency *persistency=nullptr, Persistent *parent=nullptr, Persistent *root=nullptr) | |
Libpf::User::Defaults | defaults (void) const |
void | readVariables (Persistency *persistency) |
reads Q, QV and QM from persistency More... | |
void | readParameters (Persistency *persistency) |
reads I, IV, S and SV from persistency More... | |
Node & | operator= (const Node &) |
copy assignment operator More... | |
Node & | operator= (Node &&other) |
move assignment More... | |
~Object (void) | |
const std::string & | type (void) const |
Object & | at (const std::string &fullRelativeTag) |
const Object & | at (const std::string &fullRelativeTag) const |
Object & | at (const std::string &fullRelativeTag, int index) |
const Value & | Q (const std::string &tag) const |
const Value & | Q (const std::string &tag, int index) const |
const Value & | Q (const std::string &tag, int row, int column) const |
Value & | Q (const std::string &tag) |
Value & | Q (const std::string &tag, int index) |
Value & | Q (const std::string &tag, int row, int column) |
const Value & | Q (const std::string &tag, std::string componentName) const |
Value & | Q (const std::string &tag, std::string componentName) |
const Value & | Q (const std::string &tag, int index, std::string componentName) const |
Value & | Q (const std::string &tag, int index, std::string componentName) |
const int & | I (const std::string &tag) const |
const int & | I (const std::string &tag, int index) const |
int & | I (const std::string &tag) |
int & | I (const std::string &tag, int index) |
const std::string & | S (const std::string &tag) const |
const std::string & | S (const std::string &tag, int index) const |
std::string & | S (const std::string &tag) |
std::string & | S (const std::string &tag, int index) |
bool | operator!= (const Object &rhs) const |
bool | operator== (const Object &rhs) const |
bool | compareParameters (const Object &rhs) const |
bool | existsI (const std::string &tag) const |
bool | existsS (const std::string &tag) const |
bool | existsQ (const std::string &tag) const |
const RangeQuantities | quantities (void) |
const ConstRangeQuantities | quantities (void) const |
![]() | |
Node (Libpf::User::Defaults defaults, uint32_t id=0, Persistency *persistency=nullptr, Persistent *parent=nullptr, Persistent *root=nullptr) | |
Node (const Node &other) | |
copy constructor More... | |
Node (Node &&other) | |
move constructor More... | |
virtual std::unique_ptr< Node > | clone (void) const |
~Node () | |
int | insert (Persistency *persistency) const |
int | update (Persistency *persistency) const |
void | restore (Persistency *persistency) |
void | remove (Persistency *persistency) const |
uint32_t | rootId (void) const |
uint32_t | range (void) const |
uint32_t | getId (void) |
returns the next available id and increments the internal counter More... | |
Node & | addChild (std::string type, uint32_t id, Persistency *persistency) |
Node & | addChild (std::string type, Libpf::User::Defaults defaults) |
Node & | addChild (const Node &child) |
Node & | addChild (std::unique_ptr< Node > child) |
std::unique_ptr< Node > | prune (const std::string &tag) |
const Node & | child (const std::string &tag) const |
Node & | at (const std::string &fullRelativeTag) |
const Node & | at (const std::string &fullRelativeTag) const |
uint32_t | descendants (void) const |
Persistent * | root (void) const |
void | renameChild (const std::string &oldName, const std::string &newName) |
bool | existsChild (std::string tag) const |
bool | exists (uint32_t id) |
Node & | search (uint32_t id) |
bool | operator!= (const Node &rhs) const |
bool | operator== (const Node &rhs) const |
bool | isRestored (void) const |
return whether the Node has just been retrieved from persistent storage More... | |
void | setIcon (std::string icon, double width, double height) |
bool | hasIcon (void) const |
std::string | iconName (bool raster) const |
double | iconWidth (void) const |
double | iconHeight (void) const |
const Range | children (void) |
const ConstRange | children (void) const |
![]() | |
Persistent (const std::string &tag, const std::string &description, Persistent *parent, uint32_t id) | |
main constructor More... | |
Persistent (const Persistent &) | |
copy constructor More... | |
Persistent & | operator= (const Persistent &) |
copy assignment More... | |
Persistent (Persistent &&other) | |
move constructor More... | |
Persistent & | operator= (Persistent &&other) |
move assignment More... | |
~Persistent (void) | |
uint32_t | id (void) const |
std::string | uuid (void) const |
uint32_t | parentId (void) const |
double | created_at (void) const |
double | updated_at (void) const |
void | updated_at (double u) const |
![]() | |
Item (const Item &other) | |
copy constructor copies all elements but parent which is set to nullptr More... | |
Item & | operator= (const Item &other) |
copy assignment operator copies all elements but parent which is set to nullptr More... | |
Item (const std::string &tag, const std::string &description, Persistent *parent) | |
Item (Item &&other) | |
move constructor More... | |
Item & | operator= (Item &&other) |
move assignment operator More... | |
virtual | ~Item (void) |
const std::string & | tag (void) const |
const std::string & | description (void) const |
std::string | fullTag (void) const |
const Persistent * | parent (void) const |
void | setTag (const std::string &tag) |
void | setDescription (const std::string &description) |
void | setWideTag (const std::wstring &tag) |
wide-character variant, More... | |
void | setWideDescription (const std::wstring &description) |
wide-character variant, More... | |
bool | operator!= (const Item &rhs) const |
bool | operator== (const Item &rhs) const |
![]() | |
Diagnostic (void) | |
void | setVerbosity (int verbosity) |
sets the verbosity level for this instance More... | |
int | verbosity (void) const |
![]() | |
Task (void) | |
~Task (void) | |
double | cost (void) const |
int | level (void) const |
int | core (void) const |
get the core where this task is scheduled or -1 if not yet scheduled More... | |
double | startTime (void) const |
return forecast start time More... | |
double | endTime (void) const |
return forecast end time More... | |
void | setLevel (int l) |
void | setCore (int c) |
double | setStartTime (double t) |
sets the start time and returns the end time More... | |
Static Public Attributes | |
static const std::string | type_ |
Additional Inherited Members | |
![]() | |
enum | PortLocation { north, south, east, west } |
![]() | |
enum | SolutionMode { Null = 0, sequential, simultaneous, singlePassSimultaneous } |
![]() | |
Integer | nIn |
Number of connected inlet EdgeBases (non-persistent); should not be set directly: use attach instead. More... | |
Integer | nOut |
Number of connected outlet EdgeBases (non-persistent); should not be set directly: use attach instead. More... | |
Integer | maxNIn |
Maximum number of connected inlet EdgeBases. More... | |
Integer | maxNOut |
Maximum number of connected outlet EdgeBases. More... | |
String | constraints |
Used internally to persist connectivity constraints. More... | |
![]() | |
Quantity | cmdot |
Cumulative mass flow, inlet - outlet. More... | |
Quantity | mdotin |
inlet mass flow More... | |
Quantity | mdotout |
outlet mass flow More... | |
std::vector< Quantity > | mdotcomps |
Cumulative mass flow of each component, inlet - outlet. More... | |
Quantity | cduty |
Cumulative enthalpy flow, inlet - outlet. More... | |
![]() | |
Integer | nCalculations |
number of times the model has been calculated More... | |
StringVector | errors |
errors from the last computation More... | |
StringVector | warnings |
warnings from the last computation More... | |
![]() | |
int | weight |
for backTrack_ and findCycles More... | |
![]() | |
void | inletRequired (int i) |
![]() | |
void | registerSynonym (std::string alias, std::string port) |
void | clearBalance (void) |
used in calculateBalance, zeroes out the required variables More... | |
![]() | |
void | printSvgXlink (std::ostream &svg, const std::string &link, double width, double height) |
void | addComponentVectorVariable (std::vector< Quantity > &variable, const std::string &tag, const std::string &description, Quantity::ValueType value) |
template<typename T > | |
void | addSubObjects (int verbosityFile, Libpf::User::Defaults defaults, Persistency *persistency, int count, const std::string &optionKey, const std::string &typeKey, const std::string &tagKey, const std::string &description, std::vector< T * > &vector) |
![]() | |
int | retrieveInteger (const Libpf::User::Defaults &defaults, uint32_t id, Persistency *persistency, std::string tag, int min, int max, int def=-1) |
std::string | retrieveString (const Libpf::User::Defaults &defaults, uint32_t id, Persistency *persistency, std::string tag, const std::string def) |
template<class T > | |
void | addVariable (T &variable) |
template<class T > | |
void | addVectorVariable (std::vector< T > &variable, const std::string &tag, const std::string &description, uint32_t size, typename T::ValueType value) |
Object (const Object &other) | |
copy constructor More... | |
Object (Object &&other) | |
move constructor More... | |
Object & | operator= (const Object &) |
copy assignment operator More... | |
Object & | operator= (Object &&other) |
move assignment operator More... | |
![]() | |
int | offset (void) const |
![]() | |
std::vector< EdgeBase * > | inlets_ |
inlet EdgeBase pointer vector More... | |
std::vector< EdgeBase * > | outlets_ |
outlet EdgeBase pointer vector More... | |
![]() | |
std::map< std::string, Integer * > | integers_ |
collection of integer variables More... | |
std::map< std::string, IntegerVector * > | integerVectors_ |
collection of integer variable vectors More... | |
std::map< std::string, Quantity * > | quantities_ |
collection of real variables More... | |
std::map< std::string, QuantityVector * > | quantityVectors_ |
collection of real variable vectors More... | |
std::map< std::string, QuantityMatrix * > | quantityMatrices_ |
collection of real variable matrices More... | |
std::map< std::string, String * > | strings_ |
collection of string variables More... | |
std::map< std::string, StringVector * > | stringVectors_ |
collection of string variable vectors More... | |
![]() | |
std::map< std::string, std::unique_ptr< Node > > | children_ |
the collection of direct descendants More... | |
![]() | |
Persistent * | parent_ |
pointer to the parent Persistent; set to this by the constructor if Item is self-standing or a root Persistent of a tree More... | |
![]() | |
int | verbosityInstance |
Detailed Description
Vertex model to represent a stream Multiplier.
Has one inlet, and two or more outlets.
The Multiplier copies the only inlet stream into as many outlet streams are connected, without changing the composition, thermodynamic state and flow; it does not honor mass and energy balances - in fact it generates mass and energy out of nowhere |
Constructor & Destructor Documentation
Multiplier::Multiplier | ( | Libpf::User::Defaults | defaults, |
uint32_t | id = 0 , |
||
Persistency * | persistency = nullptr , |
||
Persistent * | parent = nullptr , |
||
Persistent * | root = nullptr |
||
) |
Member Function Documentation
|
virtual |
calculates the model; implementations must call setCalculated
- Parameters
-
level used for indenting, defaults to 0
Implements Model.
|
virtual |
return should-be net energy balance of unit (inlet-outlet), defaults to zero and must be overridden if required
Reimplemented from VertexBase.
|
virtual |
Calculate the Model
- Parameters
-
simultaneous true if the Model is to be solved during a simultaneous resolution of a larger set of equations level used for indenting
Implements Calculatable.
|
inlinevirtual |
estimates hidden, non-persistent unknowns from the current results
Implements Model.
|
virtual |
return should-be net mass balance of unit (inlet-outlet), defaults to zero and must be overridden if required
Reimplemented from VertexBase.
|
inlinevirtual |
returns a pointer to the model's objective function
Implements Model.
|
inlinevirtual |
performs initializations required immediately before solution
Implements Model.
|
inlinevirtual |
Member Data Documentation
|
static |
The documentation for this class was generated from the following file: