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

Revision history [back]

This is in reply to part E of your question...

"E. I need to set the cooling and heating Airflow rates for SystemTypes 3-6"

In EnergyPlus airflow rates are established by the terminal units. Imagine the terminal units making flow requests back to the "supply side" as opposed to the supply side (fan) pushing flow values forward to the zones. By default OpenStudio will autosize all of your components so typically you aren't thinking about these things. In an autosizing situation the SizingZone object is key to determining how the flow will size out. The SizingZone object defines the heating and cooling supply temperatures that will be assumed during the sizing calculation. Given a zone load and the desired supply air temperature, a design airflow will fall out.

If you want to hard size the flow, the details depend on your terminal type. System type 3 uses AirTerminalSingleDuctUncontrolled so you would do something like this...

conditioned_zones.each do|zone| hvac.addBranchForZone(zone) zone.equipment.first.to_AirTerminalSingleDuctUncontrolled.get.setMaximumAirFlowRate(foo) end

This is the syntax for Ruby. As @Mostapha Roudsari pointed out in the comments, the casting (in this case for terminals) will look a little different in c#. Maybe one of the C# gurus will clean up my syntax to be appropriate for C#.

For reference system type 4 uses AirTerminalSingleDuctUncontrolled, 5 is AirTerminalSingleDuctVAVReheat, and 6 is AirTerminalSingleDuctParallelPIUReheat. See here for details. You could also just create these systems and open them up in the OpenStudio Application to figure out what content they have.

Note that hard sizing some components and leaving some autosized can be a little risky if you don't pay attention. You can end up with components that aren't well matched to each other. Imagine a hard sized terminal asking for a certain flow, pulling air through an autosized coil designed for a completely different airflow.

This is in reply to part E of your question...

"E. I need to set the cooling and heating Airflow rates for SystemTypes 3-6"

In EnergyPlus airflow rates are established by the terminal units. Imagine the terminal units making flow requests back to the "supply side" as opposed to the supply side (fan) pushing flow values forward to the zones. By default OpenStudio will autosize all of your components so typically you aren't thinking about these things. In an autosizing situation the SizingZone object is key to determining how the flow will size out. The SizingZone object defines the heating and cooling supply temperatures that will be assumed during the sizing calculation. Given a zone load and the desired supply air temperature, a design airflow will fall out. out during the EnergyPlus sizing calc.

If you want to hard size the flow, the details depend on your terminal type. System type 3 uses AirTerminalSingleDuctUncontrolled so you would do something like this...

conditioned_zones.each do|zone| hvac.addBranchForZone(zone) zone.equipment.first.to_AirTerminalSingleDuctUncontrolled.get.setMaximumAirFlowRate(foo) end

This is the syntax for Ruby. As @Mostapha Roudsari pointed out in the comments, the casting (in this case for terminals) will look a little different in c#. Maybe one of the C# gurus will clean up my syntax to be appropriate for C#.

For reference system type 4 uses AirTerminalSingleDuctUncontrolled, 5 is AirTerminalSingleDuctVAVReheat, and 6 is AirTerminalSingleDuctParallelPIUReheat. See here for details. You could also just create these systems and open them up in the OpenStudio Application to figure out what content they have.

Note that hard sizing some components and leaving some autosized can be a little risky if you don't pay attention. You can end up with components that aren't well matched to each other. Imagine a hard sized terminal asking for a certain flow, pulling air through an autosized coil designed for a completely different airflow.

This is in reply to part E of your question...

"E. I need to set the cooling and heating Airflow rates for SystemTypes 3-6"

In EnergyPlus airflow rates are established by the terminal units. Imagine the terminal units making flow requests back to the "supply side" as opposed to the supply side (fan) pushing flow values forward to the zones. By default OpenStudio will autosize all of your components so typically you aren't thinking about these things. In an autosizing situation the SizingZone object is key to determining how the flow will size out. The SizingZone object defines the heating and cooling supply temperatures that will be assumed during the sizing calculation. Given a zone load and the desired supply air temperature, a design airflow will fall out during the EnergyPlus sizing calc.

If you want to hard size the flow, the details depend on your terminal type. System type 3 uses AirTerminalSingleDuctUncontrolled so you would do something like this...

 conditioned_zones.each do|zone|
    hvac.addBranchForZone(zone)
    zone.equipment.first.to_AirTerminalSingleDuctUncontrolled.get.setMaximumAirFlowRate(foo)
  end

end

This is the syntax for Ruby. As @Mostapha Roudsari pointed out in the comments, the casting (in this case for terminals) will look a little different in c#. Maybe one of the C# gurus will clean up my syntax to be appropriate for C#.

For reference system type 4 uses AirTerminalSingleDuctUncontrolled, 5 is AirTerminalSingleDuctVAVReheat, and 6 is AirTerminalSingleDuctParallelPIUReheat. See here for details. You could also just create these systems and open them up in the OpenStudio Application to figure out what content they have.

Note that hard sizing some components and leaving some autosized can be a little risky if you don't pay attention. You can end up with components that aren't well matched to each other. Imagine a hard sized terminal asking for a certain flow, pulling air through an autosized coil designed for a completely different airflow.