Soap Film Drainage Lab (3D)

A Blender wire frame on a stand holds a soap film whose colour follows the drainage model, with a softbox, ruler, soap dish and a drip at the bottom.

Presets

Playback

Liquid

Starting thickness, viscosity and refractive index.

Frame and viewing

Frame height, gravity, view angle and time lapse.

Camera

Layers

Quality

Model checks

The science

Why a soap film shows colours

Light reflects from the front and back surfaces of the film. The two reflections differ in path by 2 n h cos(theta_t), giving a phase delta = 2 pi n h cos(theta_t) / lambda. With Fresnel amplitude r at each surface the reflectance is R = 4 r^2 sin^2(delta) / ((1 - r^2)^2 + 4 r^2 sin^2(delta)), averaged over s and p polarisation. Each wavelength has its own maxima, so thickness maps to colour: first-order bands near 100-300 nm, then repeating pastel orders. A film thinner than about 20 nm reflects almost nothing, the dark “black film” that appears just before bursting.

Gravity drainage

Between two immobile surfaces the liquid flows like Poiseuille flow between plates: flux per unit width q = rho g h^3 / (12 eta). Mass conservation h_t + q_y = 0 gives a kinematic wave h_t + (rho g h^2 / 4 eta) h_y = 0. A film that starts uniform and is drained at the top border develops a similarity profile h(y,t) = sqrt(4 eta y / (rho g t)): thickness grows like the square root of depth and falls like t^(-1/2). That is the dashed yellow curve in the graph; the grid solver follows it (first check). The solver is a conservative upwind finite-volume scheme, so liquid is exactly accounted for (second check).

Honest simplifications

The model has rigid surfaces and no Marangoni flow, evaporation, surfactant dynamics, capillary suction into the Plateau borders or marginal regeneration, which in real films thin the top much faster and make the pattern turbulent. Pure rigid drainage is very slow (hours for a thick film), so the time-lapse slider is large. The swirling texture is decorative noise on top of the physical thickness. Colours use a simple 16-wavelength sum with a flat white illuminant, not full CIE colorimetry, and the film burst is not modelled, only the black-film thickness. The orders and shapes are qualitatively right; absolute drainage times are not predictions for a real bubble.

What to try

  • Run the fresh film and watch the top turn silver then black while bands slide down; compare with the dashed similarity curve.
  • Double the viscosity (or choose the glycerol preset): all times double because the wave speed is proportional to 1/eta.
  • Switch to Moon gravity: the same drainage takes about six times longer.
  • Raise the viewing angle to 60 degrees and see every colour band shift to a thicker film.
  • Change the refractive index to see how bands move; the quarter-wave reflectance check updates with n.
Loading model...
Loading Blender model...
Film thickness against depth (grid and similarity solution)
Thickness at three heights against time
Liquid drained from the frame (%)
Reflectance spectrum at mid-height
Made with 🟠 Blender · Three.js