I've drawn information from the helpful links below this question and this partial answer
I don't think astronomers or planetary scientists expect a geyser of liquid water to be squiring 100 to 200 kilometers above Europa's surface. There are now however at least two published detection of plumes of water vapor that reach that high.
So after doing some reading, asking around, and with helpful conversations in the comments of this questions and the answers here, I think it's pretty clear that there are not geysers on Europa and the term was used incorrectly by the Washington Post. However, Based on the sub-surface jet model, it might not be incorrect to call them jets, as in the BBC article.
above: NASA hubblesite images from here and here respectively.
The image on the left is reminiscent of a water fountain and probably gives the wrong impression. While there is probably some directionality, it might not be a coherent, tight column like that.
Possibility #1 Squirting Water from an Over-Pressured Ocean:
While it's easy to imagine that stresses and pressure in the thick ice is compressing the liquid below so much that it would squirt out of a hole like a small hole in a water balloon, probably not. Ice floats. The density of ice is about 0.92 to 0.93 (when very cold) compared to cold water at about 1.00. That means if you dug a hole in the ice and reached the ocean, it would rise, but probably not to the surface. For example, if everything is in equilibrium and the ice were 10km deep, it might end up something like 800 meters below the average surface. There could be short term non-equilibrium, but ice deforms and cracks and refreezes, and over time the system would not build up and maintain huge hydrostatic pressure beyond that caused by the weight of the ice. The mechanics and dynamics of the ice a whole topic in itself.
above: Image of ice fishing from here
cf. "I've been waiting all morning - where is the geyser?"
Possibility #2 Squirting Water from an Over-Pressured Trapped Lake:
This one is a bit easier to imagine. A volume of water trapped within the ice and subjected to huge tectonic forces, a bit like a surface spring of subsurface water on Earth. However a volume of trapped gas would really be helpful here. Since water is nearly incompressible, the loss of even a tiny volume will rapidly reduce the pressure.
above: "Europa's ice-trapped lake sits above the ocean in an illustration, Illustration courtesy Britney Schmidt and Dead Pixel FX, University of Texas at Austin" from National Geographic's "Great Lakes" Discovered on Jupiter Moon? (cropped).
Possibility #3 Sub-surface Vent:
above: Figure 3 from Jared James Berg's thesis Simulating water vapor plumes on Europa.
Berg's thesis presents Direct Simulation Monte Carlo (DSMC) calculations for a scenario where a reservoir of trapped liquid water below the surface of Europa feeds a volume of water vapor which continuously vents to the surface. If the cross section of the passage has a constriction or narrowing followed by and expansion area, this forms a sort of nozzle which converts some of the random thermal motion of the atoms into a directed flow. The velocity will be somewhat focused upwards, and the magnitude will be of the same order as the thermal velocity.
This model does not rely on high pressures in the crust, but instead "focuses" the thermal motion upwards.
The simulation includes the dynamics small "grains" of water ice in addition to water vapor molecules. At some point early in the trajectory, the mean free path becomes so large that further condensation stops and molecules are traveling on nearly ballistic trajectories under the influence of gravity.
Comments on Geysers and Atmospheres:
The image of the geyser in the question has initiated some discussion on the effects of atmospheric drag. Geysers on earth reach anywhere from sub 1 meter to as much as 20 meters typically. How much higher would it go if there were no atmosphere?
Here's a calculation (python script below) of isolated droplets launched into various density atmospheres with an initial velocity of 25 m/s just as a ballpark estimate of a tall geyser. In each plot the heigh vs time is calculated for five radii geometrically spaced between 0.1 and 10.0 millimeters. It can be a factor of 10 or 20 effect for the smallest droplets, and maybe a factor of 2 or 3 for the largest, but it doesn't get you to 100 kilometers if there's no air.
Yes if Europa had Earths atmosphere, the geysers wouldn't be there, but no, there aren't geysers on Europa because there's no atmosphere.
But this kind of calculation is an overestimate of the impact of drag. The effect in a real geyser would probably be much smaller than this kind of calculation suggests. Take a look at an actual geyser! The mass of the water probably dominates the column, and rapidly transfers momentum to the air in the column by the same drag force. The force ($dp/dt$) is equal and opposite, so actually drag may speed up the air much more than it slows down the water. And of course, this is hot air and steam which are accelerated by buoyancy forces as well.
The source is the following video - it really gets going around 02:00, and if you keep watching you can see a double rainbow as a bonus! (original)
def Fdrag(x, v):
rho = rho0 * np.exp(-x/hscale)
rho = rho0
return -0.5 * rho * v * abs(v) * CD * area
def deriv(X, t):
x, v = X
acc_drag = Fdrag(x, v)/mass
xdot = v
vdot = -acc_grav + acc_drag
return np.hstack((xdot, vdot))
def __init__(self, r):
self.r = r
def __init__(self, rho0, hscale=None):
self.rho0 = rho0
self.hscale = hscale
import numpy as np
from scipy.integrate import odeint as ODEint
import matplotlib.pyplot as plt
CD_sphere = 0.47
H2O_density = 1E+03 # kg/m^3
hscale_Earth = 1E+04 # meters
g_Earth = 9.8 # m/s^2
rho0_Earth = 1.3 # kg/m^3
# make some droplets
v0_all = 25. # m/s
radii = np.logspace(-2, -4, 5) # meters
droplets = [Droplet(r) for r in radii] # instantiate
for drop in droplets: # I love python objects :)
drop.area = np.pi * drop.r**2
drop.volume = (4./3.) * np.pi * drop.r**3
drop.mass = H2O_density * drop.volume
drop.CD = CD_sphere
drop.v0 = v0_all
drop.x0 = 0.0
# make some atmospheres
fractions = np.array([1E-04, 1E-02, 1])
names = ['1E-04', '1E-02', '1.0']
atmospheres = 
for frac, name in zip(fractions, names):
rho0 = rho0_Earth * frac
atmosphere = Atmosphere(rho0, hscale=hscale_Earth)
atmosphere.name = name + " of Earth"
atmosphere.droplets = copy.deepcopy(droplets) # DEEP copy!
atmosphere.acc_grav = g_Earth
tol = 1E-09
time = np.linspace(0, 6, 200)
xpts = [2.6, 1.8, 1.2, 0.5, 0.3]
ypts = [19, 11.8, 6.3, 3.1, 1.2]
labs = ['0.1', '0.32', '1.0', '3.2', '10'][::-1]
labs = [n + 'mm' for n in labs]
labzip = zip(xpts, ypts, labs)
for atmosphere in atmospheres:
for drop in atmosphere.droplets:
X0 = np.hstack((drop.x0, drop.v0))
mass = drop.mass
area = drop.area
CD = drop.CD
rho0 = atmosphere.rho0
hscale = atmosphere.hscale
acc_grav = atmosphere.acc_grav
answer, info = ODEint(deriv, X0, time,
drop.answer = answer
for i, atmosphere in enumerate(atmospheres):
for drop in atmosphere.droplets:
x, v = drop.answer.T
title = atmosphere.name + ", v0=" + str(v0_all) + " m/s"
if i == 2:
for x, y, s in labzip:
plt.text(x, y, s, fontsize=12)
plt.xlabel('time (sec)', fontsize=14)
plt.ylabel('height (m)', fontsize=14)
plt.suptitle('Single, Isolated droplets in air', fontsize=18)