Adaptive Indoor Comfort Evaluation

Hello guys,

I am trying to conduct an indoor evaluation. I believe I have set everything correct but the component keeps giving the error “The calculation has been terminated by the user!” which I think means some of my settings/inputs are wrong.

I have Chris’s file on the other tab and it works ok, with the same exact settings. What am I doing wrong?

Kind regards,

Theodore.

Theodore,

It was a very weird bug. I was getting a “can’t divide by zero” error and yet I already had a check in the function to make sure that it didn’t divide by zero. In any case, I put in yet another check and it fixed it in the attached file. Thanks for finding the bug.

-Chris

IndoorComfort_CWM.gh (563 KB)

Hey Chris,

Thanks it seems to work now!

However, the parallel command is still giving the error, it runs okay without parallel toggled on. I am not sure if it is my system or definition, or the component, but parallel seems useful in this demanding calculation.

Another odd thing. I’m playing with the layers of the wall construction and when I changed layer the vertical surface in the operative temperature disappeared. When I reverted, it was back. I think this mostly related to me though.

Kind regards,

Theodore.

Theodore,

I feel like I am discovering the weirdest bugs. You are right that the error only happens when you do an annual run in parallel. The non-parallel function runs fine and, if I run the analysis for just a month in parallel, it works fine. Moreover, I noticed that the parallel function is failing on a different hour each time that I run the component.

I’m going to keep working through this but I can’t figure out what is going on. Maybe Mostapha can shed some light on this.

To address the issue of the vertical surface disappearing, the latest version of GH has a major bug in the display of meshes. Any time that there is a brep previewing in the Rhino scene, meshes will be shown with only one side of their face colored. From the other side, they appear invisible. If you rotate your model 180, you will see that the vertical mesh is still there. Also, if you turn the preview off on the colored charts, you will see both sides of the mesh colored again.

-Chris

I just noticed something strange. The parallel function has weird “blips” when it printing out results:

I wonder if this has something to do with it.

-Chris

I have another update. I can run the component in parallel for up to 3 months, usually, but this is not always consistent (sometimes I can only run it 2 and others I can run it 4). Weird stuff here.

Thanks for sticking to it Chris.

It is some weird behaviour indeed.

Theodore,

I am happy to announce that, with the aid of Mostapha and his infinite python wisdom, we found the error that was causing the parallel run to fail. Some threads of the parallel run were calling certain properties from a class at the same time that other threads were changing those properties. It’s a parallel pitfall commonly called a “race condition” or the “writing to shared memory” (https://msdn.microsoft.com/en-us/library/dd997392(v=vs.110).aspx).

Needless to say, the parallel capability is now fixed in the component on the github and in the attached file. I also put in another check to have the component not run calculations related to direct sunlight if the zone has no windows. All of this has gotten the annual run of your test box down to a whopping 35 seconds!

Enjoy and thanks again goes to Mostapha,

-Chris

IndoorComfort_CWM.gh (563 KB)

Thanks Chris!

Excellent work! Will put it to great use!

Can I update from Github or do I just use your definition?

Theodore,

I would sync with the github using the Honeybee_Update Honeybee and the Ladybug_Update Ladybug components. The comfort components on the github and the ones in the GH file are the same but you seem to be using the components enough to keep the components in your GH toolbar in sync with the latest development.

-Chris