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

Are there any reports showing the Solar Collector variables in OpenStudio?

asked 2017-01-08 17:48:05 -0500

Mark's avatar

updated 2017-01-09 08:06:26 -0500

I am trying to show information for the solar hot water collector in a report format in OpenStudio.

edit retag flag offensive close merge delete


What have you tried so far? Is the Eplusout.html report not good enough for you?

Julien Marrec's avatar Julien Marrec  ( 2017-01-09 05:08:53 -0500 )edit

A LEED review is looking for better justification for the reported hot water savings.

Mark's avatar Mark  ( 2017-01-15 12:52:22 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2017-01-17 07:05:06 -0500

updated 2017-01-17 07:06:29 -0500

Following your question I just realized that even the eplustbl.htm has virtually no useful information on solar collectors. I've decided to work on on adding a report for solar collectors to the OpenStudio Results measure but can't tell you when that's going to be completed as I have other things on my plate.

For now, I suggest doing this:

  • Report the area of the collectors that you integrated in your model.
  • Add two output variables to your model: Solar Collector Efficiency and Solar Collector Heat Transfer Energy. You can report it annually (set reporting frequency to RunPeriod) or maybe monthly if you want more detail. That will give you the average efficiency of the solar collector and the total heat transfer by the collector and will allow you to double check that your results are correct and physically sound.

If you only added a couple of collectors, reporting the area of the collectors can be done easily manually using the openstudio application, otherwise just write a little piece of code like so (I'm writing on the go without trying it, so excuse any typos)

all_collectors = (model.getSolarCollectorFlatPlatePhotovoltaicThermals +
                  model.getSolarCollectorIntegralCollectorStorages + 

total_area_m2 = 0
n_sc = 0

all_collectors.each do |sc|
    # Skip collectors that aren't linked to a plant loop or don't have a surface
   next if sc.surface.empty?
   next if sc.plantLoop.empty?
   n_sc += 1
   area_m2 = sc.surface.get.netArea
   total_area_m2 += area_m2

total_area_ft2 = OpenStudio::convert(total_area_m2, "m^2", "ft^2").get

puts "There area #{n_sc} collectors properly defined, for a total area of #{OpenStudio.toNeatString(total_area_m2, 0, true)} m^2 // #{OpenStudio.toNeatString(total_area_ft2, 0, true)} ft^2"
edit flag offensive delete link more

Your Answer

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

Add Answer

Question Tools


Asked: 2017-01-08 17:48:05 -0500

Seen: 318 times

Last updated: Jan 17 '17