Take the 2-minute tour ×
Physics Stack Exchange is a question and answer site for active researchers, academics and students of physics. It's 100% free, no registration required.

Some of you are probably aware of What If, xkcd's blog about interesting physics problems. One episode, Glass Half Empty, concerns itself with what would happen if a glass of water is half water, half vacuum.

One scenario he looks at is water in bottom, vacuum on top, with air rushing in from the top end. He says that after a few hundred ns, the air has filled the vacuum completely. I would very much like to know how he arrives at that estimate!

What I thought about so far:

He cites a max speed of the air molecules of ~1000m/s, but this can't be the only mechanism, cause after 500ns the fastest molecules would've only travelled about 0.5mm.

I figured that the air rushing in would have to happen via a shock, and that the situation described is essentially a shock tube with air as driver and vacuum on the driven side (neglecting the vacuum/water interface for convenience).

However, I could not find a formula which would let me calculate the shock speed (in m/s) for the given configuration. Specifically, I'm not sure the "standard" handbook formulae even apply here, because of vacuum as "driven gas". Can anybody shed light here?

Conditions: Let's say it's dry air at 300K and 1013mbar, and perfect vacuum (or very low pressure if that's necessary). I'm not interested in what happens after the shock arrives at the end of the tube, so no need to open that can of worms.

Thanks for any insight!

share|improve this question
I'm with you. A shock wave is a collective motion, and if even the fastest air molecules have only travelled 0.4mm in 400ns I can't see how a shock wave could have travelled further. I would say Randall Munroe has missed two orders of magnitude. –  John Rennie Aug 7 '12 at 14:39
I don't know, there's the huge pressure gradient to consider which would accelerate the air. I think that something else than molecular motion must be behind this, but I'm curious why he left that part out of the article. –  Christoph Aug 7 '12 at 14:55
@JohnRennie your statement "A shock wave is a collective motion" I don't quite understand. A shock in this case is the fastest possible transport of information... –  Killercam Aug 7 '12 at 15:09
A shock wave is the collective motion of air molecules. It cannot move faster than the speed of the air molecules. –  John Rennie Aug 7 '12 at 15:12
Yes, it can. Shocks are essentally jump discontinuities of the fluids state vector and this can propagate at supersonic velocities even when the fluid is at rest. For example, you can produce shocks in deepwater where the bulk motion of this water is stationary, but the shock is supersonic manifesting itself as a change in the local state of the fluid... –  Killercam Aug 7 '12 at 15:25

4 Answers 4

up vote 3 down vote accepted

Ha! Seems the search phrase "expansion of a gas into vaccum" was key!

I found two sources which agree with each other: H. P. Greenspan and D. S. Butler (1962). On the expansion of a gas into vacuum. Journal of Fluid Mechanics, 13 , pp 101-119 doi:10.1017/S0022112062000543 and Zel'dovich - Physics of shock waves and high-temperature hydrodynamic phenomena.

They give the velocity of the propagating shock/air-vacuum-interface as $u_{max}=\frac{2}{\gamma-1}c_0$. With $\gamma=1.4$ for air and $c_0\approx340\,\mathrm{m/s}$, this gives


Yeah, it's a solution, and I'm glad about that, but it does not significantly change the fact that Randall still seems to have gotten something wrong by a couple orders of magnitude. At this speed, the shock wave covers the $\approx 5\,\mathrm{cm}$ of vacuum in the glass in about $30\,\mathrm{\mu s}$, which is a factor 60 longer than the $500\,\mathrm{ns}$ he gives.

share|improve this answer

To calculate wave speeds in a given fluid you will need to look at the discontinuous solutions of the hyperbolic conservation laws of the system. So for the one-dimensional shock tube problem it is sufficient to consider the following

$\partial_{t} \mathbf{U} + \partial_{x} \mathbf{F} = 0$

where $\mathbf{U}$ is a vector of the conservative state variables (density, momentum, energy) and $\mathbf{F}$ is the vector of conservative fluxes. For this system we call it hyperbolic if the Jacobian matrix

$\mathbf{A} = \frac{\partial\mathbf{F}}{\partial\mathbf{U}}$

has $n$ linearly independent right-eigenvectors and corresponding eigenvalues ($\lambda_{n}$). The wave speeds of the system are given by these eigenvalues and can be found by by solving the equation

$\partial_{t} \mathbf{U} + \mathbf{A}\partial_{x} \mathbf{U} = 0$

which will give an eigenvalue equation that can be solved analytically for the shock tube problem (under ideal conditions). The wave speed could be for rarefaction waves, contact discontinuities or shocks. The type of wave that corresponds to each wave speed can be determined using the associated eigenvectors.

This problem of wave propagation in fluids has been well studied for the most part are now dealt with purely numerically as slight changes in the initial state of even something as simple as the shock tube problem can results in different wave configurations (Shock Tube problem, Sod Problem etc.) rarefaction, contact wave, shock wave mixture, shock, contact wave, shock mixture etc.

So, the only way you could calculate the shock speed would be to a. go through a fairly long hand calculation (doing this for any more than 1D would be involved). or, b. use some sort of correlation, where the exact set up under consideration has be documented extensively.

The numerical methods used to solve the Riemann problem can be found at work in a vast number of interesting research areas, from Relativistic Jets, Relativistic Astrophysics (Relativistic Magnetohydrodynamics (MHD) in general), GRB simulations etc. and also in simulations of Fusion Reactions (in the MHD regime).

I know this is probably not the answer you wanted, but I hope it is of some use.

share|improve this answer

What you want is the solution to a Riemann problem. For the 1D Riemann problem involving a gas and a vacuum there will be no shock wave, only an expansion wave that traverses into the gas and a motion of the free surface into the vacuum. The leading characteristic wave of the expansion will travel at the speed of sound of the gas. Determining the free surface velocity involves following the Hugoniot to zero pressure and finding the corresponding velocity that yields conservation of energy.

share|improve this answer

It is much simpler than you have made it? Just look at the speed of sound in air at sea level. When a jet travels to Mach 1 the space created through the air by a moving jet is able to create a vacuum "bubble"....then as the air rushes in to fill this moving void it creates the sonic boom.

share|improve this answer
Sorry, this explanation is completely wrong. See e.g. en.wikipedia.org/wiki/Sonic_boom –  Christoph yesterday

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.