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

# OpenStudio 1.10 Problem. Severe error constructions not being assigned correctly in interzone surfaces

Hi there, when assigning different constructions sets to two adjacent spaces (using the plugin 'set attributes for selected spaces'), the interzone surface inherits two different constructions which results in the following severe e+ error:

* Severe * GetSurfaceData: Construction EA INTERIOR PARTITION WALL REFRIGERAION 1 of interzone surface 00REF-01 - WALL 090:A does not have the same number of layers as the construction EA INTERIOR PARTITION WALL of adjacent surface 00MEC-02 - WALL 270:A * ~~~ * ...this problem for this pair will not be reported again. The simulation fails. This problem is resolved by manually assigning construction to one of the referenced surfaces. e.g. set, A INTERIOR PARTITION WALL REFRIGERAION construction for 00MEC-02 - WALL 270:A.

I was expecting that when you a assign a construction set to a space all the constructions of adjacents surfaces would be updated to match the new construction set. How should the workflow be in order to no have assign constructions manually?

Thanks.

edit retag close merge delete

Sort by » oldest newest most voted

Good question. The inheritance diagram for OpenStudio should help. Looking at it you can see 5 places where a surface or sub-surface can get a construction. The deepest assignment is hard assigning it to the surface directory. The shallowest is to assign a default construction at the building level. In your cases, the assessment was between those two, assigned to a space type.

If you have two conflicting surfaces OpenStudio tries to resolve them by applying the construction that has a deeper assignment. So if your hospital has a default interior wall of basic drywall, but you assign a construction set to the x-ray room that is lead lined. The lead wall will be win the tie breaker where there are interior walls for the x-ray room.

Now lets say you have another space type that has a unique interior wall. Lets say you have an un-conditioned space and you want it to have insulated interior walls. If a space using the unconditioned space type shares an interior wall with the a space using the x-ray space type OpenStudio an't break the tie. There is a warning on export to IDF, but that can often go unseen depending on how you run the simulation. In this situation you should hard assign the construction you want used (which may be a unique construction not seen in either space e.g. insulated and with lead) directly to one or the other of the two surfaces. You can assign a mirror of it to the other surface, but that isn't necessary.

more

Thanks David. That's cristal clear. Is there a way to hard assign constructions other than doing it one by one?

( 2015-12-28 12:56:54 -0600 )edit

You can multi-select/edit using gridview on the surfaces sub-tab of the spaces tab.

( 2015-12-28 20:08:40 -0600 )edit

Ok. I was avoiding that because the GUI gets really slow with biggish projects. I think easiest and fastest will be editing through API. Thanks again.

( 2015-12-29 15:47:53 -0600 )edit

You could use the API to loop through surfaces in a space and hard assign the constructions.

space.surfaces.each do |surface|
const = surface.construction # gets construction even if inherited
if const.is_initialized
surface.setConstruction(const.get) # hard assigns the construction
else
puts "it doesn't appear there is a construction setup for this surface"
end
end


You can use "surface.isConstructionDefaulted" to find out if it is already hard assigned.

( 2015-12-30 09:29:57 -0600 )edit

That's brilliant David. Thanks a lot.

( 2015-12-30 13:03:21 -0600 )edit