Rainbow and Halo Angle Calculator (Why 42° and 22°)
The angle from the point opposite the Sun at which the primary and secondary rainbows appear for red and violet light, the dark band between them, and the 22° halo of ice crystals.
Results
What this tool does
A raindrop bends light on the way in, reflects it once inside and bends it again on the way out, and the light piles up at one angle where the total deviation is smallest — about 42° from the point opposite the Sun for red. Violet light bends more, so its bow sits a little lower, which is why red is on the outside of the primary. Two reflections give the fainter secondary bow at 50–54° with the colours reversed, and the dark band between the bows is called Alexander's. The 22° halo is the same idea in ice prisms.
Formula
cos² i = (n² − 1) ÷ 3 · sin r = sin i ÷ n · primary = 4r − 2i · secondary = 180° + 2i − 6r · halo = 2 asin(n/2) − 60°
Variables
| Symbol | Meaning | Unit |
|---|---|---|
nr | Refractive index of water for red light | — |
nv | Refractive index of water for violet light | — |
ni | Refractive index of ice | — |
PR | Primary rainbow, red edge (outer) | ° |
PV | Primary rainbow, violet edge (inner) | ° |
SR | Secondary rainbow, red edge (inner) | ° |
SV | Secondary rainbow, violet edge (outer) | ° |
AB | Width of Alexander's dark band between the bows | ° |
HL | Halo around the Sun or Moon (60° ice crystals) | ° |
Worked example
- Refractive index of water for red light1.331
- Refractive index of water for violet light1.344
- Refractive index of ice1.31
- Primary rainbow, red edge (outer)42.37 °
- Primary rainbow, violet edge (inner)40.51 °
- Secondary rainbow, red edge (inner)50.37 °
- Secondary rainbow, violet edge (outer)53.73 °
- Width of Alexander's dark band between the bows8.00 °
- Halo around the Sun or Moon (60° ice crystals)21.84 °
Limitations
- The formula assumes ideal conditions: no friction losses, no air resistance and no efficiency losses unless you enter them.
- The default values are typical reference figures, not measurements of your situation. Replace them with your own data whenever you have it.