3 phase method: window states with energyplus schedule


hi @mostapha

The current workflow with 3phase components enables to generate blind schedules based on a logic for a sensor.

I am trying to use a blind schedule from energyplus (8760 values , 0 if blinds are down, 1 if blinds are up). When blinds are down I consider an xml with a VT of 0.1, when blinds are up an xml wih a VT of 0.8, I don’t model explicitly the blinds.

Is there a way to calculate annual metrics with the states of the window group in function of the shading schedule?

Kind regards,


Well, HB[+] is the best and I have what I need using the DC recipe.

Something along these lines worked for me



Do you know how to use the csv file to control the blind’s angle for 8760h(there are angles for 8760 in the csv file) ? I have some trouble with it . Could you tell me how I can solve it .

Thank you very much.


hi @kawaes

I’ve never done it but it sounds like a lot of states.

Thinking quickly what I would do is the following:

  • simplify the angles in the csv, round the values to 22.5, 45, 67.5, 90, 112.5, 135, 157.5, 170. which makes 8 states.
  • use WINDOW 7 LBNL to create 8 xml files including blinds at those angles.
  • run a DC or 3phase with the 8 states
  • create the combination of states depending on the csv angle data

it’s very interesting, keep us posted.
Good luck.


Hi OliverDambron

I have the same ideas with you . I think the most difficult part is the fourth for me:grinning:. I want to know if I can use a python file in the honeybee to combine the blind’s state. Could you give some example file about python file .

Thank you very much .


in your case, the csv is the schedule, so test it each rounded angle equals to the specs of your states. if yes then compose the string of 0 and 1 accordingly.

in my component you can discard the part with skymtx_hoys, that is if you ran for less than 8760 hours.


Hi OliverDambron
It is so kind of you. Thank you for the quick reply . I maybe know how to do it . I will try it:joy::joy:

Thank you very much


Hi OliverDambron

There are 10 states(0°~90° step 10°). And I have created 10 xml file by WINDOW LBNL .I think I am one step closer to success. I also have some problems in the PYTHON component. I know it is not appropriate for you. Could you upload your gh file to me .

Thank you in advance :grinning::grinning:



In my case I have 5 window groups with each a shading schedule of 0 or 1 and 2 state each. So I’m using the following.

In your case, perhaps you could do:


Oh and I forgot something.

you then need to create a tuple of the format “(x, y)” .

y being the state of the window group
x being the state of the static windows

You can do that by just concatenating the values in the right format


hi Oliver

sorry to late to respond you . I refine my model according to your method today . In my model , I have only a room with a southern window(glass+blind+glass) . So I think I have one window group . I have 10 states of my window(1: angle0°,2:angle10°,3:angle20°…10:angle90°) and one static state of my window(0:static) . So I have these combinations which is (1),(2),(3),(4),(5)…(10) . Am I right?

could you check my file which I think has some problems in the python component?Please pardon my innocence for a newer. Thank you very much.
My_Blind0.xml (138.2 KB)
My_Blind10.xml (138.2 KB)
My_Blind20.xml (138.2 KB)
My_Blind30.xml (138.2 KB)
My_Blind40.xml (138.2 KB)
My_Blind50.xml (138.2 KB)
My_Blind60.xml (138.2 KB)
My_Blind70.xml (138.2 KB)
My_Blind80.xml (138.2 KB)
My_Blind90.xml (138.2 KB)
My_Windownoblind.xml (138.2 KB)
office.3dm (46.3 KB)
Blind_DA.gh (505.6 KB)
My_Windownoblind refers to the static state of window .

I use jupyter notebook to check my python file and find it is right.But the python file in the gh file is wrong.

appreciate your respond in advance.


hi @kawaes

I have not looked at your files yet, but just one quick tip. Although I had been reading a lot of things about states in the forum, I never fully understood how to use it until I took the default test samples of the DC recipe of Honeybee+ and simplified the geometry to 1 static window and 1 window group with 2 states.

You run the quick case and start playing with the states until you see it clearly.

I’ll be able to look at your files in the weekend…



Dear Oliver
Thank you for your tips . I will try the test samples today . And I find another problem with my files . my xml file is klems quarter not klems full(Add support for half and quarter klems BSDFs). But I creat my xml file according to [quote=“mostapha, post:7, topic:2594”]
Simulate light diffusing materials [/quote]. I don’t know why . And according to the mostapha in (Add support for half and quarter klems BSDFs) , I have update my H+ to the newest version .

Thank you for your checking my files .
Best Wished to you .


are you using LBNL Window to create your XML files? You need to change the angular basis. Not sure if you did that.


Hi FabianPosadas

Thank you for your respond to me. My LBNL WINSDOW setting is

.And my xml file is image . I think my procedure is right . But I have no ideas what is wrong.


Change it from Quarter to Standard. That will fix it



This solves my xml file from Klems Quarter to Klems Full . So smart of you .

Thank you very much .



I have solved the problem about python.


Everyone is smart so are you!! No one is greater than no one.

A question about the independent control of three windows with multiple states