#include <ZoneHVACComponent.hpp>
Public Member Functions | |
bool | addToNode (Node &node) |
Adds this ZoneHVACComponent to a node on an AirLoopHVAC object. More... | |
bool | addToThermalZone (ThermalZone &thermalZone) |
Adds this ZoneHVACComponent to the thermal zone while managing all node connections automatically. More... | |
boost::optional< ModelObject > | airInletModelObject () const |
Provided for backwards compatibility, use inletNode instead. More... | |
boost::optional< AirLoopHVAC > | airLoopHVAC () const |
Returns the AirLoopHVAC attached to this ZoneHVACComponent. More... | |
boost::optional< ModelObject > | airOutletModelObject () const |
Provided for backwards compatibility, use outletNode instead. More... | |
boost::optional< Node > | inletNode () const |
Returns the optional node connected to the inletPort(). More... | |
unsigned | inletPort () const |
Returns the inlet port. More... | |
boost::optional< Node > | outletNode () const |
Returns the optional node connected to the outletPort(). More... | |
unsigned | outletPort () const |
Returns the outlet port. More... | |
bool | removeFromAirLoopHVAC () |
If this ZoneHVACComponent is used as a supply component on an AirLoopHVAC system, then this method will detach this ZoneHVACComponent from the AirLoopHVAC system, otherwise this method does nothing. More... | |
void | removeFromThermalZone () |
Detaches this ZoneHVACComponent from the associated ThermalZone. More... | |
void | removeReturnPlenum () |
Remove any return plenum attached to this ZoneHVACComponent. More... | |
boost::optional < AirLoopHVACReturnPlenum > | returnPlenum () const |
bool | setReturnPlenum (const ThermalZone &plenumZone) |
Establish plenumZone as the return plenum for this ZoneHVACComponent. More... | |
virtual boost::optional < ThermalZone > | thermalZone () const |
Returns the optional ThermalZone that this ZoneHVACComponent is attached to. More... | |
virtual | ~ZoneHVACComponent () |
![]() | |
bool | addToNode (Node &node) |
Adds this object to a new system node and returns a boolean indicating if the addition was successful. More... | |
bool | addToSplitter (Splitter &splitter) |
Adds this object to a splitter by creating a new branch. More... | |
boost::optional< AirLoopHVAC > | airLoopHVAC () const |
Returns the optional AirLoopHVAC object that the HVAC component is attached to. More... | |
boost::optional < AirLoopHVACOutdoorAirSystem > | airLoopHVACOutdoorAirSystem () const |
Returns the optional AirLoopHVACOutdoorAirSystem that the HVAC component is attached to. More... | |
void | applySizingValues () |
void | autosize () |
Returns the optional ModelObject connected to this object's port. More... | |
boost::optional< HVACComponent > | containingHVACComponent () const |
EnergyPlus unitary equipment and air terminals are typically composed of other HVAC components. More... | |
boost::optional < StraightComponent > | containingStraightComponent () const |
boost::optional < ZoneHVACComponent > | containingZoneHVACComponent () const |
Returns any ZoneHVACComponent that contains this HVACComponent. More... | |
void | disconnect () |
Removes all connections to other HVACComponent objects. More... | |
bool | isRemovable () const |
Indicates if the HVACComponent can be removed from the model. More... | |
boost::optional< Loop > | loop () const |
Returns the optional Loop object that the HVAC component is attached to. More... | |
boost::optional< PlantLoop > | plantLoop () const |
Returns the optional PlantLoop object that the HVAC component is attached to. More... | |
std::vector< IdfObject > | remove () |
Removes the HVACComponent from the model only if isRemovable() return true. More... | |
virtual | ~HVACComponent () |
![]() | |
std::vector< IddObjectType > | allowableChildTypes () const |
Returns a vector of allowable children types. More... | |
std::vector< ModelObject > | children () const |
Return direct child objects in the Model. More... | |
virtual | ~ParentObject () |
![]() | |
virtual | ~ModelObject () |
ModelObject | clone () const |
Creates a deep copy of this object, placing it in this object's model(). More... | |
ModelObject | clone (Model model) const |
Creates a deep copy of this object, placing it in model. More... | |
Component | createComponent () const |
Method for creating sharable Model snippets. More... | |
Model | model () const |
Returns the Model that contains this object. More... | |
boost::optional< ParentObject > | parent () const |
Return this object's parent in the hierarchy, if it has one. More... | |
std::vector< ResourceObject > | resources () const |
Get the resources directly used by this ModelObject. More... | |
template<typename T > | |
std::vector< T > | getModelObjectSources () const |
Get all objects of type T that point to this object. More... | |
template<typename T > | |
std::vector< T > | getModelObjectSources (IddObjectType iddObjectType) const |
Get all objects of type T that point to this object. More... | |
template<typename T > | |
boost::optional< T > | getModelObjectTarget (unsigned index) const |
Get the object of type T pointed to by this object from field index. More... | |
template<typename T > | |
std::vector< T > | getModelObjectTargets () const |
Get all objects of type T to which this object points. More... | |
const std::vector< std::string > & | outputVariableNames () const |
Get all output variables names that could be associated with this object. More... | |
std::vector< OutputVariable > | outputVariables () const |
Get all output variables associated with this object, must run simulation to generate data. More... | |
boost::optional < openstudio::TimeSeries > | getData (const OutputVariable &variable, const std::string &envPeriod) const |
Get data associated with this output variable and this object. More... | |
std::vector< LifeCycleCost > | lifeCycleCosts () const |
Returns the list of all LifeCycleCosts that refer to this object. More... | |
std::vector< IdfObject > | removeLifeCycleCosts () |
Removes all LifeCycleCosts that refer to this object. More... | |
IddObjectType | iddObjectType () const |
This is a virtual function that will tell you the type of iddObject you are dealing with. More... | |
AdditionalProperties | additionalProperties () const |
Returns this object's additional properties, constructing a new object if necessary. More... | |
bool | hasAdditionalProperties () const |
Returns true if this object has additional properties. More... | |
std::vector< IdfObject > | removeAdditionalProperties () |
Removes all additional properties that refer to this object. More... | |
bool | setParent (ParentObject &newParent) |
set the parent, child may have to call non-const methods on the parent More... | |
bool | operator< (const ModelObject &right) const |
bool | operator== (const ModelObject &other) const |
equality test More... | |
bool | operator!= (const ModelObject &other) const |
inequality test More... | |
std::vector< ScheduleTypeKey > | getScheduleTypeKeys (const Schedule &schedule) const |
Return the ScheduleTypeKeys indicating how schedule is used in this object. More... | |
boost::optional< double > | getAutosizedValue (std::string valueName, std::string unitString) const |
Gets the autosized component value from the sql file. More... | |
virtual std::vector < EMSActuatorNames > | emsActuatorNames () const |
Return the names of the available ems actuators. More... | |
virtual std::vector< std::string > | emsInternalVariableNames () const |
Return the names of the available ems internal variables. More... | |
boost::optional< ModelObject > | connectedObject (unsigned port) const |
boost::optional< unsigned > | connectedObjectPort (unsigned port) const |
Protected Types | |
typedef detail::ZoneHVACComponent_Impl | ImplType |
![]() | |
typedef detail::HVACComponent_Impl | ImplType |
![]() | |
typedef detail::ModelObject_Impl | ImplType |
Protected Member Functions | |
virtual std::vector< ModelObject > | children () const override |
ZoneHVACComponent (IddObjectType type, const Model &model) | |
ZoneHVACComponent (std::shared_ptr< ImplType > impl) | |
![]() | |
HVACComponent (IddObjectType type, const Model &model) | |
HVACComponent (std::shared_ptr< ImplType > impl) | |
![]() | |
ParentObject (IddObjectType type, const Model &model) | |
Constructs a new ParentObject object in the model. More... | |
![]() | |
ModelObject (IddObjectType type, const Model &model, bool fastName=false) | |
ModelObject (std::shared_ptr< detail::ModelObject_Impl > impl) | |
Additional Inherited Members | |
![]() | |
std::vector< ModelObject > | getRecursiveChildren (const ParentObject &object, bool includeLifeCycleCostsAndAdditionalProperties=false, bool includeUsedResources=true) |
Returns object and all other objects accessible by calling children() on encountered ParentObjects . More... | |
std::vector< ModelObject > | getRecursiveChildrenAndResources (const ModelObject &object) |
Returns object and all other objects accessible by calling children() and resources() on encountered ModelObjects . More... | |
![]() | |
std::vector< ResourceObject > | getRecursiveResources (const ModelObject &object) |
Returns all ResourceObjects accessible by recursively calling .resources() starting from object. More... | |
ZoneHVACComponent is the base class for HVAC related objects that exclusively condition a single zone.
|
protected |
|
inlinevirtual |
|
protected |
|
explicitprotected |
bool openstudio::model::ZoneHVACComponent::addToNode | ( | Node & | node | ) |
Adds this ZoneHVACComponent to a node on an AirLoopHVAC object.
The node must be located between a ThermalZone and a AirTerminalSingleDuctInletSideMixer object. This is used to feed an AirLoopHVAC structure (such as a DOAS, or any built up system) into a ZoneHVACComponent. If the ZoneHVACComponent object is already attached to a thermalZone() then it will first be detached using removeFromThermalZone().
Certain OpenStudio objects derived from the ZoneHVACComponent type, can be used as AirLoopHVAC supply components. One example is the AirLoopHVACUnitarySystem, which can be used as both a ZoneHVACComponent and a AirLoopHVAC component. In these cases addToNode can be used to add those components to the supply side of an AirLoopHVAC system.
bool openstudio::model::ZoneHVACComponent::addToThermalZone | ( | ThermalZone & | thermalZone | ) |
Adds this ZoneHVACComponent to the thermal zone while managing all node connections automatically.
Returns true if the operation was successful.
boost::optional<ModelObject> openstudio::model::ZoneHVACComponent::airInletModelObject | ( | ) | const |
Provided for backwards compatibility, use inletNode instead.
boost::optional<AirLoopHVAC> openstudio::model::ZoneHVACComponent::airLoopHVAC | ( | ) | const |
Returns the AirLoopHVAC attached to this ZoneHVACComponent.
The AirLoopHVAC object would have been attached via addToNode
boost::optional<ModelObject> openstudio::model::ZoneHVACComponent::airOutletModelObject | ( | ) | const |
Provided for backwards compatibility, use outletNode instead.
|
overrideprotectedvirtual |
Reimplemented from openstudio::model::HVACComponent.
boost::optional<Node> openstudio::model::ZoneHVACComponent::inletNode | ( | ) | const |
Returns the optional node connected to the inletPort().
unsigned openstudio::model::ZoneHVACComponent::inletPort | ( | ) | const |
Returns the inlet port.
For a ZoneHVACComponent this port is typically connected to a zone exhaust node.
boost::optional<Node> openstudio::model::ZoneHVACComponent::outletNode | ( | ) | const |
Returns the optional node connected to the outletPort().
unsigned openstudio::model::ZoneHVACComponent::outletPort | ( | ) | const |
Returns the outlet port.
For a ZoneHVACComponent this port is typically connected to a zone air inlet node
bool openstudio::model::ZoneHVACComponent::removeFromAirLoopHVAC | ( | ) |
If this ZoneHVACComponent is used as a supply component on an AirLoopHVAC system, then this method will detach this ZoneHVACComponent from the AirLoopHVAC system, otherwise this method does nothing.
Certain OpenStudio objects derived from the ZoneHVACComponent type, can be used as AirLoopHVAC supply components. One example is the AirLoopHVACUnitarySystem, which can be used as both a ZoneHVACComponent and a AirLoopHVAC component.
If this ZoneHVACComponent is on the demand side of AirLoopHVAC, between a ThermalZone and a AirTerminalSingleDuctInletSideMixer, then use the method removeFromThermalZone, instead of removeFromAirLoopHVAC to detach this ZoneHVACComponent from the zone and air system.
void openstudio::model::ZoneHVACComponent::removeFromThermalZone | ( | ) |
Detaches this ZoneHVACComponent from the associated ThermalZone.
If there is no attached ThermalZone there is no effect. If the ThermalZone is attached via an AirLoopHVAC object (as a result of addToNode()), then this method will reverse the effects of addToNode, and also detach the ZoneHVACComponent from the AirLoopHVAC object.
void openstudio::model::ZoneHVACComponent::removeReturnPlenum | ( | ) |
Remove any return plenum attached to this ZoneHVACComponent.
boost::optional<AirLoopHVACReturnPlenum> openstudio::model::ZoneHVACComponent::returnPlenum | ( | ) | const |
bool openstudio::model::ZoneHVACComponent::setReturnPlenum | ( | const ThermalZone & | plenumZone | ) |
Establish plenumZone as the return plenum for this ZoneHVACComponent.
ZoneHVACComponent must already be attached to a ThermalZone The method canBePlenum called on plenumZone must return true.
|
virtual |
Returns the optional ThermalZone that this ZoneHVACComponent is attached to.
Reimplemented in openstudio::model::ZoneHVACLowTempRadiantConstFlow, openstudio::model::ZoneHVACLowTempRadiantVarFlow, openstudio::model::ZoneHVACHighTemperatureRadiant, openstudio::model::ZoneHVACLowTemperatureRadiantElectric, openstudio::model::ZoneHVACBaseboardRadiantConvectiveElectric, openstudio::model::ZoneHVACBaseboardRadiantConvectiveWater, openstudio::model::ZoneHVACCoolingPanelRadiantConvectiveWater, openstudio::model::ZoneHVACBaseboardConvectiveElectric, and openstudio::model::ZoneHVACBaseboardConvectiveWater.