Who was Van der Waals anyway and what has he to do with my Nitrox fill?

JOHANNES DIDERIK VAN DER WAALS 1837-1923 Amsterdam University
1910 Nobel Prize for Physics for his work on the equation of state for gases and liquids.

Getting a Nobel prize tends to indicate that he knew his stuff.

OK. The simple rules for gases about pressure, volume and temperature that you learnt in Scuba for beginners are only an approximation. Good enough for some poor lad or lass who has to worry about doing a mask clear without a total sinus washout but now you've grown up and want to breathe fancy stuff it just won't cut it anymore.

You haven't forgotten but we'll recap anyway.
Do you remember PV=kT?
The ideal gas law? Oh yes. The one that summarised all the others ones that we can't remember the names of. We usually think of it as PV = quantity of gas. That's the one. Well let us get rid of that nasty k for an arbitrary constant and turn it into the real one PV=nRT that scientists and engineers use. This is much better because we can calculate real things with it rather than just do ratios. Let's name the parts in useful units:
PPressure in bar
VVolume in Litres
nQuantity of gas in mols
RThe universal gas constant, which is 0.0831451 if we want to do bar and litres
TThe temperature in Kelvins (virtually Centigrade+273)

mols? Well it's a chemist's trick to have a measure of something rather than work in boring units like grams.
A mol is a gram molecule. It is the amount of a substance that weighs X grams where X is the molecular weight of the molecule in question.
For example Oxygen has an atomic weight of 16 (well 15.994 if you want to get all isotopic about it) so O2 has a molecular weight of 32. Hence 32 grams of O2 is one mol and 64 grams is 2 mols etc. Plutonium Oxide has a molecular weight of 536 so it takes over half a kilo of that stuff to make a mol but chemists don't care. The neat trick is that 1 mol contains 6.02x1023 molecules. A mol is not so much a quantity as a head count and is great when you are working out how things react.

Great. Real numbers. Let's do an example. The 100% oxygen deco bottle is 3L, it is January at Stoney Cove so it is 4°C, that is 277K and we want the whole 300 bar.
So n = PV/RT so n = (fumbles with calculator) n = 39 mols so at 32 grams to the mol we have 1.248 Kilograms of Oxygen.

Then along comes Van der Waals in spoil sport mode and says "well not really".

The trouble is that this thing is the Ideal gas law. That is it only really would work for an ideal gas and all we have are real ones. An ideal gas would be composed of infinitely small molecules that did not attract one another but real gases have real sized molecules taking up the space and they tend to attract and repel one another. Van der Waals was the man who set about solving the problem by working out how to allow for real gases.

What he came up with was not the exact answer but a much better gas equation.

If you look at it and remember PV=nRT you can see the old ideal gas equation in here but with two extra terms, one applying a fiddle factor to the pressure to allow for the attraction between molecules drawing them inwards and increasing the effective pressure and the other fiddle factor is on the volume where it is effectively reduced to allow for the fact that all these molecules are taking up the space.
We get two new constants a and b which depend on the gas we are considering.

Back to the example for our tank of O2 and use the Oxygen a value of 1.382 and the b value of 0.03186 and we get a different situation.
Putting our 1.248Kgs, ie. our 39 mols of Oxygen into our 3L tank, gives 277bar.

OK let's graph that with mols (quantity) along the bottom and pressure in bar up the left staying with our 3L tank at 277bar.
What does this mean? Well the nice straight purple line is gas pressure against mols of gas for the Ideal law. The blue line curving upwards is Van der Waals' calculation.
Down at 0 to 20 bar, where you did you school physics and do your diving it is very good. Up at 100 bar it takes 14 mols of Oxygen to get to 100 bar and you can see the modified P term compensating for the molecules attracting one another and pulling inwards so reducing the pressure they apply to the outside world. Actually this is slightly more gas than the 'ideal' law predicts. At 200 bar it takes 28 mols and the line is begining to turn back as the modified V term compensates for the size of the molecules taking up the free space and finally at 300 bar you might have expected 14->28->42 mols but all you get is 39. It's still a bit more than the 'ideal' law predicts but it's the curve that is the problem. This is why divers get edgy about mixing Nitrox to 300 bar final pressure because the pressure is no-longer an exact equivalent to quantity. 150bar of Oxygen then 150bar of Nitrogen would not give you a 50% mix in the real world.

It gets worse.
We assume for ideal gases that we can work out the partial pressures independently and just add them up (Dalton's Law) and moreover we assume that the ratios don't change with pressure. Now for nitrox it happens that the a and b values for Nitrogen are very similar to Oxygen but if (simplistically) we put 100 bar of Oxygen in a tank and then topped it off to 300 bar with pure Nitrogen we do not have 33% Nitrox. It is a bit higher. More like 37%.

We can calculate it but Van der Waals' equation as stated above only applies to the simple monatomic gases and as the molecules of one gas see the others nothing is simple. However we can produce modified a and b constants for the mixed gas formed using the values for each gas combined using:

What on Earth? Yes. I did university physics and I winced a bit at that one. What it is saying that for a mixed gas made of n gases (1 to n) whose fractions (ratio of mols) are x1, x2, x3... xn and whose a and b values are a1, b1, a2, b2 etc. then you get the global a and b values by taking the formula to the right of the two sigma signs and adding up all the bits. If you have three gases (Oxygen, Nitrogen and Helium for example) then
a = √(a1*a1)*x1*x1 + √(a1*a2)*x1*x2 + √(a1*a3)*x1*x3
+ √(a2*a1)*x2*x1 + √(a2*a2)*x2*x2 + √(a2*a3)*x2*x3
+ √(a3*a1)*x3*x1 + √(a3*a2)*x3*x2 + √(a3*a3)*x3*x3
and naturally b looks much the same. This was probably grief to poor old Van der Waals but we have spread-sheets on our home computers...
Once you have done this you can work out the total pressure but don't think in partial pressures, Dalton style, any more because they don't exist. Definitely don't try to work back from pressure to ratio. It's horrible.

If you want to do a Trimix calculation then first you need to generate some real a and b values so here are a and b for the three gases we tend to worry about so you don't have to buy the great big book I did.
Air (treat as)1.37250.037228.85

Writing gas blender software
Right. Over the years several people have tried to use this web page to roll their own blending software and some have succeeded and some have failed. To try and help I will lay out the stages:

What is the problem? Well the problem is that you can't trust your pressure gauges to tell you what the mix is. Putting 150 bar of O2 in a cylinder and then topping it up to 300 bar with pure nitrogen won't give you 50%. The pressure will rise faster on the second part and it will take less nitrogen to make 300 bar so you'll end up rich. What we want to do is decide on your final mix and work that out in mols and do half the mols in oxygen and half the mols in nitrogen. This will mean that the oxygen fill is lower than 150 bar. However when the gas comes out of the regulator it is back down to 1-11 bar where the 'real' gas laws work very will so 1 mol to 1 mol means 1 molecule to 1 molecule so spot on 50%.

So start with your existing fill. Measure it if possible. Say it is 90 bar of 15/43. Work out the a/b values for 15/43 and work out how many mols there are in the tank. Divide these mols on the 15/43/42 ratio so you have the mols of each gas.

Now do the same for your target mix, let's say it is to be 280 bar of 18/40. Work out the a and b values for 18/40/42 and then convert 280 bar to mols and divide it up. Now by simple subtraction you know how many mols you are going to need to add. Use the mols of nitrogen to work out how many free mols of oxygen you get in the air top and subtract that from the required oxygen.

Let's say we want to add the helium first. Take the numbers for the initial tank in mols and add the helium mols. Work out the a and b for the this mix. Now work out the pressure. This is your fill pressure, your COLD fill pressure. I fill it and then leave it, go and do something else then come back and top it up to spot on the number. What we have done is ignored Dalton's law because Van der Waal breaks it. We have added the 'right' amount of helium and worked out the gauge reading for when we have added that. Now we pump to that number and we know we have the right number of mols even if the number of bar looks a bit out.

Add the second gas, oxygen using the same idea. You work out what the new mols count is, work out the a and b values for that and then work out the gauge reading. Finally add the air top. As I say I've been routinely blending 300 bar trimix fills for over ten years on this stuff.

Bit esoteric eh?
Try this one then.
My twins contain 20L at 300 bar
I want to get out of two dives with the equivalent of 50bar in my one old 12L reserve
I want to do two dives so what is half way?
Twins at 20L at 300bar is 226 mols
12L at 50bar is 25 mols
25 mols in the twins is 30bar so I can breathe 201 mols
So half way down is, say, 100mols breathed 126 mols left
126 mols in the twins is 146bar
The ideal gas law would have said half way was (300-30)/2+30 = 165bar so I would have called time early on the first dive and probably wondered why my buddy, on two single 12s - one for each dive, called time on the second.

You don't want to do maths?
OK so you don't want to do the sums you want the tool to do the sums for you.
Right. Here is the blender program for desktop Windows, an iPaq running and an Android tablet or phone Pocket PC available from the main diving page.

One last thing.
It is the partial pressure of the mix at 1 to 10 bar that we breathe and so what we measure on our Oxygen analysers is what we get. You do not have to worry that the stuff in the tank is not going to be what you measure or that the mix will change as the absolute pressure in the tank changes. The ratio of the number of gas molecules is what you care about so if it measures 38% it will stay 38%. The pressure may drop a little quickly to start with because that 200-300 bar slice of the fill was only 84% of the 0-100 or 100-200 parts of the fill.

Back to the index