Hi @Batiste and thanks @chris,
There are a few tips in Ironbug that will help you to build multiple HVAC systems without duplicating clusters.
Here are a few steps that you could follow
1. Number of loops/systems
Before making a such complex configuration of system, you will need to be clear about how many of the loops or systems do you need in this building or site.
I am using Chris’ sample file as an example, here there are 13 buildings, and each building has multiple floors. Based on above descriptions, you will need to create 13 air loops, 13 x3 plant loops (hot, chilled, condenser), and 13 HVAC systems.
You can count the number of branches of the rooms.
2. Number of components per loop
Within each loop, you will also need to know the number of rooms, so that you know how many coils you need to duplicate.
3. Dupliation
You could use the IB_Duplicate
component to create multiple loop objects, but here is a cleaner way to do it. If you see “three dots” at the left bottom of an Ironbug component, that means this object is duplicatable and you can right-click it to add a new input “n_” for the number of duplications.
4. Matching branches
Normally, all data that goes into the “Branches” will be considered as loop branches of one plant loop. But if you right-click the “Branches” component and check the “Map branch to loop” option:
Here is before the setting:
After checking “Map branch to loop” option, you can see 2 branches have been added to 2 loops:
5. Grasshopper data structures
This is the hardest to learn for the Grasshopper beginners. But once you get it you get it.
You can consider one Grasshopper tree branch as one loop/system. Here I am using the hot water loop as an example.
You will need to create 13 hot water loops, so for the supply side, I use the “Merge” component to merge 13 pumps, 13 “Branches” with 13 boilers, and 13 SetPointManagers. I grafted and simplified all inputs of the Merge component so that it could output 13 branches and each of them has 3 objects inside.
The same logic applies to this loop’s demand side and other loops.
Hope this helps, and here is the sample file that I created based on @chris model.
dragonfly_ironbug_hvac_MP.gh (93.6 KB)