12#include "SteamProperties.h"
14#ifndef TOOLS_SUITE_PRV_H
15 #define TOOLS_SUITE_PRV_H
34 double quantityValue,
double inletMassFlow,
double outletPressure);
37 friend std::ostream& operator<<(std::ostream& stream,
const std::shared_ptr<PrvWithoutDesuperheating>& prv);
39 virtual bool isWithDesuperheating()
const {
return false; }
117 this->inletPressure = inletPressure;
118 calculateProperties();
129 this->quantityType = quantityType;
130 calculateProperties();
140 this->quantityValue = quantityValue;
141 calculateProperties();
151 this->inletMassFlow = inletMassFlow;
152 calculateProperties();
162 this->outletPressure = outletPressure;
163 calculateProperties();
167 virtual void calculateProperties();
169 double inletPressure, quantityValue, inletMassFlow, outletPressure;
174 double inletEnergyFlow;
201 double quantityValue,
double inletMassFlow,
double outletPressure,
double feedwaterPressure,
203 double desuperheatingTemp);
206 friend std::ostream& operator<<(std::ostream& stream,
const std::shared_ptr<PrvWithDesuperheating>& prv);
208 bool isWithDesuperheating()
const override {
return true; }
217 this->feedwaterPressure = feedwaterPressure;
218 calculateProperties();
236 this->feedwaterQuantityType = feedwaterQuantityType;
237 calculateProperties();
256 this->feedwaterQuantityValue = feedwaterQuantityValue;
257 calculateProperties();
275 this->desuperheatingTemp = desuperheatingTemp;
276 calculateProperties();
341 void calculateProperties()
override;
345 double feedwaterPressure, feedwaterQuantityValue, desuperheatingTemp;
350 double inletEnergyFlow, outletMassFlow, outletEnergyFlow, feedwaterMassFlow, feedwaterEnergyFlow;
356 std::shared_ptr<PrvWithDesuperheating> Cast(std::shared_ptr<PrvWithoutDesuperheating> prvWithout) {
357 return std::static_pointer_cast<PrvWithDesuperheating>(prvWithout);
double getInletMassFlow() const
double getOutletEnergyFlow() const override
double getFeedwaterPressure() const
SteamSystemModelerTool::SteamPropertiesOutput const & getFeedwaterProperties() const
void setFeedwaterQuantityType(SteamProperties::ThermodynamicQuantity feedwaterQuantityType)
double getFeedwaterEnergyFlow() const
SteamSystemModelerTool::SteamPropertiesOutput const & getInletProperties() const
SteamSystemModelerTool::SteamPropertiesOutput const & getOutletProperties() const
double getOutletMassFlow() const override
void setFeedwaterPressure(double feedwaterPressure)
double getFeedwaterQuantityValue() const
double getInletEnergyFlow() const
double getFeedwaterMassFlow() const
SteamProperties::ThermodynamicQuantity getFeedwaterQuantityType() const
void setDesuperheatingTemp(double desuperheatingTemp)
PrvWithDesuperheating(double inletPressure, SteamProperties::ThermodynamicQuantity quantityType, double quantityValue, double inletMassFlow, double outletPressure, double feedwaterPressure, SteamProperties::ThermodynamicQuantity feedwaterQuantityType, double feedwaterQuantityValue, double desuperheatingTemp)
double getDesuperheatingTemp() const
void setFeedwaterQuantityValue(double feedwaterQuantityValue)
double getInletEnergyFlow() const
double getInletMassFlow() const
void setOutletPressure(double outletPressure)
double getQuantityValue() const
SteamSystemModelerTool::SteamPropertiesOutput const & getInletProperties() const
void setQuantityType(SteamProperties::ThermodynamicQuantity quantityType)
void setInletPressure(double inletPressure)
PrvWithoutDesuperheating(double inletPressure, SteamProperties::ThermodynamicQuantity quantityType, double quantityValue, double inletMassFlow, double outletPressure)
double getInletPressure() const
void setQuantityValue(double quantityValue)
virtual double getOutletEnergyFlow() const
SteamSystemModelerTool::SteamPropertiesOutput const & getOutletProperties() const
void setInletMassFlow(double inletMassFlow)
SteamProperties::ThermodynamicQuantity getQuantityType() const
double getOutletPressure() const
virtual double getOutletMassFlow() const
ThermodynamicQuantity
enum class for ThermodynamicQuantity