Adiabatic or Outdoors


I have a question since i thought i had it clear but now i don’t.

I defined an individual surface as a wall. Defined the EPBC as adiabatic and also but right after the definition i connected this geometry to the HB_makeAdiabatic component.

I expected that when creating the IDF file this surface will be registered as a “surface” (i.e. internal wall). Now revising the idf i see that this surface is registered as “Outdoors”. So, no way, that the adiabatic condition will be applied or taken into consideration for the simulation.

Am i missing something?



To be more accurate in my question: Defining EPCB as adiabatic sets the geometry as “Outdoors” non exposed to sun or wind.

Without the EPCB input but using the HB_makeAdiabatic sets the geometry as “Outdoors”, sun and wind exposed.

I was expecting the geometry to be “Surface” no exposed to sun and wind.



I have read over your post a few times and I am still having trouble understanding your question. It sounds like there is a solve adjacency component some where in your situation that changes some tings. Can you send a picture or a GH file that re-creates the issue?

All that I can say right now is that setting the EPBC to Adiabatic and passing a srf through the Make Adiabatic component still results in an adiabatic surface:


Hi Chris,

There is in effect a solveAdjacency on the way. So now this is probably a misunderstanding on my side about how things are supposed to be working.

Attached the case i’m working on (sorry for the size and mess). But just see the 3 red arrows.

The first on the left shows how i define for a specific zone the adiabatic conditions. The middle one show that it is correctly defined when i defined the stand aone zone. The third on the right show what happens after the solve adjacency applied. What was before adiabatic is now outdoors (look for the surface z2a3_w2 for instance).

Attached also the rhino file. The geometry is not internalised.

What i am supposed to do if i want to keep the surface as adiabatic?



munot o (1.2 MB)
sim 1 - munot o 09.02.16_AY-03.3dm (911 KB)

OK. Updates on my side.

I’ve learned that setting the removeCurrentAdjc_to True is the cause of the problem. Removing it makes this work as expected.I was using this setting as true as default, just to be sure everything is ok, but now i see that this assumption might spoil the whole thing.

More than that i’ve saved you a lot of time on future questions regarding the simulation itself :slight_smile: (Anyway i will open a discussion on that).

If you have any recommendations on the model please do, but i think it is well done now.




Glad that you were able to solve the issue. Solve Adjacencies will rewrite all of your boundary conditions of your zone (except for ground surfaces) unless you set _removeCurrentAdjc to ‘False’.

A couple of tricks that might make your life easier:

  1. If you set the altBC on the Solve Adjacency component to ‘Adiabatic’, all internal surfaces will be set with an adabatic boundary condition (this is useful if you are not worried about inter-zone heat exchange and want a fast, multi-zone model).

  2. The most recent ‘Make Adiabatic by Type’ component was designed such that you should never have to construct a zone with HBSrfs if all that you want to do is set certain surfaces to adiabatic:

Notably, the ‘Walls_’ input can take a list of booleans and make surfaced adiabatic based on their cardinal orientation (North, East, South, West). So you can construct your zones with the Mass2Zone component, which will make your file smaller.

  1. Assigning constructions after you have solved adjacencies will allow you to assign different constructions depending on whether surfaces are interior or exterior and might also help make it possible for you to use the mass2Zone component.


Hi Chris and thanks for the tips.

Trying to simplify the process i defined a test file (attached). So i have some questions and probably a bug report.

There are 3 zones. I want the internal walls between them to be adiabatic (at first. See later on for an alternative).

The whole process is fine/clear up to the solveAdjacencies: The walls are defined as “outdoors” and “surface” for the boundary conditions. So far so good.

Now i get to the HB_makeAdiabaticByType, and some issues appear (See A in the file).

Setting the interiorWalls to True doesn’t change the condition from"surface" to “adiabatic” (A1 in file).

Setting the walls set both internal and external, to adiabatic (A2 in file). Is this supposed to work like this? Why the just the internal doesn’t make the change?

In addition to this i’ll appreciate your advice in the following. Let’s say that i want the internal walls to be divided in 2 parts each. One should be adiabatic and the other “air wall”. How do you recommend to do this? Is the modeling in the file correct, or i must do surface by surface?Or using the Decompose Honeybee Zone …?

How can i retain the air walls and still use the makeAdiabaticByType component?

Thanks for your help!!

-A. (479 KB)


You are right that this was a bug an I have fixed it on the github:…

… and in the attached file.

For your question, all that you have to do is use two solve adjacencies components in tandem:

This example is also in the attached file.

-Chris (489 KB)

Thanks Chris.

This is good.

The second question (half wall adiabatic, and half air wall) regarding the recommendation for modeling was not understood as i intended. See attached. The idea is half of each internal wall to have different boundary conditions. So the question i there is a way to do that with this masses modeling or should i do that with surface by surface (which i’m afraid is the way).




Yes, you are right. I can’t think of any way of setting that situation up that does not involve the HBSurface component or decomposing the zone and editing individual surfaces. If you have a lot of this same type of condition, however, it is likely possible to set up all of them with one set of HBSurface components, though. In the end, smart list management can usually eliminate the need for large numbers of components on the canvas.