math ⇄ art lab — The Fractal Conservatory

Six living fractals under one roof. Everything below is computed pixel-by-pixel in this tab — Canvas 2D for the escape-time explorers, a hand-rolled WebGL raymarcher for the 3D bulb, and window.NUMBER_DATA base-12 digits for the chaos game. wheel zooms, drag pans, click dives — every view exports as PNG.

1 · Mandelbrot Explorer

z ← z² + c from z₀ = 0 — smooth-iteration coloring, progressive render

Points that never escape (|z| stays under the bailout radius 4) paint the set itself near-black; escapees get the continuous band count μ = n + 1 − log₂log|z|, which removes the last pixel of stair-casing. The iteration budget doubles automatically as you dive, because deep minibrots take their time to decide. The boundary you are hovering over has Hausdorff dimension 2 — you will never run out of coastline.

2 · Julia Mode

freeze c, then walk it around the seahorse valley at −0.745 + 0.113i

The Mandelbrot set is a catalog of Julia sets: one c per point. c inside the set ⇒ a connected Julia; c outside ⇒ Cantor dust. The animator walks c = −0.745 + 0.113·r·(cos θ, sin θ) — a slow circle hugging the boundary near seahorse valley — so the same set breathes between lace and dust. Pausing re-renders at full resolution.

3 · Burning Ship

z ← (|Re z| + i|Im z|)² + c — the same engine, folded through absolute value

Two absolute values are the only edit to the Mandelbrot recurrence, yet the cardioid becomes a ghost ship wreathed in fractal flame (imaginary axis flipped, as tradition demands — hit fit the ship to sail in close). Every mast and whisker is itself a tiny burning ship, all the way down.

4 · Newton Basins

z³ − 1 = 0 solved from every pixel — where does the iteration land?

Three gravitational wells of z³−1; the boundary is a fractal dust — every boundary point touches all three basins. Newton's method converges quadratically fast in the open basins (bright) and dithers forever near the border (dark); toggle the checkbox to recolor by the final |z·z′| step product, a different fingerprint of the same dust.

5 · Mandelbulb 3D

sphere-traced live in WebGL — drag to orbit, scroll to dolly

The Mandelbulb lifts z ← zⁿ + c to three dimensions by exponentiating in spherical coordinates. The fragment shader sphere-traces a distance estimator (bailout 2, ~96 steps, epsilon scaled with distance), shades with one directional light plus a headlight, and picks up cheap 5-tap ambient occlusion in the crevices; near-miss rays exhale a faint accent glow. Power 8 is the classic bulb — slide toward 2 or 12 and watch it melt into other species.

6 · Chaos Game, Driven by Digits

Barnsley's game with π, e, φ, √2 — or crypto-random — throwing the die

Each base-12 digit of the chosen constant (parseInt(ch,16)) picks a vertex; the point jumps a fixed fraction of the way toward it. Here is the point: if π's digits were structured, the Sierpinski triangle would break — it doesn't. Irrational digits are indistinguishable from crypto-random as a chaos-game driver. Normality, live: switch the die to true random (crypto) and try to spot the difference. (Fraction 0.5 on the triangle is the textbook Sierpinski; other shapes and fractions grow their own flora.)