How to use adduvf.exe

Hi all,

I´ve tried to use the adduvf tool quite a few times but never managed to get it to work.
Does anyone have a lead on how to use it?

I´m mostly interested for two reasons:
1- Bypass the non-convex zone limitation of Energyplus for Interior solar distributions
2- Calculate viewfactors for spatial comfort models (to feed into Honeybee - Grasshopper workflows)

I´ve read somewhere (maybe in the old email chain) that it can get an idf and automatically write out the Zoneproperty:UserViewFactors:bySurfaceName, but I´m not sure how to approach it. There is also an Energyplus example file with this output, so I believe the tool is functional and could be very helpful.

Many thanks in advance,

Hi Rafael,

How are you using eplus_adduvf? Is it giving you an error? If you can upload an example run with input files, I can see if there’s an issue on our end.


Hi Greg,

thanks for coming back to me and apologies for the (terribly!) late reply.

If I´m completely honest, I have no clue on how to use it. I´ve tried some basic assumption by locating it next to an .idf and double clicking on eplus_adduvf.exe but nothing happens (not even the command window opens). I suppose this is not how it was meant to work but I haven´t found any info about it.

Is there any document I could use to guide me?
I´m not running any particular file, just trying to learn how to use the tool so that I can implement it on other workflows (Mean Radiant Temperature calculations).

If needed, I can generate a file in the format required by the tool but I don´t know which ones it can handle.


To be honest, I’m not an expert on this, either. I don’t know much about running Eplus on any platform, let alone Windows.

I can suggest that you open a console window, so you can ender “eplus_addidf input.idf” on the command line, assuming “input.idf” is the file you want to add to and it exists in the current directory. The eplus_addidf.exe command can be installed anywhere in your list of path directories, which hopefully someone can help you set up.

I wasn´t even sure if the tool was meant to run with idf files from EnergyPlus, but it does! thanks

Now that it runs, I´m testing it on a very simple geometry.

Unfortunately, it gets stuck on a “bad vertex count for surface” and "bad subsurface “Window1"” errors:

When I look into the .idf everything seems ok.

Would you know why this happens?

IDF file

PS. for future reference, I added “C:\Radiance\bin” to the system variables following this (it was done for an older version of windows and not all the setting names are exactly accurate, but it´s quite helpful).

Sorry for the double-posting, as a new user I could only upload one image :sweat_smile:

Hmmm… Seems that eplus_adduvf was written with IDF version 7.x in mind, and your file is version 9.1. I don’t actually know what has changed, but the position and actual presence of vertex counts seems to be one of them.

I would need some help figuring out how things have changed in the last 2 versions and if there’s some way to support different versions in eplus_adduvf. Since the tool was written as a one-off during a contract I had with the eplus development group nearly 6 years ago, I have not touched the code in a long time.

I see, it´s a shame that the tool didn´t get more continuous support from the E+ development group.

I´ve asked on Unmethours to see if there is any way to downgrade an IDF file, although it seems a bit far-fetched.

Do you see any other way forward with this?
I´m happy to investigate the syntax differences between IDF 7.x -> IDF 9.x, but I´m afraid I´ve never looked into the code of a tool like this (nor do I grasp the size of the effort to adjust it).

PS: Somehow it feels that this conversation overlaps with this other, and both are different ways around the same problem. Perhaps a New feature request on Energyplus repository helps?

I can bring this conversation to the attention of the folks at DOE who instigated the initial contract to see if they’re interested in updating the tool. I don’t know what else to do at this point.

That´d be great - I´m sure there are more people that would find it helpful.

I dont know if there is something I could do on my side, if there is just let me know :slight_smile:

Hi @Greg_Ward,

there have been some updates on Unmethours (e+ forum) about how to solve the syntax problem. Apparently, it has to do with the elimination of one field in the surface objects in the IDF, for versions 9.x. That has shifted the position of the point coordinates by one place which I believe could be the reason why adduvf fails to recreate the last point.

There is a detailed explanation here:

I wonder how much it would simplify the update of the tool, or maybe not at all.

If this is the only change, then I can certainly update eplus_adduvf to accommodate. In place of the “Autocalculate” keyword, your file has nothing (just a comma to indicate a field goes there). Of course, I can work with either one. I just need some reassurance that this is the only change I need worry about. I will comment on the Unmet Hours thread thread referenced above.

I went ahead and updated eplus_adduvf to work with IDF version 9.x. It was pretty easy in the end. I don’t know how long it will take to get from CVS to your binary distribution, but you can try to short-cut the process if you have a compiler.

Thanks, that´s great news! :smiley: :clap:

I don´t know how to use a compiler myself, but I´m happy to wait for it to be rolled out.

Hi Rafael,

You can find the windows binaries compiled from the CVS here:
I think if you replace the existing eplus_adduvf.exe in your Radiance bin directory with the one from the archive above, it should work.



Thanks for posting up a Windows binary, Sarith! I have updated the NREL git repo with the source, but don’t have the build VMs back up and running yet so this is helpful.

Thanks for that Sarith!

I´ve downloaded the package to test eplus_adduvf.exe but I get two errors for missing .dlls. Is this normal?

Moving eplus_adduvf.exe to its native Radiance/bin folder doesn´t really help.



Hi Rafael,

The installation, at least the call to eplus_adduvf, appears to be working fine on my system. I had compiled this on a Windows 10, x64 machine.:
I think @Rob_Guglielmetti2 might have an idea regarding the compile settings that would work on all machines. I have uploaded my bin folder on to github. You could try renaming your existing bin folder (to bin2 or such) and see if it works with the binaries from my system.


Somehow I still get the same errors using your bin folder. If it helps I´m also running it on a Windows 10 Home, 64 bits with an Intel i7 and 64GB of RAM.

I´m not really sure if this makes any difference. Maybe Rob knows a way around.

Bummer, yeah this is always a PITA. It’s a library linking issue, and I’m really not well-versed in these kinds of portability issues. The CMake system generally “just works” when making packages, and installing from that. individual compiles can be tricky when sharing like we’re trying to do here. I am sorry the CMake updates and new packages are so old, updates are way overdue and that’s on me. In the meantime, @rafael.alonso are you certain you have temporarily replaced your bin directory with @sarith’s as he described? I feel like if you are calling his version of adduvf and those dlls are in your search path, it should work. But maybe not, heh.

I will try to make the CMake updates and new packages a priority…