Soap Film Minimal Surface
Minimize a triangulated film with a fixed square boundary and inspect its shape, area and convergence.
About this tool
Explore a film spanning a square wire boundary. A small initial bulge relaxes by reducing the actual area of the triangulated mesh, with all boundary heights fixed. Rotate by dragging; use Ctrl/⌘ plus the wheel to zoom.
Choose a flat square, tilted plane, twisted square, or boundary sampled from Scherk’s minimal surface. Flat and tilted boundaries approach a plane. Scherk’s graph is h(x,y)=ln(cos(0.8y)/cos(0.8x))/0.8 over x,y∈[−0.8,0.8].
The solver uses area-gradient descent with backtracking on a36×36 mesh. The residual is the largest interior area derivative divided by grid-cell area; it is not a measured mean curvature. Convergence means residual below10⁻⁶ on this mesh, with a6000-step limit. Steps per frame controls playback, not a physical timescale. This is a height-graph model: it cannot represent overhangs, circular rings, a catenoid, film rupture or changing topology. The area ratio uses the square base area 1.6²; a flat film has ratio 1. A hidden page pauses until Resume is pressed. Relax again restarts a finished minimization with the same settings.
The initial preview does not minimize the film or allocate WebGL. Relax or the step button opens the interactive 3D surface. Initial bulge changes only the starting shape, not the fixed boundary. Positive and negative values let you compare approaches to the same minimum. Reset restores this initial shape and keeps the input values; changing the boundary or bulge does the same. Playback settings change steps per frame without resetting the film. Inputs are kept locally, never the computed film or camera.