algorithmic modeling for Rhino

Hello Ladybug Community!  We are pleased to announce a few improvements and additions to the Ladybug + Honeybee (legacy version).  The majority of Ladybug improvements are new components that assist in common tasks like updating GH definitions, viewing images on the GH canvass, and augmenting existing study-types.  Most of the improvements to Honeybee have been in the making for a while and are just getting into the spotlight with this release.  Notably, a number of improvements have been made to support large-scale full building energy models, including fixes to memory issues with large models, better components for splitting building masses into zones, and the ability to store HBZones in external files.  Additionally, the THERM workflows have gotten a boost and these simulations can now be run directly from the Grasshopper canvass.


As always you can download the new release from Food4Rhino. Make sure to remove the older version of Ladybug and Honeybee before you do so and update your scripts.  So, without further adieu, here is the list of the new capabilities added with this release:


Better Method for Updating Old Grasshopper Files - As many of you have come to realize, Ladybug + Honeybee is updated on a fairly regular basis, with a stable release roughly every 6 months and a github version that never ceases to improve itself on a weekly basis.  For this reason, we realize that updating old Grasshopper definitions to use recent components is a challenge for many of us.  While we’ve had some methods for this in the past, there were always hiccups, particularly when it came to components that had new inputs/outputs since the previous version.  Accordingly, Mostapha has added a new “Ladybug_Update File” component that will automatically update any Grasshopper Definition to be synchronized with the version of Ladybug+Honeybee that is currently in your toolbar (aka. the components in your userobjects folder).  If there is a component that has new inputs/outputs since the time you built the definition, it will be automatically circled in red in your GH definition and a newer version of the component will be automatically added right next to this component:

While you still have to do some manual connecting of inputs to the newer component in this case, it should be much faster than our older methods and will hopefully help your old definitions survive long into the future!


EPWmap Now includes OneBuilding Files - Mostapha has added a number of new features to the EPWmap web interface that the “Download Ladybug” component connects to.  Among the improvements are a color wheel that quickly shows you how hot, cold, and comfortable a given climate is and, perhaps more importantly, there is now support for EPW files sourced from OneBuilding.  With the addition of many more weather files, you should now be able to use Ladybug with ease for more locations across the planet.  We should also note that the “Open EPW and STAT” component that downloads/unzips files from a URL now supports OneBuilding URLs.

New Image Viewer Component - Mingbo Peng has graced Ladybug with a fantastic new “Image Viewer” component that takes a given image file on one’s machine and displays it on the Grasshopper canvas.  It also enables one to pull color data off of the image with ease by simply clicking on the pixel of the image one is interested in.  This new component is useful for a wide variety of cases, including the viewing of screenshots after they have been taken with the “Ladybug_Capture View” or “Ladybug_Render View” components.  However, many of you will likely recognize it as most immediately useful in workflows involving image-based Honeybee Daylight (Radiance) simulations.  This is particularly true as Migbo has built-in the capability to read many image file types, including PNG, JPEG, GIF, TIFF and the High Dynamic Range (.HDR) image files that Radiance Outputs:

The following video gives a quick overview of the Image Viewer’s capabilities:

The new component can be found under the Ladybug_Extra tab and I think I speak for us all in saying thank you Mingbo for this great component!


New Sun Shades Calculator Released Under WIP - After over a year of software development and nearly a career's worth of geometric math development, a joint effort between Abraham Yezioro and Antonello Di Nunzio has produced a new sun shade design component that can be described as nothing short of “magical.”  Based on a similar principle to the current “Ladybug_Shading Designer,” the new component takes an input of sun vectors and produces shade geometries that can block the vectors.  However, in comparison to the shading designer, the range of shade options that are available in this new component is truly staggering, ranging from classic overhangs, louvers and fins to pergolas and custom shade surfaces.  Perhaps more importantly, the calculation methods used by this new component are faster and more reliable.  It can currently can be found under the WIP section of Ladybug and it will continue to evolve in new versions of Ladybug.


Renewable Component Now Support Sandia and CEC Photovoltaics Modules - Polishing off his many contributions to the “Renewables” section of Ladybug, Djordje Spasic has added support for a couple more ways of defining Photovoltaic modules for renewables estimation.  Specifically, the Ladybug WIP section now includes components to import modules defined with the California Energy Commission (CEC) and Sandia Labs.



Support for OpenStudio 2.x - A few months ago, the National Renewable Energy Lab (NREL) released a stable version of OpenStudio version 2, which included a number of improvements in stability and available features.  This stable release of Honeybee is built to work with the new version of OpenStudio and, in the coming months, Honeybee will be adding a few more capabilities to its OpenStudio workflows to support v2.x’s new capabilities.  Most notable among these will be support for OpenStudio measures.  Measures are short scripts written in Ruby using OpenStudio’s SDK to quickly edit and change OpenStudio models.  They are fundamental to visions of OpenStudio as a flexible energy modeling interface and to Honeybee’s goals of being a collaborative interface between the architectural and engineering industries.  Stay tuned for the next release for many of these new capabilities!


Critical Memory Issue Fixed for Large Energy Models - A number of you wonderful members of our community have been aware of computer memory issues with large Honeybee models for some time (examples: 1, 2, 3, 4).  Namely, a model that is larger than 50 zones could quickly eat up 16 GBs of memory and change Honeybee from a fast-flying insect to something more reminiscent of a snail.  We are happy to say that, after a much longer time than it should have taken us, we finally identified and fixed the issue.  In this version of Honeybee, such large models can now be created using less than 2% of the memory and time previously.  Thanks to all of you who made us aware of this and hopefully you will now reap the rewards of your struggle.

Split Building Mass Component Getting a Makeover - Many of you veteran Ladybug users will recognize Saeran Vasathakumar as one of the original contributors of Ladybug who added components for solar fans and envelopes years ago.  Now he’s back with new components to split a building mass into zones that are truly revolutionary in their speed and methodology.  Saeran has divided the new capabilities into two components (one for floor-by-floor subdivision and another for core-perimeter subdivision) and they both can be found under the WIP section of this release. In this WIP version, core-perimeter thermal zones can only be generated for all convex and very simple concave geometries. Most concave geometries and geometries with holes (or courtyards) in them will fail. However it can handle even very complex convex geometries with speed and ease. You can expect the component to start accommodating concave/courtyard geometries very soon.

Load / Dump HB Objects to File - Keeping in line with the support of large, full building energy models, this release includes full support for two components that can dump and load any HBObjects to a standalone file.  All information about HBzones can go into this file including custom constructions, schedules, loads, natural ventilation, shading devices, etc.  You can then send the resulting .HB file to someone else and they can load up the same exact zones in another definition.  This also makes it possible to have one Grasshopper file for generating the zones and running the simulation and another GH definition to import results and color zones/surfaces with those results, make energy balance graphics, etc.


Write ViewFactorInfo to File - After many of you asked for it, the _viewFactorInfo that is output from the “Honeybee_View Factor” component can now be written out to an external file using the same Load / Dump HB Objects components cited above.  For those of you who have worked with the comfort map workflows, you probably already know that calculating these view factors is one of the most time consuming portions of building a microclimate map.  Having to re-run this calculation each time you want to open up the Grasshopper script is a nuisance and, thanks to this new capability, you should only have to run it once and then store your results in an external .HB file.


Transform Honeybee Components Modified for Large Model Creation - Many large buildings today are made up of copies of the same rooms repeated over and over again across multiple floors, or along a street, etc.  Accordingly, one can imagine that the fastest way to create a full building energy model of such buildings is to simply move and copy the same zones several times.  This is what a new set of edits to the Honeybee Transform components is aimed at supporting by allowing one to build a custom set of zones, translate them several times with a Honeybee_Transform component, then solve adjacencies on all zones to make a complete energy model.


Central Plants Available on HVAC Systems - While Honeybee has historically supported the assigning of separate HVAC systems to different groups of zones, each HVAC was always an entirely new system from the ground up.  So a building with separate VAV systems for each floor would be modeled with a different chiller and boiler for each floor.  While this can be the case sometimes, it is more common to have only one chiller and boiler per building but separate air systems for each floor.  The new ‘centralPlant_’ options on the Honeybee coolingDetails and heatingDetails enable you to create this HVAC structure by making a single boiler and chiller for any HVAC systems that have this option toggled on.  Furthermore, in the case of VRF systems, you can also centralize the ventilation system, using the grouping of zones around a given HVAC to assign which zone terminals are connected to a given heat pump.


More HVAC Templates Added - As the profession continues to push the industry standard towards lower-energy HVAC systems, Honeybee intends to keep up.  In this release, we have included a few more templates for modeling advanced HVAC systems including Radiant Ceilings, Radiant Heated Floors + VAV Cooling, and Two Ground Source Heat Pump (GSHP) systems.  Variable Refrigerant Flow (VRF) systems have also gotten a large boost as it is now possible to model these systems with more efficient water-source loops.  The next release will include the ability to model central ground source systems that use hydronics for heating cooling delivery.


Run THERM Simulations Directly from Grasshopper - Anyone who has used the THERM workflow in the past likely realized that, while Honeybee can write the THERM file, you would still have to open model in THERM yourself and hit “simulate” to get results.  Now that LBNL has started a transition to becoming more open, they have graciously allowed free access for everyone to run THERM from a command line.  What this means for Honeybee is that you no longer need to open THERM at all in order to get results and you can now work entirely in Rhino/Grasshopper.  This also opens up the possibility of long parametric runs with THERM models since you can now automatically run simulations and collect results as you animate sliders, use galapagos, etc.  A special thanks is due to the LBNL team for exposing this feature, including Setphen Selkowitz, Christian Kohler, Charlie Curcija, Eleanor Lee, and Robin Mitchell.


All Options Exposed for THERM Boundary Conditions - To finish off the full implementation of THERM in Honeybee, a final component has been added called “Honeybee_Custom Radiant Environment.”  This component completes the access to all boundary condition options that THERM offers, including separate radiant and air temperatures, different view factor models, and the specification of additional heat flux (which is typically used to account for solar radiation).


Improvements to Schedule-Generating Components - Many of you who have watched the Honeybee energy modeling video tutorials have likely gotten in the habit of using CSV schedules for everything.  While this is definitely one valid way to work, it is not always the most efficient since simple schedules can be specified much more cleanly to EnergyPlus/OpenStudio and the use of CSVs can also make it difficult to share your energy models (since you have to send CSV files along with the schedules themselves).  This release adds two new schedule components that should take care of a lot of cases where CSV schedules were unnecessary.  The new “Constant Schedule” component allow you to quickly make a schedule that is set at a single value or a set of constantly repeating 24-hour values.  The second component allows you to create “Seasonal Schedules” by connecting “week schedules” from the other schedule components along with analysis periods in which these seek schedules operate.  Together, these will hopefully make our schedule-generating habit a bit better as a community.

Lastly, many of you may know Mingbo Peng as the current maintainer of the Design Explorer web interface and the Colibri components under TTToolbox.  Both of these tools have been revolutionary in enabling “brute force” studies of design spaces (aka. Grasshopper scripts where one runs all combinations of a set of sliders). Now, Mingbo has graced Ladybug with the aforementioned image viewer component and it is with pride that we welcome Mingbo Peng to the development team!

As always let us know your comments and suggestions.

The Ladybug Tools Development Team

Views: 7110

Replies are closed for this discussion.

Replies to This Discussion

Great work as always!

A lot of amazing new capabilities!

Kind regards,


All of this is amazing!

Thank you all for making everything better.

Best regards,


Great news ... again. Like having a birthday twice a year ... :-)



Truly inspiring!

Well said, Abraham.

A big thank you to everybody involved!


Great job.

Great, wow!

Btw - I changed the mesh-2-hatch component to have a target layer input.

You can find my .ghuser here


Mathias, Why don't you send a pull request on GitHub so we can review the changes and merge them in.

Will do, thanks!

Thank you, everyone!
Mathias, that's a useful addition to the mesh2hatch component. You should send a pull request with the new component to the github and we'll merge it into the code base. Mostpha''s video here shows how to submit a code contribution:
Then you'd be a Ladybug contributor :)

Thanks for the link, I'll add it as soon as I get  hang of github!

Amazing work as always !!

Thank you all 






  • Add Photos
  • View All


  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service