VICUS Library
Documentation of Vicus library
Loading...
Searching...
No Matches
VICUS::NetworkComponent Class Reference

#include <VICUS_NetworkComponent.h>

Inheritance diagram for VICUS::NetworkComponent:
[legend]

Public Types

enum  ModelType {
  MT_SimplePipe , MT_DynamicPipe , MT_ConstantPressurePump , MT_ConstantMassFluxPump ,
  MT_ControlledPump , MT_VariablePressurePump , MT_HeatExchanger , MT_HeatPumpVariableIdealCarnotSourceSide ,
  MT_HeatPumpVariableIdealCarnotSupplySide , MT_HeatPumpVariableSourceSide , MT_HeatPumpOnOffSourceSide , MT_ControlledValve ,
  MT_ConstantPressureLossValve , MT_IdealHeaterCooler , MT_PressureLossElement , NUM_MT
}
 
enum  para_t {
  P_HydraulicDiameter , P_PressureLossCoefficient , P_PressureHead , P_MassFlux ,
  P_PumpMaximumEfficiency , P_FractionOfMotorInefficienciesToFluidStream , P_MaximumPressureHead , P_PumpMaximumElectricalPower ,
  P_DesignPressureHead , P_DesignMassFlux , P_PressureHeadReductionFactor , P_Volume ,
  P_PipeMaxDiscretizationWidth , P_CarnotEfficiency , P_MaximumHeatingPower , P_PressureLoss ,
  P_MinimumOutletTemperature , P_HeatingPowerB0W35 , P_HeatingBufferSupplyTemperature , P_HeatingBufferReturnTemperature ,
  P_DHWBufferSupplyTemperature , P_DHWBufferReturnTemperature , P_HeatingBufferVolume , P_DHWBufferVolume ,
  P_PipeLength , NUM_P
}
 
enum  intPara_t { IP_NumberParallelPipes , IP_NumberParallelElements , NUM_IP }
 
- Public Types inherited from VICUS::AbstractDBElement
enum  ComparisonResult { Equal , OnlyMetaDataDiffers , Different }
 

Public Member Functions

 NetworkComponent ()=default
 
VICUS_READWRITE_OVERRIDE VICUS_COMPARE_WITH_ID bool isValid (const Database< Schedule > &scheduleDB) const
 
ComparisonResult equal (const AbstractDBElement *other) const override
 
void nandradNetworkComponentParameter (IBK::Parameter *para) const
 
- Public Member Functions inherited from VICUS::AbstractDBElement
 AbstractDBElement ()=default
 
 AbstractDBElement (unsigned int id, const IBK::MultiLanguageString &name)
 
virtual ~AbstractDBElement ()
 
virtual void readXML (const TiXmlElement *element)=0
 
virtual TiXmlElement * writeXML (TiXmlElement *parent) const =0
 
void collectChildren (std::set< const AbstractDBElement * > &allChildrenRefs) const
 
void collectLocalChildren (std::set< AbstractDBElement * > &localChildrenRefs) const
 
const QString sourceName () const
 

Static Public Member Functions

static NANDRAD::HydraulicNetworkComponent::ModelType nandradNetworkComponentModelType (ModelType modelType)
 
static std::vector< unsigned int > additionalRequiredParameter (const ModelType modelType)
 
static std::vector< unsigned int > optionalParameter (const ModelType modelType)
 
static std::vector< unsigned int > requiredIntParameter (const ModelType modelType)
 
static void checkAdditionalParameter (const IBK::Parameter &para, const unsigned int numPara)
 
static void checkIntParameter (const IBK::IntPara &para, const unsigned int numPara)
 
static bool hasPipeProperties (const ModelType modelType)
 

Public Attributes

IBK::MultiLanguageString m_notes
 
IBK::MultiLanguageString m_manufacturer
 
IBK::MultiLanguageString m_dataSource
 
std::vector< unsigned int > m_scheduleIds
 
IBK::IntPara m_intPara [NUM_IP]
 
IDType m_pipePropertiesId = INVALID_ID
 
ModelType m_modelType = NUM_MT
 
IBK::Parameter m_para [NUM_P]
 
NANDRAD::DataTable m_polynomCoefficients
 
- Public Attributes inherited from VICUS::AbstractDBElement
unsigned int m_id = INVALID_ID
 
IBK::MultiLanguageString m_displayName
 
QColor m_color
 
bool m_builtIn = false
 
bool m_local = true
 
std::set< AbstractDBElement * > m_childrenRefs
 
bool m_isReferenced = false
 
std::string m_errorMsg
 

Detailed Description

Data model object for network components, basically the same as NANDRAD::HydraulicNetworkComponent with data members needed in the user interface.

We cannot use inheritence here, but since both objects are very similar it should be easy to copy/paste back and forth between objects.

Member Enumeration Documentation

◆ intPara_t

Whole number parameters.

Enumerator
IP_NumberParallelPipes 
IP_NumberParallelElements 
NUM_IP 

◆ ModelType

The various types (equations) of the hydraulic component.

Enumerator
MT_SimplePipe 
MT_DynamicPipe 
MT_ConstantPressurePump 
MT_ConstantMassFluxPump 
MT_ControlledPump 
MT_VariablePressurePump 
MT_HeatExchanger 
MT_HeatPumpVariableIdealCarnotSourceSide 
MT_HeatPumpVariableIdealCarnotSupplySide 
MT_HeatPumpVariableSourceSide 
MT_HeatPumpOnOffSourceSide 
MT_ControlledValve 
MT_ConstantPressureLossValve 
MT_IdealHeaterCooler 
MT_PressureLossElement 
NUM_MT 

◆ para_t

Parameters for the component.

Enumerator
P_HydraulicDiameter 
P_PressureLossCoefficient 
P_PressureHead 
P_MassFlux 
P_PumpMaximumEfficiency 
P_FractionOfMotorInefficienciesToFluidStream 
P_MaximumPressureHead 
P_PumpMaximumElectricalPower 
P_DesignPressureHead 
P_DesignMassFlux 
P_PressureHeadReductionFactor 
P_Volume 
P_PipeMaxDiscretizationWidth 
P_CarnotEfficiency 
P_MaximumHeatingPower 
P_PressureLoss 
P_MinimumOutletTemperature 
P_HeatingPowerB0W35 
P_HeatingBufferSupplyTemperature 
P_HeatingBufferReturnTemperature 
P_DHWBufferSupplyTemperature 
P_DHWBufferReturnTemperature 
P_HeatingBufferVolume 
P_DHWBufferVolume 
P_PipeLength 
NUM_P 

Constructor & Destructor Documentation

◆ NetworkComponent()

VICUS::NetworkComponent::NetworkComponent ( )
default

Member Function Documentation

◆ additionalRequiredParameter()

std::vector< unsigned int > VICUS::NetworkComponent::additionalRequiredParameter ( const ModelType  modelType)
static

returns additional required parameters, not included in NANDRAD::HydraulicNetworkComponent

◆ checkAdditionalParameter()

void VICUS::NetworkComponent::checkAdditionalParameter ( const IBK::Parameter &  para,
const unsigned int  numPara 
)
static

checks additional required parameters, not included in NANDRAD::HydraulicNetworkComponent

◆ checkIntParameter()

void VICUS::NetworkComponent::checkIntParameter ( const IBK::IntPara &  para,
const unsigned int  numPara 
)
static

checks required integer parameters

◆ equal()

AbstractDBElement::ComparisonResult VICUS::NetworkComponent::equal ( const AbstractDBElement other) const
overridevirtual

Comparison operator

Implements VICUS::AbstractDBElement.

◆ hasPipeProperties()

bool VICUS::NetworkComponent::hasPipeProperties ( const ModelType  modelType)
static

◆ isValid()

bool VICUS::NetworkComponent::isValid ( const Database< Schedule > &  scheduleDB) const

Checks if all parameters are valid.

◆ nandradNetworkComponentModelType()

NANDRAD::HydraulicNetworkComponent::ModelType VICUS::NetworkComponent::nandradNetworkComponentModelType ( NetworkComponent::ModelType  modelType)
static

returns the NANDRAD::HydraulicNetworkComponent ModelType which may deviates from the VICUS one as we use the VICUS model for GUI and preprocessing

◆ nandradNetworkComponentParameter()

void VICUS::NetworkComponent::nandradNetworkComponentParameter ( IBK::Parameter *  para) const

returns the NANDRAD::HydraulicNetworkComponent parameters which may deviates from the VICUS one as we use the VICUS model for GUI and preprocessing

◆ optionalParameter()

std::vector< unsigned int > VICUS::NetworkComponent::optionalParameter ( const ModelType  modelType)
static

returns optional parameters for the given model type

◆ requiredIntParameter()

std::vector< unsigned int > VICUS::NetworkComponent::requiredIntParameter ( const ModelType  modelType)
static

returns additional required parameters

Member Data Documentation

◆ m_dataSource

IBK::MultiLanguageString VICUS::NetworkComponent::m_dataSource

Data source.

◆ m_intPara

IBK::IntPara VICUS::NetworkComponent::m_intPara[NUM_IP]

Integer parameters.

◆ m_manufacturer

IBK::MultiLanguageString VICUS::NetworkComponent::m_manufacturer

Manufacturer.

◆ m_modelType

ModelType VICUS::NetworkComponent::m_modelType = NUM_MT

Model type.

◆ m_notes

IBK::MultiLanguageString VICUS::NetworkComponent::m_notes

Notes.

◆ m_para

IBK::Parameter VICUS::NetworkComponent::m_para[NUM_P]

Parameters of the flow component.

◆ m_pipePropertiesId

IDType VICUS::NetworkComponent::m_pipePropertiesId = INVALID_ID

Reference id fo pipe properties for e.g. the GroundHeatExchanger model

◆ m_polynomCoefficients

NANDRAD::DataTable VICUS::NetworkComponent::m_polynomCoefficients

Array parameters of the flow component

◆ m_scheduleIds

std::vector<unsigned int> VICUS::NetworkComponent::m_scheduleIds

Schedules for this component


The documentation for this class was generated from the following files: