A new mash software testing method thought experiment, titrating malt with malt

Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum

Help Support Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.

Silver_Is_Money

Larry Sayre, Developer of 'Mash Made Easy'
Joined
Dec 31, 2016
Messages
6,462
Reaction score
2,216
Location
N/E Ohio
Per Briess lab data, their 120L Caramel malt has a DI_pH of around 4.58, and their Pilsner malt has a DI_pH of around 5.83. Actual DI_pH values for each malt to be titrated would first need to be verified by mashing and pH sampling each of them in the same fashion as is outlined in the experiment below, only using exclusively each malt individually in two separate mashes.

The thought experiment itself subsequently involves effectively the titrating varying ratios of Briess 120L Caramel malt with varying ratios of Briess Pilsner malt (and visa-versa) in a quasi-Congress mash.

The quasi-Congress mash would "minimally" consist of a carefully weighed 50 grams of finely crushed malt and 200 mL of pure distilled water. Mash temperature to be held at 152 degrees F., +/- 5 degrees F. in a water bath upon a stove top. Mash duration of 30 minutes with routine stirring (carefully utilizing separate stirring spoons for each sample).

Sample 1) 25 grams of each malt. Ratio of 1:1
Sample 2) 12.5 grams of 120L and 37.5 grams of Pilsner. Ratio of 1:3
Sample 3) 5 grams of 120L and 45 grams of Pilsner. Ratio of 1:9

Cool each sample at the conclusion of the 30 minute mash and take its mash pH at 75 degrees F. Record each samples mash pH. Compare the actual mash pH results at each ratio with mash pH prediction via software utilizing the very same ratios as for the quasi-Congress mashes.
 
You might also want to add a 4th ratio, and 1:6 would be a logical choice to fill in the extant gap:

8.33 grams of 120L and 41.67 grams of Pilsner. Ratio 1:6

You might ask as to why anyone would propose a seemingly silly test such as this one. The answer is to help resolve the prevailing question as to whether or not the so called generation 2 dynamically proton modeling (following) software is factually as superior in this regard as it is presently touted. Just as for the case of a 24 hour clock that is broken telling the correct time once a day, it is likely that any given software package (regardless of its underlying modeling and presumptions, be they mathematically logical, quasi-empirical, purely empirical, or flat out kludge based) will presumably be capable of predicting the actual mash pH with markedly more precision at a single blended malts ratio, but the real validity test of the underlying presumptions of gen 2 (and of course the rest, generally lumped together as gen 1) is clearly to peg the mash pH prediction vs. the measured mash pH reality over a broad range of all of the proposed sample blend ratios. This test is thereby intended to either prove or disprove the presumption that gen 2 has all of the underlying bases of the malts precisely modeled and is thereby markedly more reliable as a mash prediction tool across any blended malts ratio. If gen 2 gets it right across all of the ratio blends and the rest fail to do so, then gen 2 has proven its case for specifically malt modeling superiority.
 
Last edited:
This test is thereby intended to either prove or disprove the presumption that gen 2 has all of the underlying bases of the malts precisely modeled and is thereby markedly more reliable as a mash prediction tool across any blended malts ratio. If gen 2 gets it right across all of the ratio blends and the rest fail to do so, then gen 2 has proven its case for specifically malt modeling superiority.

Are you trying to prove one estimator is better than the other simply because you have data from Briess on pH DI for two specific lots of malt? If this is your goal, then your test is hopelessly foolish.

Who says the charge model will predict better than any other in this test? You would need titration info for the malts used. If you had that, or a reasonable approximation, then yes, it would be better. If you don't, how can you expect it to predict well? Don't confuse the artificial malt classes I made as a tool for people to be able to use dQMalt with superiority over anything else.

The fact is that:

dQMalt = a1 * (pHz - pH DI) + a2 * (pHz - pH DI) ^ 2 + a3 * (pHz - pH DI) ^ 3

is a great way to model the acid/base characteristics of malt, but Garbage in = garbage out. The model is superior but that doesn't mean the input data will be.

Also, how are you controlling for different lots of Briess C120 and Briess Pilsner?

This whole discussion and constant insistence on competition is tiresome and the reason nobody is paying any attention anymore. If it's an arms race you want, I'm bowing out.
 
Are you trying to prove one estimator is better than the other simply because you have data from Briess on pH DI for two specific lots of malt? If this is your goal, then your test is hopelessly foolish.

Not at all. In my first paragraph I made it quite clear that the two malts to be used for this experiment need their actual DI_pH values to be established prior to the test. And I would presume that a1, a2, and a3 would also need to be established for their proper use and fit in the gen 2 model.

It would only be for better consistency in testing and results across multiple testers that the two proposed malts must be strictly adhered to as to brand and type.
 
Last edited:
We can't expect people to run titration tests every time they brew a recipe. It would take them longer to run the tests than it would to brew the batch of beer. Even if they did the next time they bought the same type of grains from a different lot they'd need to run the tests again. Giving users a way to override predicted malt DIpH values with known values is a courtesy that very few will use. It's also an important feature for those who will take the time to run their own titration tests. And for those who do the extra work comparing their actual brew day results with mash pH predictions now that would be interesting.
 
You might ask as to why anyone would propose a seemingly silly test such as this one. The answer is to help resolve the prevailing question as to whether or not the so called generation 2 dynamically proton modeling (following) software is factually as superior in this regard as it is presently touted.
That question lingers only in the minds of those who don't understand the fundamentals (I almost wrote "basics") of acid-base chemistry. Chemists in many fields (including food and beverage), and others, adjust the pH of the processes they are concerned with by mixing things with different acid-base properties (different titration curves) on a daily basis. Just yesterday my local son of Aesculapius, one Dr. Malik, was advising me to use sour candies for a sore throat. We were both amused when I pointed out to him that these are often soured with malic acid. What happens when you mix things with different titration curves is not difficult to determine if you understand the chemistry which a large number of people do though not many of them are found here.

I have not invented or discovered anything new. I just came up with a convenient way of representing the titration curve of malt so that mixtures of malt with sodium bicarbonate, or other malts or malic acid can be easily characterized (once you have the curve or, equivalently, its parameters) and found a way to simplify the calculations by counting protons.

Gedanken experiment isn't going to get you anywhere. A gedanken experiment is performed every time one uses a Type II calculator to estimate mash pH and that's been done thousands of times. You need to do actual experiments to dispel the apparently persistent notion in your mind that I am advancing some new theory. In fact I am merely advocating a novel (I think - someone should have come up with this before I did) application of existing and well proven science to brewing.

If you adequately characterize two similar malts e.g. two pale malts, (measure their pHdi's, and a's) and mix m1 of the first with m2 of the second in DI water you calculate pH as
(m1*a1*pHdi1 + m2*a2*pH2)/(m1*a1 + m2*a2) and this is what you will measure. If you use malts with pHdi's farther apart then you must determine the b's and c's as well, the problem in now non-linear and you would have to use one of the iterative techniques to get a pH prediction.

Obviously, when I published this approach in MBAA TQ I gave an example calculation for a mix of the malts I had characterized and made mini mashes and, as one would expect, the measured pH's were very close to the predictions. IOW I did the proposed experiments. But under ideal laboratory conditions in which I mixed malts I had measured and the measurements were done with great care. The practical considerations associated with calculating the predicted pH for malt bought last week based on parameters from another bag of similar malt bought 5 years ago have been discussed here ad nauseam.

Apparently the fundamental concept here is still not appreciated. The problem with current mash calculators are two. Bad algorithms and bad data fed to those algorithms. Proton accounting fixes the algorithms. There is no question about that. But it does not solve the problem caused by feeding bad malt data to an algorithm no matter how robust the corrected algorithm may be.
 
I'm not at all suggesting the feeding of bad malt data. Please see post #1, paragraph 1, followed by post #4.
 
So the question that needs answering is which approach Gen I or Gen II is less accurate? Entering estimated DIpH values using Gen II calculations or using Gen I estimations?

The overwhelming acceptance of Gen I pH prediction over Gen II prediction is due to the lack of accurate grain DIpH values. I’m sure everyone knows that by now and if not they should.
 
Is it possible to come up with a purely empirical algorithm that gives better answers than a robust algorithm fed bad data? I suppose it might be at least some of the time. Is it possible to come up with an empirical algorithm that gives better answers than a robust algorithm fed good data? No.

Remember that it is not sufficient to know mash di pH. One must also know the buffering properties of the malts.
 
Is it possible to come up with a purely empirical algorithm that gives better answers than a robust algorithm fed bad data? I suppose it might be at least some of the time. Is it possible to come up with an empirical algorithm that gives better answers than a robust algorithm fed good data? No.

Remember that it is not sufficient to know mash di pH. One must also know the buffering properties of the malts.
Yes I understand, and don't doubt the accuracy of Gen II modeling if it can be fed accurate grain data. But the accuracy of Gen II predictions when fed quasi-accurate DIpH data is at best no better or possibly worse than today's current Gen I predictions.
 
The accuracy of Gen II predictions based on accurate pHdi but inaccurate buffering data aren’t going to be that good either. That’s really the point I’d like to get across.
 
The accuracy of Gen II predictions based on accurate pHdi but inaccurate buffering data aren’t going to be that good either. That’s really the point I’d like to get across.

I was goofing around with a gentleman at the AHA forum who is using a revised version of your (our?) troubleshooter and we came up with a little hack for determining a1 of base malt without titrating. Tell me if you think this is way off base:

He knew from a recent measurement of a US craft malt that pH DI of their Pilsner was 5.88. What got us talking was his use of a "back of the envelope" charge conservation/proton deficit calculation whereby he assumed a Mash Buffering value of ~32 mEq/Δ pH/kg and then based his acid additions and mineral additions on that and assumed zero alkalinity water.

So I got to thinking that for this particular gentleman, who is fairly consistent, doesn't use a lot of specialty malts, and is fairly frugal when is comes to minerals and acids, that this mash buffering value might be a suitable stand in for a1. He knew that with the recipe he had just brewed he measured a pH value of ~ 5.60 at 40 minutes in.

So since I already calculate Mash Buffering in mEq/Δ pH, Δ pH/mEq, and mEq/Δ pH/kg, I simply stripped away the minerals and acids he used. His recipe as brewed had:

Mash Buffering = -32.1147 mEq/Δ pH/kg

and with 1.4 ml of Lactic, 0.95g Na2S2O5, 2.25g dihydrate CaCl, and 1.125g Gypsum removed:

Mash Buffering = -31.9217 mEq/Δ pH/kg

After adding everything back, matching his volumes, grain amounts etc., we found that the Troubleshooter estimated 5.596. Not too shabby!

So what I inferred from this was that, by accident it seems (and with a bit of luck), he had actually predicted his mash pH using the charge conservation/proton deficit (Gen II) model with a fair degree of accuracy and that, given what he measured and what we fiddled with, -32 was a suitable stand in for a1 of his Pilsner malt.

Could be a way for people to use test mashes to fairly accurately predict a1 without titration since the only buffering is that of the malt.

Or I could be crazy. My wife would back you up on that...
 
Last edited:
...actually about a year and a half ago AJ recommended I use 32 mEq as a good starting point for a1 if titration data was not known.

Right. The interest thing was that the gentleman guess correctly and we were able to verify that. Had it been, say, a Vienna malt with a1 as -50 or a Munich with a1 as -60, his prediction (he did this math by hand) would not have been as dead on.

It was just interesting that he basically guessed correctly.

The thing to notice is that it seems that one could take a single base malt, do a test mash with the minerals and acids you plan to use, and use the data you get to get a pretty darn good approximation of a1 with very little work so long as you are using DI water.
 
True although if anyone was willing to do the work we would all be using Gen II by now. Until that day comes along Gen I modeling can and does provide consistent mash pH prediction based on grain color and type.
 
Yes, -32 (mEq/kg•pH) is a pretty good average number for a1 and 5.7 is a pretty good average number for base malt pHdi. If the malts you are actually using have parameters close to those you can get a pretty good estimate of pH. If they don't, you can't. This is the essence of, and one of the major flaws in, the approach taken by the existing calculators. They assume parameters based on color or type... If their algorithms are based on Kai's original work as I believe they are, the two parameters are intercept and slop of an average titration curve which convey the same information as pHdi and a.

Overall

pHest_var = pHdi_sens*pHdi_var + a_sens*a_var + b_sens*b_var + c_sens*c_var

in which _var represents the variance of a quantity and _sens represents the sensitivity of the estimate to the accompanying parameter (the partial derivative of the pH estimate with respect to the parameter). Evaluating that variance is a little hairy but in the limited examination I've done I found that the first two terms, pHdI and a, are the major contributors and are of about equal importance. Thus if you allow a user to specify the correct pHdi to a program it improves its accuracy a lot. If you allow him to specify a as well it improves accuracy by about the same amount. Supplying information on b and c, conversely, does not improve things greatly over just setting those parameters to 0.

Obtaining a is very easy to do. Kai tells you how to do it in detail in his paper and lists a values (but not as such) for a couple dozen malts. Ignoring a is, IMO, a step backwards towards the bad old days. Actually, of course, you cannot ignore it. You must have some number that relates how the pH of a mash changes as acid or base is added. But using an average value for it with a correct value for pHdi is better than using an average or guessed value for pHdi as well.
 
Last edited:
Anyone using Gen I modeling software that's giving them consistent mash pH results is going to pass on doing titration tests. Same thing applies to IBU predictions compared with results of IBU lab analysis. Know anyone claiming to drink a beer and rattle off it's exact IBU value? Know anyone that can rattle off the mash ph of the beer they're drinking?
 
True although if anyone was willing to do the work we would all be using Gen II by now. Until that day comes along Gen I modeling can and does provide consistent mash pH prediction based on grain color and type.

Keep in mind, you can use the following linear equation to make an equivalent to the color based equations (with the exception of Sauermalz, which in my opinion HAS to be modeled as a polynomial):

dQMalt (mEq/kg) = a1 * (pHz - pH DI)

We know that for base malts, the color based equation stays pretty static across the initial range of colors in terms of the acidity. For roasted malts, we can make a direct equivalent, although we have some data on hand to make pretty good assessments of what a generic a1 value for roasted malt would be.

What’s the point? We have the data and tools at hand, at least as much as Kai did when he developed the correlations that ALL color based equations are derivative of, to make very educated guess at generic values for a1 based on malt classes/types. That doesn’t involved sophisticated testing, at least for the time being.

Also keep in mind that we don’t always even have good COLOR values to punch into color based sheets. With the exception of Weyermann, whose malt sheets are the best in the business, and who show EXACT color for a specific lot, most maltsters are giving you an average value.

At the end of the day, do what works for you, but don’t lose sight of a better model when it comes along, especially if the potential for better estimation exists.

Better of course being in the eye of the pH meter holder.
 
Anyone using Gen I modeling software that's giving them consistent mash pH results is going to pass on doing titration tests. Same thing applies to IBU predictions compared with results of IBU lab analysis. Know anyone claiming to drink a beer and rattle off it's exact IBU value? Know anyone that can rattle off the mash ph of the beer they're drinking?

So long as that person knows what the pitfalls of the color based model are and can either:

a.) compensate for them;

and/or

b.) troubleshoot them

then there is really no reason not to use whatever you want. I will say this from experience: the color based model can break down even when you compensate for pH DI effectively.

A brief anecdote:

When The Beerery and I first started collaborating together, it was on the strength of a humble little spreadsheet I was working up at the time. There were no specific Low Oxygen considerations in any sheets/software at the time. I began in earnest to work on a few. I also heeded a request from Bryan to make it so he didn’t have to use BeerSmith and Brun Water anymore. One spreadsheet to rule them all...

What happened was is that we developed a little mongrel water algorithm based loosely around Kai’s work, A.J.’s, but with heavy nods to the structure and function of BW. The first complaint Bryan had was how BW s$&! the bed for high amounts of Vienna and Munich malts. We narrowed it down to the fact that the base malt color based acidity proxy wasn’t really equipped to handle base malts ranging from 1.5-10 °L. So we incorporated the old “change the color to compensate trick.

That worked. Then we ditched that and incorporated the input for pH DI. Wow! That was huge! Yet we still had issues with high amounts of Munich, so much so that we had to make a modifier for Munich malts.

What’s my point? Color based acidity proxies are based on the limited data set produced by Kai and while some have revised this over time, they can’t possibly cover the entire range of base malt colors, crystal acidity, roast acidity, etc.

So in a world where we have a MUCH larger data set of malt pH DI values and buffering coefficients (Riffe, Kai, deLange, Walts, Guerts, etc.) than Kai ever had to form the color based values, why would we not jettison that old ideal and work to develop a general set of pH DI and a1 for a wider set of malt classes, i.e. Pilsner, Vienna/Pale, Munich, Wheat, etc.?

Kai started by taking measurements for pH DI and a1 for a small amount of malts and, presumably because he had such a small set and couldn’t make them general enough, came up with correlations to malt color to have a wider impact. There are now something like 100 measured malts in the pool.
 
Last edited:
I've brewed and posted recipes and mash pH results for at least half a dozen beers. Ranging in style from Stout to IPA to Witbier to Amber Ales so I've done the work. Now it's up to others brew those recipes and post their results. At the end of the day share your results here and end up with a batch of beer. We all win in the end.
 

Latest posts

Back
Top