Hairy Ball Theorem — Vector Fields on a Sphere
Interactive 3D demo of the Hairy Ball / Poincaré–Hopf theorem: comb a tangent vector field over a sphere, watch singularities (cowlicks) appear and merge as you distort the field, and see their winding indices always sum to the sphere's Euler characteristic, 2.
You can't comb the hair on a sphere flat — every continuous tangent vector field on a sphere must have at least one point where it vanishes. This simulator renders a real tangential gradient field on a 3D sphere, sampled as thousands of oriented "hairs", and numerically finds every singularity, classifying each as a source/sink (index +1) or a saddle (index −1) from its local Hessian. Distort the underlying height function with the Twist slider and watch singularities appear or split in +1/−1 pairs — while their indices always sum to 2, the sphere's Euler characteristic, exactly as the Poincaré–Hopf theorem guarantees.
Comb a tangent vector field over a 3D sphere and watch the Hairy Ball / Poincaré–Hopf theorem hold live: singularities (cowlicks) are found numerically from a gradient height field, classified by their local Hessian, and their winding indices always sum to the sphere's Euler characteristic, 2.
3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install