Math
The cusp catastrophe
Drag one knob and the state slides until its branch runs out, then snaps - and dragging back does not undo it. Turn the second knob above the cusp and the snap vanishes entirely: the hysteresis loop is not small there, it is exactly zero. Loop width 4·(−a/3)^(3/2), jump height 3·√(−a/3), both checkable against the picture.

What happens
One equation: x³ + a·x + b = 0. The state is x; a and b are two knobs. Drag b and the state slides smoothly along its branch - until the branch runs out, and it falls to the other one. Drag back and it does not return the same way: the jump happens somewhere else, and the gap between the two is the hysteresis loop. That loop is 4·(−a/3)^(3/2) wide, a three-halves power law, and the jump at the fold is exactly 3·√(−a/3) tall, because the branch the state is on (at √(−a/3)) collides with the one at −2·√(−a/3). There is nowhere to stop halfway: the middle branch, drawn in red, is a MAXIMUM of the potential V = x⁴/4 + a·x²/2 + b·x, and nothing can rest on a hilltop. Watch the potential underneath - two wells and a hill, and as b moves one well rises until it disappears entirely, taking the state with it. Now turn the OTHER knob. Above the cusp (a ≥ 0) there is no loop at all: not a small one, exactly zero, because sweeping up and sweeping down trace the same curve. Same system, same drag, and the snap is simply absent. That is the point: whether a switch snaps or glides is not a property of how hard you push it, but of a second knob you were not thinking about. The small plot on the right is the (a, b) plane with the cusp-shaped region where three branches exist; the marker is where your two knobs currently sit.
Equations used in the module
Equations state: x³ + a·x + b = 0, from the potential V = x⁴/4 + a·x²/2 + b·x branches: the discriminant 4a³ + 27b² decides - negative gives three real roots, positive one, zero is the fold where two collide stability: V″ = 3x² + a; the outer two roots are minima, the middle one a MAXIMUM, which is why the jump has no halfway folds: b = ±2·(−a/3)^(3/2), so the hysteresis loop is 4·(−a/3)^(3/2) wide - a three-halves power law jump: at the fold the branch at √(−a/3) collides with the one at −2·√(−a/3), so the state falls 3·√(−a/3) above the cusp: a ≥ 0 gives one branch for every b, no fold, and a loop width of EXACTLY zero measured: loop 0.780 / 4.000 / 11.320 at a = −1 / −3 / −6 against 0.7698 / 4.0000 / 11.3137, on a sweep grid of 0.01


