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

VRF with DOAS Measure Error from BCL

asked 2016-08-17 10:09:50 -0500

shopengarten's avatar

updated 2016-08-18 15:43:17 -0500

Got the following error while trying to run the measure:

/ApplyMeasureNow/UserScript/resources/OsLib_HVAC.rb:1181:in `setZoneforMasterThermostatLocation': invalid null reference Expected argument 1 of type openstudio::model::ThermalZone const &, but got NilClass nil (ArgumentError)

in SWIG method 'setZoneforMasterThermostatLocation'

Followed the instructions from this page: "Error Applying BCL VRF w/ DOAS Measure"

But still got the same error above.

Can't seem to resolve after deleting the existing HVAC system entirely.

Any help would be appreciated

edit retag flag offensive close merge delete


This error is occurring because in the measure the setZoneforMasterThermostatLocation method requires a thermal zone, and you aren't passing a thermal zone to it. There could be several reasons why it isn't passing a thermal zone. How many thermal zones are in your model? Could you link to a copy of your model so I can take a look at it?

mdahlhausen's avatar mdahlhausen  ( 2016-08-24 11:58:29 -0500 )edit

I went through the model and I have 22 thermal zones assigned to 22 spaces on 7 floors.

Is the measure looking for a master zone for each VRF system? Is that something I can assign prior to running the measure?

shopengarten's avatar shopengarten  ( 2016-08-24 13:54:03 -0500 )edit

perhaps you have an extra vrf terminal without a thermal zone assigned to it? Could you send a link to download the model on dropbox or some other file sharing site? That'd make it easier to help debug.

mdahlhausen's avatar mdahlhausen  ( 2016-08-25 10:36:52 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted

answered 2016-08-26 18:59:08 -0500

Ok. So I was able to recreate this error.

It occurs if there is only one thermal zone to add the system to on a given building story. This can happen if you only select a few spaces types in your model, or you have few zones in your model

Specifically, in the file OsLib_HVAC.rb in the resources folder, you need to change line #1181 from this:


to this:


If there is only one zone in the array thermalZonesToAdd, then there isn't a [1] object to access. Remember that ruby arrays start at index 0.

@david-goldwasser seems to be the author and can probably fix this in the OsLib_HVAC.rblibrary.

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

Training Workshops


Question Tools

1 follower


Asked: 2016-08-17 10:09:50 -0500

Seen: 370 times

Last updated: Aug 26 '16