Hi all,
I have the same problem with Ironbug Ideal Air Load as in this post with Honeybee Ideal Air Loads:
In the Ironbub object I select: NoLimit for heating and cooling. But when I open the in.idf created ( in this case after DF Run URBANopt), the propertires are this:
The screenshot of your hbjson does not show the systems created by Ironbug. All Ironbug systems are translated as DetailedHVAC. Please double check your file and ensure the Ironbug is assigned to the room correctly.
I encountered an issue when applying the idealLoad system to the DF Detailed HVAC object. It seems that this system doesnât work with DF Detailed HVAC. However, when I apply other HVAC systems like DF IdealAirLoad, it functions as expected.
Interestingly, if I take the same detailed ironbug system and apply it to the hbmodel created with DF Create Geojson, the Honeybee simulation works, and it creates the detailed system successfully. In the screenshots attached earlier, you can see that the detailed IDF system is created correctly. However, it doesnât seem to be applied to the room with DF Detailed HVAC.
I am in the process of creating a workflow that allows for the application of different HVAC systems to different rooms. Itâs possible that the issue is more related to Dragonfly or Grasshopper rather than Ironbug.
test_ironbug.gh (105.8 KB)
Hi @MingboPeng,
Hereâs an example where the HVAC system doesnât work. Itâs not exactly the same case as mine, as a different system is applied for each room in my case.
Thanks @Batiste, I am able to recreate the issue on my side.
Hi @chris, it seems there is an issue in the âDF rejoin to buildingâ component. The DetailedHVAC object within Room2D gets lost after rejoining to the building.
I am attaching two exported json files here for you to check. building.json (144.8 KB) room2d.json (112.0 KB)
Sorry that I originally thought this was an issue with the Ironbug serialization.
You are right that itâs an issue with the âDF Rejoin to Buildingâ component and it is specifically happening because the Grasshopper definition is using the DF Deconstruct All Object component instead of the DF Deconstruct Object component that it is intended to work with.
When âDeconstruct Allâ is used, you are essentially generating a new set of rooms that are separate from the original Building (since youâre converting the Stories represented with multipliers into independent geometries). So these new Rooms canât really be rejoined to the original Building and the only way to get a correct Dragonfly Building from them is to join them back into a DF Story and then create a new DF Building from Stories.
Long story short, @Batiste , just replace the âDF Deconstruct All Objectâ with the âDF Deconstruct Objectâ component and everything will work in your original script:
To make sure that this issue does not come up again in the future, I have added an error into the âRejoin to Buildingâ component, which will be triggered whenever the âDeconstruct All Objectâ component is used:
So, in the case that I want to apply a different HVAC system to each floor of a building (without multipliers), I should create a building from the floors decomposed by âDeconstruct All Object.â The problem is that when I try to reconstruct the building, each room becomes an independent floor (because if I try to maintain the relationship between floors within a building it doesnât work).
But if I use âgraftâ to create the story, it then creates a separate building for each floor, and I canât recreate the original buildings with x number of floors.
I was also thinking about this for the near future if I manage to have a geojson as input with geometry and properties for each floor of a building. After creating the rooms, how can I create independent buildings? Is there a way to determine that one geometry is below from another and therefore it belongs to the same building?
I realize that Grasshopper data trees are one of the harder things to understand (it took me 2 years of working in Grasshopper before I got a good understanding of them). But there are several ways to solve your issue if you know how to use them.
The most conceptually simple solution I can think of is that you can just reconstruct your Dragonfly Buildings from all stories immediately after you create them so that they have no multipliers like so:
Hi @MingboPeng,
Now I am able to make the ideal loads feature of Ironbug work. However, the issue is that the ideal loadsâ outputs are not loading or appearing now. Here, I provide you with an example building. In the .idf file, the system is defined as ideal loads, and the ideal loadsâ outputs have also been specified. In the .osm file, ideal loads are defined for each zone. But in the .rdd file, the ideal loads variables are not available either. Is this related to Ironbug? Regards. ideal.zip (272.0 KB)
To clarify this doubt, Iâm sharing both my simplified workflow 1_SUNO_CTE_ESTIU_2023_GEOJSON_test_ideal_L.gh (178.7 KB)
and the workflow that @chris performed in other post dragonfly_ironbug_hvac_MP_ideal_loads_test.gh (157.1 KB)
. In Chrisâs workflow, when applying the ideal loads, it does work; it is applied correctly, and the outputs can be obtained. However, in my workflow, there is no way it works. I canât quite grasp where the problem is, as theoretically, I am doing exactly the same thing as in Chrisâs workflow.