Bleach concentration per unit volume and other calculations

foobert

0
LifeTime Supporter
Jul 19, 2013
142
Bay Area, CA
In the process of validating the math for my bleach automation system, and I ended up down a rabbit hole learning about various methods of how bleach concentrations are characterized.

Correct me if I'm wrong here, but, I think it's most common for US companies to specify the concentration as the weight percent of NaOCl (i.e. mass of NaOCl / total mass), yes? I don't think "trade percent", nor "active chlorine weight percent" are common based on how this document describes it.

Moving on ...

Arriving at the mass of chlorine needed to achieve a given PPM concentration is relatively straight forward (shown below). But, measuring mass is considerably more troublesome than measuring the volume through a positive displacement pump. So, that lead me to this chart (page 2) that conveniently lists the grams of active chlorine per liter of various concentrations of various bleach solutions. Curious thing about that table: the g/l is nonlinear with the % concentration. Observe that 10% (active CL) concentration has 14.3% more active chlorine per unit volume than the 1% concentration has per unit volume after accounting for 10x factor. I don't understand why that is. (paging chem_geek to the white courtesy phone :lol: )


So, if anyone wants to check my work, here's the math I came up with, which gives a slightly different result than the pool calculator.

Given:
delta_ppm -- how many PPM we want to raise the FC by
# gallons -- how big the pool is
% chlorine -- bleach strength in weight % NaOCl (per discussion above)

I want to arrive at fluid oz's (volume, not weight) to pump out. For clarity, I'll use "FlOz" for fluid ounces (volume), and "OzW" for ounces of weight. All my calibrations are in US measurements, so, I apologize in advance for having to deal with mixed units.

delta_ppm * gallons * 8.345 lbs/gallon * 16 OzW/lbs * 1E-6/ppm = Pure Cl2 in OzW (weight ounces)

Now use %chlorine strength as a lookup to get the g/l value from chart mentioned above. Since 958.6 g/l = 1 ozW/FlOz, we can arrive at the volume:

Pure Cl2 OzW * 1/(table lookup g/L) * 958.6(g*FlOz)/(l*ozW) = Fluid Oz bleach (volume) to pump

An example 100K gallons, +1PPM, 5.25% bleach: 1 * 100000 * 8.345 * 16 * 1E-6 * 1/53.7 * 958.6 = 238.3 Fl Oz, where the Pool calculator gets 237

Now do same but with 10.5% bleach: 1 * 100000 * 8.345 * 16 * 1E-6 * 1/115.9 * 958.6 = 110.4 Fl Oz, where the Pool calculator gets 119

I'd call that good enough for this pool boy :mrgreen: :whoot:

Note that all of this is subject to a density/temperature relationship that will change the result a few (unaccounted for) percentage points.

So, yeah, I'm that kinda nerd to do all this, but, at least it's documented where I hope someone else might get some use out of it. Please do comment if you have a better data source or find an error!
 
Re: Bleach concentration per unit volume and other calculati

See this post for the relationship, though the formulas for computing between these are shown below:

Weight % Available Chlorine = Trade % / Specific Gravity
Trade % = Weight % Available Chlorine * Specific Gravity

Weight % NaOCl = Weight % Available Chlorine * (NaOCl g/mole) / (Cl2 g/mole)
Weight % Available Chlorine = Weight % NaOCl * (Cl2 g/mole) / (NaOCl g/mole)

Weight % NaOCl = (Trade % / Specific Gravity) * (NaOCl g/mole) / (Cl2 g/mole)
Trade % = Weight % NaOCl * Specific Gravity * (Cl2 g/mole) / (NaOCl g/mole)

NaOCl g/mole = 74.442
Cl2 g/mole = 70.906

Though bleach generally has the Weight % NaOCl in the ingredients and sometimes (for Clorox unscented, for example) lists the "% Available Chlorine", chlorinating liquid is most often sold by Trade %. The Trade % is technically the Volume % Available Chlorine and therefore is the only quantity that exactly matches its number with ppm in the pool as with 1 gallon in 10,000 gallons of 12.5% chlorinating liquid produces 12.5 ppm FC.

Their column of "% Active Chlorine (w/w)" is more commonly known as "% Available Chlorine" and is a weight % while their text before the table refers to "% Active Chlorine (w/v)" which is incorrect. The column "Active Chlorine (g/l)" is more commonly expressed as the Volume % Available Chlorine and is more commonly known as Trade %. It is their % Active Chlorine (w/w) column multiplied by the Average Density column (which gives you "100% * g Cl2 / ml product" so you can take their "Active Chlorine (g/l)" and divide that by 10.

The reason the density is not linearly increasing with concentration of chlorine is that the density is also dependent on the amount of "excess lye" (sodium hydroxide) in the product and that does not vary linearly with concentration since it is instead designed to produce the needed pH that results in greater stability for the specific concentration of chlorine. This can vary by manufacturer.

In my spreadsheet from which The Pool Calculator was based (in part), I certain densities based on MSDS data from bleaches and on spec sheets for chlorinating liquid. Let's see how my assumptions lined up with the Solvay Chemicals table:

[EDIT] The first three Trade % numbers below were corrected as they were originally in error. [END-EDIT]

Product ........................... Weight % NaOCl . % Available Chlorine . Trade % . my Density . Solvay Density
5% Bleach ............................... 5.00% ................. 4.76% ................ 5.09% ...... 1.07 ............. 1.070
6% Bleach ............................... 6.00% ................. 5.71% ................ 6.17% ...... 1.08 ............. 1.085
8% Bleach ............................... 8.00% ................. 7.62% ................ 8.38% ...... 1.10 ............. 1.117
10% Chlorinating Liquid ......... 9.21% .................. 8.77% .............. 10.00% ...... 1.14 ............. 1.136
12.5% Chlorinating Liquid .... 11.32% ................ 10.78% .............. 12.50% ...... 1.16 ............. 1.175

The Odyssey Manufacturing spec for 12.5% (trade) gives a specific gravity of 1.164 while the Solvay table gives 1.172 (interpolating) so density does vary some by specific product.

So if you use Trade % for the chlorinating liquid presumed to be 10% or higher, then The Pool Calculator is closer than your calculation that assumed that chlorinating liquid was quoted as Weight % NaOCl. On the other hand, I've seen a lot of chlorinating liquid with what one would think is the Trade % instead listed as Weight % NaOCl in the ingredients. Since the product is shipped at a higher % since it is presumed to degrade, this is all approximate anyway, especially for chlorinating liquid (typical bleach degrades more slowly).
 
Re: Bleach concentration per unit volume and other calculati

I totally get why the density changes due to increasing amounts of NaOH needed to raise the PH and reduce the degradation of higher concentration solutions.

But, I can't see how it is correct to take the weight % Cl2 (w/w) * density and arrive at weight of Cl2 per unit volume as Solvay did. Isn't that making the assumption that the only thing in solution is NaOCl and there are no other solutes (namely NaOH) contributing to the greater density?

Can you share your method (or spreadsheet) used to arrive at the "my density" value in your table?

Thanks for the discussion!
 
Re: Bleach concentration per unit volume and other calculati

Weight % Cl2 is really "100% times weight of sodium hypochlorite normalized to Cl2 units divided by weight of solution". The Weight of Cl2 per volume of solution in grams per liter is really "Weight of sodium hypochlorite normalized to Cl2 units divided by volume of solution". So only the denominator is changing from weight of solution to volume of solution so you do that by multiplying the overall number by density of solution and adjust for units. Since density is per ml and we want units per liter, you multiply by 1000, but you also need to divide by 100 to get rid of the percent so the net is to multiply by 10. I presume that the "Average Density" in the Solvay chart means density of solution, not of NaOCl alone. That is, it presumably includes the density from NaOH as well (and of course water).

Weight % Cl2 (in 100% * g/g) * Density of solution (in g/ml) * 10 = Weight Cl2 per volume of solution (in g/l)

As for my numbers, there is no formula. I just looked up density for Clorox (used to be 1.08 for 6%, but now they list 1.1 presumably for 8.25%) and for Odyssey Manufacturing (I used 1.16 instead of 1.164). I just roughly interpolated for other numbers in between. I wasn't trying to be exact about it since it varied by product. My spreadsheet just has the Excel formula "=IF($H$60=1,1.07,IF($H$60=2,1.08,IF($H$60=3,1.1,IF($H$60=4,1.14,IF($H$60=5,1.16,#REF!)))))" that is a simple lookup for the concentrations of 5.25% (1), 6% (2), 8% (3), 10% (4), 12% (5), where the first three are presumed to be bleach so Weight % NaOCl while the latter two are presumed to be chlorinating liquid so Trade %.
 
Re: Bleach concentration per unit volume and other calculati

Finally, I fully grok it now. I had to sleep on the density/weight relationships to realize where my thinking went awry -- makes perfect sense now. Thank you for spelling it out so verbosely :hammer:


One thing I noticed while doing some sanity testing on my updated program -- I believe the Trade % column is in err on a few data points if the 'my density' column is taken as granted. I get:
Product ........................... Weight % NaOCl . % Available Chlorine . Trade % . my Density .
5% Bleach ............................... 5.00% ................. 4.76% ................ 5.09% ...... 1.07
6% Bleach ............................... 6.00% ................. 5.71% ................ 6.17% ...... 1.08
8% Bleach ............................... 8.00% ................. 7.62% ................ 8.38% ...... 1.10

It appears that the Trade percent was computed using the Weight % NaOCl instead of the Weight % available CL2.
 
Thread Status
Hello , This thread has been inactive for over 60 days. New postings here are unlikely to be seen or responded to by other members. For better visibility, consider Starting A New Thread.