Speed of sound of a gas mixture

Is there a general mixing rule for estimating the speed of sound of a gas mixture, given the speed of sound in the components?

From the ideal gas relation: $$c = (kRT/M)^{1/2}$$ (where k is the specific heat ratio, R is the gas constant, T is the temperature and M is the molar mass) we can guess that there might be some squares and molar concentration weights involved.

A simple molar weighted average: $$c_{mix} = x_1c_1+x_2c_2$$ (where x's are the molar concentrations) works well when the molar masses are similar (for example, oxygen and nitrogen) but very poorly when the molar masses are very different.

For dissimilar molar masses (for example, hydrogen and nitrogen), this relation works better: $$c_{mix} = ((x_1c_1)^2+(x_2c_2)^2)^{1/2}$$ but it works very poorly when then the molar masses are similar.

Is there a good general way to estimate this?

For an ideal gas the sound speed can be written as

$$c = \sqrt{\frac{k P}{\rho}}$$

where $$\rho$$ is the mass density. The constant $$k$$ is present because the expansion and compression of the gas is supposed to be adiabatic, and $$k$$ is the adiabatic index. For a gas mixture with $$n_i$$ moles of the $$i$$-th gas we have

$$k=\frac{\sum_i n_i c_{p,i}}{\sum_i n_i c_{v,i}} = \frac{\sum_i n_i \frac{k_i}{k_i-1}}{\sum_i n_i \frac{1}{k_i-1}}$$

where $$k_i$$ is the adiabatic index for the $$i$$-th gas. The mass density is

$$\rho=V^{-1} \sum_i M_i n_i$$

where $$M_i$$ is the $$i$$-th molar mass. Inserting in the expression for the sound speed we get

$$c = \sqrt{\left(\frac{1}{\sum_i x_i \frac{1}{k_i-1}}+1\right)\frac{ RT}{\sum_i M_i x_i}}$$

while

$$c_i = \sqrt{\frac{k_i RT}{M_i}}$$

In the general case it is not possible to express $$c$$ as a function of the ratios $$k_i/M_i$$ only, so it is not possible to express $$c$$ as a function of the $$x_i$$ and $$c_i$$ only.

A particular case is when all the gases in the mixture have the same adiabatic index (for example, they can be all biatomic). Then

$$c = \sqrt{\frac{k RT}{\sum_i M_i x_i}}$$

and

$$c_i = \sqrt{\frac{k RT}{M_i}}$$

then

$$c = \left(\sum_i \frac{x_i}{c_i^2} \right)^{-1/2}$$

• I've used this answer today and investigated in some detail. I think there is a mistake appearing from the second equation. I agree that k is the average cp divided by the average cv, but I do not believe that final step (ratio of sums of fractions involving k) is correct. I was not able to derive it, and in my calculations it gives a different answer. So, I suggest that people calculate k as the average of cp divided by the average cv, as this appears uncontroversial and still easy to calculate. Dec 14, 2016 at 14:29
• There should be $+1$ not $-1$ in fourth equation Apr 4, 2017 at 3:39
• Right, sorry for noting this only now. I corrected the expressions.
– GCLL
Jun 4, 2020 at 8:54