Stretch Rubber Sheet (2D)

A rubber sheet as a lattice of masses and springs: hang it, pull any node with the mouse, and watch strain colours, energy and the stiffening of soft rubber.

Switch to 3D

Presets

Playback

Parameters

Layers

Model check

The science

Spring lattice

Nodes of mass m sit on a square grid with spacing a = 0.1 m and are joined by structural springs and (optionally) half-stiffness diagonal springs that resist shear. Each spring pulls with F = k (l - L)(1 + β ε²), strain ε = (l - L)/L. With β = 0 this is Hooke's law; β > 0 gives the strain stiffening seen in rubber (the stress-strain curve of the fourth graph curves upward). Damping adds -c v per node and gravity -m g. The equations are advanced with velocity Verlet at 1/1500 s.

Closed forms used for the checks

A chain of springs transmits a pulse at c = a sqrt(k/m). A hanging column of n nodes stretches by Δ = m g n (n - 1) / (2k) at its bottom, because the spring below row j carries the weight of everything under it. An undamped lattice conserves KE + elastic energy + m g y.

Checks

(1) Pulse arrival time along a 24-node chain gives the wave speed. (2) Energy drift of an undamped stiffening lattice under gravity. (3) Static extension of a hanging two-column strip against the closed form.

Simplifications

Real rubber is an incompressible, viscoelastic network with Mullins softening and hysteresis; a spring lattice is only a coarse stand-in with no volume conservation or rate dependence. The sheet is 2D (no folding out of the plane) and has no self-collision. The 3D page uses position-based dynamics for a similar sheet; the stiffness numbers are not matched one-to-one.

What to try

  • Drag the bottom corner of the hanging sheet and release it: it rings at the lattice frequency.
  • Turn off the shear springs and watch the net collapse into floppy shapes.
  • Raise beta and compare how far a heavy sheet sags.
Kinetic and elastic energy
Distribution of spring strain
Hanging sheet: extension of the middle column
Force versus strain per spring row