Question-and-Answer Resource for the Building Energy Modeling Community
Get started with the Help page
Ask Your Question

OS:Coil:Cooling:DX:MultiSpeed does not connect in OpenStudio

asked 2020-11-01 10:46:20 -0500

mattkoch's avatar

updated 2020-11-01 10:49:02 -0500

I am trying to add a DX cooling coil to an air loop using an OpenStudio measure. It all works very well when I use "OS:Coil:Cooling:DX:VariableSpeed". The coil does indeed show up on the Air Loop HVAC diagram, together with heating coil, variable speed fan, outdoor air system and energy recovery ventilator, all of which also get added in the same OpenStudio measure. At this point, I am not adjusting any parameters yet, just trying to compose the general topology.

However, when I comment out the "OS:Coil:Cooling:DX:VariableSpeed" creation and uncomment out the "OS:Coil:Cooling:DX:MultiSpeed" creation in that measure, the cooling coil no longer shows up in the Air Loop HVAC diagram, though all other components still show up. Also, while the .OSM file with the "OS:Coil:Cooling:DX:VariableSpeed" shows corresponding OS:Connection entries, the .OSM file with the "OS:Coil:Cooling:DX:MultiSpeed" does not, even though the "OS:Coil:Cooling:DX:MultiSpeed" entry itself does show up.

It is as if this call generates the connections

cooling_coil =

but this call does not?

cooling_coil =

I'd appreciate any thoughts.

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted

answered 2020-11-03 10:00:30 -0500

updated 2020-11-03 10:06:34 -0500

See the EnergyPlus IO Ref which says...


...Currently, this cooling coil can only be referenced by a AirLoopHVAC:UnitarySystem or AirLoopHVAC:UnitaryHeatPump:AirToAir:Multispeed object....

The OpenStudio API is behaving correctly. Note that trying to add a CoilCoolingDXMultiSpeed to the air loop returns false, but returns true for the CoilCoolingDXVariableSpeed and FanVariableVolume classes.

PS C:\Users\matt> irb
irb(main):001:0> require 'openstudio'
=> true
irb(main):002:0> include OpenStudio::Model
=> Object
irb(main):003:0> m =
=> #<OpenStudio::Model::Model:0x00000002c045e8 @__swigtype__="_p_openstudio__model__Model">
irb(main):004:0> al =
=> #<OpenStudio::Model::AirLoopHVAC:0x000000064dbcb8 @__swigtype__="_p_openstudio__model__AirLoopHVAC">
irb(main):005:0> cc_dx_vs =
=> #<OpenStudio::Model::CoilCoolingDXVariableSpeed:0x0000000685b4d8 @__swigtype__="_p_openstudio__model__CoilCoolingDXVariableSpeed">
irb(main):006:0> cc_dx_ms =
=> #<OpenStudio::Model::CoilCoolingDXMultiSpeed:0x00000006743190 @__swigtype__="_p_openstudio__model__CoilCoolingDXMultiSpeed">
irb(main):007:0> al_so_node = al.supplyOutletNode
=> #<OpenStudio::Model::Node:0x0000000686aac8 @__swigtype__="_p_openstudio__model__Node">
irb(main):008:0> cc_dx_vs.addToNode(al_so_node)
=> true
irb(main):009:0> cc_dx_ms.addToNode(al_so_node)
=> false
irb(main):010:0> f =
=> #<OpenStudio::Model::FanVariableVolume:0x000000068d9400 @__swigtype__="_p_openstudio__model__FanVariableVolume">
irb(main):011:0> f.addToNode(al_so_node)
=> true
edit flag offensive delete link more



Yup, stumbled across that after I posted my question but had hoped it was dated. It isn’t. So, now I am trying to work around this by using a unitary system as a wrapper for that coil. I saw that suggestion in another post.

mattkoch's avatar mattkoch  ( 2020-11-03 21:05:53 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower


Asked: 2020-11-01 10:46:20 -0500

Seen: 348 times

Last updated: Nov 03 '20