Home▸Physics & Mechanics▸22° Sun Halo — Ice Crystal Refraction (2D)

22° Sun Halo — Ice Crystal Refraction (2D)

Interactive 2D geometric-optics model of the 22° and 46° sun halo: drag the incidence angle across a hexagonal ice-crystal prism cross-section and watch the deviation-angle curve reveal why rays bunch at a minimum, producing a bright ring around the sun.

Physics & Mechanics2DAdvanced60 FPS💨 Air & Wind❄️ Ice & Cold⇄ 3D version
2d-3d-sun-halo ↗ Open standalone

This 2D companion to the site's 3D sun-halo simulation isolates the geometric optics behind the ring: a single hexagonal ice-crystal cross-section refracting one ray of sunlight. Drag the incidence-angle slider and watch the ray bend on entry, cross the crystal, and bend again on exit — the little prism diagram redraws every angle live, while the curve beside it plots the resulting deviation angle D against incidence angle θᵢ for the whole 0–90° sweep. The curve is U-shaped, not flat: D drops to a minimum around 22° (for the common hexagon-side-to-side path) or 46° (for the rarer path that exits through the crystal's flat end), then climbs again on both sides. That minimum is the entire reason halos exist — click "Snap to minimum deviation" to land exactly on it and see how many nearby incidence angles all produce almost the same D, the ray-bunching that turns a cloud of randomly tumbling ice crystals into one sharp ring around the sun rather than a diffuse glow. The sky view on top renders that ring at its true angular radius around a sun whose elevation you control, with a faint red-in / blue-out colour fringe from ice's ordinary dispersion, and a darker band just inside the ring where the geometry forbids any ray from landing.

⚙ Under the hood

Interactive 2D geometric-optics model of the 22° and 46° sun halo: drag the incidence angle across a hexagonal ice-crystal prism cross-section and watch the deviation-angle curve reveal why rays bunch at a minimum, producing a bright ring at a fixed angular radius around a sun whose elevation you control.

physicsopticssun haloice crystalrefractionSnell's lawatmospheric optics2D

2D · HTML5 Canvas 2D · 60 FPS target · runs fully client-side, no install

What did you find?

Add reproduction steps (optional)