stream with two fluid phases and one solid use for vapor-liquid solid or liquid-liquid-solid streams
More...
|
| StreamTwoSolid (Libpf::Persistency::Defaults defaults, uint32_t id=0, Persistency *persistency=nullptr, Persistent *parent=nullptr, Persistent *root=nullptr) |
|
| ~StreamTwoSolid (void) |
|
| GENERATE_COPY_MOVE (StreamTwoSolid) |
|
| GENERATE_COPY_MOVE_DERIVED (StreamTwoSolid, Stream) |
|
Libpf::Utility::MassBalanceMode | representation (void) const override |
| return default flow base More...
|
|
const std::string & | type (void) const override |
|
ObjectiveNleAd * | objectiveFunction (void) override |
| returns a pointer to the model's objective function More...
|
|
const Value & | Fraction (Libpf::Utility::PhaseIndex p, bool clip=false) const override |
| call after prepare_residuals More...
|
|
Vector | X (Libpf::Utility::PhaseIndex p) const override |
|
void | setFlash (Libpf::Utility::FlashMode fm=Libpf::Utility::FlashMode::Null) override |
| override stream; allow PA and SA Flashes More...
|
|
void | estimateFlash (void) override |
| override stream; also estimates alfa_ and the phase compositions More...
|
|
void | updateFlash (void) override |
| override stream; also updates fraction and calculates the phase split More...
|
|
void | prepare_residuals (void) override |
| override stream; precomputes kVL_, calculates splits and sum{x,y} More...
|
|
void | estimateEquilibrium (const Value &Pres, const Value &Temp) override |
| estimate equilibrium-related unknowns More...
|
|
int | calculateResidualsEquilibrium (std::vector< Value > &y, uint32_t offset) override |
| implement FlashBase virtual to compute in addition to RRG the kVL ressiduals More...
|
|
void | initializeNonPersistents (void) override |
| override Stream and initialize FlashVl unknowns More...
|
|
| Stream (Libpf::Persistency::Defaults defaults, uint32_t id=0, Persistency *persistency=nullptr, Persistent *parent=nullptr, Persistent *root=nullptr) |
|
| GENERATE_COPY_MOVE_BASE (Stream) |
|
virtual | ~Stream (void) |
|
| QUANTITY (T, "Temperature", 298.15, "K") |
|
| QUANTITY (P, "Pressure", 101325, "Pa") |
|
| INTEGER (NITER_NLEFlash, "Number of iterations for Flash", -1) |
|
| STRING (flowoption, "Feed stream flow configuration", "Nx") |
|
| STRING (flashoption, "Feed stream Flash configuration", "PT") |
|
virtual Libpf::Utility::MassBalanceMode | representation (void) const =0 |
| return default flow base More...
|
|
void | setup (void) override |
| performs initializations required immediately before solution More...
|
|
Stream & | operator+= (const Stream &) |
|
Stream & | operator*= (const Value &factor) |
|
Stream & | operator/= (const Value &factor) |
|
Phase::Mass * | findPhase (const Libpf::Utility::PhaseIndex &pid) |
| find phase identified by pid or return the nullptr More...
|
|
int | findPhaseIndex (const Libpf::Utility::PhaseIndex &pid) const |
| find index of the phase identified by pid in the phases vector or return -1 More...
|
|
void | setphase (const Libpf::Utility::PhaseIndex &p) |
| Sets the actual phase, copies current Tphase in the appropriate phases[?]. More...
|
|
Libpf::Utility::PhaseType | phaseType (int i) const |
| return phase type of phase i More...
|
|
Libpf::Utility::PhaseIndex | phaseIndex (int i) const |
| return phase id of phase i More...
|
|
int | nphases (void) const |
| return number of phases More...
|
|
int | numberOfPhases (Libpf::Utility::PhaseType pt) const |
| return number of phases of Libpf::Utility::PhaseType pt More...
|
|
void | scale (const Value &factor=One) |
| multiply the Stream extensive properties by factor More...
|
|
void | setEquimolar () |
|
void | setEquimass () |
|
void | setPure (int i) |
|
void | setImpure (int i, double eps) |
|
void | setEquimolarNoKey (int i) |
|
void | setEquimassNoKey (int i) |
|
void | setSymmetrical (double eps) |
|
void | setAsymmetrical (bool increasing, double eps) |
|
void | clearComposition (void) |
|
virtual void | setFlash (Libpf::Utility::FlashMode fm=Libpf::Utility::FlashMode::Null) |
|
virtual void | estimateFlash (void) |
|
virtual void | updateFlash (void) |
|
void | calculate (int level=0) override |
|
void | initializeNonPersistents (void) override |
| initialize Flash unknowns More...
|
|
void | go (Calculatable::SolutionMode solutionMode, int level) override |
|
void | prepare_residuals (void) override |
| call only if there is no iterative algorithm than changes the phases' compositions (such as FlashVl::x_ and y_ More...
|
|
int | calculateResidualsEos (std::vector< Value > &y, uint32_t offset) override |
|
void | estimateEos (const Value &Pres, const Value &Temp) override |
| estimate eos roots-related unknowns More...
|
|
void | calculateX (const Libpf::Utility::MassBalanceMode &mb) |
|
void | calculateXnoFlash (const Libpf::Utility::MassBalanceMode &mb) |
|
const Value & | calculateTotalP (const Value &rho) const override |
|
const Value & | calculateTotalRho (void) const override |
| calculates total molar density for all phases in kmol/m3 More...
|
|
const Value & | calculateTotalH (void) const override |
| calculates molar enthalpy for all phases in J/kmol based on current values of the hidden unknowns More...
|
|
const Value & | calculateTotalS (void) const override |
| calculates molar entropy for all phases in J/kmol/K based on current values of the hidden unknowns More...
|
|
Value | dhvl (const Value &T) const |
| molar heat of vaporization as linear molar fraction based average of the pure routes.heats of vaporization More...
|
|
void | setMaximumIterations (int m) |
|
const std::vector< Phase::Mass * > & | phases (void) const override |
|
const Value & | phase_fraction (Phase::Mass *phase) const override |
|
| EdgeBase (Libpf::Persistency::Defaults defaults, uint32_t id=0, Persistency *persistency=nullptr, Persistent *parent=nullptr, Persistent *root=nullptr) |
|
| STRING (fromTAG, "Tag of source Vertex", "source") |
|
| STRING (toTAG, "Tag of destination Vertex", "sink") |
|
| STRING (fromPort, "Tag of port description for source", "out") |
|
| STRING (toPort, "Tag of port description for destination", "in") |
|
| STRING (cutsource, "TAG of source of cut stream", "") |
|
| STRING (cutdest, "TAG of dest of cut stream", "") |
|
Libpf::Utility::Category | category (void) const override |
| return model Category More...
|
|
virtual std::string | svgColor (void) const |
|
virtual double | svgWidth (void) const |
|
| Model (Libpf::Persistency::Defaults defaults, uint32_t id, Persistency *persistency, Persistent *parent, Persistent *root) |
|
| INTEGER (nCalculations, "Number of times the model has been calculated", 0) |
|
| STRINGVECTOR (errors, "Errors from the last computation", 0, "") |
|
| STRINGVECTOR (warnings, "Warnings from the last computation", 0, "") |
|
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...
|
|
virtual Libpf::Utility::Category | category (void) const =0 |
| return model Category More...
|
|
virtual void | calculate (int level=0)=0 |
|
virtual void | setup (void)=0 |
| performs initializations required immediately before solution More...
|
|
virtual int | maximumIterations (void) |
| returns default maximum iterations for main computation; defaults to 200 More...
|
|
virtual void | initializeNonPersistents (void)=0 |
| estimates hidden, non-persistent unknowns from the current results More...
|
|
virtual ObjectiveNleAd * | objectiveFunction (void)=0 |
| returns a pointer to the model's objective function 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 |
|
virtual void | printSvg (const char *fileName, bool tiny, bool raster, int offset) |
|
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::Persistency::Defaults defaults, uint32_t id=0, Persistency *persistency=nullptr, Persistent *parent=nullptr, Persistent *root=nullptr) |
|
Libpf::Persistency::Defaults | defaults (void) const |
|
std::ostream & | printJson (std::ostream &os, int level=0) const override |
| print Node in JSON format More...
|
|
void | readVariables (Persistency *persistency) override |
| reads Q, QV and QM from persistency More...
|
|
void | readParameters (Persistency *persistency) override |
| reads I, IV, S and SV from persistency More...
|
|
Node & | operator= (const Node &) override |
| copy assignment operator More...
|
|
Node & | operator= (Node &&other) override |
| move assignment More...
|
|
| ~Object (void) |
|
const std::string & | type (void) const override |
|
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 |
|
void | push (void) const |
| store the current status of the object and all its sub-objects in the last-in-first-out queue of real variables values More...
|
|
void | pop (void) |
| restore the status of the object and all its sub-objects from the last-in-first-out queue of real variables values More...
|
|
void | clear (void) const |
| clear the last-in-first-out queue of real variables values used for storing and retrieving the status More...
|
|
const RangeQuantities | quantities (void) |
|
const ConstRangeQuantities | quantities (void) const |
|
| Node (Libpf::Persistency::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 |
|
virtual Node & | operator= (const Node &other) |
| copy assignment operator copies all elements but root which is set to nullptr More...
|
|
virtual Node & | operator= (Node &&other) |
| move assignment More...
|
|
| ~Node () |
|
int | insert (Persistency *persistency) const override |
|
int | update (Persistency *persistency) const override |
|
void | restore (Persistency *persistency) override |
|
void | remove (Persistency *persistency) const override |
|
uint32_t | rootId (void) const override |
|
uint32_t | range (void) const override |
|
uint32_t | getId (void) override |
| returns the next available id and increments the internal counter More...
|
|
const std::string & | type (void) const override |
|
virtual std::ostream & | printJson (std::ostream &os, int level=0) const |
| print Node in JSON format More...
|
|
Node & | addChild (std::string type, uint32_t id, Persistency *persistency) |
|
Node & | addChild (std::string type, Libpf::Persistency::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 |
|
virtual void | readVariables (Persistency *) |
| reads Q, QV and QM from persistency More...
|
|
virtual void | readParameters (Persistency *) |
| reads I, IV, S and SV from persistency More...
|
|
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 |
|
virtual uint32_t | rootId (void) const =0 |
|
virtual uint32_t | range (void) const =0 |
|
virtual uint32_t | getId (void)=0 |
| returns the next available id and increments the internal counter More...
|
|
double | created_at (void) const |
|
double | updated_at (void) const |
|
void | updated_at (double u) const |
|
virtual int | insert (Persistency *persistency) const =0 |
|
virtual int | update (Persistency *persistency) const =0 |
|
virtual void | restore (Persistency *persistency)=0 |
|
virtual void | remove (Persistency *persistency) const =0 |
|
| 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 () |
|
const std::string & | tag () const |
|
const std::string & | description () const |
|
std::string | fullTag () const |
|
const Persistent * | parent () const |
|
virtual const std::string & | type () const =0 |
|
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 |
|
| Precedence (void) |
|
| ~Precedence (void) |
|
void | initLock (void) |
| invoke while in parallel section More...
|
|
void | set (void) |
|
void | unSet (void) |
|
void | destroy (void) |
|
virtual void | go (SolutionMode solutionMode, int level)=0 |
|
| FlashBase (void) |
|
void | setIdeal (bool i) |
|
bool | isIdeal (void) |
|
virtual SolverNleInterface * | solver (void)=0 |
|
virtual int | niter (void) const =0 |
| return Flash iterations More...
|
|
virtual void | estimate (const Value &Pres, const Value &Temp)=0 |
|
const Value & | Temperature (void) const |
|
const Value & | Pressure (void) const |
|
virtual const Value & | Fraction (Libpf::Utility::PhaseIndex p, bool clip=false) const =0 |
| during Flash iterations use this function to get the actual estimate of the fraction of phase p More...
|
|
virtual Vector | X (Libpf::Utility::PhaseIndex p) const =0 |
|
virtual const Value & | Sumx (Libpf::Utility::PhaseIndex p) const =0 |
|
virtual bool | converged (void) const =0 |
| returns true if the flash has been solved successfully, More...
|
|
virtual const std::vector< Phase::Mass * > & | phases (void) const =0 |
|
virtual const Value & | phase_fraction (Phase::Mass *phase) const =0 |
|
|
enum | SolutionMode { Null = 0
, sequential
, simultaneous
, singlePassSimultaneous
} |
|
void | addVariables (void) |
|
Phase::Mass * | addPhase (std::string type, std::string tag, std::string description, unsigned int index, Persistency *persistency) |
|
void | postconstruct_ (int cid) |
|
virtual void | precompute_isIdeal (void) |
|
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::Persistency::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::Persistency::Defaults &defaults, uint32_t id, Persistency *persistency, std::string tag, int min, int max, int def=-1) |
|
std::string | retrieveString (const Libpf::Persistency::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 |
|
virtual | ~Diagnostic ()=default |
|
virtual | ~Calculatable ()=default |
|
virtual | ~FlashBase ()=default |
|
virtual const Value & | calculateTotalP (const Value &rho) const =0 |
|
virtual const Value & | calculateTotalRho (void) const =0 |
| calculates total molar density for all phases in kmol/m3 More...
|
|
virtual const Value & | calculateTotalH (void) const =0 |
| calculates molar enthalpy for all phases in J/kmol based on current values of the hidden unknowns More...
|
|
virtual const Value & | calculateTotalS (void) const =0 |
| calculates molar entropy for all phases in J/kmol/K based on current values of the hidden unknowns More...
|
|
virtual void | prepare_residuals (void)=0 |
|
virtual void | prepare_Flash_residuals (void)=0 |
|
virtual int | calculateResidualsEos (std::vector< Value > &y, uint32_t offset)=0 |
|
virtual void | estimateEos (const Value &Pres, const Value &Temp)=0 |
| estimate eos roots-related unknowns More...
|
|
virtual int | calculateResidualsEquilibrium (std::vector< Value > &y, uint32_t offset)=0 |
|
virtual void | estimateEquilibrium (const Value &Pres, const Value &Temp)=0 |
| estimate equilibrium-related unknowns More...
|
|
virtual void | setFlash_ (const Libpf::Utility::FlashMode &fm, const Value &x, const Value &y, bool strict=true)=0 |
| Set the stream's state variables and the Flash. More...
|
|
virtual int | solveFlash (bool simultaneous, bool skip)=0 |
|
virtual std::string | message (int code)=0 |
|
virtual void | setup_ (std::vector< Value * > pbeta_, std::vector< const double * > pbetamin_, std::vector< const double * > pbetamax_)=0 |
|
virtual | ~StreamInterface ()=default |
|
int | vphases_ |
| number of vapor phases More...
|
|
int | lphases_ |
| number of liquid phases More...
|
|
int | sphases_ |
| number of solid phases 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 |
|
Libpf::Utility::FlashMode | fm_ |
|
bool | zero_residuals_ |
| used to skip Flash residuals calculations if stream is empty More...
|
|
Value | T_ |
| Temperature, unknown. More...
|
|
Value | P_ |
| Pressure, unknown. More...
|
|
Value | Pset_ |
| specified pressure, Pa More...
|
|
Value | Tset_ |
| specified temperature, K More...
|
|
Value | Hset_ |
| specified molar enthalpy, J/kmol More...
|
|
Value | Sset_ |
| specified molar entropy, J/(kmol*K) More...
|
|
Value | rhoset_ |
| specified molar density, kmol/m3 More...
|
|
static double | minFlow_ |
|