This simulation renders a Type Ia or Type II supernova as a real-time WebGL fragment shader rather than a solved hydrodynamic model. A single progress value (0→1) driven by the Explode button expands a shock-front radius proportional to energy × progress, while a five-octave fractal Brownian motion (fBm) noise field warps the ejecta shell into ragged, turbulent filaments instead of a smooth sphere. Each pixel's colour comes from a temperature ramp — red, through orange and white, to blue — shifted hotter for Type Ia and redder for Type II. The progenitor mass slider feeds a simple threshold rule, echoing the real Chandrasekhar limit, that decides whether the collapsing core leaves behind a neutron star or a black hole.
A star's collapse and rebound rendered as an expanding shock ring, a turbulent noise-driven ejecta shell, and a bright core flash that cools from white through orange to red as the explosion's progress variable advances from 0 to 1, ending in a small glinting remnant dot.
Pick Type Ia or Type II, set the progenitor mass, energy/brightness, and expansion-speed sliders, then press Explode! to trigger the blast. Use Pause to freeze a frame, Reset to return to the pre-explosion star, or Auto to loop the whole cycle automatically.
For the real 1987A supernova, a burst of neutrinos was detected on Earth about three hours before the light from the explosion arrived — because neutrinos escape the collapsing core almost instantly, while photons take hours to fight their way out through the star's dense envelope.
It is a stylized, real-time WebGL fragment shader, not a hydrodynamic or nuclear-physics solver. A single progress value (0 to 1) drives a shock-front radius, a fractal-noise ejecta shell, and a temperature-to-colour ramp, and the mass slider feeds a simple threshold rule inspired by the Chandrasekhar limit. It reproduces the qualitative sequence of a real supernova — shock breakout, peak brightness, cooling ejecta, remnant — without integrating the underlying differential equations.
The simulator applies a simple rule: if the progenitor mass slider is set to 25 solar masses or more, the remnant is labelled a black hole; below that it is labelled a neutron star. This echoes the real astrophysical idea that above roughly 20–25 solar masses a collapsing iron core is thought to be too massive for the neutron-degeneracy pressure that supports a neutron star to halt further collapse.
The Type selector shifts the shader's temperature ramp: Type Ia (white-dwarf thermonuclear detonation) is rendered slightly hotter and whiter, while Type II (core-collapse) is rendered slightly redder, matching the real observational difference in their spectra and light curves. In reality Type Ia comes from a white dwarf that accretes past the Chandrasekhar limit and detonates entirely, while Type II comes from the core collapse of a single massive star that keeps its outer envelope.
Energy/brightness scales the shock-front radius, the ejecta shell's brightness, and the core flash intensity in the fragment shader (shockR = progress × 1.4 × energy). Expansion speed scales how fast the 0-to-1 progress variable advances each frame, so it compresses or stretches the whole explosion timeline without changing its shape.
The shell brightness is multiplied by a five-octave fractal Brownian motion (fBm) noise field sampled in polar coordinates around the shock radius, which breaks up what would otherwise be a perfectly smooth ring into turbulent, ragged filaments. This mirrors real supernova remnants such as the Crab Nebula or Cassiopeia A, whose ejecta are famously clumpy and filamentary rather than uniform shells, a result of real hydrodynamic (Rayleigh–Taylor) instabilities.