Physically-based simulation of rainbows

1UC San Diego 2Universidad de Zaragoza 3Horley, UK 4Disney Research Zürich

In ACM Transactions on Graphics (Presented at SIGGRAPH), 2012

Our rendering results for different types of rainbows: (a) Rainbow derived from Lorenz-Mie theory. (b) Single primary rainbow with considering the angular view of the sun. (c) Double rainbow with a flipped secondary rainbow. (d) Multiple supernumerary rainbows caused by small water drops with uniform sizes. (e) Twinned rainbow resulted from mixture of non-spherical water drops and spherical ones.


In this paper we derive a physically-based model for simulating rainbows. Previous techniques for simulating rainbows have used either geometric optics (ray tracing) or Lorenz-Mie theory. Lorenz-Mie theory is by far the most accurate technique as it takes into account optical effects such as dispersion, polarization, interference, and diffraction. These effects are critical for simulating rainbows accurately. However, as Lorenz-Mie theory is restricted to scattering by spherical particles, it cannot be applied to real raindrops which are non-spherical, especially for larger raindrops. We present the first comprehensive technique for simulating the interaction of a wavefront of light with a physically-based water drop shape. Our technique is based on ray tracing extended to account for dispersion, polarization, interference, and diffraction. Our model matches Lorenz-Mie theory for spherical particles, but it also enables the accurate simulation of non-spherical particles. It can simulate many different rainbow phenomena including double rainbows and supernumerary bows. We show how the non-spherical raindrops influence the shape of the rainbows, and we provide a simulation of the rare twinned rainbow, which is believed to be caused by non-spherical water drops.




Iman Sadeghi, Adolfo Munoz, Philip Laven, Wojciech Jarosz, Francisco Seron, Diego Gutierrez, Henrik Wann Jensen. Physically-based simulation of rainbows. ACM Transactions on Graphics (Presented at SIGGRAPH), 31(1):3:1–3:12, February 2012.
    author  = {Sadeghi, Iman and Munoz, Adolfo and Laven, Philip and Jarosz, Wojciech and Seron, Francisco and
               Gutierrez, Diego and Jensen, Henrik Wann},
    title   = {Physically-based Simulation of Rainbows},
    journal = {ACM Transactions on Graphics (Presented at SIGGRAPH)},
    volume  = {31},
    number  = {1},
    year    = {2012},
    month   = feb,
    pages   = {3:1--3:12},
    doi     = {10/gfzndf}
© The Author(s) / ACM. This is the author's version of the work. It is posted here for your personal use. Not for redistribution. The definitive Version of Record is available at