**1. Overview**

In a previous post, I described a method for predicting IBUs, called mIBU, that modifies the Tinseth formula in order to account for utilization from late hopping and whirlpool hops. After many distractions, I’ve finally implemented this method in an on-line calculator:

https://jphosom.github.io/alchemyoverlord/

so you don’t need to program it yourself in order to try it out. This blog post describes this mIBU calculator in more detail.

**2. Information Needed for mIBU**

The mIBU method uses the Tinseth formula as a baseline, and modifies it to account for utilization after flameout. According to the Tinseth formula, the utilization after flameout is zero. In this modified method, utilization continues after flameout but at a slower rate because of the decrease in wort temperature. In order to model this post-flameout utilization, we need to know (a) how utilization is affected by temperature, (b) how the wort temperature decreases over time after flameout (before you “force” cooling with an immersion chiller, wort chiller, or ice bath), and (c) how the wort temperature changes during forced cooling.

*Sub-Boiling Utilization*: A previous blog post looked at sub-boiling utilization and found that Mark Malowicki provides just the information needed for how utilization is affected by temperature.

*Wort Temperature Decrease*: I’ve collected a fair amount of data on the natural decrease in wort temperature, and found that this decrease can be modeled accurately enough for our purposes using the wort volume, the surface area of wort exposed to air (for how much steam is produced), and the area of the kettle opening (for how quickly the steam can escape). Other factors, such as ambient temperature or relative humidity, have only a very small impact on predicted IBU values. The on-line mIBU calculator has input fields for the kettle diameter and the kettle opening diameter; it uses these to compute the areas and then the function of how temperature decreases over time. For most homebrewers with an uncovered kettle, the diameter of the kettle is equal to the diameter of the kettle opening. The decrease over time can be modeled with either a linear function or an exponential decay function. The linear function is easier to understand, but may not be as accurate as the exponential decay function. If you find that your temperature decrease is not predicted well by the default values in either the linear or exponential decay functions, you can change the function parameters to better model your system.

*Forced Cooling*: After the natural decrease in temperature of a hop stand or whirlpool, there’s a faster decrease in temperature once you start the forced cooling of the immersion chiller, counterflow chiller, or ice bath. This function doesn’t need to be as accurate, because in most cases the wort is cooled quickly and during this time the overall contribution to the IBU is small. I’ve collected a small amount of data on forced cooling, and developed default values based on this smaller dataset. For the immersion chiller, the exponential decay function has a minimum temperature of 106°F / 41°C. For the icebath method, the exponential decay function has a minimum temperature of 68°F / 20°C. The counterflow chiller operates differently, quickly cooling the wort well below isomerization temperatures as it leaves the kettle, and so only the rate at which the wort leaves the kettle needs to be specified.

*Determining Your Own Parameter Values*: If you’d like to determine your own parameter values for modeling the decrease in temperature, I recommend (a) measuring the temperature of wort (or, lacking that, the same volume of water) in your kettle from flameout (time = 0) for 20 minutes (time = 20) at one- or two-minute intervals, and then (b) entering this data into an online curve-fitting calculator to obtain an equation. I recommend the Colby College Nonlinear Least Squares Curve Fitting page. If you use this page, just enter the times and temperatures like this:

0 212.1 1 210.9 2 209.2 3 207.9 4 206.0 5 204.4 ... 18 186.2 19 184.3 20 184.0

with one pair of values per line and spaces in between the values. Then select either “`a exp(-bx) + c`

” or “`ax + b`

” (down at the bottom of the list) as the function, and click “Fit & Plot”. It works best if you have initial guesses for the parameters. If you’re working in Fahrenheit, then good guesses for the exponential function are `a=95, b=0.02, c=120`

, and good guesses for the linear function are `a=-1.3, b=212`

. If you’re working in Celsius, then good guesses for the exponential function are `a=50, b=0.02, c=50`

, and good guesses for the linear function are `a=-1, b=100`

. The results are somewhat buried in a window of text, for example:

a= 137.8 +- 65.3 b= 0.01173 +- 0.0063 c= 74.6 +- 65

and in this case, you can ignore the values after `+-`

. The accompanying plot is always interesting, and it should decrease smoothly over time.

**3. Default Parameter Values**

The online calculator is set up with default values that target a “typical” homebrewer. If you enter a new value and then want to go back to the default, type `d`

(for “default”) in that field.

The default values for the temperature decay functions are in red, in order to indicate that you may want to consider changing these defaults to better reflect the behavior of your system. If you specify a value, the value in the field will turn black. I’ve found that in most cases on a homebrewing scale, these defaults yield reasonable estimates.

**4. Bells and Whistles: Partial Boils, Specific Gravity, and Global Scaling**

In order to make this calculator as useful as possible to as many brewers as possible, I’ve included a few bells and whistles.

For one, there are input values for (a) the amount of wort and trub left in the kettle after racking and (b) the amount of topoff water added if you’re doing a partial boil. If you’re doing a full boil (not adding water after the boil), then neither of these fields are necessary. The IBU value, as a measure of the concentration of bittering substances, depends on volume; if you have two beers, **A** and **B**, and **B** has the same amount of isomerized alpha acids (and other bittering compounds) and double the volume of **A**, then **B** will have half of the IBUs of **A**. One important question is what volume to use in the IBU calculation? During the boil, the volume will decrease and the concentration will increase. The IBUs depend on the concentration of bittering compounds at the end of the boil, and so the post-boil volume should be used in the IBU calculations. If you top off this hopped wort with water, the IBUs will decrease as you add more water.

Glenn Tinseth has a “bigness factor” in his equation that modifies the IBU value based on the wort gravity. He says to “use an average gravity value for the entire boil“. Rather than ask for an initial and final gravity, this calculator asks you to specify the (post-boil) original gravity and the evaporation rate. From these two values it computes the average gravity over the entire boil. If you don’t care that much about such details, you can set the evaporation rate to zero and the calculator will use the original gravity.

Finally, Prof. Tinseth recommends “fiddling with 4.15 if necessary to match your system“, because IBUs can depend a lot on a brewer’s setup and brewing techniques. Rather than making this value a variable, I introduce a “global scaling factor” that has the same effect. The default scaling factor is 1.0, which yields the same results as the standard Tinseth formula or mIBU technique. If you find that you’re consistently getting more or fewer measured IBUs than predicted, you can adjust this scaling factor. (I highly recommend getting measurements of the IBUs in your beer; it’s quick, inexpensive, and the only way to really know the IBU value. There are a number of good laboratories available for testing; I’ve been very happy with Oregon BrewLab. I send in samples of all of my beers for testing.)

**5. Optional Alpha-Acid Solubility Limit**

It has been noted that doubling the amount of hops in the boil can yield less than double the IBUs in the finished beer. With hop-forward beers, I’ve found that the Tinseth formula can greatly overestimate IBU values because it treats each hop addition independently. At this point, my best (but still incomplete) understanding is that IBUs are not linear with hop concentration because of a limit on the solubility of alpha acids. I describe this in much greater detail in another blog post. If you want to try this model of the solubility limit, select “`yes`

” for the field “Apply alpha-acid solubility-limit correction”; otherwise, select “`no`

“.

**6. Future Work**

There are a few more things on my list that I’d like to implement for this calculator. In particular, I’d like to have it remember your settings when you refresh your web page. I’m working on these things, but at my usual glacial pace, so it may be a while before these changes make it to the website.

I hope you find this calculator useful! If something doesn’t work the way you expect it to, or if you have any questions, feel free to let me know. If you’re interested in the details of the programming, the source code is available as a link on the github website.