Skip to content
scipython.com

The free-surface effect

Posted on

A simulation of the free-surface effect, which can lead to a ship carrying a liquid cargo to capsize where the same ship carrying the same mass of solid cargo will float upright.

The free-surface effect causes a ship carrying liquid can be much less stable than the same ship carrying the same mass of solid cargo.

In one famous case, on 6 March 1987 the car ferry Herald of Free Enterprise capsized within minutes of leaving the Belgian port of Zeebrugge, with the loss of 193 lives. She had sailed with her bow doors open, and the sea poured onto her vehicle deck, an open space running the length and breadth of the ship. A layer of water spread across that deck is free to slosh from side to side, and its free surface made the ship unstable.

This post demonstrates the effect with a two-dimensional simulation of a small cargo ship, written in Python as the package floating-dynamics.

Why ships float upright

The forces on a floating ship are the same as on the iceberg in this earlier post: its weight, \(\boldsymbol{F}_\mathrm{g}\), acting downwards at its centre of mass, \(G\), and the buoyant force, \(\boldsymbol{F}_\mathrm{b}\), acting upwards at the centre of buoyancy, \(B\), which is the centroid of the submerged part of the hull. When the ship heels over, the submerged part changes shape and \(B\) moves towards the side which has gone down. If the line of action of the buoyant force then passes to that side of \(G\), the two forces form a couple which turns the ship back upright.

The horizontal distance between the two lines of action is the righting lever, \(\overline{GZ}\). For small angles of heel, \(\theta\), it is \(\overline{GZ} \approx \overline{GM}\sin\theta\), where the metacentric height, \(\overline{GM}\), depends on the shape of the hull and the height of \(G\). A ship is stable when \(\overline{GM}\) is positive, and the lower its centre of mass, the more stable it is.

Two identical ships, each heeled 40 degrees to the left. In the first, carrying solid cargo, the upward buoyant force at B acts to the left of the downward weight at G, turning the ship back upright. In the second, carrying liquid which has run to the low side, G has moved to the left of B, and the forces turn the ship further over
The same ship, heeled by 40°, carrying 30 t of cargo per metre of its length. With solid cargo (left), the buoyant force, \(\boldsymbol{F}_\mathrm{b}\), acts to the low side of the weight, \(\boldsymbol{F}_\mathrm{g}\), and turns the ship back upright. With the same mass of liquid (right), the liquid has run to the low side, taking \(G\) with it, beyond \(B\): the forces turn the ship further over.

The free-surface effect

When a ship carrying liquid heels, the liquid's surface stays level, so the liquid flows towards the low side. This moves the ship's centre of mass, \(G\), towards the low side too, reducing the righting lever. For small angles, the effect is the same as raising \(G\) by a distance \(\overline{GG'}\), which reduces the metacentric height by the same amount.

\[\overline{GG'} = \frac{\rho_\mathrm{l}\,i}{M}, \qquad i = \frac{b^3}{12}\]
Show derivationHide derivation

Heeling the ship by a small angle \(\theta\) moves a wedge of liquid from the high side of the tank to the low side, just as heeling moves the centre of buoyancy (see the derivation in the iceberg post): the centroid of a liquid of cross-sectional area \(A_\mathrm{l}\) moves sideways by \((i/A_\mathrm{l})\,\theta\), where \(i = b^3/12\) is the second moment of area of its free surface, of width \(b\), about its centre line.

The liquid's mass per metre of the ship's length is \(\rho_\mathrm{l}A_\mathrm{l}\), so the centre of mass of the whole ship, of mass \(M\) per metre, moves sideways by

\[\frac{\rho_\mathrm{l}A_\mathrm{l}}{M}\cdot\frac{i}{A_\mathrm{l}}\,\theta = \frac{\rho_\mathrm{l}\,i}{M}\,\theta.\]

A sideways shift of \(\overline{GG'}\,\theta\) reduces the righting lever by the same amount as raising \(G\) by \(\overline{GG'}\), which gives the result.

\(\overline{GG'}\) depends on the width of the free surface, but not the amount of liquid. It grows as the cube of the width, so the solution is to divide wide spaces with longitudinal bulkheads: dividing a tank into \(n\) tanks, each of width \(b/n\), reduces the total of their second moments, and so the effect, by a factor of \(n^2\). This is why tankers' cargo spaces are divided into several tanks across the ship, and why ship operators prefer their tanks either full ("pressed up") or empty: neither has a free surface.

Simulation

The ship in this simulation is a small coaster, 16 m in beam, whose hold, 12 m wide, carries 30 t of cargo per metre of the ship's length: 2.5 m of water. Three versions are compared:

  • with the cargo solid (frozen, say), \(\overline{GM} = 1.00\;\mathrm{m}\);
  • with the water free to move across the whole hold, \(\overline{GG'} = 1.50\;\mathrm{m}\), so \(\overline{GM} = -0.50\;\mathrm{m}\): the ship is unstable;
  • with the hold divided into two tanks by a centreline bulkhead, \(\overline{GG'}\) is only a quarter as large, \(0.375\;\mathrm{m}\), and \(\overline{GM} = 0.63\;\mathrm{m}\).

Each ship starts at rest, heeled by just 1°, as it might be by a gust of wind or a wave, and is released. The simulation calculates the buoyant force and the centre of buoyancy from the shape of the submerged part of the hull at each instant, and moves the liquid to keep its surface level. The water around the hull is represented by an added mass and some damping. In the animations below, the red dot is the centre of mass of the ship and its cargo, \(G\), and the blue dot is the centre of buoyancy, \(B\); the dashed lines are the lines of action of their forces.

Animation of the coaster with liquid cargo across its whole hold, released at 1 degree of heel. It heels slowly at first, then faster, and capsizes after about 17 seconds, ending up floating upside down and still rolling. A plot of its heel against time below rises from 1 degree to about 260 degrees.
The coaster with its liquid cargo free to move across the whole hold, released at a heel of 1°. With a negative \(\overline{GM}\), every degree of heel makes the next come faster: the ship passes 5° after 7 s and 30° after 13 s, and capsizes after about 17 s. It ends up floating upside down (the model's hull is watertight), still rolling. The animation plays at twice real speed.
Animation of the same coaster with its hold divided into two tanks, released at 1 degree of heel. It rolls gently from side to side, never by more than 1 degree, and the roll dies away. A plot of its heel against time below shows a damped oscillation.
The same coaster with its hold divided into two tanks. Now \(\overline{GM}\) is positive and the ship rolls gently from side to side, with a period of 16.5 s, as the roll dies away: the heel, which never exceeds 1°. With solid cargo, the ship would roll a little faster, with a period of 13.2 s: the stiffer a ship (the larger its \(\overline{GM}\)), the faster it rolls.

The Python package

The package needs NumPy and SciPy, and Matplotlib for the animations. Install it and run the demonstration, which shows all three ships side by side:

pip install 'floating-dynamics[animation]'
free-surface

Its options choose the ships and change the loading. For example, to watch the two ships above, to divide the hold into three tanks, or to replace the water with the same mass of mercury (whose free-surface effect is 13.6 times as large, because it is 13.6 times as dense):

free-surface --cargo free --heel 1
free-surface --cargo divided --heel 1
free-surface --tanks 3
free-surface --density 13.6

The simulations can also be run from Python, returning the results as data for drawing in other ways. The details are in the package's README.

Approximations

The model is two-dimensional: a cross-section through a long ship, which can heave and roll but not pitch. The liquid's surface is assumed to stay level at every instant. This is reasonable here, because the liquid sloshes from side to side (in 5.2 s across the whole hold, 3.0 s in each tank) much faster than the ship rolls, but a shallow layer of liquid in a wide space sloshes slowly, and its motion can then interact with the ship's roll. (Some ships exploit this in anti-roll tanks, tuned so that the liquid's sloshing lags behind the roll and damps it.)

The hull is also watertight: water cannot get in, which is why the capsized coaster floats upside down. The Herald of Free Enterprise capsized because water could get in, and simulating this would mean modelling the flooding of her vehicle deck.