HomePhysics & MechanicsAstrophysics — Stellar Evolution & H-R Diagram

🌌 Astrophysics — Stellar Evolution & the Hertzsprung–Russell Diagram

Interactive astrophysics simulation: place a star on the Hertzsprung-Russell diagram by mass, watch its temperature, radius and luminosity follow real stellar-physics scaling laws, then evolve it off the main sequence.

Physics & Mechanics3DModerate60 FPS
astrophysics-physics ↗ Open standalone

This simulation plots a star on a 3D Hertzsprung–Russell diagram — the single most important chart in stellar astrophysics, mapping surface temperature against luminosity. Set a star's mass and watch its temperature, radius and colour follow the same scaling laws astronomers use to classify real stars, then push it off the main sequence to see where it goes next.

🔬 What It Demonstrates

A field of background stars traces the main sequence using L ∝ M^3.5 and R ∝ M^0.8, then the Stefan–Boltzmann law L = 4πR²σT⁴ recovers each star's temperature. Your star (mass set by the slider) is placed on that same curve, coloured by a blackbody-style temperature ramp from hot blue-white O stars to cool red M dwarfs.

🎮 How to Use

Drag Mass (M☉) to move your star along the main sequence — heavier stars sit hotter, brighter and further up-left. Press Evolve star to watch it swell into a red giant and collapse to a hot white dwarf, or Reset to return to a 1 M☉ sun-like star.

💡 Did You Know?

Because L ∝ M^3.5, a star only 10× more massive than the Sun shines over 3,000× brighter — and burns through its fuel so much faster that massive O and B stars live for millions of years, not the Sun's ~10 billion.

⚙ Under the hood

Place a star on a 3D Hertzsprung-Russell diagram by setting its mass, watch temperature, radius and luminosity follow real stellar main-sequence scaling laws, then evolve it into a red giant and a white dwarf.

Three.jsAstrophysicsStellar EvolutionHertzsprung-RussellInstancedMesh

3D · Three.js / WebGL renderer · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)